linux/sound/pci/emu10k1
Takashi Iwai 192c4cccd0 ALSA: control: Take controls_rwsem lock in snd_ctl_remove()
So far, snd_ctl_remove() requires its caller to take
card->controls_rwsem manually before the call for avoiding possible
races.  However, many callers don't care and miss the locking.

Basically it's cumbersome and error-prone to enforce it to each
caller.  Moreover, card->controls_rwsem is a field that should be used
only by internal or proper helpers, and it's not to be touched at
random external places.

This patch is an attempt to make those calls more consistent: now
snd_ctl_remove() takes the card->controls_rwsem internally, just like
other API functions for kctls.  Since a few callers already take the
controls_rwsem locks, the patch removes those locks at the same time,
too.

Link: https://lore.kernel.org/r/20230718141304.1032-5-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2023-07-20 10:01:27 +02:00
..
emu10k1_callback.c ALSA: emu10k1: fix synthesizer pitch for E-MU cards at 44.1 kHz 2023-06-13 07:42:08 +02:00
emu10k1_main.c ALSA: emu10k1: make available E-MU clock sources card-specific 2023-06-13 07:40:51 +02:00
emu10k1_patch.c ALSA: pci/emu10k1: remove 'set but not used' warning 2020-07-07 12:09:45 +02:00
emu10k1_synth_local.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
emu10k1_synth.c ALSA: emu10k1: fix synthesizer pitch for E-MU cards at 44.1 kHz 2023-06-13 07:42:08 +02:00
emu10k1.c Revert "ALSA: emu10k1 - delay the PCM interrupts (add pcm_irq_delay parameter)" 2023-05-18 07:29:41 +02:00
emu10k1x.c ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error 2022-04-12 17:58:24 +02:00
emufx.c ALSA: control: Take controls_rwsem lock in snd_ctl_remove() 2023-07-20 10:01:27 +02:00
emumixer.c ALSA: emu10k1: make available E-MU clock sources card-specific 2023-06-13 07:40:51 +02:00
emumpu401.c ALSA: emu10k1: Fix assignment in if condition 2021-06-09 17:30:11 +02:00
emupcm.c ALSA: emu10k1: add support for 12 kHz capture on Audigy 2023-06-13 07:47:16 +02:00
emuproc.c ALSA: emu10k1: actually show some S/PDIF status in /proc for E-MU cards 2023-06-13 07:47:34 +02:00
io.c ALSA: emu10k1: query rate of external clock sources on E-MU cards 2023-06-13 07:41:07 +02:00
irq.c ALSA: emu10k1: fix handling of half-loop interrupts 2023-05-18 13:07:13 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
memory.c Revert "ALSA: emu10k1 - delay the PCM interrupts (add pcm_irq_delay parameter)" 2023-05-18 07:29:41 +02:00
p16v.c ALSA: emu10k1: use more existing defines instead of open-coded numbers 2023-04-28 11:22:51 +02:00
p16v.h ALSA: emu10k1: comment updates 2023-04-23 09:15:13 +02:00
p17v.h ALSA: emu10k1: comment updates 2023-04-23 09:15:13 +02:00
timer.c ALSA: emu10k1: fix timer for E-MU cards at 44.1 kHz word clock 2023-06-13 07:46:58 +02:00
tina2.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
voice.c ALSA: emu10k1: revamp playback voice allocator 2023-05-20 10:16:20 +02:00