Commit 491f10d0 authored by Liang He's avatar Liang He Committed by Will Deacon

perf: RISC-V: Add of_node_put() when breaking out of for_each_of_cpu_node()

In pmu_sbi_setup_irqs(), we should call of_node_put() for the 'cpu'
when breaking out of for_each_of_cput_node() as its refcount will
be automatically increased and decreased during the iteration.

Fixes: 4905ec2f ("RISC-V: Add sscofpmf extension support")
Signed-off-by: default avatarLiang He <windhl@126.com>
Reviewed-by: default avatarAtish Patra <atishp@rivosinc.com>
Reviewed-by: default avatarAndrew Jones <ajones@ventanamicro.com>
Link: https://lore.kernel.org/r/20220715130330.443363-1-windhl@126.comSigned-off-by: default avatarWill Deacon <will@kernel.org>
parent aaaee7b5
......@@ -686,12 +686,15 @@ static int pmu_sbi_setup_irqs(struct riscv_pmu *pmu, struct platform_device *pde
child = of_get_compatible_child(cpu, "riscv,cpu-intc");
if (!child) {
pr_err("Failed to find INTC node\n");
of_node_put(cpu);
return -ENODEV;
}
domain = irq_find_host(child);
of_node_put(child);
if (domain)
if (domain) {
of_node_put(cpu);
break;
}
}
if (!domain) {
pr_err("Failed to find INTC IRQ root domain\n");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment