Lines Matching refs:perf_event

17 #include <uapi/linux/perf_event.h>
25 # include <asm/perf_event.h>
273 struct perf_event;
350 int (*event_init) (struct perf_event *event);
356 void (*event_mapped) (struct perf_event *event, struct mm_struct *mm); /* optional */
357 void (*event_unmapped) (struct perf_event *event, struct mm_struct *mm); /* optional */
385 int (*add) (struct perf_event *event, int flags);
386 void (*del) (struct perf_event *event, int flags);
406 void (*start) (struct perf_event *event, int flags);
407 void (*stop) (struct perf_event *event, int flags);
415 void (*read) (struct perf_event *event);
450 int (*event_idx) (struct perf_event *event); /*optional */
476 void *(*setup_aux) (struct perf_event *event, void **pages,
494 long (*snapshot_aux) (struct perf_event *event,
520 void (*addr_filters_sync) (struct perf_event *event);
530 int (*aux_output_match) (struct perf_event *event);
542 int (*check_period) (struct perf_event *event, u64 value); /* optional */
605 typedef void (*perf_overflow_handler_t)(struct perf_event *,
669 * struct perf_event - performance event kernel representation:
671 struct perf_event {
708 struct perf_event *group_leader;
759 struct perf_event *parent;
799 struct perf_event *aux_event;
801 void (*destroy)(struct perf_event *);
848 * perf_event_context <-[1:n]-> perf_event_pmu_context <-[1:n]- perf_event
869 * perf_event holds a refcount on perf_event_context
870 * perf_event holds a refcount on perf_event_pmu_context
1009 struct perf_event **heap;
1010 struct perf_event *heap_default[2];
1014 struct perf_event *event;
1029 struct perf_event *event;
1070 struct perf_event *event);
1077 extern void perf_event_itrace_started(struct perf_event *event);
1091 extern const struct perf_event *perf_get_event(struct file *file);
1092 extern const struct perf_event_attr *perf_event_attrs(struct perf_event *event);
1103 extern int perf_event_refresh(struct perf_event *event, int refresh);
1104 extern void perf_event_update_userpage(struct perf_event *event);
1105 extern int perf_event_release_kernel(struct perf_event *event);
1106 extern struct perf_event *
1114 int perf_event_read_local(struct perf_event *event, u64 *value,
1116 extern u64 perf_event_read_value(struct perf_event *event,
1119 extern struct perf_callchain_entry *perf_callchain(struct perf_event *event, struct pt_regs *regs);
1121 static inline bool branch_sample_no_flags(const struct perf_event *event)
1126 static inline bool branch_sample_no_cycles(const struct perf_event *event)
1131 static inline bool branch_sample_type(const struct perf_event *event)
1136 static inline bool branch_sample_hw_index(const struct perf_event *event)
1141 static inline bool branch_sample_priv(const struct perf_event *event)
1146 static inline bool branch_sample_counters(const struct perf_event *event)
1151 static inline bool branch_sample_call_stack(const struct perf_event *event)
1230 struct perf_event *event,
1266 struct perf_event *event,
1291 struct perf_event *event)
1321 struct perf_event *event);
1323 struct perf_event *event,
1327 struct perf_event *event,
1330 extern int perf_event_overflow(struct perf_event *event,
1334 extern void perf_event_output_forward(struct perf_event *event,
1337 extern void perf_event_output_backward(struct perf_event *event,
1340 extern int perf_event_output(struct perf_event *event,
1358 static inline bool uses_default_overflow_handler(struct perf_event *event)
1373 struct perf_event *event);
1375 perf_event__output_id_sample(struct perf_event *event,
1380 perf_log_lost_samples(struct perf_event *event, u64 lost);
1382 static inline bool event_has_any_exclude_flag(struct perf_event *event)
1391 static inline bool is_sampling_event(struct perf_event *event)
1399 static inline int is_software_event(struct perf_event *event)
1407 static inline int in_software_context(struct perf_event *event)
1650 extern void perf_bp_event(struct perf_event *event, void *data);
1661 static inline bool has_branch_stack(struct perf_event *event)
1666 static inline bool needs_branch_stack(struct perf_event *event)
1671 static inline bool has_aux(struct perf_event *event)
1676 static inline bool is_write_backward(struct perf_event *event)
1681 static inline bool has_addr_filter(struct perf_event *event)
1690 perf_event_addr_filters(struct perf_event *event)
1700 extern void perf_event_addr_filters_sync(struct perf_event *event);
1701 extern void perf_report_aux_output_id(struct perf_event *event, u64 hw_id);
1705 struct perf_event *event, unsigned int size);
1708 struct perf_event *event,
1712 struct perf_event *event,
1725 extern u64 perf_swevent_set_period(struct perf_event *event);
1726 extern void perf_event_enable(struct perf_event *event);
1727 extern void perf_event_disable(struct perf_event *event);
1728 extern void perf_event_disable_local(struct perf_event *event);
1729 extern void perf_event_disable_inatomic(struct perf_event *event);
1731 extern int perf_event_account_interrupt(struct perf_event *event);
1732 extern int perf_event_period(struct perf_event *event, u64 value);
1733 extern u64 perf_event_pause(struct perf_event *event, bool reset);
1737 struct perf_event *event) { return NULL; }
1760 static inline const struct perf_event *perf_get_event(struct file *file)
1764 static inline const struct perf_event_attr *perf_event_attrs(struct perf_event *event)
1768 static inline int perf_event_read_local(struct perf_event *event, u64 *value,
1776 static inline int perf_event_refresh(struct perf_event *event, int refresh)
1784 perf_bp_event(struct perf_event *event, void *data) { }
1806 static inline u64 perf_swevent_set_period(struct perf_event *event) { return 0; }
1807 static inline void perf_event_enable(struct perf_event *event) { }
1808 static inline void perf_event_disable(struct perf_event *event) { }
1811 static inline int perf_event_release_kernel(struct perf_event *event) { return 0; }
1812 static inline int perf_event_period(struct perf_event *event, u64 value)
1816 static inline u64 perf_event_pause(struct perf_event *event, bool reset)
1901 extern void arch_perf_update_userpage(struct perf_event *event,