linux/drivers/scsi/lpfc
James Smart 4e565cf041 scsi: lpfc: Work around NVME cmd iu SGL type
The hardware offload for NVME commands was created when the
FC-NVME standard was setting SGL Descriptor Type to SGL Data
Block Descriptor (0h) and SGL Descriptor Sub Type to Address (0h).

A late change in NVMe-over-Fabrics obsoleted these values, creating
a transport SGL descriptor type with new values to go into these
fields.

For initial hardware support, in order to be compliant to the spec,
use host-supplied cmd IU buffers instead of the adapter generated
values. Later hardware will correct this.

Add a module parameter to override this offload disablement if looking
for lowest latency. This is reasonable as nothing in FC-NVME uses
the SQE SGL values.

Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <james.smart@broadcom.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2018-02-22 20:39:29 -05:00
..
lpfc_attr.c scsi: lpfc: Work around NVME cmd iu SGL type 2018-02-22 20:39:29 -05:00
lpfc_attr.h scsi: lpfc: Add Buffer to Buffer credit recovery support 2017-08-24 22:29:43 -04:00
lpfc_bsg.c scsi: lpfc: Add SLI-4 if_type=6 support to the code base 2018-02-22 20:39:28 -05:00
lpfc_bsg.h
lpfc_compat.h
lpfc_crtn.h scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright 2018-02-12 11:43:24 -05:00
lpfc_ct.c scsi: lpfc: Add 64G link speed support 2018-02-22 20:39:29 -05:00
lpfc_debugfs.c scsi: lpfc: Rework sli4 doorbell infrastructure 2018-02-22 20:39:28 -05:00
lpfc_debugfs.h scsi: lpfc: Rework sli4 doorbell infrastructure 2018-02-22 20:39:28 -05:00
lpfc_disc.h scsi: lpfc: Correct driver deregistrations with host nvme transport 2017-12-04 20:32:54 -05:00
lpfc_els.c scsi: lpfc: Add 64G link speed support 2018-02-22 20:39:29 -05:00
lpfc_hbadisc.c scsi: lpfc: Add 64G link speed support 2018-02-22 20:39:29 -05:00
lpfc_hw4.h scsi: lpfc: Work around NVME cmd iu SGL type 2018-02-22 20:39:29 -05:00
lpfc_hw.h scsi: lpfc: Add 64G link speed support 2018-02-22 20:39:29 -05:00
lpfc_ids.h scsi: lpfc: Add PCI Ids for if_type=6 hardware 2018-02-22 20:39:29 -05:00
lpfc_init.c scsi: lpfc: Work around NVME cmd iu SGL type 2018-02-22 20:39:29 -05:00
lpfc_logmsg.h
lpfc_mbox.c scsi: lpfc: Add 64G link speed support 2018-02-22 20:39:29 -05:00
lpfc_mem.c scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright 2018-02-12 11:43:24 -05:00
lpfc_nl.h
lpfc_nportdisc.c scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright 2018-02-12 11:43:24 -05:00
lpfc_nvme.c scsi: lpfc: Work around NVME cmd iu SGL type 2018-02-22 20:39:29 -05:00
lpfc_nvme.h scsi: lpfc: Beef up stat counters for debug 2017-12-20 21:11:48 -05:00
lpfc_nvmet.c scsi: lpfc: Add embedded data pointers for enhanced performance 2018-02-22 20:39:29 -05:00
lpfc_nvmet.h scsi: lpfc: Update 11.4.0.7 modified files for 2018 Copyright 2018-02-12 11:43:24 -05:00
lpfc_scsi.c scsi: lpfc: Add embedded data pointers for enhanced performance 2018-02-22 20:39:29 -05:00
lpfc_scsi.h
lpfc_sli4.h scsi: lpfc: Add if_type=6 support for cycling valid bits 2018-02-22 20:39:29 -05:00
lpfc_sli.c scsi: lpfc: Work around NVME cmd iu SGL type 2018-02-22 20:39:29 -05: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 11.4.0.7 modified files for 2018 Copyright 2018-02-12 11:43:24 -05:00
lpfc_vport.c scsi: lpfc: Disable NPIV support if NVME is enabled 2017-10-02 22:46:39 -04:00
lpfc_vport.h
lpfc.h scsi: lpfc: Work around NVME cmd iu SGL type 2018-02-22 20:39:29 -05:00
Makefile