Don Brace f749d8b7a9 scsi: hpsa: Correct dev cmds outstanding for retried cmds
Prevent incrementing device->commands_outstanding for ioaccel command
retries that are driver initiated.  If the command goes through the retry
path, the device->commands_outstanding counter has already accounted for
the number of commands outstanding to the device.  Only commands going
through function hpsa_cmd_resolve_events decrement this counter.

 - ioaccel commands go to either HBA disks or to logical volumes comprised
   of SSDs.

The extra increment is causing device resets to hang.

 - Resets wait for all device outstanding commands to complete before
   returning.

Replace unused field abort_pending with retry_pending. This is a
maintenance driver so these changes have the least impact/risk.

Link: https://lore.kernel.org/r/161342801747.29388.13045495968308188518.stgit@brunhilda
Tested-by: Joe Szczypek <jszczype@redhat.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Reviewed-by: Tomas Henzl <thenzl@redhat.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2021-02-22 22:43:48 -05:00
..
2020-12-24 12:18:11 -08:00
2020-12-24 12:28:35 -08:00
2020-12-16 16:38:41 -08:00
2020-12-18 12:38:28 -08:00
2020-12-16 16:38:41 -08:00
2020-12-24 12:18:11 -08:00
2020-12-17 12:52:23 -08:00
2020-12-24 12:14:29 -08:00
2020-12-07 10:08:14 +01:00
2020-12-15 16:06:14 -08:00
2020-12-16 11:49:46 -08:00
2020-12-15 16:30:31 -08:00
2021-01-01 12:58:07 -08:00
2020-12-16 13:58:47 -08:00
2020-12-20 10:44:05 -08:00
2020-12-09 19:26:02 -06:00
2020-12-16 16:38:41 -08:00
2020-12-17 13:34:25 -08:00
2020-12-15 15:57:25 -08:00
2020-12-16 13:42:26 -08:00
2020-12-15 14:02:26 -08:00
2020-12-25 20:17:40 -08:00
2020-12-23 15:06:22 -08:00
2020-12-15 22:50:12 +11:00
2020-12-19 11:51:32 -08:00
2020-12-16 16:38:41 -08:00
2020-12-16 16:38:41 -08:00
2020-12-20 10:12:06 -08:00
2020-12-17 13:41:27 -08:00
2020-12-10 10:45:36 +01:00
2020-12-18 12:38:28 -08:00
2020-12-16 16:38:41 -08:00
2020-12-17 13:41:27 -08:00
2020-12-17 13:34:25 -08:00
2020-12-20 10:44:05 -08:00
2020-12-18 12:38:28 -08:00
2020-12-09 19:44:34 +01:00
2020-12-23 15:01:49 -08:00