diff options
Diffstat (limited to 'include/linux/tick.h')
| -rw-r--r-- | include/linux/tick.h | 23 | 
1 files changed, 22 insertions, 1 deletions
diff --git a/include/linux/tick.h b/include/linux/tick.h index f37fceb69b7..553272e6af5 100644 --- a/include/linux/tick.h +++ b/include/linux/tick.h @@ -8,6 +8,8 @@  #include <linux/clockchips.h>  #include <linux/irqflags.h> +#include <linux/percpu.h> +#include <linux/hrtimer.h>  #ifdef CONFIG_GENERIC_CLOCKEVENTS @@ -122,13 +124,26 @@ static inline int tick_oneshot_mode_active(void) { return 0; }  #endif /* !CONFIG_GENERIC_CLOCKEVENTS */  # ifdef CONFIG_NO_HZ +DECLARE_PER_CPU(struct tick_sched, tick_cpu_sched); + +static inline int tick_nohz_tick_stopped(void) +{ +	return __this_cpu_read(tick_cpu_sched.tick_stopped); +} +  extern void tick_nohz_idle_enter(void);  extern void tick_nohz_idle_exit(void);  extern void tick_nohz_irq_exit(void);  extern ktime_t tick_nohz_get_sleep_length(void);  extern u64 get_cpu_idle_time_us(int cpu, u64 *last_update_time);  extern u64 get_cpu_iowait_time_us(int cpu, u64 *last_update_time); -# else + +# else /* !CONFIG_NO_HZ */ +static inline int tick_nohz_tick_stopped(void) +{ +	return 0; +} +  static inline void tick_nohz_idle_enter(void) { }  static inline void tick_nohz_idle_exit(void) { } @@ -142,4 +157,10 @@ static inline u64 get_cpu_idle_time_us(int cpu, u64 *unused) { return -1; }  static inline u64 get_cpu_iowait_time_us(int cpu, u64 *unused) { return -1; }  # endif /* !NO_HZ */ +# ifdef CONFIG_CPU_IDLE_GOV_MENU +extern void menu_hrtimer_cancel(void); +# else +static inline void menu_hrtimer_cancel(void) {} +# endif /* CONFIG_CPU_IDLE_GOV_MENU */ +  #endif  |