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>steinar/wifi_calib_4_9_kernel
parent
5b40db9909
commit
54514aa465
|
@ -435,12 +435,14 @@ static void null_del_dev(struct nullb *nullb)
|
||||||
list_del_init(&nullb->list);
|
list_del_init(&nullb->list);
|
||||||
|
|
||||||
if (use_lightnvm)
|
if (use_lightnvm)
|
||||||
nvm_unregister(nullb->disk->disk_name);
|
nvm_unregister(nullb->disk_name);
|
||||||
del_gendisk(nullb->disk);
|
else
|
||||||
|
del_gendisk(nullb->disk);
|
||||||
blk_cleanup_queue(nullb->q);
|
blk_cleanup_queue(nullb->q);
|
||||||
if (queue_mode == NULL_Q_MQ)
|
if (queue_mode == NULL_Q_MQ)
|
||||||
blk_mq_free_tag_set(&nullb->tag_set);
|
blk_mq_free_tag_set(&nullb->tag_set);
|
||||||
put_disk(nullb->disk);
|
if (!use_lightnvm)
|
||||||
|
put_disk(nullb->disk);
|
||||||
cleanup_queues(nullb);
|
cleanup_queues(nullb);
|
||||||
kfree(nullb);
|
kfree(nullb);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue