diff options
author | James Smart | 2013-07-15 18:34:36 -0400 |
---|---|---|
committer | James Bottomley | 2013-08-23 13:22:23 -0400 |
commit | 71157c9eb2793054e784b94fd7678147a1a496d6 (patch) | |
tree | 60a33e73ab02ca3701b915092d9e06e116c8be52 /drivers/scsi/lpfc | |
parent | 7f8c40cf7124074b1cf6eb3400ebfe4eedd47640 (diff) |
[SCSI] lpfc 8.3.41: Fixed not able to perform PCI function reset when board was not in online mode
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/lpfc')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_attr.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/scsi/lpfc/lpfc_attr.c b/drivers/scsi/lpfc/lpfc_attr.c index 1b2305333ed8..745ba85a8993 100644 --- a/drivers/scsi/lpfc/lpfc_attr.c +++ b/drivers/scsi/lpfc/lpfc_attr.c @@ -741,14 +741,15 @@ lpfc_selective_reset(struct lpfc_hba *phba) int status = 0; int rc; - if ((!phba->cfg_enable_hba_reset) || - (phba->pport->fc_flag & FC_OFFLINE_MODE)) + if (!phba->cfg_enable_hba_reset) return -EACCES; - status = lpfc_do_offline(phba, LPFC_EVT_OFFLINE); + if (!(phba->pport->fc_flag & FC_OFFLINE_MODE)) { + status = lpfc_do_offline(phba, LPFC_EVT_OFFLINE); - if (status != 0) - return status; + if (status != 0) + return status; + } init_completion(&online_compl); rc = lpfc_workq_post_event(phba, &status, &online_compl, |