ncr5380: Call complete_cmd() for disconnected commands on bus reset
authorFinn Thain <fthain@telegraphics.com.au>
Wed, 23 Mar 2016 10:10:32 +0000 (21:10 +1100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Mon, 11 Apr 2016 20:57:09 +0000 (16:57 -0400)
commit216fad91387aab7c9e69fe0854d843f012968748
tree5b9f2eca7dbb0c421974ff676dfb08e9cef74260
parent3a0f64bfa90700c4fa9db0ed2d701300edd9a0b3
ncr5380: Call complete_cmd() for disconnected commands on bus reset

I'm told that some targets are liable to disconnect a REQUEST SENSE
command. Theoretically this would cause a command undergoing autosense to
be moved onto the disconnected list. The bus reset handler must call
complete_cmd() for these commands, otherwise the hostdata->sensing pointer
will not get cleared. That would cause autosense processing to stall and
a timeout or an incorrect scsi_eh_restore_cmnd() would eventually follow.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reported-by: Michael Schmitz <schmitzmic@gmail.com>
Tested-by: Ondrej Zary <linux@rainbow-software.org>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/NCR5380.c