|  | #ifndef STRACE_LINUX_PERF_EVENT_STRUCT_H | 
|  | #define STRACE_LINUX_PERF_EVENT_STRUCT_H | 
|  |  | 
|  | #include <stdint.h> | 
|  |  | 
|  | struct perf_event_attr { | 
|  | uint32_t type; | 
|  | uint32_t size; | 
|  | uint64_t config; | 
|  | union { | 
|  | uint64_t sample_period; | 
|  | uint64_t sample_freq; | 
|  | }; | 
|  | uint64_t sample_type; | 
|  | uint64_t read_format; | 
|  | uint64_t disabled			:1, | 
|  | inherit			:1, | 
|  | pinned				:1, | 
|  | exclusive			:1, | 
|  | exclude_user			:1, | 
|  | exclude_kernel			:1, | 
|  | exclude_hv			:1, | 
|  | exclude_idle			:1, | 
|  | mmap				:1, | 
|  | comm				:1, | 
|  | freq				:1, | 
|  | inherit_stat			:1, | 
|  | enable_on_exec			:1, | 
|  | task				:1, | 
|  | watermark			:1, | 
|  | precise_ip			:2, | 
|  | mmap_data			:1, | 
|  | sample_id_all			:1, | 
|  | exclude_host			:1, | 
|  | exclude_guest			:1, | 
|  | exclude_callchain_kernel	:1, | 
|  | exclude_callchain_user		:1, | 
|  | mmap2				:1, | 
|  | comm_exec			:1, | 
|  | use_clockid			:1, | 
|  | context_switch			:1, | 
|  | write_backward			:1, | 
|  | namespaces			:1, | 
|  | __reserved_1			:35; | 
|  | union { | 
|  | uint32_t wakeup_events; | 
|  | uint32_t wakeup_watermark; | 
|  | }; | 
|  | uint32_t bp_type; | 
|  | union { | 
|  | uint64_t bp_addr; | 
|  | uint64_t config1; | 
|  | }; | 
|  | /* End of ver 0 - 64 bytes */ | 
|  | union { | 
|  | uint64_t bp_len; | 
|  | uint64_t config2; | 
|  | }; | 
|  | /* End of ver 1 - 72 bytes */ | 
|  | uint64_t branch_sample_type; | 
|  | /* End of ver 2 - 80 bytes */ | 
|  | uint64_t sample_regs_user; | 
|  | uint32_t sample_stack_user; | 
|  | int32_t  clockid; | 
|  | /* End of ver 3 - 96 bytes */ | 
|  | uint64_t sample_regs_intr; | 
|  | /* End of ver 4 - 104 bytes */ | 
|  | uint32_t aux_watermark; | 
|  | uint16_t sample_max_stack; | 
|  | uint16_t __reserved_2; | 
|  | /* End of ver 5 - 112 bytes */ | 
|  | }; | 
|  |  | 
|  | struct perf_event_query_bpf { | 
|  | uint32_t ids_len; | 
|  | uint32_t prog_cnt; | 
|  | uint32_t ids[0]; | 
|  | }; | 
|  |  | 
|  | #endif /* !STRACE_LINUX_PERF_EVENT_STRUCT_H */ |