* 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?)
@ 2006-03-30 5:13 Valin, Jean-Marc (ICT Centre, Marsfield)
2006-03-30 6:15 ` Lee Revell
0 siblings, 1 reply; 4+ messages in thread
From: Valin, Jean-Marc (ICT Centre, Marsfield) @ 2006-03-30 5:13 UTC (permalink / raw)
To: linux-kernel
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.
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?)
2006-03-30 5:13 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?) Valin, Jean-Marc (ICT Centre, Marsfield)
@ 2006-03-30 6:15 ` Lee Revell
2006-03-30 6:19 ` Valin, Jean-Marc (ICT Centre, Marsfield)
0 siblings, 1 reply; 4+ messages in thread
From: Lee Revell @ 2006-03-30 6:15 UTC (permalink / raw)
To: Valin, Jean-Marc (ICT Centre, Marsfield); +Cc: linux-kernel
On Thu, 2006-03-30 at 16:13 +1100, Valin, Jean-Marc (ICT Centre,
Marsfield) wrote:
> 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.
It's possible that your hardware simply isn't capable of this and you'll
have to get a multichannel soundcard (more channels means you can use a
smaller buffer before hitting the lower limit of a PCI transfer) or use
a period of 128 samples or more.
Lee
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?)
2006-03-30 6:15 ` Lee Revell
@ 2006-03-30 6:19 ` Valin, Jean-Marc (ICT Centre, Marsfield)
2006-04-06 4:09 ` Valin, Jean-Marc (ICT Centre, Marsfield)
0 siblings, 1 reply; 4+ messages in thread
From: Valin, Jean-Marc (ICT Centre, Marsfield) @ 2006-03-30 6:19 UTC (permalink / raw)
To: Lee Revell; +Cc: linux-kernel
> It's possible that your hardware simply isn't capable of this and you'll
> have to get a multichannel soundcard (more channels means you can use a
> smaller buffer before hitting the lower limit of a PCI transfer) or use
> a period of 128 samples or more.
>From the ALSA verbose mode, I can see that the hardware does accept as
low as 8 samples per period -- and it actually works outside of the few
xruns per minute.
Jean-Marc
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?)
2006-03-30 6:19 ` Valin, Jean-Marc (ICT Centre, Marsfield)
@ 2006-04-06 4:09 ` Valin, Jean-Marc (ICT Centre, Marsfield)
0 siblings, 0 replies; 4+ messages in thread
From: Valin, Jean-Marc (ICT Centre, Marsfield) @ 2006-04-06 4:09 UTC (permalink / raw)
To: Lee Revell; +Cc: linux-kernel
On Thu, 2006-03-30 at 17:19 +1100, Valin, Jean-Marc (ICT Centre,
Marsfield) wrote:
> > It's possible that your hardware simply isn't capable of this and you'll
> > have to get a multichannel soundcard (more channels means you can use a
> > smaller buffer before hitting the lower limit of a PCI transfer) or use
> > a period of 128 samples or more.
Could you give me more info on that PCI transfer limit? I couldn't find
any reference to that on the web. Also, any way to see if that's the
real cause of the problem. I've been doing some experiments and noticed
that the percentage or xruns I get is almost independent of the period
size, which is a little odd. Any idea?
Jean-Marc
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-04-06 4:09 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-30 5:13 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?) Valin, Jean-Marc (ICT Centre, Marsfield)
2006-03-30 6:15 ` Lee Revell
2006-03-30 6:19 ` Valin, Jean-Marc (ICT Centre, Marsfield)
2006-04-06 4:09 ` Valin, Jean-Marc (ICT Centre, Marsfield)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox