block: add WARN_ON if bdi register fail
authorweiping zhang <zhangweiping@didichuxing.com>
Tue, 31 Oct 2017 10:38:59 +0000 (18:38 +0800)
committerJens Axboe <axboe@kernel.dk>
Sun, 19 Nov 2017 18:02:13 +0000 (11:02 -0700)
device_add_disk need do more safety error handle, so this patch just
add WARN_ON.

Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: weiping zhang <zhangweiping@didichuxing.com>
Adapted for current series by me.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/genhd.c

index c2223f1..c143a22 100644 (file)
@@ -671,10 +671,13 @@ void device_add_disk(struct device *parent, struct gendisk *disk)
                disk->flags |= GENHD_FL_SUPPRESS_PARTITION_INFO;
                disk->flags |= GENHD_FL_NO_PART_SCAN;
        } else {
+               int ret;
+
                /* Register BDI before referencing it from bdev */
                disk_to_dev(disk)->devt = devt;
-               bdi_register_owner(disk->queue->backing_dev_info,
-                               disk_to_dev(disk));
+               ret = bdi_register_owner(disk->queue->backing_dev_info,
+                                               disk_to_dev(disk));
+               WARN_ON(ret);
                blk_register_region(disk_devt(disk), disk->minors, NULL,
                                    exact_match, exact_lock, disk);
        }