diff options
author | James Smart <james.smart@emulex.com> | 2010-09-29 11:18:45 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-10-07 18:26:19 -0400 |
commit | d439d286f573afab8c164dbc953ce1d214585a40 (patch) | |
tree | eec9c3089e49ae0938b4fff282afd2472d9b7fdc /drivers/scsi/lpfc/lpfc_els.c | |
parent | bf5eefb007e7c5498a41af2dd65d957ae9793a63 (diff) |
[SCSI] lpfc 8.3.17: Code Cleanup and Locking fixes
- Move Unload flag earlier in vport deletei to stop ELS traffic
- Replaced some unnecessary spin_lock_irqsave with spin_lock_irq
- Fixed circular spinlock dependency between low-level driver and SCSI midlayer
- Remove duplicate code from lpfc_els_retry routine
- Make all error values negative
Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com>
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_els.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_els.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c index 8d09191c327e..e6ca12f6c6cb 100644 --- a/drivers/scsi/lpfc/lpfc_els.c +++ b/drivers/scsi/lpfc/lpfc_els.c | |||
@@ -3250,6 +3250,8 @@ lpfc_mbx_cmpl_dflt_rpi(struct lpfc_hba *phba, LPFC_MBOXQ_t *pmb) | |||
3250 | lpfc_sli4_free_rpi(phba, pmb->u.mb.un.varUnregLogin.rpi); | 3250 | lpfc_sli4_free_rpi(phba, pmb->u.mb.un.varUnregLogin.rpi); |
3251 | 3251 | ||
3252 | pmb->context1 = NULL; | 3252 | pmb->context1 = NULL; |
3253 | pmb->context2 = NULL; | ||
3254 | |||
3253 | lpfc_mbuf_free(phba, mp->virt, mp->phys); | 3255 | lpfc_mbuf_free(phba, mp->virt, mp->phys); |
3254 | kfree(mp); | 3256 | kfree(mp); |
3255 | mempool_free(pmb, phba->mbox_mem_pool); | 3257 | mempool_free(pmb, phba->mbox_mem_pool); |