From: Christoph Hellwig Date: Thu, 13 Apr 2023 06:40:38 +0000 (+0200) Subject: blk-mq: don't plug for head insertions in blk_execute_rq_nowait X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=50947d7fe9fa6abe3ddc40769dfb02a51c58edb6;p=linux.git blk-mq: don't plug for head insertions in blk_execute_rq_nowait Plugs never insert at head, so don't plug for head insertions. Fixes: 1c2d2fff6dc0 ("block: wire-up support for passthrough plugging") Signed-off-by: Christoph Hellwig Reviewed-by: Bart Van Assche Reviewed-by: Damien Le Moal Link: https://lore.kernel.org/r/20230413064057.707578-2-hch@lst.de Signed-off-by: Jens Axboe --- diff --git a/block/blk-mq.c b/block/blk-mq.c index 52f8e0099c7f4..7908d19f14081 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -1299,7 +1299,7 @@ void blk_execute_rq_nowait(struct request *rq, bool at_head) * device, directly accessing the plug instead of using blk_mq_plug() * should not have any consequences. */ - if (current->plug) + if (current->plug && !at_head) blk_add_rq_to_plug(current->plug, rq); else blk_mq_sched_insert_request(rq, at_head, true, false);