diff options
author | Ingo Molnar <mingo@elte.hu> | 2010-08-05 03:46:29 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-08-05 03:46:29 -0400 |
commit | 0bcfe75807944106a3aa655a54bb610d62f3a7f5 (patch) | |
tree | d48d848e09d1bf48fe7fa23e9226f38ef342eed4 | |
parent | eebef74695e1498e04e5f85be9c6f84bd2e7358a (diff) | |
parent | 396e894d289d69bacf5acd983c97cd6e21a14c08 (diff) |
Merge branch 'sched/urgent' into sched/core
Conflicts:
include/linux/sched.h
Merge reason: Add the leftover .35 urgent bits, fix the conflict.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | include/linux/sched.h | 6 | ||||
-rw-r--r-- | kernel/sched.c | 10 | ||||
-rw-r--r-- | kernel/time/tick-sched.c | 2 |
3 files changed, 1 insertions, 17 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 9a7bc5ba7e7e..2091ea2a2c5c 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -273,14 +273,8 @@ extern cpumask_var_t nohz_cpu_mask; | |||
273 | #if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ) | 273 | #if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ) |
274 | extern void select_nohz_load_balancer(int stop_tick); | 274 | extern void select_nohz_load_balancer(int stop_tick); |
275 | extern int get_nohz_timer_target(void); | 275 | extern int get_nohz_timer_target(void); |
276 | extern int nohz_ratelimit(int cpu); | ||
277 | #else | 276 | #else |
278 | static inline void select_nohz_load_balancer(int stop_tick) { } | 277 | static inline void select_nohz_load_balancer(int stop_tick) { } |
279 | |||
280 | static inline int nohz_ratelimit(int cpu) | ||
281 | { | ||
282 | return 0; | ||
283 | } | ||
284 | #endif | 278 | #endif |
285 | 279 | ||
286 | /* | 280 | /* |
diff --git a/kernel/sched.c b/kernel/sched.c index 16f3f77f71be..f6c9bb6ac70b 100644 --- a/kernel/sched.c +++ b/kernel/sched.c | |||
@@ -1255,16 +1255,6 @@ void wake_up_idle_cpu(int cpu) | |||
1255 | smp_send_reschedule(cpu); | 1255 | smp_send_reschedule(cpu); |
1256 | } | 1256 | } |
1257 | 1257 | ||
1258 | int nohz_ratelimit(int cpu) | ||
1259 | { | ||
1260 | struct rq *rq = cpu_rq(cpu); | ||
1261 | u64 diff = rq->clock - rq->nohz_stamp; | ||
1262 | |||
1263 | rq->nohz_stamp = rq->clock; | ||
1264 | |||
1265 | return diff < (NSEC_PER_SEC / HZ) >> 1; | ||
1266 | } | ||
1267 | |||
1268 | #endif /* CONFIG_NO_HZ */ | 1258 | #endif /* CONFIG_NO_HZ */ |
1269 | 1259 | ||
1270 | static u64 sched_avg_period(void) | 1260 | static u64 sched_avg_period(void) |
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c index 17525cac6cfe..021d2f878f19 100644 --- a/kernel/time/tick-sched.c +++ b/kernel/time/tick-sched.c | |||
@@ -325,7 +325,7 @@ void tick_nohz_stop_sched_tick(int inidle) | |||
325 | } while (read_seqretry(&xtime_lock, seq)); | 325 | } while (read_seqretry(&xtime_lock, seq)); |
326 | 326 | ||
327 | if (rcu_needs_cpu(cpu) || printk_needs_cpu(cpu) || | 327 | if (rcu_needs_cpu(cpu) || printk_needs_cpu(cpu) || |
328 | arch_needs_cpu(cpu) || nohz_ratelimit(cpu)) { | 328 | arch_needs_cpu(cpu)) { |
329 | next_jiffies = last_jiffies + 1; | 329 | next_jiffies = last_jiffies + 1; |
330 | delta_jiffies = 1; | 330 | delta_jiffies = 1; |
331 | } else { | 331 | } else { |