blk-mq: Fix spurious debugfs directory creation during initialization
authorSaravanan D <saravanand@fb.com>
Wed, 7 Apr 2021 17:59:58 +0000 (10:59 -0700)
committerJens Axboe <axboe@kernel.dk>
Fri, 16 Apr 2021 21:17:01 +0000 (15:17 -0600)
commit1e91e28e374d0b0b912154c192716374609360d9
tree74d86b7e80d7a9702c5812df61f748230be887ee
parent7687b38ae470f01749e420079c36cccb24b8619a
blk-mq: Fix spurious debugfs directory creation during initialization

blk_mq_debugfs_register_sched_hctx() called from
device_add_disk()->elevator_init_mq()->blk_mq_init_sched()
initialization sequence does not have relevant parent directory
setup and thus spuriously attempts "sched" directory creation
from root mount of debugfs for every hw queue detected on the
block device

dmesg
...
debugfs: Directory 'sched' with parent '/' already present!
debugfs: Directory 'sched' with parent '/' already present!
.
.
debugfs: Directory 'sched' with parent '/' already present!
...

The parent debugfs directory for hw queues get properly setup
device_add_disk()->blk_register_queue()->blk_mq_debugfs_register()
->blk_mq_debugfs_register_hctx() later in the block device
initialization sequence.

A simple check for debugfs_dir has been added to thwart premature
debugfs directory/file creation attempts.

Signed-off-by: Saravanan D <saravanand@fb.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-mq-debugfs.c