All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] blk-mq: fix I/O hang during system resume
@ 2017-08-30 15:19 Ming Lei
  2017-08-30 15:19 ` Ming Lei
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Ming Lei @ 2017-08-30 15:19 UTC (permalink / raw)
  To: Jens Axboe, linux-block, Christoph Hellwig
  Cc: Bart Van Assche, Oleksandr Natalenko, Ming Lei

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-08-30 16:58 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-30 15:19 [PATCH 0/2] blk-mq: fix I/O hang during system resume Ming Lei
2017-08-30 15:19 ` Ming Lei
2017-08-30 15:19 ` [PATCH 1/2] blk-mq: add requests in the tail of hctx->dispatch Ming Lei
2017-08-30 15:22   ` Jens Axboe
2017-08-30 15:39     ` Ming Lei
2017-08-30 15:51       ` Jens Axboe
2017-08-30 16:58         ` Ming Lei
2017-08-30 15:19 ` [PATCH 2/2] blk-mq: align to legacy's implementation of blk_execute_rq Ming Lei

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.