All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Valin, Jean-Marc (ICT Centre, Marsfield)" <jean-marc.valin@csiro.au>
To: linux-kernel@vger.kernel.org
Subject: 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?)
Date: Thu, 30 Mar 2006 16:13:58 +1100	[thread overview]
Message-ID: <1143695638.7328.5.camel@theorix.CeNTIE.NET.au> (raw)

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.


             reply	other threads:[~2006-03-30  5:14 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-30  5:13 Valin, Jean-Marc (ICT Centre, Marsfield) [this message]
2006-03-30  6:15 ` 2.6.16-rt11 and low-latency audio xruns (interrupt latency problem?) Lee Revell
2006-03-30  6:19   ` Valin, Jean-Marc (ICT Centre, Marsfield)
2006-04-06  4:09     ` Valin, Jean-Marc (ICT Centre, Marsfield)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1143695638.7328.5.camel@theorix.CeNTIE.NET.au \
    --to=jean-marc.valin@csiro.au \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.