]> git.itanic.dy.fi Git - linux-stable/blobdiff - block/genhd.c
Revert "block: freeze the queue earlier in del_gendisk"
[linux-stable] / block / genhd.c
index e7ab9f3b869cba6c4a5e441397b6ba276d7e6adf..a39c416d658fd39bd51ee89b6b53634402a91547 100644 (file)
@@ -625,7 +625,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");
@@ -649,6 +648,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->queue);
 
        blk_sync_queue(q);