diff options
author | Alexander Shishkin <alexander.shishkin@linux.intel.com> | 2013-12-16 14:17:36 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-12-17 15:04:00 +0100 |
commit | 443772776c69ac9293d66b4d69fd9af16299cc2a (patch) | |
tree | 2de33c59380501f7bb34ed9c39897bd30d942c04 /kernel/fork.c | |
parent | cf30d52e2d11523c42048ab89ed4215b5021526a (diff) | |
download | linux-443772776c69ac9293d66b4d69fd9af16299cc2a.tar.bz2 |
perf: Disable all pmus on unthrottling and rescheduling
Currently, only one PMU in a context gets disabled during unthrottling
and event_sched_{out,in}(), however, events in one context may belong to
different pmus, which results in PMUs being reprogrammed while they are
still enabled.
This means that mixed PMU use [which is rare in itself] resulted in
potentially completely unreliable results: corrupted events, bogus
results, etc.
This patch temporarily disables PMUs that correspond to
each event in the context while these events are being modified.
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Link: http://lkml.kernel.org/r/1387196256-8030-1-git-send-email-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/fork.c')
0 files changed, 0 insertions, 0 deletions