Hi, This two patches fix I/O hang of SCSI-MQ during system resume. The cause is that when SCSI device is put into SCSI's quiesce state, normal I/O request can't be dispatched to lld any more, only request with RQF_PREEMPT is allowed to be sent to drive. In current blk-mq implementation, if there is request in ->dispatch, no new request can't be dispatched to driver any more. This two patches fix the issue reported by Oleksandr. Thanks, Ming Ming Lei (2): blk-mq: add requests in the tail of hctx->dispatch blk-mq: align to legacy's implementation of blk_execute_rq block/blk-core.c | 2 +- block/blk-exec.c | 2 +- block/blk-flush.c | 2 +- block/blk-mq-sched.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++- block/blk-mq-sched.h | 2 ++ block/blk-mq.c | 2 +- 6 files changed, 65 insertions(+), 5 deletions(-) -- 2.9.5