[PATCH] arc: kernel: Fix clk reference leak in show_cpuinfo()
Vineet Gupta
vgupta at kernel.org
Tue Sep 8 22:24:48 PDT 2026
On 9/9/26 10:12 AM, blaze wrote:
> In show_cpuinfo(), clk_get() acquires a reference to the CPU clock, but
> clk_put() is never called to release it. Since show_cpuinfo() is the
> seq_file show callback for /proc/cpuinfo, this causes a clock reference
> count leak every time /proc/cpuinfo is read.
>
> The frequency is extracted via clk_get_rate() into a local variable, so
> the clock reference can be safely released immediately after.
>
> Fix this by calling clk_put(cpu_clk) right after clk_get_rate().
Thx for the fix and right on time as I was queuing up changes.
Acked-by: Vineet Gupta <vgupta at kernel.org>
Thx,
-Vineet
> Fixes: 98f2892607c5 ("ARC: [cpuinfo] Add clk info in /proc/cpuinfo")
> Signed-off-by: blaze<1466528493 at qq.com>
> ---
> arch/arc/kernel/setup.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arc/kernel/setup.c b/arch/arc/kernel/setup.c
> index 0000000..1111111 100644
> --- a/arch/arc/kernel/setup.c
> +++ b/arch/arc/kernel/setup.c
> @@ -593,6 +593,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
> cpu_id);
> } else {
> freq = clk_get_rate(cpu_clk);
> + clk_put(cpu_clk);
> }
> if (freq)
> seq_printf(m, "CPU speed\t: %lu.%02lu Mhz\n",
> --
> 2.43.0
>
More information about the linux-snps-arc
mailing list