|
@@ -158,9 +158,8 @@ void tick_nohz_stop_idle(int cpu)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-static ktime_t tick_nohz_start_idle(int cpu)
|
|
|
+static ktime_t tick_nohz_start_idle(struct tick_sched *ts)
|
|
|
{
|
|
|
- struct tick_sched *ts = &per_cpu(tick_cpu_sched, cpu);
|
|
|
ktime_t now, delta;
|
|
|
|
|
|
now = ktime_get();
|
|
@@ -201,8 +200,8 @@ void tick_nohz_stop_sched_tick(void)
|
|
|
local_irq_save(flags);
|
|
|
|
|
|
cpu = smp_processor_id();
|
|
|
- now = tick_nohz_start_idle(cpu);
|
|
|
ts = &per_cpu(tick_cpu_sched, cpu);
|
|
|
+ now = tick_nohz_start_idle(ts);
|
|
|
|
|
|
/*
|
|
|
* If this cpu is offline and it is the one which updates
|
|
@@ -222,7 +221,6 @@ void tick_nohz_stop_sched_tick(void)
|
|
|
if (need_resched())
|
|
|
goto end;
|
|
|
|
|
|
- cpu = smp_processor_id();
|
|
|
if (unlikely(local_softirq_pending())) {
|
|
|
static int ratelimit;
|
|
|
|