cpufreq: qcom-hw: Fix memory leak in qcom_cpufreq_hw_read_lut()
authorChen Hui <judy.chenhui@huawei.com>
Tue, 8 Nov 2022 07:23:02 +0000 (15:23 +0800)
committerViresh Kumar <viresh.kumar@linaro.org>
Wed, 9 Nov 2022 06:50:05 +0000 (12:20 +0530)
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")
Signed-off-by: Chen Hui <judy.chenhui@huawei.com>
Reviewed-by: Sibi Sankar <quic_sibis@quicinc.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/cpufreq/qcom-cpufreq-hw.c

index 5e0598730a04fff25063e4f34c8111482379ebda..45dbb5d7fa77a7158f73d012b115132158657445 100644 (file)
@@ -197,6 +197,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;