Comment 15 for bug 502226

Revision history for this message
Daniel T Chen (crimsun) wrote :

The following patch was submitted to fix this bug (and others; the hash is from sound-2.6.git):

commit 1c583063a5c769fe2ec604752e383972c69e6d9b
Author: Clemens Ladisch <email address hidden>
Date: Wed Mar 24 07:10:54 2010 +0100

    ALSA: cmipci: work around invalid PCM pointer

    When the CMI8738 FRAME2 register is read, the chip sometimes (probably
    when wrapping around) returns an invalid value that would be outside the
    programmed DMA buffer. This leads to an inconsistent PCM pointer that is
    likely to result in an underrun.

    To work around this, read the register multiple times until we get a
    valid value; the error state seems to be very short-lived.

    Signed-off-by: Clemens Ladisch <email address hidden>
    Reported-and-tested-by: Matija Nalis <email address hidden>
    Cc: <email address hidden>
    Signed-off-by: Takashi Iwai <email address hidden>