diff options
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hbadisc.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_hbadisc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hbadisc.c b/drivers/scsi/lpfc/lpfc_hbadisc.c index 7eb34a6e8346..091f68e5cb70 100644 --- a/drivers/scsi/lpfc/lpfc_hbadisc.c +++ b/drivers/scsi/lpfc/lpfc_hbadisc.c | |||
@@ -2646,7 +2646,9 @@ lpfc_init_vfi_cmpl(struct lpfc_hba *phba, LPFC_MBOXQ_t *mboxq) | |||
2646 | { | 2646 | { |
2647 | struct lpfc_vport *vport = mboxq->vport; | 2647 | struct lpfc_vport *vport = mboxq->vport; |
2648 | 2648 | ||
2649 | if (mboxq->u.mb.mbxStatus && (mboxq->u.mb.mbxStatus != 0x4002)) { | 2649 | /* VFI not supported on interface type 0, just do the flogi */ |
2650 | if (mboxq->u.mb.mbxStatus && (bf_get(lpfc_sli_intf_if_type, | ||
2651 | &phba->sli4_hba.sli_intf) != LPFC_SLI_INTF_IF_TYPE_0)) { | ||
2650 | lpfc_printf_vlog(vport, KERN_ERR, | 2652 | lpfc_printf_vlog(vport, KERN_ERR, |
2651 | LOG_MBOX, | 2653 | LOG_MBOX, |
2652 | "2891 Init VFI mailbox failed 0x%x\n", | 2654 | "2891 Init VFI mailbox failed 0x%x\n", |
@@ -2655,6 +2657,7 @@ lpfc_init_vfi_cmpl(struct lpfc_hba *phba, LPFC_MBOXQ_t *mboxq) | |||
2655 | lpfc_vport_set_state(vport, FC_VPORT_FAILED); | 2657 | lpfc_vport_set_state(vport, FC_VPORT_FAILED); |
2656 | return; | 2658 | return; |
2657 | } | 2659 | } |
2660 | |||
2658 | lpfc_initial_flogi(vport); | 2661 | lpfc_initial_flogi(vport); |
2659 | mempool_free(mboxq, phba->mbox_mem_pool); | 2662 | mempool_free(mboxq, phba->mbox_mem_pool); |
2660 | return; | 2663 | return; |