linux/sound
Richard Fitzgerald 4c8d49bc47
ASoC: cs42l42: Fix WARN in remove() if running without an interrupt
The driver must free the IRQ in remove() to prevent the potential race
where an IRQ starts to be handled while the driver is being removed but
devres has not yet called free_irq(). However, the driver can run without
an interrupt but devm_free_irq() will hit a WARN() if no devres-managed
interrupt was ever created.

Fix this by only attempting to create the interrupt handler if the hardware
config specified an interrupt, and failing probe() if the interrupt could
not be created. This means that in cs42l42_remove() an interrupt must have
been registered if the irq number is valid and therefore it is safe to call
devm_free_irq().

Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://lore.kernel.org/r/20211015133619.4698-16-rf@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2021-10-15 16:14:23 +01:00
..
ac97 ALSA: ac97: fix PM reference leak in ac97_bus_remove() 2021-05-25 08:59:08 +02:00
aoa ALSA: aoa: remove unnecessary oom message 2021-06-17 17:31:38 +02:00
arm ALSA: arm: Remove unnecessary variables 2021-06-10 09:51:21 +02:00
atmel ALSA: atmel: ac97: clarify operator precedence 2020-09-03 09:27:34 +02:00
core ALSA: pcm: Fix mmap breakage without explicit buffer setup 2021-08-09 07:52:31 +02:00
drivers ALSA: serial: Fix assignment in if condition 2021-06-09 17:30:34 +02:00
firewire ALSA: oxfw: fix functioal regression for silence in Apogee Duet FireWire 2021-08-12 13:40:27 +02:00
hda ALSA: hda: intel-dsp-cfg: add missing ElkhartLake PCI ID 2021-07-20 09:10:55 +02:00
i2c ALSA: i2c: tea6330t: Remove redundant initialization of variable err 2021-06-12 09:32:14 +02:00
isa ALSA: sb: Fix potential ABBA deadlock in CSP driver 2021-07-17 09:55:10 +02:00
mips ALSA: n64: check return value after calling platform_get_resource() 2021-06-12 09:31:13 +02:00
oss sound/oss/dmasound: Remove superfluous "break" 2021-05-27 08:24:23 +02:00
parisc ALSA: parisc: Fix assignment in if condition 2021-06-09 17:30:39 +02:00
pci ALSA: hda/realtek: Limit mic boost on HP ProBook 445 G8 2021-08-19 17:52:25 +02:00
pcmcia ALSA: pcmcia: Fix assignment in if condition 2021-06-09 17:30:28 +02:00
ppc ALSA: ppc: fix error return code in snd_pmac_probe() 2021-06-16 08:52:29 +02:00
sh module: remove never implemented MODULE_SUPPORTED_DEVICE 2021-03-17 13:16:18 -07:00
soc ASoC: cs42l42: Fix WARN in remove() if running without an interrupt 2021-10-15 16:14:23 +01:00
sparc ALSA: sparc: Fix assignment in if condition 2021-06-09 17:30:29 +02:00
spi
synth ALSA: emux: fix spelling mistakes 2021-07-05 19:34:22 +02:00
usb ALSA: usb-audio: Avoid unnecessary or invalid connector selection at resume 2021-07-30 08:47:01 +02:00
virtio ALSA: virtio: fix kernel-doc 2021-04-27 08:39:39 +02:00
x86 ALSA: x86: fix spelling mistakes 2021-07-05 19:29:28 +02:00
xen module: remove never implemented MODULE_SUPPORTED_DEVICE 2021-03-17 13:16:18 -07:00
ac97_bus.c
Kconfig ALSA: virtio: add virtio sound driver 2021-03-07 09:07:16 +01:00
last.c
Makefile ALSA: virtio: add virtio sound driver 2021-03-07 09:07:16 +01:00
sound_core.c