diff options
Diffstat (limited to 'drivers/scsi/bnx2fc')
-rw-r--r-- | drivers/scsi/bnx2fc/bnx2fc_els.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/drivers/scsi/bnx2fc/bnx2fc_els.c b/drivers/scsi/bnx2fc/bnx2fc_els.c index ce0ce3e32f33..cf3bdcdefb20 100644 --- a/drivers/scsi/bnx2fc/bnx2fc_els.c +++ b/drivers/scsi/bnx2fc/bnx2fc_els.c | |||
@@ -854,7 +854,6 @@ static void bnx2fc_flogi_resp(struct fc_seq *seq, struct fc_frame *fp, | |||
854 | struct fc_exch *exch = fc_seq_exch(seq); | 854 | struct fc_exch *exch = fc_seq_exch(seq); |
855 | struct fc_lport *lport = exch->lp; | 855 | struct fc_lport *lport = exch->lp; |
856 | u8 *mac; | 856 | u8 *mac; |
857 | struct fc_frame_header *fh; | ||
858 | u8 op; | 857 | u8 op; |
859 | 858 | ||
860 | if (IS_ERR(fp)) | 859 | if (IS_ERR(fp)) |
@@ -862,13 +861,6 @@ static void bnx2fc_flogi_resp(struct fc_seq *seq, struct fc_frame *fp, | |||
862 | 861 | ||
863 | mac = fr_cb(fp)->granted_mac; | 862 | mac = fr_cb(fp)->granted_mac; |
864 | if (is_zero_ether_addr(mac)) { | 863 | if (is_zero_ether_addr(mac)) { |
865 | fh = fc_frame_header_get(fp); | ||
866 | if (fh->fh_type != FC_TYPE_ELS) { | ||
867 | printk(KERN_ERR PFX "bnx2fc_flogi_resp:" | ||
868 | "fh_type != FC_TYPE_ELS\n"); | ||
869 | fc_frame_free(fp); | ||
870 | return; | ||
871 | } | ||
872 | op = fc_frame_payload_op(fp); | 864 | op = fc_frame_payload_op(fp); |
873 | if (lport->vport) { | 865 | if (lport->vport) { |
874 | if (op == ELS_LS_RJT) { | 866 | if (op == ELS_LS_RJT) { |
@@ -878,12 +870,10 @@ static void bnx2fc_flogi_resp(struct fc_seq *seq, struct fc_frame *fp, | |||
878 | return; | 870 | return; |
879 | } | 871 | } |
880 | } | 872 | } |
881 | if (fcoe_ctlr_recv_flogi(fip, lport, fp)) { | 873 | fcoe_ctlr_recv_flogi(fip, lport, fp); |
882 | fc_frame_free(fp); | ||
883 | return; | ||
884 | } | ||
885 | } | 874 | } |
886 | fip->update_mac(lport, mac); | 875 | if (!is_zero_ether_addr(mac)) |
876 | fip->update_mac(lport, mac); | ||
887 | done: | 877 | done: |
888 | fc_lport_flogi_resp(seq, fp, lport); | 878 | fc_lport_flogi_resp(seq, fp, lport); |
889 | } | 879 | } |