summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDinh Nguyen <dinguyen@kernel.org>2026-09-11 07:06:26 -0500
committerBorislav Petkov (AMD) <bp@alien8.de>2026-09-25 18:08:11 -0700
commit3e4a10a4718e3d963ee4d6c5f26bc5ad57c1d2b1 (patch)
treeed26e81c0d261a31675b06db284318e8e8885a67 /drivers
parentb62a264163ca51bee04785c581344751812395df (diff)
downloadlinux-stable-3e4a10a4718e3d963ee4d6c5f26bc5ad57c1d2b1.tar.gz
linux-stable-3e4a10a4718e3d963ee4d6c5f26bc5ad57c1d2b1.zip
EDAC/altera: Fix memory leak on dci allocation failure
Sashiko reports: "If devres_open_group() fails, the function returns -ENOMEM without freeing the dci structure allocated earlier with edac_device_alloc_ctl_info()." Free the dci structure if devres_open_group() fails. Fixes: c3eea1942a16 ("EDAC, altera: Add Altera L2 cache and OCRAM support") Signed-off-by: Dinh Nguyen <dinguyen@kernel.org> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> Cc: stable@vger.kernel.org # 6.18+ Link: https://patch.msgid.link/20260911120627.2634225-4-dinguyen@kernel.org
Diffstat (limited to 'drivers')
-rw-r--r--drivers/edac/altera_edac.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/edac/altera_edac.c b/drivers/edac/altera_edac.c
index d8a3438fb..ccdfb3517 100644
--- a/drivers/edac/altera_edac.c
+++ b/drivers/edac/altera_edac.c
@@ -1516,8 +1516,10 @@ static int altr_portb_setup(struct altr_edac_device_dev *device)
altdev = dci->pvt_info;
*altdev = *device;
- if (!devres_open_group(device->edac->dev, altr_portb_setup, GFP_KERNEL))
+ if (!devres_open_group(device->edac->dev, altr_portb_setup, GFP_KERNEL)) {
+ edac_device_free_ctl_info(dci);
return -ENOMEM;
+ }
/* Update PortB specific values */
altdev->edac_dev_name = ecc_name;