Hi,
This two patches fix SCSI I/O hang 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