From: Weiping Zhang <zhangweiping@didiglobal.com>
To: <axboe@kernel.dk>, <tj@kernel.org>, <hch@lst.de>, <bvanassche@acm.org>
Cc: <linux-block@vger.kernel.org>, <cgroups@vger.kernel.org>
Subject: [RFC PATCH v2 0/4] blkcg: add support weighted round robin tagset map
Date: Sun, 16 Jun 2019 18:14:31 +0800 [thread overview]
Message-ID: <cover.1560679439.git.zhangweiping@didiglobal.com> (raw)
This series try to add support Weighted Round Robin for blkcg, and
add some module parameters to enable nvme driver WRR.
The first patch add an WRR infrastucture for block cgroup.
The second patch add demon WRR for null_blk to similate nvme spec.
The last two patched try to enable WRR for nvme driver.
For nvme part, rename write_queues to read_queues that we can add the
wrr_low/medium/high_queues easily to support WRR. To compatible with
READ and POLL, DEFAULT, tagset mapping, this patch set these three
types hardware submition queue's priority to medium.
Changes since V1:
* reorder HCTX_TYPE_POLL to the last one to adopt nvme driver easily.
* add support WRR(Weighted Round Robin) for nvme driver
Weiping Zhang (4):
block: add weighted round robin for blkcgroup
null_blk: add support weighted round robin submition queue
genirq/affinity: allow driver's discontigous affinity set
nvme: add support weighted round robin queue
block/blk-cgroup.c | 88 +++++++++++++
block/blk-mq-debugfs.c | 3 +
block/blk-mq-sched.c | 6 +-
block/blk-mq-tag.c | 4 +-
block/blk-mq-tag.h | 2 +-
block/blk-mq.c | 12 +-
block/blk-mq.h | 17 ++-
block/blk.h | 2 +-
drivers/block/null_blk.h | 7 +
drivers/block/null_blk_main.c | 294 ++++++++++++++++++++++++++++++++++++++++--
drivers/nvme/host/pci.c | 195 ++++++++++++++++++++--------
include/linux/blk-cgroup.h | 2 +
include/linux/blk-mq.h | 12 ++
include/linux/interrupt.h | 2 +-
kernel/irq/affinity.c | 4 +
15 files changed, 574 insertions(+), 76 deletions(-)
--
2.14.1
next reply other threads:[~2019-06-16 10:14 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-16 10:14 Weiping Zhang [this message]
2019-06-16 10:15 ` [PATCH v2 1/4] block: add weighted round robin for blkcgroup Weiping Zhang
2019-06-16 10:15 ` [PATCH v2 2/4] null_blk: add support weighted round robin submition queue Weiping Zhang
2019-06-16 10:15 ` [PATCH v2 3/4] genirq/affinity: allow driver's discontigous affinity set Weiping Zhang
2019-06-16 10:15 ` [PATCH v2 4/4] nvme: add support weighted round robin queue Weiping Zhang
2019-06-18 13:18 ` Minwoo Im
2019-06-19 18:37 ` Chaitanya Kulkarni
2019-06-20 14:16 ` Minwoo Im
2019-06-21 14:38 ` Weiping Zhang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1560679439.git.zhangweiping@didiglobal.com \
--to=zhangweiping@didiglobal.com \
--cc=axboe@kernel.dk \
--cc=bvanassche@acm.org \
--cc=cgroups@vger.kernel.org \
--cc=hch@lst.de \
--cc=linux-block@vger.kernel.org \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox