summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorOmar Sandoval <osandov@fb.com>2017-01-31 23:53:21 +0100
committerJens Axboe <axboe@fb.com>2017-02-02 18:20:16 +0100
commit62ebce16c0ac2ffac44e32f931a2d8f6e749be4c (patch)
treee49141e8e4bf7da4984f911812f6a1ffefed7576 /block
parentblock: use same block debugfs directory for blk-mq and blktrace (diff)
downloadlinux-62ebce16c0ac2ffac44e32f931a2d8f6e749be4c.tar.xz
linux-62ebce16c0ac2ffac44e32f931a2d8f6e749be4c.zip
blk-mq: move debugfs_remove() of disk dir to blk_release_queue()
This needs to happen after we tear down blktrace. Signed-off-by: Omar Sandoval <osandov@fb.com> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'block')
-rw-r--r--block/blk-mq-sysfs.c2
-rw-r--r--block/blk-sysfs.c3
2 files changed, 4 insertions, 1 deletions
diff --git a/block/blk-mq-sysfs.c b/block/blk-mq-sysfs.c
index 308b3f4fc310..295e69670c39 100644
--- a/block/blk-mq-sysfs.c
+++ b/block/blk-mq-sysfs.c
@@ -254,7 +254,7 @@ static void __blk_mq_unregister_dev(struct device *dev, struct request_queue *q)
kobject_put(&hctx->kobj);
}
- blk_mq_debugfs_unregister(q);
+ blk_mq_debugfs_unregister_hctxs(q);
kobject_uevent(&q->mq_kobj, KOBJ_REMOVE);
kobject_del(&q->mq_kobj);
diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
index 3e204789b8d3..3ce1217778f4 100644
--- a/block/blk-sysfs.c
+++ b/block/blk-sysfs.c
@@ -824,6 +824,9 @@ static void blk_release_queue(struct kobject *kobj)
blk_trace_shutdown(q);
+ if (q->mq_ops)
+ blk_mq_debugfs_unregister(q);
+
if (q->bio_split)
bioset_free(q->bio_split);