WSL2-Linux-Kernel/sound/usb
Daniel Mack 015618b902 ALSA: snd-usb: Fix URB cancellation at stream start
Commit e9ba389c5 ("ALSA: usb-audio: Fix scheduling-while-atomic bug in
PCM capture stream") fixed a scheduling-while-atomic bug that happened
when snd_usb_endpoint_start was called from the trigger callback, which
is an atmic context. However, the patch breaks the idea of the endpoints
reference counting, which is the reason why the driver has been
refactored lately.

Revert that commit and let snd_usb_endpoint_start() take care of the URB
cancellation again. As this function is called from both atomic and
non-atomic context, add a flag to denote whether the function may sleep.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: stable@kernel.org [3.5+]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2012-08-30 07:46:27 +02:00
..
6fire ALSA: 6fire: use NULL instead of 0 for pointer assignment 2012-06-18 09:36:38 +02:00
caiaq ALSA: snd-usb-caiaq: initialize card pointer 2012-06-27 12:26:19 +02:00
misc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound 2012-01-12 08:00:30 -08:00
usx2y ALSA: usx2y: Fix typo in usbusx2yaudio.c and usx2yhwdeppcm.c 2012-02-15 14:56:11 +01:00
Kconfig ALSA: snd-usb-6fire: Select missing SND_VMASTER option in Kconfig 2012-02-25 11:07:19 +01:00
Makefile ALSA: snd-usb: move code from urb.c to endpoint.c 2011-09-14 17:07:03 +02:00
card.c ALSA: snd-usb: switch over to new endpoint streaming logic 2012-04-13 10:24:08 +02:00
card.h ALSA: usb-audio: Fix substream assignments 2012-06-08 09:01:37 +02:00
clock.c ALSA: snd-usb: fix clock source validity index 2012-08-01 10:24:16 +02:00
clock.h ALSA: usb-audio: simplify control interface access 2010-06-23 16:10:23 +02:00
debug.h ALSA: usb-audio: make hwc_debug a noop in case HW_CONST_DEBUG is not set 2011-05-18 11:44:35 +02:00
endpoint.c ALSA: snd-usb: Fix URB cancellation at stream start 2012-08-30 07:46:27 +02:00
endpoint.h ALSA: snd-usb: Fix URB cancellation at stream start 2012-08-30 07:46:27 +02:00
format.c ALSA: usb-audio: avoid integer overflow in create_fixed_stream_quirk() 2012-02-15 14:58:15 +01:00
format.h ALSA: usb-audio: parse more format descriptors with structs 2010-05-27 09:48:31 +02:00
helper.c ALSA: usb-audio: increase control transfer timeout 2011-09-27 09:21:48 +02:00
helper.h ALSA: usb-audio: increase control transfer timeout 2011-09-27 09:21:48 +02:00
midi.c sound: Add module.h to the previously silent sound users 2011-10-31 19:31:21 -04:00
midi.h ALSA: usb-audio: add support for Akai MPD16 2010-05-21 17:12:30 +02:00
mixer.c ALSA: usb-audio - Call get_min_max_*() after determining the name string 2012-05-15 08:35:00 +02:00
mixer.h ALSA: usb-audio: Rename and export mixer_vol_tlv 2012-04-24 08:01:27 +02:00
mixer_maps.c ALSA: snd_usb_audio: ignore ctrl errors on QuickCam Pro for Notebooks 2012-06-20 08:29:08 +02:00
mixer_quirks.c ALSA: usb-audio: Convert table to preferred C99 format 2012-06-11 12:49:56 +02:00
mixer_quirks.h ALSA: usb-mixer: factor out quirks 2010-03-12 12:20:26 +01:00
pcm.c ALSA: snd-usb: Fix URB cancellation at stream start 2012-08-30 07:46:27 +02:00
pcm.h ALSA: usb: refine delay information with USB frame counter 2011-09-12 10:30:20 +02:00
power.h ALSA: usbaudio: implement USB autosuspend 2011-03-11 14:59:29 +01:00
proc.c ALSA: snd-usb: remove refactorization left-overs 2012-04-21 17:40:28 +02:00
proc.h ALSA: usb-audio: refactor code 2010-03-05 08:17:14 +01:00
quirks-table.h ALSA: usb-audio: add BOSS GT-100 support 2012-06-25 11:11:24 +02:00
quirks.c ALSA: usb-audio: avoid integer overflow in create_fixed_stream_quirk() 2012-02-15 14:58:15 +01:00
quirks.h ALSA: usb-audio: refactor code 2010-03-05 08:17:14 +01:00
stream.c ALSA: usb-audio: Fix substream assignments 2012-06-08 09:01:37 +02:00
stream.h ALSA: snd-usb: re-order code 2011-09-14 17:07:02 +02:00
usbaudio.h ALSA: snd-usb: implement new endpoint streaming model 2012-04-13 10:23:42 +02:00