Merge branch 'timers/core-v9' of git://git.kernel.org/pub/scm/linux/kernel/git/freder...
authorIngo Molnar <mingo@kernel.org>
Tue, 8 Mar 2016 12:17:54 +0000 (13:17 +0100)
committerIngo Molnar <mingo@kernel.org>
Tue, 8 Mar 2016 12:17:54 +0000 (13:17 +0100)
commit1f25184656a00a59e3a953189070d42a749f6aee
treec69dbf4f09a6aaaa54f8c962e3a029eb3715d0c9
parente2857b8f11a289ed2b61d18d0665e05c1053c446
parent4f49b90abb4aca6fe677c95fc352fd0674d489bd
Merge branch 'timers/core-v9' of git://git./linux/kernel/git/frederic/linux-dynticks into timers/nohz

Pull nohz enhancements from Frederic Weisbecker:

"Currently in nohz full configs, the tick dependency is checked
 asynchronously by nohz code from interrupt and context switch for each
 concerned subsystem with a set of function provided by these. Such
 functions are made of many conditions and details that can be heavyweight
 as they are called on fastpath: sched_can_stop_tick(),
 posix_cpu_timer_can_stop_tick(), perf_event_can_stop_tick()...

 Thomas suggested a few months ago to make that tick dependency check
 synchronous. Instead of checking subsystems details from each interrupt
 to guess if the tick can be stopped, every subsystem that may have a tick
 dependency should set itself a flag specifying the state of that
 dependency. This way we can verify if we can stop the tick with a single
 lightweight mask check on fast path.

 This conversion from a pull to a push model to implement tick dependency
 is the core feature of this patchset that is split into:

  * Nohz wide kick simplification
  * Improve nohz tracing
  * Introduce tick dependency mask
  * Migrate scheduler, posix timers, perf events and sched clock tick
    dependencies to the tick dependency mask."

Signed-off-by: Ingo Molnar <mingo@kernel.org>
include/linux/perf_event.h
kernel/events/core.c