forked from Minki/linux
[SCSI] bfa: LUN discovery issue in direct attach mode
In direct attach mode, if port features like QoS/Trunk/FEC/CR are enabled, driver can receive PLOGI from the target before firmware notifies lport online to the driver. In case the lport is not yet online and a PLOGI is received, send a reject to the peer port, instead of dropping it on the floor. Signed-off-by: Vijaya Mohan Guvva <vmohan@brocade.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
parent
da3e0bee18
commit
9781851f47
@ -773,7 +773,20 @@ bfa_fcs_lport_uf_recv(struct bfa_fcs_lport_s *lport,
|
||||
bfa_trc(lport->fcs, fchs->type);
|
||||
|
||||
if (!bfa_fcs_lport_is_online(lport)) {
|
||||
bfa_stats(lport, uf_recv_drops);
|
||||
/*
|
||||
* In direct attach topology, it is possible to get a PLOGI
|
||||
* before the lport is online due to port feature
|
||||
* (QoS/Trunk/FEC/CR), so send a rjt
|
||||
*/
|
||||
if ((fchs->type == FC_TYPE_ELS) &&
|
||||
(els_cmd->els_code == FC_ELS_PLOGI)) {
|
||||
bfa_fcs_lport_send_ls_rjt(lport, fchs,
|
||||
FC_LS_RJT_RSN_UNABLE_TO_PERF_CMD,
|
||||
FC_LS_RJT_EXP_NO_ADDL_INFO);
|
||||
bfa_stats(lport, plogi_rcvd);
|
||||
} else
|
||||
bfa_stats(lport, uf_recv_drops);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user