Re: [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch

From: Takashi Iwai
Date: Wed Jul 14 2004 - 03:52:58 EST


At Tue, 13 Jul 2004 17:45:30 -0400,
Lee Revell wrote:
>
> On Tue, 2004-07-13 at 17:29, Andrew Morton wrote:
> > Lee Revell <rlrevell@xxxxxxxxxxx> wrote:
> > >
> > > Would this explain these? When running JACK with settings that need
> > > sub-millisecond latencies, I get them when I generate any load at all on
> > > the system (typing, switching windows, etc). I also get lots of these
> > > if I run JACK from an X terminal, but very few if I run it from a text
> > > console, even if X is running in the background.
> > >
> > > Jul 13 14:36:16 mindpipe kernel: ALSA /usr/src/alsa-cvs-1.0.5/alsa-driver/alsa-kernel/core/pcm_lib.c:199: Unexpected hw_pointer value [1] (stream = 0, delta: -25, max jitter = 32): wrong interrupt acknowledge?
> >
> > I'm wondering what this message actually means. "Unexpected hw_pointer
> > value"?
> >
> > Does this actually indicate an underrun, or is the debug code screwy?
>
> Not sure. Here is what Takashi had to say about it:
>
> "The message appears when an unexpected DMA pointer is read in the
> interrupt handler. Either the handling of irq was delayed more than
> the buffer size, an irq is issued at the wrong timing, or the DMA
> pointer reigster is somehow screwed up.
>
> Since you're using quite small buffer, I guess the former case."
>
> My response:
>
> "I thought this was what an XRUN was, when the handling of the irq is
> delayed more than the buffer size. Sometimes these messages are
> associated with XRUNs, sometimes not."
>
> Haven't heard back yet.
>
> Is it possible that I am simply pushing my hardware past its limits?
> Keep in mind this is a 600Mhz C3 processor.

I think yes. 32 frames / 44.1kHz = 0.725 ms.


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