scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path
commit 0ab384a49c548baf132ccef249f78d9c6c506380 upstream. If a call to lpfc_get_cmd_rsp_buf_per_hdwq returns NULL (memory allocation failure), a previously allocated lpfc_io_buf resource is leaked. Fix by releasing the lpfc_io_buf resource in the failure path. Fixes: d79c9e9d4b3d ("scsi: lpfc: Support dynamic unbounded SGL lists on G7 hardware.") Cc: <stable@vger.kernel.org> # v5.4+ Link: https://lore.kernel.org/r/20200128002312.16346-3-jsmart2021@gmail.com 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> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
73a122c263
commit
e5b9c1027e
@ -671,8 +671,10 @@ lpfc_get_scsi_buf_s4(struct lpfc_hba *phba, struct lpfc_nodelist *ndlp,
|
||||
lpfc_cmd->prot_data_type = 0;
|
||||
#endif
|
||||
tmp = lpfc_get_cmd_rsp_buf_per_hdwq(phba, lpfc_cmd);
|
||||
if (!tmp)
|
||||
if (!tmp) {
|
||||
lpfc_release_io_buf(phba, lpfc_cmd, lpfc_cmd->hdwq);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
lpfc_cmd->fcp_cmnd = tmp->fcp_cmnd;
|
||||
lpfc_cmd->fcp_rsp = tmp->fcp_rsp;
|
||||
|
Loading…
x
Reference in New Issue
Block a user