From: Peter Zijlstra Date: Thu, 11 Jun 2009 15:56:09 +0000 (+0200) Subject: perf_counter: PERF_TYPE_HW_CACHE is a hardware counter too X-Git-Tag: v3.12-rc1~14347^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f1a3c979059b2033d0b1cc4f9ee5c90bf92b5f94;p=kernel%2Fkernel-generic.git 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 Cc: Mike Galbraith Cc: Paul Mackerras Cc: Arnaldo Carvalho de Melo LKML-Reference: Signed-off-by: Ingo Molnar --- diff --git a/include/linux/perf_counter.h b/include/linux/perf_counter.h index 6e13395..7c4f32f 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, static inline int is_software_counter(struct perf_counter *counter) { return (counter->attr.type != PERF_TYPE_RAW) && - (counter->attr.type != PERF_TYPE_HARDWARE); + (counter->attr.type != PERF_TYPE_HARDWARE) && + (counter->attr.type != PERF_TYPE_HW_CACHE); } extern void perf_swcounter_event(u32, u64, int, struct pt_regs *, u64);