Blob Blame History Raw
From: Christoph Hellwig <hch@lst.de>
Date: Tue, 7 Jul 2020 19:45:03 +0200
Subject: [PATCH] block: remove a bogus warning in __submit_bio_noacct_mq
Git-commit: 0e6e255e7a58cdf4ee4163f83deeb5ce4946051e
Patch-mainline: v5.9-rc1
References: bsc#1175995,jsc#SLE-15608

If blk_mq_submit_bio flushes the plug list, bios for other disks can
show up on current->bio_list.  As that doesn't involve any stacking of
block device it is entirely harmless and we should not warn about
this case.

Fixes: ff93ea0ce763 ("block: shortcut __submit_bio_noacct for blk-mq drivers")
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Acked-by: Hannes Reinecke <hare@suse.com>
---
 block/blk-core.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/block/blk-core.c b/block/blk-core.c
index 9f1bf8658b61..93104c7470e8 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -1154,14 +1154,13 @@ static blk_qc_t __submit_bio_noacct(struct bio *bio)
 
 static blk_qc_t __submit_bio_noacct_mq(struct bio *bio)
 {
-	struct gendisk *disk = bio->bi_disk;
 	struct bio_list bio_list[2] = { };
 	blk_qc_t ret = BLK_QC_T_NONE;
 
 	current->bio_list = bio_list;
 
 	do {
-		WARN_ON_ONCE(bio->bi_disk != disk);
+		struct gendisk *disk = bio->bi_disk;
 
 		if (unlikely(bio_queue_enter(bio) != 0))
 			continue;
-- 
2.16.4