summaryrefslogtreecommitdiff
path: root/drivers/block/null_blk.c
diff options
context:
space:
mode:
authorMatias Bjørling <m@bjorling.me>2015-11-19 11:50:10 (GMT)
committerJens Axboe <axboe@fb.com>2015-11-19 22:15:56 (GMT)
commit54514aa465e94316a4bf1c5dfe970536bec3e76f (patch)
tree0ca50311d5889caa98cd868ddc65e993c994995c /drivers/block/null_blk.c
parent5b40db99099ddebe31e9b1b759894cf09c0c6679 (diff)
downloadlinux-54514aa465e94316a4bf1c5dfe970536bec3e76f.tar.xz
null_blk: do not del gendisk with lightnvm
The gendisk structure has not been initialized when using lightnvm. Make sure to not delete it upon exit. Also make sure that we use the appropriate disk_name at unregistration. Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/block/null_blk.c')
-rw-r--r--drivers/block/null_blk.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/block/null_blk.c b/drivers/block/null_blk.c
index d51c24a..5c8ba54 100644
--- a/drivers/block/null_blk.c
+++ b/drivers/block/null_blk.c
@@ -435,12 +435,14 @@ static void null_del_dev(struct nullb *nullb)
list_del_init(&nullb->list);
if (use_lightnvm)
- nvm_unregister(nullb->disk->disk_name);
- del_gendisk(nullb->disk);
+ nvm_unregister(nullb->disk_name);
+ else
+ del_gendisk(nullb->disk);
blk_cleanup_queue(nullb->q);
if (queue_mode == NULL_Q_MQ)
blk_mq_free_tag_set(&nullb->tag_set);
- put_disk(nullb->disk);
+ if (!use_lightnvm)
+ put_disk(nullb->disk);
cleanup_queues(nullb);
kfree(nullb);
}