scsi: lpfc: Fix nvmet handling of first burst cmd
authorJames Smart <jsmart2021@gmail.com>
Tue, 12 Mar 2019 23:30:11 +0000 (16:30 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 19 Mar 2019 16:57:02 +0000 (12:57 -0400)
With negative test injection, the driver is receiving a command with first
burst enabled, meaning Sequence initiative is not passed with the command
frame. The driver notes the condition and discards the frame.  However the
driver calls the incorrect buffer free routine, resulting in a NULL pointer
reference.

For hbq buffer free, convert to using lpfc_rq_buf_free().

Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/lpfc/lpfc_sli.c

index de5715b07522bff85e9e7e7a13f0047b9675c928..c82304c11ef2584e164a72aa278210deb7a8e8d0 100644 (file)
@@ -14019,7 +14019,7 @@ lpfc_sli4_nvmet_handle_rcqe(struct lpfc_hba *phba, struct lpfc_queue *cq,
                        return false;
                }
 drop:
-               lpfc_in_buf_free(phba, &dma_buf->dbuf);
+               lpfc_rq_buf_free(phba, &dma_buf->hbuf);
                break;
        case FC_STATUS_INSUFF_BUF_FRM_DISC:
                if (phba->nvmet_support) {