diff options
author | Dave Carroll <david.carroll@microsemi.com> | 2018-12-07 17:29:37 -0500 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2018-12-19 22:23:35 -0500 |
commit | a9a681017c3b43b9d9754dd87bebe5e0e244fe08 (patch) | |
tree | bd6f2427fa2df1250ba1fdf4985b0cbb983bf3fa /drivers/scsi/smartpqi | |
parent | a91aaae0243b419e52e97990471208321222be33 (diff) |
scsi: smartpqi: do not offline disks for transient did no connect conditions
Reviewed-by: Murthy Bhat <murthy.bhat@microsemi.com>
Reviewed-by: Mahesh Rajashekhara <mahesh.rajashekhara@microsemi.com>
Reviewed-by: Scott Teel <scott.teel@microsemi.com>
Reviewed-by: Kevin Barnett <kevin.barnett@microsemi.com>
Signed-off-by: Dave Carroll <david.carroll@microsemi.com>
Signed-off-by: Don Brace <don.brace@microsemi.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/smartpqi')
-rw-r--r-- | drivers/scsi/smartpqi/smartpqi_init.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c index d6fb49496796..f4080ac832dd 100644 --- a/drivers/scsi/smartpqi/smartpqi_init.c +++ b/drivers/scsi/smartpqi/smartpqi_init.c | |||
@@ -1686,6 +1686,7 @@ static void pqi_scsi_update_device(struct pqi_scsi_dev *existing_device, | |||
1686 | new_device->raid_bypass_configured; | 1686 | new_device->raid_bypass_configured; |
1687 | existing_device->raid_bypass_enabled = | 1687 | existing_device->raid_bypass_enabled = |
1688 | new_device->raid_bypass_enabled; | 1688 | new_device->raid_bypass_enabled; |
1689 | existing_device->device_offline = false; | ||
1689 | 1690 | ||
1690 | /* To prevent this from being freed later. */ | 1691 | /* To prevent this from being freed later. */ |
1691 | new_device->raid_map = NULL; | 1692 | new_device->raid_map = NULL; |
@@ -2589,10 +2590,9 @@ static inline void pqi_take_device_offline(struct scsi_device *sdev, char *path) | |||
2589 | return; | 2590 | return; |
2590 | 2591 | ||
2591 | device->device_offline = true; | 2592 | device->device_offline = true; |
2592 | scsi_device_set_state(sdev, SDEV_OFFLINE); | ||
2593 | ctrl_info = shost_to_hba(sdev->host); | 2593 | ctrl_info = shost_to_hba(sdev->host); |
2594 | pqi_schedule_rescan_worker(ctrl_info); | 2594 | pqi_schedule_rescan_worker(ctrl_info); |
2595 | dev_err(&ctrl_info->pci_dev->dev, "offlined %s scsi %d:%d:%d:%d\n", | 2595 | dev_err(&ctrl_info->pci_dev->dev, "re-scanning %s scsi %d:%d:%d:%d\n", |
2596 | path, ctrl_info->scsi_host->host_no, device->bus, | 2596 | path, ctrl_info->scsi_host->host_no, device->bus, |
2597 | device->target, device->lun); | 2597 | device->target, device->lun); |
2598 | } | 2598 | } |