| From 7cfa7ca3b879d0b5ec13dbdbdada9be8a479997a Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 29 Jul 2020 01:18:24 -0700 |
| Subject: scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() |
| |
| From: Javed Hasan <jhasan@marvell.com> |
| |
| [ Upstream commit e95b4789ff4380733006836d28e554dc296b2298 ] |
| |
| In fcoe_sysfs_fcf_del(), we first deleted the fcf from the list and then |
| freed it if ctlr_dev was not NULL. This was causing a memory leak. |
| |
| Free the fcf even if ctlr_dev is NULL. |
| |
| Link: https://lore.kernel.org/r/20200729081824.30996-3-jhasan@marvell.com |
| Reviewed-by: Girish Basrur <gbasrur@marvell.com> |
| Reviewed-by: Santosh Vernekar <svernekar@marvell.com> |
| Reviewed-by: Saurav Kashyap <skashyap@marvell.com> |
| Reviewed-by: Shyam Sundar <ssundar@marvell.com> |
| Signed-off-by: Javed Hasan <jhasan@marvell.com> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/scsi/fcoe/fcoe_ctlr.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/scsi/fcoe/fcoe_ctlr.c b/drivers/scsi/fcoe/fcoe_ctlr.c |
| index 3c2f34db937b6..f5f3a8113bc55 100644 |
| --- a/drivers/scsi/fcoe/fcoe_ctlr.c |
| +++ b/drivers/scsi/fcoe/fcoe_ctlr.c |
| @@ -267,9 +267,9 @@ static void fcoe_sysfs_fcf_del(struct fcoe_fcf *new) |
| WARN_ON(!fcf_dev); |
| new->fcf_dev = NULL; |
| fcoe_fcf_device_delete(fcf_dev); |
| - kfree(new); |
| mutex_unlock(&cdev->lock); |
| } |
| + kfree(new); |
| } |
| |
| /** |
| -- |
| 2.25.1 |
| |