diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2022-11-01 00:54:13 +0000 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2022-10-31 20:21:38 -0600 |
commit | 878eb6e48f240d02ed1c9298020a0b6370695f24 (patch) | |
tree | 8050bed961e402b3570ae40aba36e3e27c8424d8 /block | |
parent | 943f45b9399ed8b2b5190cbc797995edaa97f58f (diff) | |
download | linux-878eb6e48f240d02ed1c9298020a0b6370695f24.tar.bz2 |
block: blk_add_rq_to_plug(): clear stale 'last' after flush
blk_mq_flush_plug_list() empties ->mq_list and request we'd peeked there
before that call is gone; in any case, we are not dealing with a mix
of requests for different queues now - there's no requests left in the
plug.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
-rw-r--r-- | block/blk-mq.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/block/blk-mq.c b/block/blk-mq.c index 21cc7c2da0f9..6a789cda68a5 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -1262,6 +1262,7 @@ static void blk_add_rq_to_plug(struct blk_plug *plug, struct request *rq) (!blk_queue_nomerges(rq->q) && blk_rq_bytes(last) >= BLK_PLUG_FLUSH_SIZE)) { blk_mq_flush_plug_list(plug, false); + last = NULL; trace_block_plug(rq->q); } |