diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2009-06-11 11:56:09 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-06-12 08:28:51 -0400 |
commit | f1a3c979059b2033d0b1cc4f9ee5c90bf92b5f94 (patch) | |
tree | 912e8284ffb749c8b9a8be51551144faaaab4849 /include | |
parent | 4c921126fe553440261f56691c5f60fbaaa486d6 (diff) |
perf_counter: PERF_TYPE_HW_CACHE is a hardware counter too
is_software_counter() was missing the new HW_CACHE category.
( This could have caused some counter scheduling artifacts
with mixed sw and hw counters and counter groups. )
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/perf_counter.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/perf_counter.h b/include/linux/perf_counter.h index 6e133954e2e4..7c4f32f6ae1a 100644 --- a/include/linux/perf_counter.h +++ b/include/linux/perf_counter.h | |||
@@ -621,7 +621,8 @@ extern int perf_counter_overflow(struct perf_counter *counter, int nmi, | |||
621 | static inline int is_software_counter(struct perf_counter *counter) | 621 | static inline int is_software_counter(struct perf_counter *counter) |
622 | { | 622 | { |
623 | return (counter->attr.type != PERF_TYPE_RAW) && | 623 | return (counter->attr.type != PERF_TYPE_RAW) && |
624 | (counter->attr.type != PERF_TYPE_HARDWARE); | 624 | (counter->attr.type != PERF_TYPE_HARDWARE) && |
625 | (counter->attr.type != PERF_TYPE_HW_CACHE); | ||
625 | } | 626 | } |
626 | 627 | ||
627 | extern void perf_swcounter_event(u32, u64, int, struct pt_regs *, u64); | 628 | extern void perf_swcounter_event(u32, u64, int, struct pt_regs *, u64); |