]> git.baikalelectronics.ru Git - kernel.git/commit
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)
commit37e670a0ee652934187618b7fb3095612070c6d7
treec69dbf4f09a6aaaa54f8c962e3a029eb3715d0c9
parent5bc6c587f20aa0962d051a110f408d5d8274d62f
parent42306792c724e67b301be4710b8ebca9cb167ceb
Merge branch 'timers/core-v9' of git://git.kernel.org/pub/scm/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