blk-mq: Kyber multiqueue I/O scheduler
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v4 Latest5 patches 1 replyIn review
- v35 patches 0 repliesSuperseded
- v25 patches 0 repliesSuperseded
Earlier versions · 1
| Version | Posted | Patches | Replies | Status |
|---|---|---|---|---|
| v1 RFC | 4 patches | 5 replies | Superseded |
Patches in v4 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/5 | sbitmap: add sbitmap_get_shallow() operationinclude/ lib/ | +123 | 0 replies | |
| 2/5 | blk-mq: add shallow depth option for blk_mq_get_tag()block/ block/ | +5 | 0 replies | |
| 3/5 | blk-mq: export helpersblock/ include/ | +3 | 0 replies | |
| 4/5 | blk-mq-sched: make completed_request() callback more usefulblock/ block/ include/ | +8 | 0 replies | |
| 5/5 | blk-mq: introduce Kyber multiqueue I/O schedulerDocumentation/ block/ block/ +1 more | +743 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v4 yet.
Cover letter [PATCH v4 0/5] blk-mq: Kyber multiqueue I/O scheduler
From: Omar Sandoval <[email protected]>
This is v4 of Kyber, an I/O scheduler for multiqueue devices combining several techniques: the scalable bitmap library, the new blk-stats API, and queue depth throttling similar to blk-wbt. v1 was here [1], v2 was here [2], v3 was here [3].
v4 fixes a hang in v3 caused by a race condition in the wait queue handling in kyber_get_domain_token().
This series is based on block/for-next. Patches 1 and 2 implement a new sbitmap operation. Patch 3 exports a couple of helpers. Patch 4 moves a scheduler callback to somewhere more useful. Patch 5 implements the new scheduler.
Thanks!
1: http://marc.info/?l=linux-block&m=148978871820916&w=2
2: http://marc.info/?l=linux-block&m=149132467510945&w=2
3: http://marc.info/?l=linux-block&m=149180713919341&w=2
Omar Sandoval (5):
sbitmap: add sbitmap_get_shallow() operation
blk-mq: add shallow depth option for blk_mq_get_tag()
blk-mq: export helpers
blk-mq-sched: make completed_request() callback more useful
blk-mq: introduce Kyber multiqueue I/O scheduler
Documentation/block/kyber-iosched.txt | 14 + block/Kconfig.iosched | 9 + block/Makefile | 1 + block/blk-mq-sched.h | 11 +- block/blk-mq-tag.c | 5 +- block/blk-mq.c | 7 +- block/blk-mq.h | 1 + block/kyber-iosched.c | 719 ++++++++++++++++++++++++++++++++++ include/linux/blk-mq.h | 1 + include/linux/elevator.h | 2 +- include/linux/sbitmap.h | 55 +++ lib/sbitmap.c | 75 +++- 12 files changed, 882 insertions(+), 18 deletions(-) create mode 100644 Documentation/block/kyber-iosched.txt create mode 100644 block/kyber-iosched.c
Signature · 1 line
2.12.2