Linux block layer
 help / color / mirror / Atom feed
* [PATCH V2 0/5] blk-mq: support to use hw tag for scheduling
@ 2017-05-03 19:58 Ming Lei
  2017-05-03 19:58 ` [PATCH V2 1/5] blk-mq: introduce BLK_MQ_F_SCHED_USE_HW_TAG Ming Lei
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Ming Lei @ 2017-05-03 19:58 UTC (permalink / raw)
  To: Jens Axboe, linux-block; +Cc: Bart Van Assche, Omar Sandoval, Ming Lei

Hi,

This patchset introduces flag of BLK_MQ_F_SCHED_USE_HW_TAG and
allows to use hardware tag directly for IO scheduling if the queue's
depth is big enough. In this way, we can avoid to allocate extra tags
and request pool for IO schedule, and the schedule tag allocation/release
can be saved in I/O submit path.

V2:
	- fix oops when kyber is used
	- move dumping the new flag into patch 1
	- support to use hw tag for shared tags
	- update hctx->sched_tag when BLK_MQ_F_SCHED_USE_HW_TAG
	is changed
	- clear the flag in patch of blk_mq_exit_sched()
	- don't update q->nr_requests when updating hw queue's depth
	- fix blk_mq_get_queue_depth()

Thanks reviewing from Bart, Omar, Jens and others.


Thanks,
Ming

Ming Lei (5):
  blk-mq: introduce BLK_MQ_F_SCHED_USE_HW_TAG
  blk-mq: introduce blk_mq_get_queue_depth()
  blk-mq: don't update q->nr_requests when updating hw queue's depth
  blk-mq: use hw tag for scheduling if hw tag space is big enough
  blk-mq: allow to use hw tag for shared tags

 block/blk-mq-debugfs.c |  1 +
 block/blk-mq-sched.c   | 34 ++++++++++++++++-----
 block/blk-mq-sched.h   | 24 +++++++++++++++
 block/blk-mq.c         | 82 +++++++++++++++++++++++++++++++++++++++++++++-----
 block/blk-mq.h         | 12 ++++++++
 block/kyber-iosched.c  |  7 ++++-
 include/linux/blk-mq.h |  1 +
 7 files changed, 144 insertions(+), 17 deletions(-)

-- 
2.9.3

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

end of thread, other threads:[~2017-05-04  2:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-03 19:58 [PATCH V2 0/5] blk-mq: support to use hw tag for scheduling Ming Lei
2017-05-03 19:58 ` [PATCH V2 1/5] blk-mq: introduce BLK_MQ_F_SCHED_USE_HW_TAG Ming Lei
2017-05-03 19:58 ` [PATCH V2 2/5] blk-mq: introduce blk_mq_get_queue_depth() Ming Lei
2017-05-03 19:58 ` [PATCH V2 3/5] blk-mq: don't update q->nr_requests when updating hw queue's depth Ming Lei
2017-05-03 19:58 ` [PATCH V2 4/5] blk-mq: use hw tag for scheduling if hw tag space is big enough Ming Lei
2017-05-03 20:14   ` Jens Axboe
2017-05-04  2:12     ` Ming Lei
2017-05-03 19:58 ` [PATCH V2 5/5] blk-mq: allow to use hw tag for shared tags Ming Lei

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