blk-mq: move debugging information from sysfs to debugfs
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest10 patches 4 repliesIn review
- v110 patches 11 repliesSuperseded
Changes in v2 from the cover letter
- Make the sbitmap seq_file helpers take a (struct sbitmap *) instead of a (void *), since it's not possible to use them directly as the seq_file show helper, anyways
- Fix a crash when reading ctx_map because it was attempting to do exactly that ^
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/10 | blk-mq: create debugfs directory treeblock/ block/ block/ +3 more | +201 | 1 reply | |
| 2/10 | blk-mq: add hctx->{state,flags} to debugfsblock/ | +42 | 0 replies | |
| 3/10 | blk-mq: move hctx->dispatch and ctx->rq_list from sysfs to debugfsblock/ block/ | +106 | 2 replies | |
| 4/10 | blk-mq: add extra request information to debugfsblock/ | +3 | 0 replies | |
| 5/10 | sbitmap: add helpers for dumping to a seq_fileinclude/ lib/ | +102 | 2 replies | |
| 6/10 | blk-mq: export software queue pending map to debugfsblock/ | +21 | 0 replies | |
| 7/10 | blk-mq: move tags and sched_tags info from sysfs to debugfsblock/ block/ block/ +1 more | +86 | 0 replies | |
| 8/10 | blk-mq: add tags and sched_tags bitmaps to debugfsblock/ | +50 | 0 replies | |
| 9/10 | blk-mq: move hctx io_poll, stats, and dispatched from sysfs to debugfsblock/ block/ | +132 | 0 replies | |
| 10/10 | blk-mq: move hctx and ctx counters from sysfs to debugfsblock/ block/ | +181 | 0 replies |
Reviews trailers per patch
9 of 10 patches have a Reviewed-by or Acked-by.
| Patch | Hannes Reinecke |
|---|---|
| 1/10 | R-b |
| 2/10 | |
| 3/10 | R-b |
| 4/10 | R-b |
| 5/10 | R-b R-b |
| 6/10 | R-b |
| 7/10 | R-b |
| 8/10 | R-b |
| 9/10 | R-b |
| 10/10 | R-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v2 00/10] blk-mq: move debugging information from sysfs to debugfs
From: Omar Sandoval <[email protected]>
Changes from v1:
- Make the sbitmap seq_file helpers take a (struct sbitmap *) instead of a (void *), since it's not possible to use them directly as the seq_file show helper, anyways
- Fix a crash when reading ctx_map because it was attempting to do exactly that ^
Cover letter from v1:
This series ends our abuse of sysfs and puts all of the debugging information in debugfs instead. This has a few benefits:
1. Removes the possibility of userspace being stupid and relying on something in sysfs that we only exposed for debugging.
2. Lifts the limitations of sysfs, including the one-value-per-file convention and maximum of one page of output.
3. Allows us to add more debugging information that we often want but don't have when debugging a live system.
Thanks!
Omar
Omar Sandoval (10):
blk-mq: create debugfs directory tree
blk-mq: add hctx->{state,flags} to debugfs
blk-mq: move hctx->dispatch and ctx->rq_list from sysfs to debugfs
blk-mq: add extra request information to debugfs
sbitmap: add helpers for dumping to a seq_file
blk-mq: export software queue pending map to debugfs
blk-mq: move tags and sched_tags info from sysfs to debugfs
blk-mq: add tags and sched_tags bitmaps to debugfs
blk-mq: move hctx io_poll, stats, and dispatched from sysfs to debugfs
blk-mq: move hctx and ctx counters from sysfs to debugfs
block/Makefile | 1 + block/blk-mq-debugfs.c | 756 ++++++++++++++++++++++++++++++++++++++++++++++++ block/blk-mq-sysfs.c | 248 ++-------------- block/blk-mq-tag.c | 27 -- block/blk-mq-tag.h | 1 - block/blk-mq.c | 2 + block/blk-mq.h | 33 +++ include/linux/blkdev.h | 5 + include/linux/sbitmap.h | 28 ++ lib/sbitmap.c | 74 +++++ 10 files changed, 920 insertions(+), 255 deletions(-) create mode 100644 block/blk-mq-debugfs.c
Signature · 1 line
2.11.0