scsi: Do not rely on blk-mq for double completions
authorKeith Busch <keith.busch@intel.com>
Wed, 14 Nov 2018 16:26:00 +0000 (09:26 -0700)
committerJens Axboe <axboe@kernel.dk>
Mon, 19 Nov 2018 19:06:55 +0000 (12:06 -0700)
commit5f2b393a8ef678233e831edc2247109042593ce2
tree78dd143856ceab36bc23a49a31823a55a39e6640
parent3ee4a25231f7e1837efe41474475e44e1dec5f40
scsi: Do not rely on blk-mq for double completions

The scsi timeout error handling had been directly updating the request
state to prevent a natural completion and error handling from completing
the same request twice. Fix this layering violation by having scsi
control the fate of its commands with scsi owned flags rather than
use blk-mq's.

Signed-off-by: Keith Busch <keith.busch@intel.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/scsi/scsi_error.c
drivers/scsi/scsi_lib.c
include/scsi/scsi_cmnd.h