From: Omar Sandoval <osandov@xxxxxx> This series makes several enhancements to blk-mq-debugfs. v2 adds patches 3, 4, and 5. It also exports a couple of symbols needed in patches 11 and 12. - Patch 1 is a subjective change. - Patch 2 is a cleanup. - Patches 3 and 4 are minor tweaks to the queue "state" attribute. - Patch 5 renames the hardware queue directories. - Patch 6 cleans up a bunch of seq_file boilerplate. - Patch 7 is Bart's patch from a couple of weeks ago, necessitated by patch 9. - Patch 8 is preparation cleanup for patches 9-12. - Patch 9 reworks the lifetimes of the debugfs attributes to be tied to the structure lifetimes themselves rather being duct taped on to sysfs. This is what I should have done in the first place, and would have also been a way to fix the same thing we fixed in e869b5462f83 ("blk-mq: Unregister debugfs attributes earlier"), but I didn't think of doing it this way until I started adding scheduler support. - Patch 10 allows schedulers to register debugfs attributes, implemented in patches 11 and 12 for kyber and mq-deadline, respectively. Bart Van Assche (1): blk-mq: Do not invoke queue operations on a dead queue Omar Sandoval (11): blk-mq-debugfs: separate flags with | blk-mq-debugfs: clean up flag definitions blk-mq-debugfs: error on long write to queue "state" file blk-mq-debugfs: don't open code strstrip() blk-mq-debugfs: rename hw queue directories from <n> to hctx<n> blk-mq-debugfs: get rid of a bunch of boilerplate blk-mq: move debugfs declarations to a separate header file blk-mq: untangle debugfs and sysfs blk-mq-debugfs: allow schedulers to register debugfs attributes kyber: add debugfs attributes mq-deadline: add debugfs attributes block/blk-core.c | 8 +- block/blk-mq-debugfs.c | 870 +++++++++++++++++++++-------------------------- block/blk-mq-debugfs.h | 79 +++++ block/blk-mq-sched.c | 24 +- block/blk-mq-sysfs.c | 10 - block/blk-mq.c | 7 + block/blk-mq.h | 28 -- block/blk-sysfs.c | 3 + block/kyber-iosched.c | 130 +++++++ block/mq-deadline.c | 123 +++++++ include/linux/blk-mq.h | 5 + include/linux/blkdev.h | 2 +- include/linux/elevator.h | 7 + 13 files changed, 764 insertions(+), 532 deletions(-) create mode 100644 block/blk-mq-debugfs.h -- 2.12.2