Home | History | Annotate | Download | only in strace
      1 #ifndef STRACE_LINUX_PERF_EVENT_STRUCT_H
      2 #define STRACE_LINUX_PERF_EVENT_STRUCT_H
      3 
      4 #include <stdint.h>
      5 
      6 struct perf_event_attr {
      7 	uint32_t type;
      8 	uint32_t size;
      9 	uint64_t config;
     10 	union {
     11 		uint64_t sample_period;
     12 		uint64_t sample_freq;
     13 	};
     14 	uint64_t sample_type;
     15 	uint64_t read_format;
     16 	uint64_t disabled			:1,
     17 		 inherit			:1,
     18 		 pinned				:1,
     19 		 exclusive			:1,
     20 		 exclude_user			:1,
     21 		 exclude_kernel			:1,
     22 		 exclude_hv			:1,
     23 		 exclude_idle			:1,
     24 		 mmap				:1,
     25 		 comm				:1,
     26 		 freq				:1,
     27 		 inherit_stat			:1,
     28 		 enable_on_exec			:1,
     29 		 task				:1,
     30 		 watermark			:1,
     31 		 precise_ip			:2,
     32 		 mmap_data			:1,
     33 		 sample_id_all			:1,
     34 		 exclude_host			:1,
     35 		 exclude_guest			:1,
     36 		 exclude_callchain_kernel	:1,
     37 		 exclude_callchain_user		:1,
     38 		 mmap2				:1,
     39 		 comm_exec			:1,
     40 		 use_clockid			:1,
     41 		 context_switch			:1,
     42 		 write_backward			:1,
     43 		 namespaces			:1,
     44 		 __reserved_1			:35;
     45 	union {
     46 		uint32_t wakeup_events;
     47 		uint32_t wakeup_watermark;
     48 	};
     49 	uint32_t bp_type;
     50 	union {
     51 		uint64_t bp_addr;
     52 		uint64_t config1;
     53 	};
     54 	/* End of ver 0 - 64 bytes */
     55 	union {
     56 		uint64_t bp_len;
     57 		uint64_t config2;
     58 	};
     59 	/* End of ver 1 - 72 bytes */
     60 	uint64_t branch_sample_type;
     61 	/* End of ver 2 - 80 bytes */
     62 	uint64_t sample_regs_user;
     63 	uint32_t sample_stack_user;
     64 	int32_t  clockid;
     65 	/* End of ver 3 - 96 bytes */
     66 	uint64_t sample_regs_intr;
     67 	/* End of ver 4 - 104 bytes */
     68 	uint32_t aux_watermark;
     69 	uint16_t sample_max_stack;
     70 	uint16_t __reserved_2;
     71 	/* End of ver 5 - 112 bytes */
     72 };
     73 
     74 #endif /* !STRACE_LINUX_PERF_EVENT_STRUCT_H */
     75