提交 75324684 编写于 作者: S Stefan Wahren 提交者: Catalin Marinas

drivers/perf: arm_pmu: Fix leak in error path

In case of a IRQ type mismatch in of_pmu_irq_cfg() the
device node for interrupt affinity isn't freed. So fix this
issue by calling of_node_put().
Signed-off-by: NStefan Wahren <stefan.wahren@i2se.com>
Fixes: fa8ad788 ("arm: perf: factor arm_pmu core out to drivers")
Signed-off-by: NWill Deacon <will.deacon@arm.com>
Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
上级 3eab887a
...@@ -925,6 +925,7 @@ static int of_pmu_irq_cfg(struct arm_pmu *pmu) ...@@ -925,6 +925,7 @@ static int of_pmu_irq_cfg(struct arm_pmu *pmu)
if (i > 0 && spi != using_spi) { if (i > 0 && spi != using_spi) {
pr_err("PPI/SPI IRQ type mismatch for %s!\n", pr_err("PPI/SPI IRQ type mismatch for %s!\n",
dn->name); dn->name);
of_node_put(dn);
kfree(irqs); kfree(irqs);
return -EINVAL; return -EINVAL;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册