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@xxxxxxxxx> Signed-off-by: Christoph Hellwig <hch@xxxxxx> --- 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 9f1bf8658b611a..93104c7470e8ac 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.26.2