diff options
author | Matias Bjørling <m@bjorling.me> | 2015-11-19 14:50:10 +0300 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2015-11-20 01:15:56 +0300 |
commit | 54514aa465e94316a4bf1c5dfe970536bec3e76f (patch) | |
tree | 0ca50311d5889caa98cd868ddc65e993c994995c /drivers/block/null_blk.c | |
parent | 5b40db99099ddebe31e9b1b759894cf09c0c6679 (diff) | |
download | linux-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.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/block/null_blk.c b/drivers/block/null_blk.c index d51c24ac529f..5c8ba5484d86 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); } |