mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
Avoid spurious timer activations in migrate_timer().
Signed-off-by: Keir Fraser <keir@xensource.com>
This commit is contained in:
1 parent
de4294617e
commit
ac9595600a
1 file changed
+7
-4
+7
-4
@@ -251,12 +251,15 @@ void migrate_timer(struct timer *timer, unsigned int new_cpu)
|
||||
}
|
||||
|
||||
if ( active_timer(timer) )
|
||||
{
|
||||
__stop_timer(timer);
|
||||
|
||||
timer->cpu = new_cpu;
|
||||
|
||||
if ( likely(!timer->killed) )
|
||||
timer->cpu = new_cpu;
|
||||
__add_timer(timer);
|
||||
}
|
||||
else
|
||||
{
|
||||
timer->cpu = new_cpu;
|
||||
}
|
||||
|
||||
spin_unlock(&timers[old_cpu].lock);
|
||||
spin_unlock_irqrestore(&timers[new_cpu].lock, flags);
|
||||
|
||||