[alsa-devel] [Bug 46011] Capture of sound from USB connected audio card (UGM96) doesn't work in 3.5.1 - kernel bug generated: scheduling while atomic

Takashi Iwai tiwai at suse.de
Fri Aug 17 08:17:32 CEST 2012


At Thu, 16 Aug 2012 13:26:48 +0200,
Clemens Ladisch wrote:
> 
> Daniel Mack wrote:
> > Clemens, the patch below fixes a "sleeping while atomic" bug in the USB
> > audio driver, but it raises a new "not enough bandwidth" issue, which
> > might even be unreleated.
> >
> >> +++ b/sound/usb/pcm.c
> >> @@ -544,6 +544,9 @@ static int snd_usb_pcm_prepare(struct snd_pcm_substream *substream)
> >>
> >> +	/* clear the pending deactivation on the target EPs */
> >> +	deactivate_endpoints(subs);
> 
> The HC drivers calculate bandwidth for a stream when the first URB is
> submitted or the last one is completed.  (xHCI does this when the
> altsetting is changed; IIRC there are plans to have other HCDs do the
> same.)
> 
> This patch doesn't change the relative order of URB submissions and
> cancellations.  The descriptions in bug 46011 indicates that we're
> running into the not-completely-fixed EHCI scheduling bugs.

Yes, this reminds me of a known issue...

In anyway, the fix for the bad EP deactivation was already merged to
sound git tree and will be included in the next pull request for
3.6-rc3.


Takashi


More information about the Alsa-devel mailing list