ALSA: pcm midlevel code - add time check for double interrupt acknowledge
commitbd76af0f87f7a1815b311bde269a3f18305b3169
authorJaroslav Kysela <perex@perex.cz>
Wed, 18 Aug 2010 12:16:54 +0000 (18 14:16 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 18 Aug 2010 13:18:02 +0000 (18 15:18 +0200)
tree27f95b3e568146eed0958989f3f8d0c4eae3616b
parente7cfbea9cb7a02ea29fdae5d39c9e3d09102c4d5
ALSA: pcm midlevel code - add time check for double interrupt acknowledge

The current code in pcm_lib.c do all checks using only the position
in the ring buffer. Unfortunately, where the interrupts gets delayed or
merged into one, we need another timing source to check when the
buffer size boundary overlaps to avoid the wrong updating of the
ring buffer pointers.

This code uses jiffies to check the right time window without any
performance impact.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/sound/pcm.h
sound/core/pcm_lib.c
sound/core/pcm_native.c