Patch "blk-mq: don't call io sched's .requeue_request when requeueing rq to ->dispatch" has been added to the 4.15-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
blk-mq: don't call io sched's .requeue_request when requeueing rq to ->dispatch
to the 4.15-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
blk-mq-don-t-call-io-sched-s-.requeue_request-when-requeueing-rq-to-dispatch.patch
and it can be found in the queue-4.15 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
105976f517791aed3b11f8f53b308a2069d42055Mon Sep 17 00:00:00 2001
From: Ming Lei <[email protected]>
Date: Fri, 23 Feb 2018 23:36:56 +0800
Subject: blk-mq: don't call io sched's .requeue_request when requeueing rq to ->dispatch
From: Ming Lei <[email protected]>
commit 105976f517791aed3b11f8f53b308a2069d42055 upstream.
__blk_mq_requeue_request() covers two cases:
- one is that the requeued request is added to hctx->dispatch, such as blk_mq_dispatch_rq_list()
- another case is that the request is requeued to io scheduler, such as blk_mq_requeue_request().
We should call io sched's .requeue_request callback only for the 2nd case.
--- block/blk-mq.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
block/blk-mq.c +3 -1
@@ -655,7 +655,6 @@ static void __blk_mq_requeue_request(strtrace_block_rq_requeue (q, rq);wbt_requeue (q->rq_wb, &rq->issue_stat); -blk_mq_sched_requeue_request (rq);if (test_and_clear_bit (REQ_ATOM_STARTED , &rq->atomic_flags)) {if (q->dma_drain_size &&blk_rq_bytes (rq))
@@ -667,6 +666,9 @@ void blk_mq_requeue_request(struct reque {__blk_mq_requeue_request (rq); +/* this request will be re-inserted to io scheduler queue */ +blk_mq_sched_requeue_request (rq); +BUG_ON (blk_queued_rq (rq));blk_mq_add_to_requeue_list (rq, true, kick_requeue_list); }
Patches currently in stable-queue which might be from [email protected] are
queue-4.15/block-pass-inclusive-lend-parameter-to-truncate_inode_pages_range.patch queue-4.15/blk-mq-don-t-call-io-sched-s-.requeue_request-when-requeueing-rq-to-dispatch.patch queue-4.15/block-kyber-fix-domain-token-leak-during-requeue.patch