[PATCH 0/6] Fix direct renaming of hashed controls
Takashi Iwai
tiwai at suse.de
Fri Oct 21 08:18:47 CEST 2022
On Thu, 20 Oct 2022 22:46:20 +0200,
Maciej S. Szmigiero wrote:
>
> From: "Maciej S. Szmigiero" <maciej.szmigiero at oracle.com>
>
> I've noticed that some of mixer controls on my sound card seem to
> be partially broken on the 6.0 kernel - alsactl wasn't able to find them
> when restoring the mixer state.
>
> The issue was traced down to the recent addition of hashed controls lookup
> in commit c27e1efb61c5 ("ALSA: control: Use xarray for faster lookups").
>
> Since that commit it is *not* enough to just directly update the control
> name field (like some of ALSA drivers were doing).
> Now the hash entries for the modified control have to be updated too.
>
> This patch set adds a snd_ctl_rename() function that takes care of doing
> this operation properly for callers that already have the relevant
> struct snd_kcontrol at hand and hold the control write lock (or simply
> haven't registered the card yet).
>
> These prerequisites hold true for all the call sites modified.
>
> The core controls change and the emu10k1 patch were runtime tested.
> Similar patches for other devices were only compile tested.
Good catch!
Applied all patches now.
thanks,
Takashi
More information about the Alsa-devel
mailing list