aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_sli.c
diff options
context:
space:
mode:
authorJames Smart <James.Smart@Emulex.Com>2008-04-07 10:16:00 -0400
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-04-10 08:52:36 -0400
commit9b37960523afb1b519b406dec4c4f3155b82b2ba (patch)
treeb6a2d07f0f441911c4f7d7580770c23f90c5167e /drivers/scsi/lpfc/lpfc_sli.c
parent58da1ffb2b1234e9c6c75013a649c659cc38ebd4 (diff)
[SCSI] lpfc 8.2.6 : PCI Parity and EEH handling fixes
PCI Parity and EEH handling Fixes: - Under a PCI Data Parity Error, remove a completion routine callback that was on a command that we had already failed and released. - Under PCI parity error, we were not reinstalling the interrupt handler in the slot_reset callback, so we never became functional again. Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_sli.c')
-rw-r--r--drivers/scsi/lpfc/lpfc_sli.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
index c71b9a577770..741e94af4793 100644
--- a/drivers/scsi/lpfc/lpfc_sli.c
+++ b/drivers/scsi/lpfc/lpfc_sli.c
@@ -3634,8 +3634,7 @@ lpfc_sli_abort_els_cmpl(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
3634 * If the iocb is not found in Firmware queue the iocb 3634 * If the iocb is not found in Firmware queue the iocb
3635 * might have completed already. Do not free it again. 3635 * might have completed already. Do not free it again.
3636 */ 3636 */
3637 if ((irsp->ulpStatus == IOSTAT_LOCAL_REJECT) && 3637 if (irsp->ulpStatus == IOSTAT_LOCAL_REJECT) {
3638 (irsp->un.ulpWord[4] == IOERR_NO_XRI)) {
3639 spin_unlock_irq(&phba->hbalock); 3638 spin_unlock_irq(&phba->hbalock);
3640 lpfc_sli_release_iocbq(phba, cmdiocb); 3639 lpfc_sli_release_iocbq(phba, cmdiocb);
3641 return; 3640 return;