kernel-fxtec-pro1x/sound/usb
Takashi Iwai d3a9803bc7 ALSA: usb-audio: Fix racy list management in output queue
[ Upstream commit 5b6cc38f3f3f37109ce72b60bda215a5f6892c0b ]

The linked list entry from FIFO is peeked at
queue_pending_output_urbs() but the actual element pop-out is
performed outside the spinlock, and it's potentially racy.

Do delete the link at the right place inside the spinlock.

Fixes: 8fdff6a319 ("ALSA: snd-usb: implement new endpoint streaming model")
Link: https://lore.kernel.org/r/20200424074016.14301-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-06-25 15:32:54 +02:00
..
6fire ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() 2018-07-18 08:24:29 +02:00
bcd2000
caiaq ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() 2018-07-18 08:24:29 +02:00
hiface ALSA: hiface: fix multiple memory leak bugs 2019-08-16 10:12:51 +02:00
line6 ALSA: line6: Fix endless MIDI read loop 2020-03-25 08:06:09 +01:00
misc ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() 2018-07-18 08:24:29 +02:00
usx2y ALSA: usx2y: Fix potential NULL dereference 2020-04-29 16:31:28 +02:00
card.c ALSA: usb-audio: Fix inconsistent card PM state after resume 2020-06-22 09:05:02 +02:00
card.h ALSA: usb-audio: Improve frames size computation 2020-06-25 15:32:53 +02:00
clock.c ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 2020-02-19 19:51:54 +01:00
clock.h ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 2020-02-19 19:51:54 +01:00
debug.h
endpoint.c ALSA: usb-audio: Fix racy list management in output queue 2020-06-25 15:32:54 +02:00
endpoint.h ALSA: usb-audio: Improve frames size computation 2020-06-25 15:32:53 +02:00
format.c ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices 2020-04-29 16:31:29 +02:00
format.h ALSA: usb: initial USB Audio Device Class 3.0 support 2018-03-21 11:46:33 +01:00
helper.c
helper.h ALSA: usb-audio: More validations of descriptor units 2019-11-12 19:20:48 +01:00
Kconfig
Makefile ALSA: usb-audio: More validations of descriptor units 2019-11-12 19:20:48 +01:00
midi.c ALSA: usb-midi: use irqsave() in USB's complete callback 2018-07-02 15:52:23 +02:00
midi.h
mixer.c ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC 2020-06-03 08:19:38 +02:00
mixer.h ALSA: usb-audio: Add connector notifier delegation 2020-04-29 16:31:24 +02:00
mixer_maps.c ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio 2020-06-03 08:19:39 +02:00
mixer_quirks.c ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif 2020-04-29 16:31:29 +02:00
mixer_quirks.h ALSA: usb-audio: Initialize Dell Dock playback volumes 2018-05-02 16:02:32 +02:00
mixer_scarlett.c ALSA: usb-audio: Clean up mixer element list traverse 2018-05-03 12:35:19 +02:00
mixer_scarlett.h
mixer_us16x08.c
mixer_us16x08.h
pcm.c ALSA: usb-audio: Improve frames size computation 2020-06-25 15:32:53 +02:00
pcm.h ALSA: usb-audio: Add UAC3 Power Domains to suspend/resume 2018-07-31 15:01:36 +02:00
power.c ALSA: usb-audio: More validations of descriptor units 2019-11-12 19:20:48 +01:00
power.h ALSA: usb-audio: Initial Power Domain support 2018-07-31 15:01:22 +02:00
proc.c
proc.h
quirks-table.h ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock 2020-06-22 09:05:02 +02:00
quirks.c ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset 2020-05-20 08:18:47 +02:00
quirks.h ALSA: usb-audio: move audioformat quirks to quirks.c 2018-03-19 17:00:12 +01:00
stream.c ALSA: usb-audio: More validations of descriptor units 2019-11-12 19:20:48 +01:00
stream.h
usbaudio.h ALSA: usb-audio: Fix inconsistent card PM state after resume 2020-06-22 09:05:02 +02:00
validate.c ALSA: usb-audio: Fix endianess in descriptor validation 2020-02-11 04:33:56 -08:00