summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2011-03-07 21:27:09 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2011-03-23 13:04:05 -0700
commit0a5bdee8013fd9ac665185f47fc0b00e000c7d85 (patch)
tree12955b2b58b59e0c652652355f46a03b39e30524 /kernel
parent8ee8d7d4b511543c5368a23474d4cff231288ec3 (diff)
perf: Handle stopped state with tracepoints
commit a0f7d0f7fc02465bb9758501f611f63381792996 upstream. We toggle the state from start and stop callbacks but actually don't check it when the event triggers. Do it so that these callbacks actually work. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Stephane Eranian <eranian@google.com> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> LKML-Reference: <1299529629-18280-2-git-send-email-fweisbec@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/perf_event.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/perf_event.c b/kernel/perf_event.c
index 853705f6d29..b22a2ef75c8 100644
--- a/kernel/perf_event.c
+++ b/kernel/perf_event.c
@@ -4923,6 +4923,8 @@ static int perf_tp_event_match(struct perf_event *event,
struct perf_sample_data *data,
struct pt_regs *regs)
{
+ if (event->hw.state & PERF_HES_STOPPED)
+ return 0;
/*
* All tracepoints are from kernel-space.
*/