|
@@ -393,9 +393,8 @@ static int blk_mq_register_hctx(struct blk_mq_hw_ctx *hctx)
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|
|
-static void __blk_mq_unregister_disk(struct gendisk *disk)
|
|
|
|
|
|
+static void __blk_mq_unregister_dev(struct device *dev, struct request_queue *q)
|
|
{
|
|
{
|
|
- struct request_queue *q = disk->queue;
|
|
|
|
struct blk_mq_hw_ctx *hctx;
|
|
struct blk_mq_hw_ctx *hctx;
|
|
struct blk_mq_ctx *ctx;
|
|
struct blk_mq_ctx *ctx;
|
|
int i, j;
|
|
int i, j;
|
|
@@ -413,15 +412,15 @@ static void __blk_mq_unregister_disk(struct gendisk *disk)
|
|
kobject_del(&q->mq_kobj);
|
|
kobject_del(&q->mq_kobj);
|
|
kobject_put(&q->mq_kobj);
|
|
kobject_put(&q->mq_kobj);
|
|
|
|
|
|
- kobject_put(&disk_to_dev(disk)->kobj);
|
|
|
|
|
|
+ kobject_put(&dev->kobj);
|
|
|
|
|
|
q->mq_sysfs_init_done = false;
|
|
q->mq_sysfs_init_done = false;
|
|
}
|
|
}
|
|
|
|
|
|
-void blk_mq_unregister_disk(struct gendisk *disk)
|
|
|
|
|
|
+void blk_mq_unregister_dev(struct device *dev, struct request_queue *q)
|
|
{
|
|
{
|
|
blk_mq_disable_hotplug();
|
|
blk_mq_disable_hotplug();
|
|
- __blk_mq_unregister_disk(disk);
|
|
|
|
|
|
+ __blk_mq_unregister_dev(dev, q);
|
|
blk_mq_enable_hotplug();
|
|
blk_mq_enable_hotplug();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -443,10 +442,8 @@ static void blk_mq_sysfs_init(struct request_queue *q)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-int blk_mq_register_disk(struct gendisk *disk)
|
|
|
|
|
|
+int blk_mq_register_dev(struct device *dev, struct request_queue *q)
|
|
{
|
|
{
|
|
- struct device *dev = disk_to_dev(disk);
|
|
|
|
- struct request_queue *q = disk->queue;
|
|
|
|
struct blk_mq_hw_ctx *hctx;
|
|
struct blk_mq_hw_ctx *hctx;
|
|
int ret, i;
|
|
int ret, i;
|
|
|
|
|
|
@@ -467,7 +464,7 @@ int blk_mq_register_disk(struct gendisk *disk)
|
|
}
|
|
}
|
|
|
|
|
|
if (ret)
|
|
if (ret)
|
|
- __blk_mq_unregister_disk(disk);
|
|
|
|
|
|
+ __blk_mq_unregister_dev(dev, q);
|
|
else
|
|
else
|
|
q->mq_sysfs_init_done = true;
|
|
q->mq_sysfs_init_done = true;
|
|
out:
|
|
out:
|
|
@@ -475,7 +472,7 @@ out:
|
|
|
|
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
-EXPORT_SYMBOL_GPL(blk_mq_register_disk);
|
|
|
|
|
|
+EXPORT_SYMBOL_GPL(blk_mq_register_dev);
|
|
|
|
|
|
void blk_mq_sysfs_unregister(struct request_queue *q)
|
|
void blk_mq_sysfs_unregister(struct request_queue *q)
|
|
{
|
|
{
|