|
@@ -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];
|