From c342b4ecdf001a934dd88b2462dfe869128548a9 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Sun, 16 Sep 2007 15:36:43 +0200 Subject: [PATCH] --- yaml --- r: 64983 b: refs/heads/master c: 31d9b3938c0459e5e9755ce0a98ac1e24eeff972 h: refs/heads/master i: 64981: ed183f78fa936d54ffaad8db99736a2f684fb812 64979: 25fce1054378021d526931be274e06c339d7efa6 64975: 5048947cb393efc5e5404abccd09cefe939db317 v: v3 --- [refs] | 2 +- trunk/kernel/time/tick-broadcast.c | 11 ++++------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index dfe54c2a9d1c..77f27b7e0366 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 07eec6af448d13a6a520d9c6f06f2e87f61b567a +refs/heads/master: 31d9b3938c0459e5e9755ce0a98ac1e24eeff972 diff --git a/trunk/kernel/time/tick-broadcast.c b/trunk/kernel/time/tick-broadcast.c index 947959fb2bb5..aab881c86a1a 100644 --- a/trunk/kernel/time/tick-broadcast.c +++ b/trunk/kernel/time/tick-broadcast.c @@ -560,20 +560,17 @@ void tick_broadcast_switch_to_oneshot(void) */ void tick_shutdown_broadcast_oneshot(unsigned int *cpup) { - struct clock_event_device *bc; unsigned long flags; unsigned int cpu = *cpup; spin_lock_irqsave(&tick_broadcast_lock, flags); - bc = tick_broadcast_device.evtdev; + /* + * Clear the broadcast mask flag for the dead cpu, but do not + * stop the broadcast device! + */ cpu_clear(cpu, tick_broadcast_oneshot_mask); - if (tick_broadcast_device.mode == TICKDEV_MODE_ONESHOT) { - if (bc && cpus_empty(tick_broadcast_oneshot_mask)) - clockevents_set_mode(bc, CLOCK_EVT_MODE_SHUTDOWN); - } - spin_unlock_irqrestore(&tick_broadcast_lock, flags); }