Newer hardware more strictly enforces buffer lenghts, causing an
mis-set value to be identified. Older hardware won't catch it.
The difference is benign on old hardware.

Set the right embedded buffer length for nvme ios.

Signed-off-by: Dick Kennedy <dick.kenn...@broadcom.com>
Signed-off-by: James Smart <james.sm...@broadcom.com>
Reviewed-by: Johannes Thumshirn <jthumsh...@suse.de>
---
 drivers/scsi/lpfc/lpfc_nvme.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/scsi/lpfc/lpfc_nvme.c b/drivers/scsi/lpfc/lpfc_nvme.c
index 5a1a6e24a27f..c75958daf799 100644
--- a/drivers/scsi/lpfc/lpfc_nvme.c
+++ b/drivers/scsi/lpfc/lpfc_nvme.c
@@ -655,7 +655,7 @@ lpfc_nvme_adj_fcp_sgls(struct lpfc_vport *vport,
 
        /* Word 0-2 - NVME CMND IU (embedded payload) */
        wqe->generic.bde.tus.f.bdeFlags = BUFF_TYPE_BDE_IMMED;
-       wqe->generic.bde.tus.f.bdeSize = 60;
+       wqe->generic.bde.tus.f.bdeSize = 56;
        wqe->generic.bde.addrHigh = 0;
        wqe->generic.bde.addrLow =  64;  /* Word 16 */
 
-- 
2.13.1

Reply via email to