[ALSA] system timer: fix lost ticks correction adjustment
Fix the adjustment of the lost ticks correction variable in the case when the correction has been fully taken into account in the next timer expiration value. Subtracting the scheduled ticks value would result in an underflow. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
This commit is contained in:
parent
7bc5ba7e02
commit
17f48ec3f1
@ -987,7 +987,7 @@ static int snd_timer_s_start(struct snd_timer * timer)
|
||||
njiff++;
|
||||
} else {
|
||||
njiff += timer->sticks - priv->correction;
|
||||
priv->correction -= timer->sticks;
|
||||
priv->correction = 0;
|
||||
}
|
||||
priv->last_expires = priv->tlist.expires = njiff;
|
||||
add_timer(&priv->tlist);
|
||||
|
Loading…
Reference in New Issue
Block a user