diff options
| author | Prasanna Kumar T S M <ptsm@linux.microsoft.com> | 2026-03-22 16:11:39 +0300 |
|---|---|---|
| committer | Borislav Petkov (AMD) <bp@alien8.de> | 2026-03-22 21:39:34 +0300 |
| commit | 1b6f292cb94d95c9bc22e1efe592daf62c60bc2e (patch) | |
| tree | c81a3d440b4ab870e7ff09886a63d44f44304adb | |
| parent | fbe230a9a79b62be3c6ac55b24d53ce5dd9202d5 (diff) | |
| download | linux-1b6f292cb94d95c9bc22e1efe592daf62c60bc2e.tar.xz | |
EDAC/versalnet: Fix memory leak in remove and probe error paths
The mcdi object allocated using kzalloc() in the setup_mcdi() is not freed in
the remove path or in probe's error handling path leading to a memory leak.
Fix it by freeing the allocated memory.
Fixes: d5fe2fec6c40d ("EDAC: Add a driver for the AMD Versal NET DDR controller")
Signed-off-by: Prasanna Kumar T S M <ptsm@linux.microsoft.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20260322131139.1684716-1-ptsm@linux.microsoft.com
| -rw-r--r-- | drivers/edac/versalnet_edac.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/edac/versalnet_edac.c b/drivers/edac/versalnet_edac.c index 0b47ed7fed63..b87fe57aa842 100644 --- a/drivers/edac/versalnet_edac.c +++ b/drivers/edac/versalnet_edac.c @@ -937,6 +937,7 @@ static int mc_probe(struct platform_device *pdev) err_init: cdx_mcdi_finish(priv->mcdi); + kfree(priv->mcdi); err_unreg: unregister_rpmsg_driver(&amd_rpmsg_driver); @@ -958,6 +959,7 @@ static void mc_remove(struct platform_device *pdev) remove_versalnet(priv); rproc_shutdown(priv->mcdi->r5_rproc); cdx_mcdi_finish(priv->mcdi); + kfree(priv->mcdi); } static const struct of_device_id amd_edac_match[] = { |
