Hi Dan,
Am Dienstag, 7. Februar 2017, 16:19:06 CET schrieb Dan Carpenter:
The "goto err_armclk;" error path already does a clk_put(s3c_freq->hclk);
so this is a double free.
Fixes: 34ee55075265 ("[CPUFREQ] Add S3C2416/S3C2450 cpufreq driver")
Signed-off-by: Dan Carpenter <redacted>
Interesting, you found a mistake I made 5 years ago.
It always amazes me how much time I already spent in kernel-land :-) .
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Thanks for finding and fixing this
Heiko
quoted hunk ↗ jump to hunk
diff --git a/drivers/cpufreq/s3c2416-cpufreq.c
b/drivers/cpufreq/s3c2416-cpufreq.c index d6d425773fa4..5b2db3c6568f 100644
--- a/drivers/cpufreq/s3c2416-cpufreq.c
+++ b/drivers/cpufreq/s3c2416-cpufreq.c
@@ -400,7 +400,6 @@ static int s3c2416_cpufreq_driver_init(struct
cpufreq_policy *policy) rate = clk_get_rate(s3c_freq->hclk);
if (rate < 133 * 1000 * 1000) {
pr_err("cpufreq: HCLK not at 133MHz\n");
- clk_put(s3c_freq->hclk);
ret = -EINVAL;
goto err_armclk;
}