diff options
author | Sreekanth Reddy <Sreekanth.Reddy@lsi.com> | 2013-07-25 01:55:57 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2013-09-03 10:27:50 -0400 |
commit | 3627dba57f1030f307096b60e0c8f10d10ced6c8 (patch) | |
tree | 99cd93be3125f67ac05a8de336534f287d545b44 | |
parent | 6409a7d000020ffdd61082af8bb24291d2cdc1a6 (diff) |
[SCSI] mpt2sas: Change in MPI2_RAID_ACTION_SYSTEM_SHUTDOWN_INITIATED notification methodology
The intent of this patch is to perform a graceful shutdown of target drives even if
volume doesn't exits. Changes done in this patch
1. Removed the check for the presence of volumes before sending down
MPI2_RAID_ACTION_SYSTEM_SHUTDOWN_INITIATED. Therefore, this RAID action
would be sent if the card is IR Firmware.
2. The MPI2_RAID_ACTION_SYSTEM_SHUTDOWN_INITIATED is sent even when the
system undergoes suspend (in addition to remove/shutdown which was already
present)
Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@lsi.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r-- | drivers/scsi/mpt2sas/mpt2sas_scsih.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/scsi/mpt2sas/mpt2sas_scsih.c b/drivers/scsi/mpt2sas/mpt2sas_scsih.c index 2dbd2262f3d5..ba12b55a08e9 100644 --- a/drivers/scsi/mpt2sas/mpt2sas_scsih.c +++ b/drivers/scsi/mpt2sas/mpt2sas_scsih.c | |||
@@ -7710,10 +7710,6 @@ _scsih_ir_shutdown(struct MPT2SAS_ADAPTER *ioc) | |||
7710 | if (!ioc->ir_firmware) | 7710 | if (!ioc->ir_firmware) |
7711 | return; | 7711 | return; |
7712 | 7712 | ||
7713 | /* are there any volumes ? */ | ||
7714 | if (list_empty(&ioc->raid_device_list)) | ||
7715 | return; | ||
7716 | |||
7717 | mutex_lock(&ioc->scsih_cmds.mutex); | 7713 | mutex_lock(&ioc->scsih_cmds.mutex); |
7718 | 7714 | ||
7719 | if (ioc->scsih_cmds.status != MPT2_CMD_NOT_USED) { | 7715 | if (ioc->scsih_cmds.status != MPT2_CMD_NOT_USED) { |
@@ -8280,6 +8276,7 @@ _scsih_suspend(struct pci_dev *pdev, pm_message_t state) | |||
8280 | 8276 | ||
8281 | mpt2sas_base_stop_watchdog(ioc); | 8277 | mpt2sas_base_stop_watchdog(ioc); |
8282 | scsi_block_requests(shost); | 8278 | scsi_block_requests(shost); |
8279 | _scsih_ir_shutdown(ioc); | ||
8283 | device_state = pci_choose_state(pdev, state); | 8280 | device_state = pci_choose_state(pdev, state); |
8284 | printk(MPT2SAS_INFO_FMT "pdev=0x%p, slot=%s, entering " | 8281 | printk(MPT2SAS_INFO_FMT "pdev=0x%p, slot=%s, entering " |
8285 | "operating state [D%d]\n", ioc->name, pdev, | 8282 | "operating state [D%d]\n", ioc->name, pdev, |