ALSA: usb-audio: Fix racy list management in output queue
authorTakashi Iwai <tiwai@suse.de>
Fri, 24 Apr 2020 07:40:16 +0000 (09:40 +0200)
committerTakashi Iwai <tiwai@suse.de>
Fri, 24 Apr 2020 07:55:08 +0000 (09:55 +0200)
commit5b6cc38f3f3f37109ce72b60bda215a5f6892c0b
treefb7bf4df502f86f6cf8ce5d48bafe316a31ecf72
parent04c96460bfdb483de5aaad0f9f75b2f3eca500be
ALSA: usb-audio: Fix racy list management in output queue

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: 8fdff6a319e7 ("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>
sound/usb/endpoint.c