| From 0e62395da2bd5166d7c9e14cbc7503b256a34cb0 Mon Sep 17 00:00:00 2001 |
| From: Navid Emamdoost <navid.emamdoost@gmail.com> |
| Date: Tue, 10 Sep 2019 18:44:15 -0500 |
| Subject: scsi: bfa: release allocated memory in case of error |
| |
| From: Navid Emamdoost <navid.emamdoost@gmail.com> |
| |
| commit 0e62395da2bd5166d7c9e14cbc7503b256a34cb0 upstream. |
| |
| In bfad_im_get_stats if bfa_port_get_stats fails, allocated memory needs to |
| be released. |
| |
| Link: https://lore.kernel.org/r/20190910234417.22151-1-navid.emamdoost@gmail.com |
| Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Cc: Ben Hutchings <ben.hutchings@codethink.co.uk> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/scsi/bfa/bfad_attr.c | 4 +++- |
| 1 file changed, 3 insertions(+), 1 deletion(-) |
| |
| --- a/drivers/scsi/bfa/bfad_attr.c |
| +++ b/drivers/scsi/bfa/bfad_attr.c |
| @@ -282,8 +282,10 @@ bfad_im_get_stats(struct Scsi_Host *shos |
| rc = bfa_port_get_stats(BFA_FCPORT(&bfad->bfa), |
| fcstats, bfad_hcb_comp, &fcomp); |
| spin_unlock_irqrestore(&bfad->bfad_lock, flags); |
| - if (rc != BFA_STATUS_OK) |
| + if (rc != BFA_STATUS_OK) { |
| + kfree(fcstats); |
| return NULL; |
| + } |
| |
| wait_for_completion(&fcomp.comp); |
| |