linux_dsm_epyc7002/drivers/scsi/mpt3sas
Suganath Prabu Subramani dbec4c9040 scsi: mpt3sas: lockless command submission
Performance improvement using block layer tag.

Curent driver gets scsiio tracker and free smid from link list and array
based tracking managed by driver.  Accessing list in main io path is
performance pentaly because of protection using spinlock
"scsi_lookup_lock".

In this patch:

1. Driver removes all link list access from main io path and
   use scmd->request->tag to get free smid.

2. Instead of holding 'struct scsiio_tracker' in its own pool
   driver can embed it into the scsi command.

Driver provides cmd_size in scsi_host_template, so that struct
scsiio_tracker is preallocated by scsi mid layer for each scsi command.

Signed-off-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Suganath Prabu S <suganath-prabu.subramani@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2018-01-10 23:25:04 -05:00
..
mpi SCSI misc on 20171114 2017-11-14 16:23:44 -08:00
Kconfig mpt3sas: fix Kconfig dependency problem for mpt2sas back compatibility 2015-12-03 09:31:23 -08:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mpt3sas_base.c scsi: mpt3sas: lockless command submission 2018-01-10 23:25:04 -05:00
mpt3sas_base.h scsi: mpt3sas: lockless command submission 2018-01-10 23:25:04 -05:00
mpt3sas_config.c scsi: mpt3sas: API 's to support NVMe drive addition to SML 2017-11-03 12:20:52 -04:00
mpt3sas_ctl.c scsi: mpt3sas: lockless command submission 2018-01-10 23:25:04 -05:00
mpt3sas_ctl.h scripts/spelling.txt: add "overwritting" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
mpt3sas_debug.h mpt2sas, mpt3sas: Remove SCSI_MPTXSAS_LOGGING entry from Kconfig 2015-11-11 18:31:14 -05:00
mpt3sas_scsih.c scsi: mpt3sas: lockless command submission 2018-01-10 23:25:04 -05:00
mpt3sas_transport.c scsi: scsi_transport_sas: switch to bsg-lib for SMP passthrough 2017-08-29 21:51:45 -04:00
mpt3sas_trigger_diag.c mpt2sas, mpt3sas: Update attribution language to Avago 2015-01-13 16:27:27 +01:00
mpt3sas_trigger_diag.h mpt2sas, mpt3sas: Update attribution language to Avago 2015-01-13 16:27:27 +01:00
mpt3sas_warpdrive.c scsi: mpt3sas: lockless command submission 2018-01-10 23:25:04 -05:00