History

Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull timer fixes from Thomas Gleixner: "A pile of fixes for long standing issues with the timer wheel and the NOHZ code: - Prevent timer base confusion accross the nohz switch, which can cause unlocked access and data corruption - Reinitialize the stale base clock on cpu hotplug to prevent subtle side effects including rollovers on 32bit - Prevent an interrupt storm when the timer softirq is already pending caused by tick_nohz_stop_sched_tick() - Move the timer start tracepoint to a place where it actually makes sense - Add documentation to timerqueue functions as they caused confusion several times now" * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: timerqueue: Document return values of timerqueue_add/del() timers: Invoke timer_start_debug() where it makes sense nohz: Prevent a timer interrupt storm in tick_nohz_stop_sched_tick() timers: Reinitialize per cpu bases on hotplug timers: Use deferrable base independent of base::nohz_active

Linus Torvalds committed 8 years ago

Commit cea92e82 parents 8d517bd 9f4533c6 files · +52 −20Browse files

Showing the changes to include/linux (2 of 6 files). Show all

Unified · Split

2 files
  1. include/linux/cpuhotplug.h +1 −1
  2. include/linux/timer.h +3 −1
include/linux/cpuhotplug.h+1−1
@@ -86,7 +86,7 @@ enum cpuhp_state { · 85 unmodified lines
8686 CPUHP_MM_ZSWP_POOL_PREPARE,
8787 CPUHP_KVM_PPC_BOOK3S_PREPARE,
8888 CPUHP_ZCOMP_PREPARE,
89− CPUHP_TIMERS_DEAD,
89+ CPUHP_TIMERS_PREPARE,
9090 CPUHP_MIPS_SOC_PREPARE,
9191 CPUHP_BP_PREPARE_DYN,
9292 CPUHP_BP_PREPARE_DYN_END = CPUHP_BP_PREPARE_DYN + 20,
include/linux/timer.h+3−1
@@ -207,9 +207,11 @@ unsigned long round_jiffies_up(unsigned long j); · 206 unmodified lines
207207 unsigned long round_jiffies_up_relative(unsigned long j);
208208
209209 #ifdef CONFIG_HOTPLUG_CPU
210+int timers_prepare_cpu(unsigned int cpu);
210211 int timers_dead_cpu(unsigned int cpu);
211212 #else
212−#define timers_dead_cpu NULL
213+#define timers_prepare_cpu NULL
214+#define timers_dead_cpu NULL
213215 #endif
214216
215217 #endif