summaryrefslogtreecommitdiff
path: root/drivers/scsi/3w-sas.h
diff options
context:
space:
mode:
authorJohn Garry <john.g.garry@oracle.com>2023-04-16 20:56:54 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2023-04-19 05:58:50 +0300
commit0c028b6a115e7f18480ec3f98ba7bccf011646ea (patch)
treeae6d7b241163ba1fbe166e795b8bd452fe030a8c /drivers/scsi/3w-sas.h
parent3c85f087faeca3ca9ec9e7b085e1eff370e3f0db (diff)
downloadlinux-0c028b6a115e7f18480ec3f98ba7bccf011646ea.tar.xz
scsi: scsi_debug: Abort commands from scsi_debug_device_reset()
Currently scsi_debug_device_reset() does not do much apart from setting the SDEBUG_UA_POR ("Power on, reset, or bus device reset") flag, which is eventually passed back to the SCSI midlayer later for a "unit attention" command. There is a report that blktest scsi/007 test fails due to commit 1107c7b24ee3 ("scsi: scsi_debug: Dynamically allocate sdebug_queued_cmd"). The problem there is that there are dangling scsi_debug queued commands when we attempt to remove the driver. scsi/007 test triggers SCSI EH and attempts to abort a timed-out command. Function scsi_debug_device_reset() is called as part of the EH, but does not deal with outstanding erroneous command. Prior to the named commit, removing the driver caused all dangling queued commands to be stopped - this should have not been necessary. Fix by aborting outstanding commands on a scsi_device basis from scsi_debug_device_reset(). Fixes: 1107c7b24ee3 ("scsi: scsi_debug: Dynamically allocate sdebug_queued_cmd") Reported-by: kernel test robot <yujie.liu@intel.com> Link: https://lore.kernel.org/oe-lkp/202304071111.e762fcbd-yujie.liu@intel.com Signed-off-by: John Garry <john.g.garry@oracle.com> Link: https://lore.kernel.org/r/20230416175654.159163-1-john.g.garry@oracle.com Reviewed-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/3w-sas.h')
0 files changed, 0 insertions, 0 deletions