On Fri, 23 Apr 2021 20:04:38 +0200, Lucas wrote:
On Fri, Apr 23, 2021 at 2:47 AM Takashi Iwai tiwai@suse.de wrote:
Is this really with snd-usb-audio driver? Please check the entry in /proc/asound/modules (or traverse via sysfs).
No, I see it's not. It's using the correct snd_ua101 module
Then it's expected, and it's been so. I haven't touched snd-ua101 driver code until now.
This rather sounds like a generic problem of the implicit feedback. Please give the kernel log with snd_usb_audio.dyndbg=+p boot option with some notion which timestamp corresponding to which action (e.g. starting playback, stopping recording, etc).
Okay, that's good news! Thanks, and here's that:
Thanks.
Could you try the patch below?
Takashi
--- a/sound/usb/endpoint.c +++ b/sound/usb/endpoint.c @@ -1443,11 +1443,11 @@ void snd_usb_endpoint_stop(struct snd_usb_endpoint *ep) if (snd_BUG_ON(!atomic_read(&ep->running))) return;
- if (ep->sync_source) - WRITE_ONCE(ep->sync_source->sync_sink, NULL); - - if (!atomic_dec_return(&ep->running)) + if (!atomic_dec_return(&ep->running)) { + if (ep->sync_source) + WRITE_ONCE(ep->sync_source->sync_sink, NULL); stop_urbs(ep, false); + } }
/**