Merge tag 'for-6.1/block-2022-10-03' of git://git.kernel.dk/linux
[linux-block.git] / block / genhd.c
index d6a21803a57e2bb563f4047a456f555bd0caada9..514395361d7c588b5b4f6b7a8dba744cf2e467d0 100644 (file)
@@ -602,7 +602,6 @@ void del_gendisk(struct gendisk *disk)
         * Prevent new I/O from crossing bio_queue_enter().
         */
        blk_queue_start_drain(q);
-       blk_mq_freeze_queue_wait(q);
 
        if (!(disk->flags & GENHD_FL_HIDDEN)) {
                sysfs_remove_link(&disk_to_dev(disk)->kobj, "bdi");
@@ -626,6 +625,8 @@ void del_gendisk(struct gendisk *disk)
        pm_runtime_set_memalloc_noio(disk_to_dev(disk), false);
        device_del(disk_to_dev(disk));
 
+       blk_mq_freeze_queue_wait(q);
+
        blk_throtl_cancel_bios(disk);
 
        blk_sync_queue(q);