> -----Original Message----- > From: Stephen Rothwell [mailto:s...@canb.auug.org.au] > Sent: 2013年4月10日 17:03 > To: Tang Yuantian-B29983 > Cc: grant.lik...@secretlab.ca; devicetree-disc...@lists.ozlabs.org; > linuxppc-...@lists.ozlabs.org; linux-kernel@vger.kernel.org; > rob.herr...@calxeda.com > Subject: Re: [PATCH] of: remove the unnecessary of_node_put for > of_parse_phandle_with_args() > > Hi, > > On Tue, 9 Apr 2013 14:56:09 +0800 <yuantian.t...@freescale.com> wrote: > > > > From: Tang Yuantian <yuantian.t...@freescale.com> > > > > As the function itself says it is caller's responsibility to call the > > of_node_put(). So, remove it on success to keep the reference count > > correct. > > > > Signed-off-by: Tang Yuantian <yuantian.t...@freescale.com> > > --- > > drivers/of/base.c | 3 --- > > 1 file changed, 3 deletions(-) > > > > diff --git a/drivers/of/base.c b/drivers/of/base.c index > > 321d3ef..e8b4c28 100644 > > --- a/drivers/of/base.c > > +++ b/drivers/of/base.c > > @@ -1168,9 +1168,6 @@ static int __of_parse_phandle_with_args(const > struct device_node *np, > > out_args->args[i] = > > be32_to_cpup(list++); > > } > > > > - /* Found it! return success */ > > - if (node) > > - of_node_put(node); > > Actually, if out_args is NULL, you should do the of_node_put(node), so > probably the correct fix is to add an "else" before the above "if" (and > move the comment). >
Yes, I already sent out the v2 patch. Please see: http://patchwork.ozlabs.org/patch/235288/ Regards, Yuantian > -- > Cheers, > Stephen Rothwell s...@canb.auug.org.au > http://www.canb.auug.org.au/~sfr/