linux/sound
Hans de Goede 8d2d7bcdc1
ASoC: rt5651: Fix workqueue cancel vs irq free race on remove
On removal we must free the IRQ *before* cancelling the jack-detect work,
so that the jack-detect work cannot be rescheduled by the IRQ.

Before this commit we were cancelling the jack-detect work from the
driver remove callback, while relying on devm to free the IRQ, which
happens after the remove callback.

This is the wrong order. This commit uses a devm-action to register
a devm callback which cancels the work, before requesting the IRQ
(devm tears things down in reverse order). This also allows us to
remove the now empty remove driver callback.

Cc: Carlo Caione <carlo@endlessm.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2018-07-10 18:49:24 +01:00
..
ac97 ALSA: ac97: kconfig: Remove select of undefined symbol AC97 2018-02-12 08:16:39 +01:00
aoa License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
arm ASoC: pxa2xx-pcm-lib: fix indenting 2018-06-29 12:05:05 +01:00
atmel ASoC: Updates for v4.14 2017-09-04 14:50:49 +02:00
core docs: Fix some broken references 2018-06-15 18:10:01 -03:00
drivers docs: Fix some broken references 2018-06-15 18:10:01 -03:00
firewire treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
hda ALSA: hda - Use a macro for snd_array iteration loops 2018-04-24 13:41:53 +02:00
i2c ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
isa media updates for v4.18-rc1 2018-06-07 12:34:37 -07:00
mips ALSA: sgio2audio: Improve a size determination in snd_sgio2audio_create() 2017-11-29 09:29:31 +01:00
oss treewide: kmalloc() -> kmalloc_array() 2018-06-12 16:19:22 -07:00
parisc License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pci docs: Fix some broken references 2018-06-15 18:10:01 -03:00
pcmcia
ppc License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sh ALSA: sh: aica: Convert timers to use timer_setup() 2017-10-05 08:20:17 +02:00
soc ASoC: rt5651: Fix workqueue cancel vs irq free race on remove 2018-07-10 18:49:24 +01:00
sparc sound: Use octal not symbolic permissions 2018-05-28 11:27:20 +02:00
spi License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
synth ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
usb sound fixes for 4.18-rc1 2018-06-15 17:24:40 +09:00
x86 ALSA: x86: Fix potential crash at error path 2018-02-28 08:46:00 +01:00
xen ALSA: xen-front: fix a loop timeout 2018-05-31 09:11:03 +02:00
ac97_bus.c
Kconfig ALSA: xen-front: Introduce Xen para-virtualized sound frontend driver 2018-05-16 12:58:36 +02:00
last.c
Makefile ALSA: xen-front: Introduce Xen para-virtualized sound frontend driver 2018-05-16 12:58:36 +02:00
sound_core.c sound: Use octal not symbolic permissions 2018-05-28 11:27:20 +02:00