summaryrefslogtreecommitdiffstats
path: root/kernel/perf_counter.c
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2009-07-22 15:05:46 +0200
committerPeter Zijlstra <a.p.zijlstra@chello.nl>2009-07-22 18:05:56 +0200
commit966ee4d6b887c14159043ac80b8c3661d2bbe5e2 (patch)
tree2f06225dc023f5fc07f1135147dd09f19601ba2b /kernel/perf_counter.c
parentperf_counter: Improve perf stat and perf record option parsing (diff)
downloadlinux-966ee4d6b887c14159043ac80b8c3661d2bbe5e2.tar.xz
linux-966ee4d6b887c14159043ac80b8c3661d2bbe5e2.zip
perf_counter: Fix throttle/unthrottle event logging
Right now we only print PERF_EVENT_THROTTLE + 1 (ie PERF_EVENT_UNTHROTTLE). Fix this to print both a throttle and unthrottle event. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> LKML-Reference: <20090722130546.GE9029@kryten>
Diffstat (limited to 'kernel/perf_counter.c')
-rw-r--r--kernel/perf_counter.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/perf_counter.c b/kernel/perf_counter.c
index 7530588fa5c5..787d4daef185 100644
--- a/kernel/perf_counter.c
+++ b/kernel/perf_counter.c
@@ -3217,7 +3217,7 @@ static void perf_log_throttle(struct perf_counter *counter, int enable)
u64 stream_id;
} throttle_event = {
.header = {
- .type = PERF_EVENT_THROTTLE + 1,
+ .type = PERF_EVENT_THROTTLE,
.misc = 0,
.size = sizeof(throttle_event),
},
@@ -3226,6 +3226,9 @@ static void perf_log_throttle(struct perf_counter *counter, int enable)
.stream_id = counter->id,
};
+ if (enable)
+ throttle_event.header.type = PERF_EVENT_UNTHROTTLE;
+
ret = perf_output_begin(&handle, counter, sizeof(throttle_event), 1, 0);
if (ret)
return;