diff options
author | Joe Eykholt <jeykholt@cisco.com> | 2009-11-03 14:48:32 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-12-04 13:01:13 -0500 |
commit | f31f2a1c3215e96fbff2152486d0fb590f72634e (patch) | |
tree | 642901f9b176d90fa6851d83cac7add03a46c968 /drivers/scsi/fcoe | |
parent | dd42dac4ecd1799077c132aab35d3c36b26d4d8c (diff) |
[SCSI] libfcoe: don't send ELS in FIP mode if no FCF selected
If link is up, but no FCF is selected, don't send any ELS frames.
This came up when an fnic received a multicast advertisement but
no solitited advertisments, so no FCF was selected. It tried
to send FLOGIs anyway.
Signed-off-by: Joe Eykholt <jeykholt@cisco.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/fcoe')
-rw-r--r-- | drivers/scsi/fcoe/libfcoe.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/fcoe/libfcoe.c b/drivers/scsi/fcoe/libfcoe.c index 4d857c2aef6c..2aab97221c6c 100644 --- a/drivers/scsi/fcoe/libfcoe.c +++ b/drivers/scsi/fcoe/libfcoe.c | |||
@@ -500,6 +500,8 @@ int fcoe_ctlr_els_send(struct fcoe_ctlr *fip, struct fc_lport *lport, | |||
500 | 500 | ||
501 | if (fip->state == FIP_ST_NON_FIP) | 501 | if (fip->state == FIP_ST_NON_FIP) |
502 | return 0; | 502 | return 0; |
503 | if (!fip->sel_fcf) | ||
504 | goto drop; | ||
503 | 505 | ||
504 | switch (op) { | 506 | switch (op) { |
505 | case ELS_FLOGI: | 507 | case ELS_FLOGI: |