[stable-4.14 00/23] block/scsi multiqueue performance enhancement and

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux