linux/sound
Brent Lu cec6e41ce0
ASoC: hdac_hdmi: remove cancel_work_sync in runtime suspend
A deadlock is identified when there are three contexts running at the
same time:
- a HDMI jack work which is calling snd_soc_dapm_sync().
- user space is calling snd_pcm_release() to close pcm device.
- pm is calling runtime suspend function of HDMI codec driver.

By removing the clear_dapm_works() invocation in the
hdac_hdmi_runtime_suspend() function, the snd_pcm_release() could
always returns from dapm_power_widgets() function call without
blocking the hdac_hdmi_jack_dapm_work() work thread or being blocked
by the hdac_hdmi_runtime_suspend() function. The purpose of the jack
work is to enable/disable the dapm jack pin so it's not necessary to
cancel the work in runtime suspend function which is usually called
when pcm device is closed.

Signed-off-by: Brent Lu <brent.lu@intel.com>
Link: https://lore.kernel.org/r/1594818110-786-1-git-send-email-brent.lu@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2020-10-02 21:05:27 +01:00
..
ac97
aoa
arm
atmel ALSA: atmel: Remove invalid "fall through" comments 2020-07-09 19:10:11 +02:00
core ALSA: core: convert tasklets to use new tasklet_setup() API 2020-09-02 13:23:52 +02:00
drivers sound updates for 5.9 2020-08-06 14:27:31 -07:00
firewire ALSA: firewire: convert tasklets to use new tasklet_setup() API 2020-09-02 13:24:14 +02:00
hda ASoC: hdac: make SOF HDA codec driver probe deterministic 2020-09-21 23:57:24 +01:00
i2c
isa sound fixes for 5.9-rc2 2020-08-21 10:07:54 -07:00
mips
oss ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
parisc
pci ALSA: hdsp: convert tasklets to use new tasklet_setup() API 2020-09-02 13:25:23 +02:00
pcmcia ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
ppc ALSA: Replace the word "slave" in vmaster API 2020-07-20 10:10:47 +02:00
sh
soc ASoC: hdac_hdmi: remove cancel_work_sync in runtime suspend 2020-10-02 21:05:27 +01:00
sparc ALSA: Replace HTTP links with HTTPS ones 2020-07-19 20:49:25 +02:00
spi
synth
usb ALSA: ua101: convert tasklets to use new tasklet_setup() API 2020-09-02 13:27:07 +02:00
x86
xen ALSA: xen: Remove superfluous fall through comments 2020-07-09 19:10:37 +02:00
ac97_bus.c
Kconfig
last.c
Makefile
sound_core.c