Hi, The 1st patch kills the atomic host-wide counter of host_busy.
The 2nd patch bypass the atomic LUN-wide connter of device_busy for fast SSD device. V4: - fix one build waring, just a line change in scsi_dev_queue_ready() V3: - use non-atomic set/clear bit operations as suggested by Bart - kill single field struct for storing count of in-flight requests - add patch to bypass the atomic LUN-wide counter of device_busy for fast SSD device V2: - introduce SCMD_STATE_INFLIGHT for getting accurate host busy via blk_mq_tagset_busy_iter() - verified that original Jens's report[1] is fixed - verified that SCSI timeout/abort works fine Ming Lei (2): scsi: core: avoid host-wide host_busy counter for scsi_mq scsi: core: don't limit per-LUN queue depth for SSD drivers/scsi/hosts.c | 19 ++++++++++++- drivers/scsi/scsi.c | 2 +- drivers/scsi/scsi_lib.c | 59 ++++++++++++++++++++++++---------------- drivers/scsi/scsi_priv.h | 2 +- include/scsi/scsi_cmnd.h | 1 + include/scsi/scsi_host.h | 1 - 6 files changed, 56 insertions(+), 28 deletions(-) Cc: Jens Axboe <ax...@kernel.dk> Cc: Ewan D. Milne <emi...@redhat.com> Cc: Omar Sandoval <osan...@fb.com>, Cc: "Martin K. Petersen" <martin.peter...@oracle.com>, Cc: James Bottomley <james.bottom...@hansenpartnership.com>, Cc: Christoph Hellwig <h...@lst.de>, Cc: Kashyap Desai <kashyap.de...@broadcom.com> Cc: Hannes Reinecke <h...@suse.de> Cc: Laurence Oberman <lober...@redhat.com> Cc: Bart Van Assche <bart.vanass...@wdc.com> -- 2.20.1