public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC 0/7] blk-mq: improve tag fair sharing
@ 2023-06-18 16:07 Yu Kuai
  2023-06-18 16:07 ` [PATCH RFC 1/7] blk-mq: factor out a structure from blk_mq_tags to control tag sharing Yu Kuai
                   ` (7 more replies)
  0 siblings, 8 replies; 21+ messages in thread
From: Yu Kuai @ 2023-06-18 16:07 UTC (permalink / raw)
  To: bvanassche, axboe
  Cc: linux-block, linux-kernel, yukuai3, yukuai1, yi.zhang, yangerkun

From: Yu Kuai <yukuai3@huawei.com>

This is not a formal version and not fully tested, I send this RFC
because I want to make sure if people think doing this is meaningful,
before I spend too much time on this.

This patchset tries to refactor how tag is shared:
 - patch 2 delay tag sharing from issue io to when get driver tag faild;
 - patch 3 support to access which queues/hctxs is sharing tags through
 blk_mq_tags;
 - patch 4 move the caculation that how many tags is available from
 hctx_may_queue() to when queue/hctx start or stop to sharing tags.
 - patch 5 record new information that how many times fail to get driver
 tag recently; And patch 7 use this to adjust available tags for each
 shared queue.

Yu Kuai (7):
  blk-mq: factor out a structure from blk_mq_tags to control tag sharing
  blk-mq: delay tag fair sharing until fail to get driver tag
  blk-mq: support to track active queues from blk_mq_tags
  blk-mq: precalculate available tags for hctx_may_queue()
  blk-mq: record the number of times fail to get driver tag while
    sharing tags
  blk-mq: move active request counter to struct tag_sharing
  blk-mq: allow shared queue to get more driver tags

 block/blk-core.c       |   2 -
 block/blk-mq-debugfs.c |   6 +-
 block/blk-mq-tag.c     | 154 ++++++++++++++++++++++++++++++++++++++---
 block/blk-mq.c         |  10 ++-
 block/blk-mq.h         |  39 ++++++-----
 include/linux/blk-mq.h |  24 ++++---
 include/linux/blkdev.h |  13 +++-
 7 files changed, 201 insertions(+), 47 deletions(-)

-- 
2.39.2


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2023-07-07  1:15 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-18 16:07 [PATCH RFC 0/7] blk-mq: improve tag fair sharing Yu Kuai
2023-06-18 16:07 ` [PATCH RFC 1/7] blk-mq: factor out a structure from blk_mq_tags to control tag sharing Yu Kuai
2023-07-06 17:43   ` Bart Van Assche
2023-06-18 16:07 ` [PATCH RFC 2/7] blk-mq: delay tag fair sharing until fail to get driver tag Yu Kuai
2023-06-19  5:55   ` Hannes Reinecke
2023-06-19  6:07     ` Yu Kuai
2023-07-06 18:00   ` Bart Van Assche
2023-06-18 16:07 ` [PATCH RFC 3/7] blk-mq: support to track active queues from blk_mq_tags Yu Kuai
2023-07-06 18:01   ` Bart Van Assche
2023-06-18 16:07 ` [PATCH RFC 4/7] blk-mq: precalculate available tags for hctx_may_queue() Yu Kuai
2023-07-06 18:13   ` Bart Van Assche
2023-06-18 16:07 ` [PATCH RFC 5/7] blk-mq: record the number of times fail to get driver tag while sharing tags Yu Kuai
2023-07-06 18:18   ` Bart Van Assche
2023-06-18 16:07 ` [PATCH RFC 6/7] blk-mq: move active request counter to struct tag_sharing Yu Kuai
2023-06-18 16:07 ` [PATCH RFC 7/7] blk-mq: allow shared queue to get more driver tags Yu Kuai
2023-06-20 15:20 ` [PATCH RFC 0/7] blk-mq: improve tag fair sharing Bart Van Assche
2023-07-03 13:29   ` Yu Kuai
2023-07-03 18:08     ` Bart Van Assche
2023-07-05  3:17       ` Yu Kuai
2023-07-06 18:43         ` Bart Van Assche
2023-07-07  1:15           ` Yu Kuai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox