Re: [PATCH] cpufreq: qcom-hw: Fix memory leak in qcom_cpufreq_hw_read_lut()

From: Sibi Sankar
Date: Tue Nov 08 2022 - 04:32:52 EST


Hey Chen,

Thanks for the patch.

On 11/8/22 12:53, Chen Hui wrote:
If "cpu_dev" fails to get opp table in qcom_cpufreq_hw_read_lut(),
the program will return, resulting in "table" resource is not released.

Fixes: 51c843cf77bb ("cpufreq: qcom: Update the bandwidth levels on frequency change")

Reviewed-by: Sibi Sankar <quic_sibis@xxxxxxxxxxx>

Signed-off-by: Chen Hui <judy.chenhui@xxxxxxxxxx>
---
drivers/cpufreq/qcom-cpufreq-hw.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/cpufreq/qcom-cpufreq-hw.c b/drivers/cpufreq/qcom-cpufreq-hw.c
index 833589bc95e4..d15097549e8c 100644
--- a/drivers/cpufreq/qcom-cpufreq-hw.c
+++ b/drivers/cpufreq/qcom-cpufreq-hw.c
@@ -193,6 +193,7 @@ static int qcom_cpufreq_hw_read_lut(struct device *cpu_dev,
}
} else if (ret != -ENODEV) {
dev_err(cpu_dev, "Invalid opp table in device tree\n");
+ kfree(table);
return ret;
} else {
policy->fast_switch_possible = true;