2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'm getting xruns while trying to do low-latency capture/playback of
audio. After enabling the alsa debug options, I'm seeing errors like
these in my logs:

[66205.003000] Unexpected hw_pointer value [1] (stream = 0, delta: -3,
max jitter = 16): wrong interrupt acknowledge?
[66205.003000]  [<f0ae2ec1>] snd_pcm_period_elapsed+0x136/0x27a
[snd_pcm] (8)
[66205.003000]  [<f0af7780>] snd_intel8x0_interrupt+0x18d/0x1e5
[snd_intel8x0] (20)
[66205.003000]  [<b013495b>] handle_IRQ_event+0x4e/0xb6 (44)
[66205.003000]  [<b0135443>] thread_edge_irq+0x6f/0xc4 (48)
[66205.003000]  [<b0135519>] do_irqd+0x0/0x8a (16)
[66205.003000]  [<b01354d8>] do_hardirq+0x40/0x81 (4)
[66205.003000]  [<b0135575>] do_irqd+0x5c/0x8a (16)
[66205.003000]  [<b01261f6>] kthread+0x79/0xa3 (16)
[66205.003000]  [<b012617d>] kthread+0x0/0xa3 (24)
[66205.003000]  [<b0101319>] kernel_thread_helper+0x5/0xb (16)
[66205.004000] XRUN: pcmC0D0p
[66205.004000]  [<f0ae2f72>] snd_pcm_period_elapsed+0x1e7/0x27a
[snd_pcm] (8)
[66205.004000]  [<f0af7780>] snd_intel8x0_interrupt+0x18d/0x1e5
[snd_intel8x0] (24)
[66205.004000]  [<b013495b>] handle_IRQ_event+0x4e/0xb6 (44)
[66205.004000]  [<b0135443>] thread_edge_irq+0x6f/0xc4 (48)
[66205.004000]  [<b0135519>] do_irqd+0x0/0x8a (16)
[66205.004000]  [<b01354d8>] do_hardirq+0x40/0x81 (4)
[66205.004000]  [<b0135575>] do_irqd+0x5c/0x8a (16)
[66205.004000]  [<b01261f6>] kthread+0x79/0xa3 (16)
[66205.004000]  [<b012617d>] kthread+0x0/0xa3 (24)
[66205.004000]  [<b0101319>] kernel_thread_helper+0x5/0xb (16)

The only info I could get after searching for a while is that the
"Unexpected hw_pointer value" *could* be related to the audio interrupt
being serviced too late
(http://www.ussg.iu.edu/hypermail/linux/kernel/0407.1/1613.html).
However, I'm running the audio IRQ (IRQ 16) at priority 99 and my app at
98 (I also tried the opposite and get the same result). In this case,
I'm running with two periods of 16 samples each (48 kHz), but I've seen
that error occur with periods up to 64 samples. 

Any idea how to fix/further investigate that? My machine is a Dell D600
laptop with a Pentium-M 2.13 GHz, which I'm running at full-speed
(performance governor). Kernel is stock 2.6.16 + rt11 patch. Distro is
Ubuntu 5.10, kernel is not tainted.

Thanks,

        Jean-Marc

P.S. Please include me in CC since I'm not subscribed to lkml.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux