Merge tag 'pm+acpi-4.6-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael...
[linux-2.6-block.git] / block / blk-mq-sysfs.c
index 1cf18784c5cf3c44be94dbd003ca9d7088f883e0..4ea4dd8a1eed5a46763fd59f391faad8ff91d3b5 100644 (file)
@@ -408,19 +408,22 @@ void blk_mq_unregister_disk(struct gendisk *disk)
        blk_mq_enable_hotplug();
 }
 
+void blk_mq_hctx_kobj_init(struct blk_mq_hw_ctx *hctx)
+{
+       kobject_init(&hctx->kobj, &blk_mq_hw_ktype);
+}
+
 static void blk_mq_sysfs_init(struct request_queue *q)
 {
-       struct blk_mq_hw_ctx *hctx;
        struct blk_mq_ctx *ctx;
-       int i;
+       int cpu;
 
        kobject_init(&q->mq_kobj, &blk_mq_ktype);
 
-       queue_for_each_hw_ctx(q, hctx, i)
-               kobject_init(&hctx->kobj, &blk_mq_hw_ktype);
-
-       queue_for_each_ctx(q, ctx, i)
+       for_each_possible_cpu(cpu) {
+               ctx = per_cpu_ptr(q->queue_ctx, cpu);
                kobject_init(&ctx->kobj, &blk_mq_ctx_ktype);
+       }
 }
 
 int blk_mq_register_disk(struct gendisk *disk)