[alsa-devel] [PATCH 1/4] ASoC: simple-card: Fix device node locks

Jean-Francois Moine moinejf at free.fr
Tue Feb 25 08:30:56 CET 2014


On Mon, 24 Feb 2014 02:17:00 +0000
"Li.Xiubo at freescale.com" <Li.Xiubo at freescale.com> wrote:

> > @@ -169,22 +164,26 @@ static int asoc_simple_card_parse_of(struct device_node
> > *node,
> >  	/* CPU sub-node */
> >  	ret = -EINVAL;
> >  	np = of_get_child_by_name(node, "simple-audio-card,cpu");
> > -	if (np)
> > +	if (np) {
> >  		ret = asoc_simple_card_sub_parse_of(np, priv->daifmt,
> >  						  &priv->cpu_dai,
> >  						  &dai_link->cpu_of_node,
> >  						  &dai_link->cpu_dai_name);
> > +		of_node_put(np);
> 
> Does the of_node_put(np) is really needed here ?
	[snip]

Yes, of_get_child_by_name() increments the node refcount and np is not
used afterwards.

But, you are right, this creates a bug in the next patch when using
of_get_next_child(). I will fix it.

Thanks.

-- 
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/


More information about the Alsa-devel mailing list