diff options
author | James Smart <James.Smart@Emulex.Com> | 2007-04-25 09:52:34 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2007-05-06 10:33:14 -0400 |
commit | 7054a606e6724674a5acd103ed74eacb02c73393 (patch) | |
tree | 271327c20a1e4bff9475ef7a9d98afd4644d6570 /drivers/scsi/lpfc/lpfc_init.c | |
parent | de0c5b32b50ef2673f4cd434b9c2732237d715dd (diff) |
[SCSI] lpfc 8.1.12 : Round 2 of Miscellaneous fixes
Round 2 of Miscellaneous fixes:
- Ensure we don't prematurely re-enable IRQs in lpfc_sli_abort_fcp_cmpl().
- Prevent freeing of iocb after IOCB_TIMEDOUT error.
- Added code to cleanup REG_LOGIN mailbox command when a LOGO is received.
- Fix offline window where more work can sneak in after clearing work_ha
- Use target reset instead of LU reset in bus_device_reset_handler
- Fixed system hangs due to leaked host_lock.
- Fixed NULL pointer dereference during I/O with LIP.
- Fixed false iocb timeout.
- Fixed name server query response handling.
- Change rport dev_loss_tmo value when user change lpfc HBA's dev_loss_tmo.
- Fixed a memory leak in lpfc_sli_wake_mbox_wait.
- Fixed check for dropped frames.
- Removed hba queue depth calculation based on device PCI IDs
- Change min cr_count value specified in comment to agree with setting
Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_init.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_init.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index 5f013f1cdead..6449ac8fca24 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c | |||
@@ -1375,8 +1375,6 @@ lpfc_offline(struct lpfc_hba * phba) | |||
1375 | 1375 | ||
1376 | /* stop all timers associated with this hba */ | 1376 | /* stop all timers associated with this hba */ |
1377 | lpfc_stop_timer(phba); | 1377 | lpfc_stop_timer(phba); |
1378 | phba->work_hba_events = 0; | ||
1379 | phba->work_ha = 0; | ||
1380 | 1378 | ||
1381 | lpfc_printf_log(phba, | 1379 | lpfc_printf_log(phba, |
1382 | KERN_WARNING, | 1380 | KERN_WARNING, |
@@ -1389,6 +1387,8 @@ lpfc_offline(struct lpfc_hba * phba) | |||
1389 | lpfc_sli_hba_down(phba); | 1387 | lpfc_sli_hba_down(phba); |
1390 | lpfc_cleanup(phba); | 1388 | lpfc_cleanup(phba); |
1391 | spin_lock_irqsave(phba->host->host_lock, iflag); | 1389 | spin_lock_irqsave(phba->host->host_lock, iflag); |
1390 | phba->work_hba_events = 0; | ||
1391 | phba->work_ha = 0; | ||
1392 | phba->fc_flag |= FC_OFFLINE_MODE; | 1392 | phba->fc_flag |= FC_OFFLINE_MODE; |
1393 | spin_unlock_irqrestore(phba->host->host_lock, iflag); | 1393 | spin_unlock_irqrestore(phba->host->host_lock, iflag); |
1394 | } | 1394 | } |