summary refs log tree commit diff
path: root/block/blk-merge.c
diff options
context:
space:
mode:
authorMuchun Song <songmuchun@bytedance.com>2022-07-13 22:02:26 +0800
committerJens Axboe <axboe@kernel.dk>2022-07-14 10:54:49 -0600
commit957a2b345cbcf41b4b25d471229f0e35262f066c (patch)
tree44ec9c9d637dbb36bd9ca51aca5a91abb1dcbbc5 /block/blk-merge.c
parentc24b06e1c237ee2bf3245786b0ee844ddd1610be (diff)
downloadlinux-957a2b345cbcf41b4b25d471229f0e35262f066c.tar.gz
block: fix missing blkcg_bio_issue_init
The commit 513616843d73 ("block: remove superfluous calls to
blkcg_bio_issue_init") has removed blkcg_bio_issue_init from
__bio_clone since submit_bio will override ->bi_issue.
However, __blk_queue_split is called after blkcg_bio_issue_init
(see blk_mq_submit_bio) in submit_bio. In this case, the
->bi_issue is 0. Fix it.

Fixes: 513616843d73 ("block: remove superfluous calls to blkcg_bio_issue_init")
Signed-off-by: Muchun Song <songmuchun@bytedance.com>
Link: https://lore.kernel.org/r/20220713140226.68135-1-songmuchun@bytedance.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-merge.c')
-rw-r--r--block/blk-merge.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/block/blk-merge.c b/block/blk-merge.c
index 7771dacc99cb..f5e6527ebc9c 100644
--- a/block/blk-merge.c
+++ b/block/blk-merge.c
@@ -345,6 +345,7 @@ void __blk_queue_split(struct request_queue *q, struct bio **bio,
 		/* there isn't chance to merge the splitted bio */
 		split->bi_opf |= REQ_NOMERGE;
 
+		blkcg_bio_issue_init(split);
 		bio_chain(split, *bio);
 		trace_block_split(split, (*bio)->bi_iter.bi_sector);
 		submit_bio_noacct(*bio);