aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/smartpqi/smartpqi_init.c
diff options
context:
space:
mode:
authorKevin Barnett <kevin.barnett@microsemi.com>2016-08-31 14:54:53 -0500
committerMartin K. Petersen <martin.petersen@oracle.com>2016-09-02 06:21:38 -0400
commit5e6429df9c8b3ab9e0a8d18af5248692ebe41871 (patch)
treefb5dee267a5d7205ee77a9abcf1104378d1ae566 /drivers/scsi/smartpqi/smartpqi_init.c
parentscsi: smartpqi: correct controller offline issue (diff)
downloadlinux-dev-5e6429df9c8b3ab9e0a8d18af5248692ebe41871.tar.xz
linux-dev-5e6429df9c8b3ab9e0a8d18af5248692ebe41871.zip
scsi: smartpqi: correct event acknowledgment timeout issue
the driver no longer waits for the firmware to consume the event ack IU. Reviewed-by: Scott Teel <scott.teel@microsemi.com> Reviewed-by: Scott Benesh <scott.benesh@microsemi.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Reviewed-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: Kevin Barnett <kevin.barnett@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/smartpqi_init.c')
-rw-r--r--drivers/scsi/smartpqi/smartpqi_init.c20
1 files changed, 0 insertions, 20 deletions
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index d759703da287..ea822b19b349 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -2642,26 +2642,6 @@ static void pqi_start_event_ack(struct pqi_ctrl_info *ctrl_info,
writel(iq_pi, queue_group->iq_pi[RAID_PATH]);
spin_unlock_irqrestore(&queue_group->submit_lock[RAID_PATH], flags);
-
- /*
- * We have to special-case this type of request because the firmware
- * does not generate an interrupt when this type of request completes.
- * Therefore, we have to poll until we see that the firmware has
- * consumed the request before we move on.
- */
-
- timeout = (PQI_EVENT_ACK_TIMEOUT * HZ) + jiffies;
-
- while (1) {
- if (*queue_group->iq_ci[RAID_PATH] == iq_pi)
- break;
- if (time_after(jiffies, timeout)) {
- dev_err(&ctrl_info->pci_dev->dev,
- "completing event acknowledge timed out\n");
- break;
- }
- usleep_range(1000, 2000);
- }
}
static void pqi_acknowledge_event(struct pqi_ctrl_info *ctrl_info,