Skip to content
Snippets Groups Projects
user avatar
Avi Kivity authored
When a hardware timer fires, we walk over the timer list, expiring timers
and erasing them from the list.

This is all well and good, except that a timer may rearm itself in its
callback (this only holds for timer_base clients, not sched::timer, which
consumes its own callback).  If it does, we end up erasing it even though
it wants to be triggered.

Fix by checking for the armed state before erasing.

Signed-off-by: default avatarAvi Kivity <avi@cloudius-systems.com>
Tested-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
870d8410
History
Name Last commit Last update