diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-24 15:55:01 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-24 15:55:01 -0400 |
| commit | ecc8b655b38a880b578146895e0e1e2d477ca2c0 (patch) | |
| tree | 4acce96bac00909fa9472f0c0669714243ea5bee /include/linux | |
| parent | 2528ce3237be4e900f5eaa455490146e1422e424 (diff) | |
| parent | e338125b8a886923ba8367207c144764dc352584 (diff) | |
Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
nohz: adjust tick_nohz_stop_sched_tick() call of s390 as well
nohz: prevent tick stop outside of the idle loop
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/tick.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/include/linux/tick.h b/include/linux/tick.h index a881c652f7e9..d3c02695dc5d 100644 --- a/include/linux/tick.h +++ b/include/linux/tick.h | |||
| @@ -49,6 +49,7 @@ struct tick_sched { | |||
| 49 | unsigned long check_clocks; | 49 | unsigned long check_clocks; |
| 50 | enum tick_nohz_mode nohz_mode; | 50 | enum tick_nohz_mode nohz_mode; |
| 51 | ktime_t idle_tick; | 51 | ktime_t idle_tick; |
| 52 | int inidle; | ||
| 52 | int tick_stopped; | 53 | int tick_stopped; |
| 53 | unsigned long idle_jiffies; | 54 | unsigned long idle_jiffies; |
| 54 | unsigned long idle_calls; | 55 | unsigned long idle_calls; |
| @@ -105,14 +106,14 @@ static inline int tick_check_oneshot_change(int allow_nohz) { return 0; } | |||
| 105 | #endif /* !CONFIG_GENERIC_CLOCKEVENTS */ | 106 | #endif /* !CONFIG_GENERIC_CLOCKEVENTS */ |
| 106 | 107 | ||
| 107 | # ifdef CONFIG_NO_HZ | 108 | # ifdef CONFIG_NO_HZ |
| 108 | extern void tick_nohz_stop_sched_tick(void); | 109 | extern void tick_nohz_stop_sched_tick(int inidle); |
| 109 | extern void tick_nohz_restart_sched_tick(void); | 110 | extern void tick_nohz_restart_sched_tick(void); |
| 110 | extern void tick_nohz_update_jiffies(void); | 111 | extern void tick_nohz_update_jiffies(void); |
| 111 | extern ktime_t tick_nohz_get_sleep_length(void); | 112 | extern ktime_t tick_nohz_get_sleep_length(void); |
| 112 | extern void tick_nohz_stop_idle(int cpu); | 113 | extern void tick_nohz_stop_idle(int cpu); |
| 113 | extern u64 get_cpu_idle_time_us(int cpu, u64 *last_update_time); | 114 | extern u64 get_cpu_idle_time_us(int cpu, u64 *last_update_time); |
| 114 | # else | 115 | # else |
| 115 | static inline void tick_nohz_stop_sched_tick(void) { } | 116 | static inline void tick_nohz_stop_sched_tick(int inidle) { } |
| 116 | static inline void tick_nohz_restart_sched_tick(void) { } | 117 | static inline void tick_nohz_restart_sched_tick(void) { } |
| 117 | static inline void tick_nohz_update_jiffies(void) { } | 118 | static inline void tick_nohz_update_jiffies(void) { } |
| 118 | static inline ktime_t tick_nohz_get_sleep_length(void) | 119 | static inline ktime_t tick_nohz_get_sleep_length(void) |
