All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] scis: don't apply per-LUN queue depth for SSD
@ 2019-11-18 10:31 Ming Lei
  2019-11-18 10:31 ` [PATCH 1/4] scsi: megaraid_sas: use private counter for tracking inflight per-LUN commands Ming Lei
                   ` (3 more replies)
  0 siblings, 4 replies; 34+ messages in thread
From: Ming Lei @ 2019-11-18 10:31 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, James E . J . Bottomley, Martin K . Petersen,
	linux-scsi, Ming Lei, Sathya Prakash, Chaitra P B,
	Suganath Prabu Subramani, Kashyap Desai, Sumit Saxena,
	Shivasharan S, Ewan D . Milne, Christoph Hellwig,
	Hannes Reinecke, Bart Van Assche

Hi,

SCSI's per-LUN queue depth is usually for improving IO merge and
balancing IO load among LUNs. blk-mq has provides fair driver tag
allocation and managed IRQ balances interrupt load among queues,
meantime IO merge doesn't play a big role for SSD, and NVMe doesn't
apply per-namespace queue depth.

This patchset tries to don't apply per-LUN queue depth for SSD, then
we can avoid the expensive atomic operation on sdev->device_busy.
We do understand that this shared counter affects IOPS a lot.

The 1st two patches replaces .device_busy with two private counter for
megaraid_sas and mpt3sas to track inflight per-LUN commands since the
two drivers need the counter for balancing load, even though it is
probably no much use.

The last two patches avoid to operate on sdev->device_busy in IO path
for SSD.


Ming Lei (4):
  scsi: megaraid_sas: use private counter for tracking inflight per-LUN
    commands
  scsi: mpt3sas: use private counter for tracking inflight per-LUN
    commands
  scsi: sd: register request queue after sd_revalidate_disk is done
  scsi: core: don't limit per-LUN queue depth for SSD

 block/blk-sysfs.c                           | 14 +++++++++++-
 drivers/scsi/megaraid/megaraid_sas.h        |  1 +
 drivers/scsi/megaraid/megaraid_sas_base.c   | 15 +++++++++++--
 drivers/scsi/megaraid/megaraid_sas_fusion.c | 13 +++++++----
 drivers/scsi/mpt3sas/mpt3sas_base.c         |  3 ++-
 drivers/scsi/mpt3sas/mpt3sas_base.h         |  1 +
 drivers/scsi/mpt3sas/mpt3sas_scsih.c        | 15 +++++++++++--
 drivers/scsi/scsi_lib.c                     | 24 +++++++++++++++------
 drivers/scsi/sd.c                           |  8 ++++++-
 9 files changed, 77 insertions(+), 17 deletions(-)

Cc: Sathya Prakash <sathya.prakash@broadcom.com>
Cc: Chaitra P B <chaitra.basappa@broadcom.com>
Cc: Suganath Prabu Subramani <suganath-prabu.subramani@broadcom.com>
Cc: Kashyap Desai <kashyap.desai@broadcom.com>
Cc: Sumit Saxena <sumit.saxena@broadcom.com>
Cc: Shivasharan S <shivasharan.srikanteshwara@broadcom.com>
Cc: Ewan D. Milne <emilne@redhat.com>
Cc: Christoph Hellwig <hch@lst.de>,
Cc: Hannes Reinecke <hare@suse.de>
Cc: Bart Van Assche <bart.vanassche@wdc.com>
-- 
2.20.1


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

end of thread, other threads:[~2019-12-05 10:32 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-18 10:31 [PATCH 0/4] scis: don't apply per-LUN queue depth for SSD Ming Lei
2019-11-18 10:31 ` [PATCH 1/4] scsi: megaraid_sas: use private counter for tracking inflight per-LUN commands Ming Lei
2019-11-20  9:54   ` Hannes Reinecke
2019-11-26  3:12     ` Kashyap Desai
2019-11-26  3:37       ` Ming Lei
2019-12-05 10:32         ` Kashyap Desai
2019-11-18 10:31 ` [PATCH 2/4] scsi: mpt3sas: " Ming Lei
2019-11-20  9:55   ` Hannes Reinecke
2019-11-18 10:31 ` [PATCH 3/4] scsi: sd: register request queue after sd_revalidate_disk is done Ming Lei
2019-11-20  9:59   ` Hannes Reinecke
2019-11-18 10:31 ` [PATCH 4/4] scsi: core: don't limit per-LUN queue depth for SSD Ming Lei
2019-11-20 10:05   ` Hannes Reinecke
2019-11-20 17:00     ` Ewan D. Milne
2019-11-20 20:56       ` Bart Van Assche
2019-11-20 21:36         ` Ewan D. Milne
2019-11-22  2:25           ` Martin K. Petersen
2019-11-21  1:07         ` Ming Lei
2019-11-22  2:59           ` Martin K. Petersen
2019-11-22  3:24             ` Ming Lei
2019-11-22 16:38             ` Sumanesh Samanta
2019-11-21  0:08       ` Sumanesh Samanta
2019-11-21  0:54       ` Ming Lei
2019-11-21 19:19         ` Ewan D. Milne
2019-11-21  0:53     ` Ming Lei
2019-11-21 15:45       ` Hannes Reinecke
2019-11-22  8:09         ` Ming Lei
2019-11-22 18:14           ` Bart Van Assche
2019-11-22 18:26             ` James Smart
2019-11-22 20:46               ` Bart Van Assche
2019-11-22 22:04                 ` Ming Lei
2019-11-22 22:00             ` Ming Lei
2019-11-25 18:28             ` Ewan D. Milne
2019-11-25 22:14               ` James Smart
2019-11-22  2:18     ` Martin K. Petersen

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.