aboutsummaryrefslogtreecommitdiffstats
path: root/block/ll_rw_blk.c
diff options
context:
space:
mode:
Diffstat (limited to 'block/ll_rw_blk.c')
-rw-r--r--block/ll_rw_blk.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c
index ef42bb2b12b6..3795e0708a22 100644
--- a/block/ll_rw_blk.c
+++ b/block/ll_rw_blk.c
@@ -4091,6 +4091,13 @@ int blk_register_queue(struct gendisk *disk)
4091 return ret; 4091 return ret;
4092 } 4092 }
4093 4093
4094 ret = bsg_register_disk(disk);
4095 if (ret) {
4096 elv_unregister_queue(q);
4097 kobject_unregister(&q->kobj);
4098 return ret;
4099 }
4100
4094 return 0; 4101 return 0;
4095} 4102}
4096 4103
@@ -4099,6 +4106,7 @@ void blk_unregister_queue(struct gendisk *disk)
4099 request_queue_t *q = disk->queue; 4106 request_queue_t *q = disk->queue;
4100 4107
4101 if (q && q->request_fn) { 4108 if (q && q->request_fn) {
4109 bsg_unregister_disk(disk);
4102 elv_unregister_queue(q); 4110 elv_unregister_queue(q);
4103 4111
4104 kobject_uevent(&q->kobj, KOBJ_REMOVE); 4112 kobject_uevent(&q->kobj, KOBJ_REMOVE);