All of lore.kernel.org
 help / color / mirror / Atom feed
* [stable-4.14 00/23] block/scsi multiqueue performance enhancement and
@ 2018-07-23 13:24 Jack Wang
  2018-07-23 13:24 ` [stable-4.14 01/23] blk-mq-sched: move actual dispatching into one helper Jack Wang
                   ` (23 more replies)
  0 siblings, 24 replies; 35+ messages in thread
From: Jack Wang @ 2018-07-23 13:24 UTC (permalink / raw)
  To: gregkh, stable

Hi Greg,
 
Please consider this patchset, which include block/scsi multiqueue performance
enhancement and bugfix.
  
We've run multiple benchmark and different tests for over one week, looks
good.
   
These patches are also included in Oracle UEK5.
     
They're almost just simple cherry-pick, only 2 patches need minor adjust.
      
They can apply cleanly on 4.14.57.

Jens Axboe (3):
  Revert "blk-mq: don't handle TAG_SHARED in restart"
  blk-mq: fix issue with shared tag queue re-running
  blk-mq: only run the hardware queue if IO is pending

Jianchao Wang (1):
  blk-mq: put the driver tag of nxt rq before first one is requeued

Ming Lei (19):
  blk-mq-sched: move actual dispatching into one helper
  blk-mq: introduce .get_budget and .put_budget in blk_mq_ops
  sbitmap: introduce __sbitmap_for_each_set()
  blk-mq-sched: improve dispatching from sw queue
  scsi: allow passing in null rq to scsi_prep_state_check()
  scsi: implement .get_budget and .put_budget for blk-mq
  SCSI: don't get target/host busy_count in scsi_mq_get_budget()
  blk-mq: don't handle TAG_SHARED in restart
  blk-mq: don't restart queue when .get_budget returns BLK_STS_RESOURCE
  blk-mq: don't handle failure in .get_budget
  blk-flush: don't run queue for requests bypassing flush
  block: pass 'run_queue' to blk_mq_request_bypass_insert
  blk-flush: use blk_mq_request_bypass_insert()
  blk-mq-sched: decide how to handle flush rq via RQF_FLUSH_SEQ
  blk-mq: move blk_mq_put_driver_tag*() into blk-mq.h
  blk-mq: don't allocate driver tag upfront for flush rq
  blk-mq: put driver tag if dispatch budget can't be got
  blk-mq: quiesce queue during switching io sched and updating
    nr_requests
  scsi: core: run queue if SCSI device queue isn't ready and queue is
    idle

 block/blk-core.c        |   2 +-
 block/blk-flush.c       |  37 +++++--
 block/blk-mq-debugfs.c  |   1 -
 block/blk-mq-sched.c    | 203 ++++++++++++++++++++++-------------
 block/blk-mq.c          | 278 +++++++++++++++++++++++++++---------------------
 block/blk-mq.h          |  58 +++++++++-
 block/elevator.c        |   2 +
 drivers/scsi/scsi_lib.c |  53 ++++++---
 include/linux/blk-mq.h  |  20 +++-
 include/linux/sbitmap.h |  64 ++++++++---
 10 files changed, 475 insertions(+), 243 deletions(-)

-- 
2.7.4

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

end of thread, other threads:[~2018-07-23 15:38 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-23 13:24 [stable-4.14 00/23] block/scsi multiqueue performance enhancement and Jack Wang
2018-07-23 13:24 ` [stable-4.14 01/23] blk-mq-sched: move actual dispatching into one helper Jack Wang
2018-07-23 14:31   ` Jens Axboe
2018-07-23 14:36     ` Greg KH
2018-07-23 13:24 ` [stable-4.14 02/23] blk-mq: introduce .get_budget and .put_budget in blk_mq_ops Jack Wang
2018-07-23 13:24 ` [stable-4.14 03/23] sbitmap: introduce __sbitmap_for_each_set() Jack Wang
2018-07-23 13:24 ` [stable-4.14 04/23] blk-mq-sched: improve dispatching from sw queue Jack Wang
2018-07-23 13:24 ` [stable-4.14 05/23] scsi: allow passing in null rq to scsi_prep_state_check() Jack Wang
2018-07-23 13:24 ` [stable-4.14 06/23] scsi: implement .get_budget and .put_budget for blk-mq Jack Wang
2018-07-23 13:24 ` [stable-4.14 07/23] SCSI: don't get target/host busy_count in scsi_mq_get_budget() Jack Wang
2018-07-23 13:24 ` [stable-4.14 08/23] blk-mq: don't handle TAG_SHARED in restart Jack Wang
2018-07-23 13:24 ` [stable-4.14 09/23] blk-mq: don't restart queue when .get_budget returns BLK_STS_RESOURCE Jack Wang
2018-07-23 13:24 ` [stable-4.14 10/23] blk-mq: don't handle failure in .get_budget Jack Wang
2018-07-23 13:24 ` [stable-4.14 11/23] blk-mq: put the driver tag of nxt rq before first one is requeued Jack Wang
2018-07-23 13:24 ` [stable-4.14 12/23] blk-flush: don't run queue for requests bypassing flush Jack Wang
2018-07-23 13:24 ` [stable-4.14 13/23] block: pass 'run_queue' to blk_mq_request_bypass_insert Jack Wang
2018-07-23 13:24 ` [stable-4.14 14/23] blk-flush: use blk_mq_request_bypass_insert() Jack Wang
2018-07-23 13:24 ` [stable-4.14 15/23] blk-mq-sched: decide how to handle flush rq via RQF_FLUSH_SEQ Jack Wang
2018-07-23 13:24 ` [stable-4.14 16/23] blk-mq: move blk_mq_put_driver_tag*() into blk-mq.h Jack Wang
2018-07-23 13:24 ` [stable-4.14 17/23] blk-mq: don't allocate driver tag upfront for flush rq Jack Wang
2018-07-23 13:24 ` [stable-4.14 18/23] Revert "blk-mq: don't handle TAG_SHARED in restart" Jack Wang
2018-07-23 13:24 ` [stable-4.14 19/23] blk-mq: put driver tag if dispatch budget can't be got Jack Wang
2018-07-23 13:24 ` [stable-4.14 20/23] blk-mq: fix issue with shared tag queue re-running Jack Wang
2018-07-23 13:24 ` [stable-4.14 21/23] blk-mq: only run the hardware queue if IO is pending Jack Wang
2018-07-23 13:24 ` [stable-4.14 22/23] blk-mq: quiesce queue during switching io sched and updating nr_requests Jack Wang
2018-07-23 13:24 ` [stable-4.14 23/23] scsi: core: run queue if SCSI device queue isn't ready and queue is idle Jack Wang
2018-07-23 13:33 ` [stable-4.14 00/23] block/scsi multiqueue performance enhancement and Greg KH
2018-07-23 15:00   ` Jack Wang
2018-07-23 15:00     ` Jack Wang
2018-07-23 15:05     ` Jens Axboe
2018-07-23 15:28       ` Jack Wang
2018-07-23 15:28         ` Jack Wang
2018-07-23 15:31         ` Jens Axboe
2018-07-23 15:37           ` Jack Wang
2018-07-23 15:37             ` Jack Wang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.