[PATCH 1/1] coresight: Fix the ACPI memory leak

From: Junhao He
Date: Tue Aug 15 2023 - 08:32:04 EST


The ACPI buffer memory (buf.pointer) should be freed as the buffer
is not used after returning from acpi_get_dsd_graph(), free it to
prevent memory leak.

Fixes: 76ffa5ab5b79 ("coresight: Support for ACPI bindings")
Signed-off-by: Junhao He <hejunhao3@xxxxxxxxxx>
---
drivers/hwtracing/coresight/coresight-platform.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/hwtracing/coresight/coresight-platform.c b/drivers/hwtracing/coresight/coresight-platform.c
index 3e2e135cb8f6..c61cac5e058e 100644
--- a/drivers/hwtracing/coresight/coresight-platform.c
+++ b/drivers/hwtracing/coresight/coresight-platform.c
@@ -524,12 +524,15 @@ acpi_get_dsd_graph(struct acpi_device *adev)
/* Skip the non-Graph _DSD packages */
if (!is_acpi_dsd_graph_guid(guid))
continue;
- if (acpi_validate_dsd_graph(package))
+ if (acpi_validate_dsd_graph(package)) {
+ ACPI_FREE(buf.pointer);
return package;
+ }
/* Invalid graph format, continue */
dev_warn(&adev->dev, "Invalid Graph _DSD property\n");
}

+ ACPI_FREE(buf.pointer);
return NULL;
}

--
2.33.0