perf: Migrate perf to use new tick dependency mask model
authorFrederic Weisbecker <fweisbec@gmail.com>
Thu, 16 Jul 2015 15:42:29 +0000 (17:42 +0200)
committerFrederic Weisbecker <fweisbec@gmail.com>
Wed, 2 Mar 2016 15:43:00 +0000 (16:43 +0100)
commit555e0c1ef7ff49ee5ac3a1eb12de4a2e4722f63d
treeede085fe6a092b648768057d988f3f11ae864d1e
parente6e6cc22e067a6f44449aa8fd0328404079c3ba5
perf: Migrate perf to use new tick dependency mask model

Instead of providing asynchronous checks for the nohz subsystem to verify
perf event tick dependency, migrate perf to the new mask.

Perf needs the tick for two situations:

1) Freq events. We could set the tick dependency when those are
installed on a CPU context. But setting a global dependency on top of
the global freq events accounting is much easier. If people want that
to be optimized, we can still refine that on the per-CPU tick dependency
level. This patch dooesn't change the current behaviour anyway.

2) Throttled events: this is a per-cpu dependency.

Reviewed-by: Chris Metcalf <cmetcalf@ezchip.com>
Cc: Christoph Lameter <cl@linux.com>
Cc: Chris Metcalf <cmetcalf@ezchip.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Luiz Capitulino <lcapitulino@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rik van Riel <riel@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
include/linux/perf_event.h
include/linux/tick.h
kernel/events/core.c
kernel/time/tick-sched.c