Index: linux-3.4/kernel/rcutree_plugin.h =================================================================== --- linux-3.4.orig/kernel/rcutree_plugin.h +++ linux-3.4/kernel/rcutree_plugin.h @@ -1914,6 +1914,9 @@ int rcu_needs_cpu(int cpu) { return rcu_cpu_has_callbacks(cpu); } +#endif /* !defined(CONFIG_RCU_FAST_NO_HZ) || defined(CONFIG_PREEMPT_RT_FULL) */ + +#if !defined(CONFIG_RCU_FAST_NO_HZ) /* * Because we do not have RCU_FAST_NO_HZ, don't bother initializing for it. @@ -1938,12 +1941,6 @@ static void rcu_prepare_for_idle(int cpu { } -#ifdef CONFIG_RCU_CPU_STALL_INFO -static void print_cpu_stall_fast_no_hz(char *cp, int cpu) -{ -} -#endif /* #ifdef CONFIG_RCU_CPU_STALL_INFO */ - #else /* #if !defined(CONFIG_RCU_FAST_NO_HZ) */ /* @@ -1990,6 +1987,7 @@ static DEFINE_PER_CPU(struct hrtimer, rc static ktime_t rcu_idle_gp_wait; /* If some non-lazy callbacks. */ static ktime_t rcu_idle_lazy_gp_wait; /* If only lazy callbacks. */ +#ifndef CONFIG_PREEMPT_RT_FULL /* * Allow the CPU to enter dyntick-idle mode if either: (1) There are no * callbacks on this CPU, (2) this CPU has not yet attempted to enter @@ -2007,6 +2005,7 @@ int rcu_needs_cpu(int cpu) /* Otherwise, RCU needs the CPU only if it recently tried and failed. */ return per_cpu(rcu_dyntick_holdoff, cpu) == jiffies; } +#endif /* #ifndef CONFIG_PREEMPT_RT_FULL */ /* * Does the specified flavor of RCU have non-lazy callbacks pending on @@ -2190,8 +2189,12 @@ static void rcu_prepare_for_idle(int cpu trace_rcu_prep_idle("Callbacks drained"); } +#endif /* #else #if !defined(CONFIG_RCU_FAST_NO_HZ) */ #ifdef CONFIG_RCU_CPU_STALL_INFO + +#ifdef CONFIG_RCU_FAST_NO_HZ + static void print_cpu_stall_fast_no_hz(char *cp, int cpu) { struct hrtimer *hrtp = &per_cpu(rcu_idle_gp_timer, cpu); @@ -2203,11 +2206,14 @@ static void print_cpu_stall_fast_no_hz(c ? ktime_to_us(hrtimer_get_remaining(hrtp)) : -1); } -#endif /* #ifdef CONFIG_RCU_CPU_STALL_INFO */ -#endif /* #else #if !defined(CONFIG_RCU_FAST_NO_HZ) */ +#else /* #ifdef CONFIG_RCU_FAST_NO_HZ */ -#ifdef CONFIG_RCU_CPU_STALL_INFO +static void print_cpu_stall_fast_no_hz(char *cp, int cpu) +{ +} + +#endif /* #else #ifdef CONFIG_RCU_FAST_NO_HZ */ /* Initiate the stall-info list. */ static void print_cpu_stall_info_begin(void) Index: linux-3.4/localversion-rt =================================================================== --- linux-3.4.orig/localversion-rt +++ linux-3.4/localversion-rt @@ -1 +1 @@ --rt3 +-rt4