[alsa-devel] [PATCH] ASoC: SOF: intel: Fix probe error without i915 graphics

Takashi Iwai tiwai at suse.de
Mon Feb 17 15:25:17 CET 2020


On Mon, 17 Feb 2020 15:21:37 +0100,
Kai Vehmanen wrote:
> 
> Hey,
> 
> On Mon, 17 Feb 2020, Takashi Iwai wrote:
> 
> > On Mon, 17 Feb 2020 14:17:54 +0100, Kai Vehmanen wrote:
> > >  snd_hdac_i915_exit() calls
> > >    -> snd_hdac_acomp_exit(), which again calls
> > >    -> component.c:component_master_del(dev, &hdac_component_master_ops);
> > >    -> component.c:take_down_master()
> > >    -> devres.c:devres_release_group(master->dev, NULL);
> > > 
> > > ...  now that is somewhat suprising. Basicly that goes on to release all 
> > > devres resources for the hdac_bus device (not just those related to 
> > > acomp!).
> > 
> > Does it really?  I thought it applies only to the group, and id=NULL
> > indicating that it's a local group that was created with id=NULL (by
> > address match).
> 
> at least in my tests, acomp_exit() ended up releasing a bunch of devres 
> allocations made with devm_kzalloc() that had no relation to acomp. I 
> noted that in devres.c:find_group(), docs say:
> 
> /* Find devres group with ID @id.  If @id is NULL, look for the latest. */
> static struct devres_group * find_group(struct device *dev, void *id)
> 
> ... I don't see how it would be limiting a local group.

Isn't it the devres object allocated in the component base code
itself?


Takashi


More information about the Alsa-devel mailing list