mirror of https://gitee.com/openkylin/linux.git
ALSA: usb - Release capture substream URBs properly
Due to the wrong "return" in the loop, a capture substream won't be released at disconnection properly if the device is capture only and has no playback substream. This caused Oops occasionally at the device reconnection. Reported-by: Kim Minhyoung <minhyoung.kim@lge.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
fe6ce80ae2
commit
76195fb096
|
@ -126,7 +126,7 @@ static void snd_usb_stream_disconnect(struct list_head *head)
|
||||||
for (idx = 0; idx < 2; idx++) {
|
for (idx = 0; idx < 2; idx++) {
|
||||||
subs = &as->substream[idx];
|
subs = &as->substream[idx];
|
||||||
if (!subs->num_formats)
|
if (!subs->num_formats)
|
||||||
return;
|
continue;
|
||||||
snd_usb_release_substream_urbs(subs, 1);
|
snd_usb_release_substream_urbs(subs, 1);
|
||||||
subs->interface = -1;
|
subs->interface = -1;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue