linux_dsm_epyc7002/drivers/scsi/lpfc
James Smart 0cf07f84dd scsi: lpfc: Add auto EQ delay logic
Administrator intervention is currently required to get good numbers
when switching from running latency tests to IOPS tests.

The configured interrupt coalescing values will greatly effect the
results of these tests.  Currently, the driver has a single coalescing
value set by values of the module attribute.  This patch changes the
driver to support auto-configuration of the coalescing value based on
the total number of outstanding IOs and average number of CQEs processed
per interrupt for an EQ.  Values are checked every 5 seconds.

The driver defaults to the automatic selection. Automatic selection can
be disabled by the new lpfc_auto_imax module_parameter.

Older hardware can only change interrupt coalescing by mailbox
command. Newer hardware supports change via a register. The patch
support both.

Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-06-12 21:37:31 -04:00
..
lpfc_attr.c scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_attr.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_bsg.c Fix crash after issuing lip reset 2017-04-24 09:25:49 +02:00
lpfc_bsg.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_compat.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_crtn.h scsi: lpfc: Avoid NULL pointer dereference in lpfc_els_abort() 2017-05-31 22:44:13 -04:00
lpfc_ct.c scsi: lpfc: Fix vports not logging into target 2017-06-12 21:37:31 -04:00
lpfc_debugfs.c scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_debugfs.h scsi: lpfc: fix building without debugfs support 2017-03-23 11:28:43 -04:00
lpfc_disc.h scsi: lpfc: Fix NVMEI's handling of NVMET's PRLI response attributes 2017-05-16 21:24:17 -04:00
lpfc_els.c scsi: lpfc: Fix PRLI retry handling when target rejects it. 2017-06-12 21:37:31 -04:00
lpfc_hbadisc.c scsi: lpfc: Fix nvmet node ref count handling 2017-06-12 21:37:30 -04:00
lpfc_hw4.h scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_hw.h Add Fabric assigned WWN support. 2017-04-24 09:25:49 +02:00
lpfc_ids.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_init.c scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_logmsg.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_mbox.c Update ABORT processing for NVMET. 2017-04-24 09:25:49 +02:00
lpfc_mem.c scsi: lpfc: Separate NVMET RQ buffer posting from IO resources SGL/iocbq/context 2017-05-16 21:21:47 -04:00
lpfc_nl.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_nportdisc.c scsi: lpfc: Avoid NULL pointer dereference in lpfc_els_abort() 2017-05-31 22:44:13 -04:00
lpfc_nvme.c scsi: lpfc: Fix counters so outstandng NVME IO count is accurate 2017-06-12 21:37:31 -04:00
lpfc_nvme.h scsi: lpfc: Fix transition nvme-i rport handling to nport only. 2017-06-12 21:37:30 -04:00
lpfc_nvmet.c scsi: lpfc: Fix defects reported by Coverity Scan 2017-06-12 21:37:31 -04:00
lpfc_nvmet.h scsi: lpfc: Add changes to assist in NVMET debugging 2017-06-12 21:37:30 -04:00
lpfc_scsi.c scsi: lpfc: Fix counters so outstandng NVME IO count is accurate 2017-06-12 21:37:31 -04:00
lpfc_scsi.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc_sli4.h scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_sli.c scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_sli.h scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
lpfc_version.h scsi: lpfc: update version to 11.2.0.14 2017-05-16 21:25:09 -04:00
lpfc_vport.c Fix crash after issuing lip reset 2017-04-24 09:25:49 +02:00
lpfc_vport.h scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00
lpfc.h scsi: lpfc: Add auto EQ delay logic 2017-06-12 21:37:31 -04:00
Makefile scsi: lpfc: Update copyrights 2017-02-22 18:41:44 -05:00