Re: [PATCH v4 0/5] ALSA: jack: Refactoring for jack kctls

Takashi Iwai
2015-04-08T18:55:52Z

At Wed, 08 Apr 2015 20:47:15 +0200,
David Henningsson wrote:
>
>
>
> On 2015-04-08 16:14, Jie, Yang wrote:
> >> -----Original Message-----
> >> From: Takashi Iwai [mailto:tiwai@suse.de]
> >> Sent: Wednesday, April 08, 2015 5:22 PM
> >> To: Jie, Yang
> >> Cc: David Henningsson; alsa-devel@alsa-project.org; broonie@kernel.org;
> >> Girdwood, Liam R
> >> Subject: Re: [alsa-devel] [PATCH v4 0/5] ALSA: jack: Refactoring for jack kctls
> >>
> >> At Wed, 8 Apr 2015 09:18:10 +0000,
> >> Jie, Yang wrote:
> >>> OK, then it may make life easier. Hi Takashi, you agree with this?
> >>> Do we need add those kctls to the HDA codec, or to hda_nid_item?
> >>
> >> It's been added in the local list to manage the kctls belonging to a codec more
> >> easily. But if snd_hda_codec_free() and _reset() can remove them
> >> gracefully, there is no big reason to keep tracking there.
> >>
> >
> > I am not sure if snd_hda_codec_free() and _reset() can remove them, with
> > removing tracking them in HDA codec in my current patch series. To be more
> > simply and safely, I just keep this old tracking ATM, and we can add patch
> > to optimize them later if needed, do you agree?
>
> Is it possible for the snd_jack object to own its kctls, so when
> snd_jack_dev_free is called, that would free the kctls too? Or at least
> have some kind of flag that would allow snd_jack_free to also delete its
> associated kctls?
>
> (And then snd_hda_codec_reset/free would end up calling snd_jack_dev_free.)

Yes, freeing jack table should release the included kctls. We didn't
do this in hda_free.c, but it should be done when integrated into
jack.c.

Takashi