[PATCH v3 0/2] blk-mq: Request queue-wide tags for shared sbitmap

From: John Garry
Date: Thu May 13 2021 - 08:05:35 EST


This is v3 of patch/series. I have spun off a new patch for tag allocation
refactoring.

Details are in commit messages.

Changes since v2:
- Spin off separate patch for tag allocation refactoring
- Combine sched shared sbitmap code into a single function

Changes since v1:
- Embed sbitmaps in request_queue struct
- Relocate IO sched functions to blk-mq-sched.c
- Fix error path code

Please retest, thanks! For some reason I could not recreate the original
issue, but I am using qemu...

John Garry (2):
blk-mq: Some tag allocation code refactoring
blk-mq: Use request queue-wide tags for tagset-wide sbitmap

block/blk-mq-sched.c | 67 ++++++++++++++++++++++++++++++++++--------
block/blk-mq-sched.h | 2 ++
block/blk-mq-tag.c | 65 +++++++++++++++++++++++-----------------
block/blk-mq-tag.h | 9 ++++--
block/blk-mq.c | 15 ++++++++--
include/linux/blkdev.h | 4 +++
6 files changed, 116 insertions(+), 46 deletions(-)

--
2.26.2