diff options
author | James Smart <james.smart@emulex.com> | 2012-03-01 22:35:34 -0500 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2012-03-27 08:26:30 +0100 |
commit | 401ee0c1d698e798a9317e2ed6207badae93e266 (patch) | |
tree | a22fe0117fb5ae7ef22cd9bd5513a870eeb5e3c7 /drivers/scsi/lpfc | |
parent | 97f2ecf1f401d689d4036f64c244fad3b39e5e0a (diff) | |
download | linux-stable-401ee0c1d698e798a9317e2ed6207badae93e266.tar.gz linux-stable-401ee0c1d698e798a9317e2ed6207badae93e266.tar.bz2 linux-stable-401ee0c1d698e798a9317e2ed6207badae93e266.zip |
[SCSI] lpfc 8.3.30: Fix deadlock during adapter offline request
Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com>
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_init.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index 5b66142dbf56..d8e8270b1584 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c @@ -2704,16 +2704,14 @@ lpfc_offline_prep(struct lpfc_hba * phba) } spin_lock_irq(shost->host_lock); ndlp->nlp_flag &= ~NLP_NPR_ADISC; - + spin_unlock_irq(shost->host_lock); /* * Whenever an SLI4 port goes offline, free the - * RPI. A new RPI when the adapter port comes - * back online. + * RPI. Get a new RPI when the adapter port + * comes back online. */ if (phba->sli_rev == LPFC_SLI_REV4) lpfc_sli4_free_rpi(phba, ndlp->nlp_rpi); - - spin_unlock_irq(shost->host_lock); lpfc_unreg_rpi(vports[i], ndlp); } } |