block: add a sanity check for a live disk in del_gendisk
authorChristoph Hellwig <hch@lst.de>
Wed, 18 Aug 2021 14:45:32 +0000 (16:45 +0200)
committerJens Axboe <axboe@kernel.dk>
Mon, 23 Aug 2021 18:55:45 +0000 (12:55 -0600)
Add a sanity check to del_gendisk to do nothing when the disk wasn't
successfully added.  This papers over the complete lack of add_disk
error handling, which is about to get fixed gradually.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Link: https://lore.kernel.org/r/20210818144542.19305-2-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/genhd.c

index 02cd9ec93e52b87f81a2e16a2f44113b7e95cfbf..935f74c652f179f352b14f298a44150fb148bb1d 100644 (file)
@@ -579,7 +579,7 @@ void del_gendisk(struct gendisk *disk)
 {
        might_sleep();
 
-       if (WARN_ON_ONCE(!disk->queue))
+       if (WARN_ON_ONCE(!disk_live(disk)))
                return;
 
        blk_integrity_del(disk);