[tip:perf/urgent] perf: Change the is_software_event() definition

tip-bot for Peter Zijlstra
2010-01-21T13:56:08Z

Commit-ID: 92b6759857ea3ad19bc6871044e373f6251841d3
Gitweb: http://git.kernel.org/tip/92b6759857ea3ad19bc6871044e373f6251841d3
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
AuthorDate: Mon, 18 Jan 2010 14:02:16 +0100
Committer: Ingo Molnar <mingo@elte.hu>
CommitDate: Thu, 21 Jan 2010 13:40:40 +0100

perf: Change the is_software_event() definition

The is_software_event() definition always confuses me because its an
exclusive expression, make it an inclusive one.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
include/linux/perf_event.h | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
index c66b34f..8fa7187 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
@@ -814,9 +814,14 @@ extern int perf_event_overflow(struct perf_event *event, int nmi,
*/
static inline int is_software_event(struct perf_event *event)
{
- return (event->attr.type != PERF_TYPE_RAW) &&
- (event->attr.type != PERF_TYPE_HARDWARE) &&
- (event->attr.type != PERF_TYPE_HW_CACHE);
+ switch (event->attr.type) {
+ case PERF_TYPE_SOFTWARE:
+ case PERF_TYPE_TRACEPOINT:
+ /* for now the breakpoint stuff also works as software event */
+ case PERF_TYPE_BREAKPOINT:
+ return 1;
+ }
+ return 0;
}

extern atomic_t perf_swevent_enabled[PERF_COUNT_SW_MAX];