rbd: unfreeze queue after marking disk as dead
authorMing Lei <ming.lei@redhat.com>
Thu, 31 Oct 2024 13:37:18 +0000 (21:37 +0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 7 Nov 2024 23:27:22 +0000 (16:27 -0700)
Unfreeze queue after returning from blk_mark_disk_dead(), this way at
least allows us to verify queue freeze correctly with lockdep.

Suggested-by: Christoph Hellwig <hch@lst.de>
Cc: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20241031133723.303835-3-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/rbd.c

index 9c8b19a..ac421db 100644 (file)
@@ -7284,6 +7284,7 @@ static ssize_t do_rbd_remove(const char *buf, size_t count)
                 */
                blk_mq_freeze_queue(rbd_dev->disk->queue);
                blk_mark_disk_dead(rbd_dev->disk);
+               blk_mq_unfreeze_queue(rbd_dev->disk->queue);
        }
 
        del_gendisk(rbd_dev->disk);