Skip to content

blk-mq-sched: scheduler support and cleanups

Omar Sandoval linux-block 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest12 patches 18 repliesIn review
  2. v19 patches 3 repliesSuperseded

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/12blk-mq-debugfs: separate flags with |block/blk-mq-debugfs.c+1 -11 reply
2/12blk-mq-debugfs: clean up flag definitionsblock/blk-mq-debugfs.c+108 -931 reply
3/12blk-mq-debugfs: error on long write to queue "state" fileblock/blk-mq-debugfs.c+12 -72 replies
4/12blk-mq-debugfs: don't open code strstrip()block/blk-mq-debugfs.c+4 -52 replies
5/12blk-mq-debugfs: rename hw queue directories from <n> to hctx<n>block/blk-mq-debugfs.c+1 -12 replies
6/12blk-mq-debugfs: get rid of a bunch of boilerplateblock/blk-mq-debugfs.c+136 -3282 replies
7/12blk-mq: Do not invoke queue operations on a dead queueblock/blk-mq-debugfs.c+8 -01 reply
8/12blk-mq: move debugfs declarations to a separate header fileblock/blk-core.c block/blk-mq-debugfs.c block/blk-mq-debugfs.h +3 more+33 -281 reply
9/12blk-mq: untangle debugfs and sysfsblock/blk-core.c block/blk-mq-debugfs.c block/blk-mq-debugfs.h +5 more+94 -711 reply
10/12blk-mq-debugfs: allow schedulers to register debugfs attributesblock/blk-mq-debugfs.c block/blk-mq-debugfs.h block/blk-mq-sched.c +3 more+124 -172 replies
11/12kyber: add debugfs attributesblock/blk-mq-debugfs.c block/blk-mq-debugfs.h block/kyber-iosched.c+134 -12 replies
12/12mq-deadline: add debugfs attributesblock/blk-mq-debugfs.c block/blk-mq-debugfs.h block/mq-deadline.c+131 -21 reply

Reviews trailers per patch

10 of 12 patches have a Reviewed-by or Acked-by.

PatchHannes ReineckeBart Van Assche
1/12R-b
2/12R-b
3/12R-b R-b
4/12R-b
5/12
6/12R-b R-b
7/12R-b
8/12R-b
9/12
10/12R-b
11/12R-b
12/12R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v2 thread

Cover letter [PATCH v2 00/12] blk-mq-sched: scheduler support and cleanups

From: Omar Sandoval <[email protected]>

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
Signature · 1 line
2.12.2