linux/sound
Takashi Iwai 6564d0ad67 ALSA: ctl: Workaround for lockdep warning wrt card->ctl_files_rwlock
The recent change in lockdep for read lock caused the deadlock
warnings in ALSA control code which uses the read_lock() for
notification and else while write_lock_irqsave() is used for adding
and removing the list entry.  Although a deadlock would practically
never hit in a real usage (the addition and the deletion can't happen
with the notification), it's better to fix the read_lock() usage in a
semantically correct way.

This patch replaces the read_lock() calls with read_lock_irqsave()
version for avoiding a reported deadlock.  The notification code path
takes the irq disablement in anyway, and other code paths are very
short execution, hence there shouldn't be any big performance hit by
this change.

Fixes: e918188611 ("locking: More accurate annotations for read_lock()")
Reported-by: syzbot+561a74f84100162990b2@syzkaller.appspotmail.com
Link: https://lore.kernel.org/r/20200922084953.29018-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2020-09-22 11:07:10 +02:00
..
ac97 ALSA: ac97: (cosmetic) align argument names 2020-09-03 09:27:27 +02:00
aoa ALSA: aoa: i2sbus: use DECLARE_COMPLETION_ONSTACK() macro 2020-09-03 09:26:52 +02:00
arm ASoC: arm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer 2020-03-27 14:44:56 +00:00
atmel ALSA: atmel: ac97: clarify operator precedence 2020-09-03 09:27:34 +02:00
core ALSA: ctl: Workaround for lockdep warning wrt card->ctl_files_rwlock 2020-09-22 11:07:10 +02:00
drivers ALSA: aloop: Replace tasklet with work 2020-09-09 18:33:36 +02:00
firewire ALSA: firewire: Replace tasklet with work 2020-09-11 18:22:54 +02:00
hda ALSA: hda - fix CONTROLLER_IN_GPU macro name 2020-09-21 17:58:47 +02:00
i2c
isa sound fixes for 5.9-rc2 2020-08-21 10:07:54 -07:00
mips ALSA: sgio2audio: Remove usage of dropped hw_params/hw_free functions 2020-03-06 12:06:41 +01:00
oss ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
parisc
pci ALSA: hda - controller is in GPU on the DG1 2020-09-21 17:57:21 +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: txx9: convert tasklets to use new tasklet_setup() API 2020-09-02 13:26:33 +02:00
sparc ALSA: Replace HTTP links with HTTPS ones 2020-07-19 20:49:25 +02:00
spi
synth
usb ALSA: ua101: Replace tasklet with work 2020-09-09 18:33:15 +02:00
x86 ALSA: hda: use consistent HDAudio spelling in comments/docs 2020-09-02 19:31:32 +02:00
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