linux_dsm_epyc7002/sound/pci
Takashi Iwai d94815f917 ALSA: hda - Fix endless loop of codec configure
azx_codec_configure() loops over the codecs found on the given
controller via a linked list.  The code used to work in the past, but
in the current version, this may lead to an endless loop when a codec
binding returns an error.

The culprit is that the snd_hda_codec_configure() unregisters the
device upon error, and this eventually deletes the given codec object
from the bus.  Since the list is initialized via list_del_init(), the
next object points to the same device itself.  This behavior change
was introduced at splitting the HD-audio code code, and forgotten to
adapt it here.

For fixing this bug, just use a *_safe() version of list iteration.

Fixes: d068ebc25e ("ALSA: hda - Move some codes up to hdac_bus struct")
Reported-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2017-06-28 12:10:05 +02:00
..
ac97 scripts/spelling.txt: add "swith" pattern and fix typo instances 2017-02-27 18:43:46 -08:00
ali5451 ALSA: ali5451: fix spelling mistake in "ali_capture_preapre" 2017-04-30 08:21:48 +02:00
asihpi
au88x0 ALSA: au88x0: avoid theoretical uninitialized access 2017-03-24 11:59:51 +01:00
aw2
ca0106
cs46xx scripts/spelling.txt: add "overwriten" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
cs5535audio
ctxfi ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call 2017-03-20 10:08:19 +01:00
echoaudio
emu10k1
hda ALSA: hda - Fix endless loop of codec configure 2017-06-28 12:10:05 +02:00
ice1712 Merge branch 'topic/for-4.12' into for-next 2017-03-20 12:24:26 +01:00
korg1212 lib/vsprintf.c: remove %Z support 2017-02-27 18:43:47 -08:00
lola
lx6464es
mixart
nm256
oxygen ALSA: oxygen: simply setting of the shortname for Xonar DG cards 2017-03-29 21:14:20 +02:00
pcxhr Merge branch 'topic/for-4.12' into for-next 2017-03-20 12:24:26 +01:00
riptide Annotate hardware config module parameters in sound/pci/ 2017-04-20 12:02:32 +01:00
rme9652
trident
vx222
ymfpci Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
ad1889.c
ad1889.h
ak4531_codec.c
als300.c
als4000.c Annotate hardware config module parameters in sound/pci/ 2017-04-20 12:02:32 +01:00
atiixp_modem.c
atiixp.c
azt3328.c
azt3328.h
bt87x.c
cmipci.c Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
cs4281.c
cs5530.c
ens1370.c Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00
ens1371.c
es1938.c
es1968.c
fm801.c
intel8x0.c alsa: use set_memory.h header 2017-05-08 17:15:14 -07:00
intel8x0m.c
Kconfig
maestro3.c
Makefile
rme32.c
rme96.c
sis7019.c
sis7019.h
sonicvibes.c Annotate hardware config module parameters in sound/pci/ 2017-04-20 12:02:32 +01:00
via82xx_modem.c
via82xx.c Annotation of module parameters that specify device settings 2017-05-10 19:13:03 -07:00