diff options
author | James Smart <jsmart2021@gmail.com> | 2020-03-22 11:12:56 -0700 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2020-03-26 23:15:08 -0400 |
commit | c90b448023582200c54595232e7c004c93d52ae1 (patch) | |
tree | 3f81d702131a4a101fef12f6e52fc779ede44601 /drivers/scsi/mac53c94.c | |
parent | e7f4034912d08a5fdfd7bdbcf9e86e885de1de21 (diff) | |
download | lwn-c90b448023582200c54595232e7c004c93d52ae1.tar.gz lwn-c90b448023582200c54595232e7c004c93d52ae1.zip |
scsi: lpfc: Fix scsi host template for SLI3 vports
SCSI layer sends driver IOs with more s/g segments than driver can handle.
This results in "Too many sg segments from dma_map_sg. Config 64, seg_cnt
219" error messages from the lpfc_scsi_prep_dma_buf_s3() routine.
The was due to use the driver using individual templates for pport and
vport, host reset enabled or not, nvme vs scsi, etc. In the end, there was
a combination for a vport that didn't match the pport.
Rather than enumerating more templates and more discretionary assignments,
revert to a base template that is copied to a template specific to the
pport/vport. Then, based on role, attributes and sli type, modify the
fields that are different for that port. Added a log message to
lpfc_create_port to validate values.
Link: https://lore.kernel.org/r/20200322181304.37655-5-jsmart2021@gmail.com
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/mac53c94.c')
0 files changed, 0 insertions, 0 deletions