cpuhw->flags &= ~PMU_F_ENABLED;
 }
 
-/* perf_exclude_event() - Filter event
+/* perf_event_exclude() - Filter event
  * @event:     The perf event
  * @regs:      pt_regs structure
  * @sde_regs:  Sample-data-entry (sde) regs structure
  *
  * Return non-zero if the event shall be excluded.
  */
-static int perf_exclude_event(struct perf_event *event, struct pt_regs *regs,
+static int perf_event_exclude(struct perf_event *event, struct pt_regs *regs,
                              struct perf_sf_sde_regs *sde_regs)
 {
        if (event->attr.exclude_user && user_mode(regs))
        data.tid_entry.pid = basic->hpp & LPP_PID_MASK;
 
        overflow = 0;
-       if (perf_exclude_event(event, ®s, sde_regs))
+       if (perf_event_exclude(event, ®s, sde_regs))
                goto out;
        if (perf_event_overflow(event, &data, ®s)) {
                overflow = 1;
 
        return security_perf_event_open(attr, PERF_SECURITY_TRACEPOINT);
 }
 
+extern int perf_exclude_event(struct perf_event *event, struct pt_regs *regs);
+
 extern void perf_event_init(void);
 extern void perf_tp_event(u16 event_type, u64 count, void *record,
                          int entry_size, struct pt_regs *regs,
 {
        return 0;
 }
+static inline int perf_exclude_event(struct perf_event *event, struct pt_regs *regs)
+{
+       return 0;
+}
 #endif
 
 #if defined(CONFIG_PERF_EVENTS) && defined(CONFIG_CPU_SUP_INTEL)
 
        perf_swevent_overflow(event, 0, data, regs);
 }
 
-static int perf_exclude_event(struct perf_event *event,
-                             struct pt_regs *regs)
+int perf_exclude_event(struct perf_event *event, struct pt_regs *regs)
 {
        if (event->hw.state & PERF_HES_STOPPED)
                return 1;