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

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.com


Signed-off-by: default avatarWill Deacon <will@kernel.org>
parent aaaee7b5
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -686,13 +686,16 @@ 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");
		return -ENODEV;