ALSA: hda - Don't add elements of other codecs to vmaster slave
authorTakashi Iwai <tiwai@suse.de>
Thu, 10 Nov 2011 11:28:38 +0000 (12:28 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 21 Nov 2011 22:35:17 +0000 (14:35 -0800)
commit435dc21f524e0496863a82104ccec0eea8e3ddff
tree8f957c307645a8233d9049229823bc1c724d9960
parentaa535b5cc1d0e7f9671292392eb34cc0849d2080
ALSA: hda - Don't add elements of other codecs to vmaster slave

commit aeb4b88ec0a948efce8e3a23a8f964d3560a7308 upstream.

When a virtual mater control is created, the driver looks for slave
elements from the assigned card instance.  But this may include the
elements of other codecs when multiple codecs are on the same HD-audio
bus.  This works at the first time, but it'll give Oops when it's once
freed and re-created via reconfig sysfs.

This patch changes the element-look-up strategy to limit only to the
mixer elements of the same codec.

Reported-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
sound/pci/hda/hda_codec.c