Message ID | f2186955f310494f10990b5c402ada164d7834b8.1619188632.git.christophe.jaillet@wanadoo.fr (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | [1/2] powerpc: Fix a memory leak in error handling paths | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/apply_patch | success | Successfully applied on branch powerpc/merge (d20f726744a0312b4b6613333bda7da9bc52fb75) |
snowpatch_ozlabs/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 14 lines checked |
snowpatch_ozlabs/needsstable | warning | Please consider tagging this patch for stable! |
On Fri, Apr 23, 2021 at 9:40 AM Christophe JAILLET <christophe.jaillet@wanadoo.fr> wrote: > > If we exit the for_each_of_cpu_node loop early, the reference on the > current node must be decremented, otherwise there is a leak. > > Fixes: a94fe366340a ("powerpc: use for_each_of_cpu_node iterator") > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> > --- > Strangely, the commit above added the needed of_node_put in one place but > missed 2 other places! Well, maintained it in one place and forgot to add in the other two. > This is strange, so maybe I misunderstand something. Review carefully > --- > arch/powerpc/platforms/powermac/feature.c | 2 ++ > 1 file changed, 2 insertions(+) Reviewed-by: Rob Herring <robh@kernel.org> I don't really think patch 2 is worthwhile but that's up to the powerpc maintainers. Rob
diff --git a/arch/powerpc/platforms/powermac/feature.c b/arch/powerpc/platforms/powermac/feature.c index 5c77b9a24c0e..e612222f7d2e 100644 --- a/arch/powerpc/platforms/powermac/feature.c +++ b/arch/powerpc/platforms/powermac/feature.c @@ -1060,6 +1060,7 @@ core99_reset_cpu(struct device_node *node, long param, long value) continue; if (param == *num) { reset_io = *rst; + of_node_put(np); break; } } @@ -1506,6 +1507,7 @@ static long g5_reset_cpu(struct device_node *node, long param, long value) continue; if (param == *num) { reset_io = *rst; + of_node_put(np); break; } }
If we exit the for_each_of_cpu_node loop early, the reference on the current node must be decremented, otherwise there is a leak. Fixes: a94fe366340a ("powerpc: use for_each_of_cpu_node iterator") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> --- Strangely, the commit above added the needed of_node_put in one place but missed 2 other places! This is strange, so maybe I misunderstand something. Review carefully --- arch/powerpc/platforms/powermac/feature.c | 2 ++ 1 file changed, 2 insertions(+)