]> git.proxmox.com Git - rustc.git/blame - vendor/perf-event-open-sys/src/bindings.rs
New upstream version 1.48.0+dfsg1
[rustc.git] / vendor / perf-event-open-sys / src / bindings.rs
CommitLineData
3dfed10e
XL
1//! Types and constants used with `perf_event_open`.
2//!
3//! This module contains types and constants for use with the
4//! [`perf_event_open`][man] system call. These are automatically generated from
5//! the header files `<linux/perf_event.h>` and `<linux/hw_breakpoint.h>` by the
6//! Rust [`bindgen`][bindgen] tool.
7//!
8//! It's not always obvious how `bindgen` will choose to reflect a given C
9//! construct into Rust. The best approach I've found is simply to search
10//! [the source code][src] for the C identifier name and see what `bindgen` did
11//! with it.
12//!
13//! [man]: http://man7.org/linux/man-pages/man2/perf_event_open.2.html
14//! [bindgen]: https://github.com/rust-lang/rust-bindgen
15//! [src]: ../../src/perf_event_open_sys/bindings.rs.html
16
17#![allow(dead_code)]
18#![allow(non_upper_case_globals)]
19#![allow(non_camel_case_types)]
20#![allow(non_snake_case)]
21
22/* automatically generated by rust-bindgen 0.54.1 */
23
24#[repr(C)]
25#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
26pub struct __BindgenBitfieldUnit<Storage, Align> {
27 storage: Storage,
28 align: [Align; 0],
29}
30impl<Storage, Align> __BindgenBitfieldUnit<Storage, Align> {
31 #[inline]
32 pub const fn new(storage: Storage) -> Self {
33 Self { storage, align: [] }
34 }
35}
36impl<Storage, Align> __BindgenBitfieldUnit<Storage, Align>
37where
38 Storage: AsRef<[u8]> + AsMut<[u8]>,
39{
40 #[inline]
41 pub fn get_bit(&self, index: usize) -> bool {
42 debug_assert!(index / 8 < self.storage.as_ref().len());
43 let byte_index = index / 8;
44 let byte = self.storage.as_ref()[byte_index];
45 let bit_index = if cfg!(target_endian = "big") {
46 7 - (index % 8)
47 } else {
48 index % 8
49 };
50 let mask = 1 << bit_index;
51 byte & mask == mask
52 }
53 #[inline]
54 pub fn set_bit(&mut self, index: usize, val: bool) {
55 debug_assert!(index / 8 < self.storage.as_ref().len());
56 let byte_index = index / 8;
57 let byte = &mut self.storage.as_mut()[byte_index];
58 let bit_index = if cfg!(target_endian = "big") {
59 7 - (index % 8)
60 } else {
61 index % 8
62 };
63 let mask = 1 << bit_index;
64 if val {
65 *byte |= mask;
66 } else {
67 *byte &= !mask;
68 }
69 }
70 #[inline]
71 pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 {
72 debug_assert!(bit_width <= 64);
73 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
74 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
75 let mut val = 0;
76 for i in 0..(bit_width as usize) {
77 if self.get_bit(i + bit_offset) {
78 let index = if cfg!(target_endian = "big") {
79 bit_width as usize - 1 - i
80 } else {
81 i
82 };
83 val |= 1 << index;
84 }
85 }
86 val
87 }
88 #[inline]
89 pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) {
90 debug_assert!(bit_width <= 64);
91 debug_assert!(bit_offset / 8 < self.storage.as_ref().len());
92 debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len());
93 for i in 0..(bit_width as usize) {
94 let mask = 1 << i;
95 let val_bit_is_set = val & mask == mask;
96 let index = if cfg!(target_endian = "big") {
97 bit_width as usize - 1 - i
98 } else {
99 i
100 };
101 self.set_bit(index + bit_offset, val_bit_is_set);
102 }
103 }
104}
105#[repr(C)]
106#[derive(Default)]
107pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]);
108impl<T> __IncompleteArrayField<T> {
109 #[inline]
110 pub const fn new() -> Self {
111 __IncompleteArrayField(::std::marker::PhantomData, [])
112 }
113 #[inline]
114 pub fn as_ptr(&self) -> *const T {
115 self as *const _ as *const T
116 }
117 #[inline]
118 pub fn as_mut_ptr(&mut self) -> *mut T {
119 self as *mut _ as *mut T
120 }
121 #[inline]
122 pub unsafe fn as_slice(&self, len: usize) -> &[T] {
123 ::std::slice::from_raw_parts(self.as_ptr(), len)
124 }
125 #[inline]
126 pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] {
127 ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len)
128 }
129}
130impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> {
131 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
132 fmt.write_str("__IncompleteArrayField")
133 }
134}
135pub const __BITS_PER_LONG: u32 = 64;
136pub const __FD_SETSIZE: u32 = 1024;
137pub const _IOC_NRBITS: u32 = 8;
138pub const _IOC_TYPEBITS: u32 = 8;
139pub const _IOC_SIZEBITS: u32 = 14;
140pub const _IOC_DIRBITS: u32 = 2;
141pub const _IOC_NRMASK: u32 = 255;
142pub const _IOC_TYPEMASK: u32 = 255;
143pub const _IOC_SIZEMASK: u32 = 16383;
144pub const _IOC_DIRMASK: u32 = 3;
145pub const _IOC_NRSHIFT: u32 = 0;
146pub const _IOC_TYPESHIFT: u32 = 8;
147pub const _IOC_SIZESHIFT: u32 = 16;
148pub const _IOC_DIRSHIFT: u32 = 30;
149pub const _IOC_NONE: u32 = 0;
150pub const _IOC_WRITE: u32 = 1;
151pub const _IOC_READ: u32 = 2;
152pub const IOC_IN: u32 = 1073741824;
153pub const IOC_OUT: u32 = 2147483648;
154pub const IOC_INOUT: u32 = 3221225472;
155pub const IOCSIZE_MASK: u32 = 1073676288;
156pub const IOCSIZE_SHIFT: u32 = 16;
157pub const __LITTLE_ENDIAN: u32 = 1234;
158pub const PERF_ATTR_SIZE_VER0: u32 = 64;
159pub const PERF_ATTR_SIZE_VER1: u32 = 72;
160pub const PERF_ATTR_SIZE_VER2: u32 = 80;
161pub const PERF_ATTR_SIZE_VER3: u32 = 96;
162pub const PERF_ATTR_SIZE_VER4: u32 = 104;
163pub const PERF_ATTR_SIZE_VER5: u32 = 112;
164pub const PERF_ATTR_SIZE_VER6: u32 = 120;
165pub const PERF_RECORD_MISC_CPUMODE_MASK: u32 = 7;
166pub const PERF_RECORD_MISC_CPUMODE_UNKNOWN: u32 = 0;
167pub const PERF_RECORD_MISC_KERNEL: u32 = 1;
168pub const PERF_RECORD_MISC_USER: u32 = 2;
169pub const PERF_RECORD_MISC_HYPERVISOR: u32 = 3;
170pub const PERF_RECORD_MISC_GUEST_KERNEL: u32 = 4;
171pub const PERF_RECORD_MISC_GUEST_USER: u32 = 5;
172pub const PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT: u32 = 4096;
173pub const PERF_RECORD_MISC_MMAP_DATA: u32 = 8192;
174pub const PERF_RECORD_MISC_COMM_EXEC: u32 = 8192;
175pub const PERF_RECORD_MISC_FORK_EXEC: u32 = 8192;
176pub const PERF_RECORD_MISC_SWITCH_OUT: u32 = 8192;
177pub const PERF_RECORD_MISC_EXACT_IP: u32 = 16384;
178pub const PERF_RECORD_MISC_SWITCH_OUT_PREEMPT: u32 = 16384;
179pub const PERF_RECORD_MISC_EXT_RESERVED: u32 = 32768;
180pub const PERF_RECORD_KSYMBOL_FLAGS_UNREGISTER: u32 = 1;
181pub const PERF_MAX_STACK_DEPTH: u32 = 127;
182pub const PERF_MAX_CONTEXTS_PER_STACK: u32 = 8;
183pub const PERF_AUX_FLAG_TRUNCATED: u32 = 1;
184pub const PERF_AUX_FLAG_OVERWRITE: u32 = 2;
185pub const PERF_AUX_FLAG_PARTIAL: u32 = 4;
186pub const PERF_AUX_FLAG_COLLISION: u32 = 8;
187pub const PERF_FLAG_FD_NO_GROUP: u32 = 1;
188pub const PERF_FLAG_FD_OUTPUT: u32 = 2;
189pub const PERF_FLAG_PID_CGROUP: u32 = 4;
190pub const PERF_FLAG_FD_CLOEXEC: u32 = 8;
191pub const PERF_MEM_OP_NA: u32 = 1;
192pub const PERF_MEM_OP_LOAD: u32 = 2;
193pub const PERF_MEM_OP_STORE: u32 = 4;
194pub const PERF_MEM_OP_PFETCH: u32 = 8;
195pub const PERF_MEM_OP_EXEC: u32 = 16;
196pub const PERF_MEM_OP_SHIFT: u32 = 0;
197pub const PERF_MEM_LVL_NA: u32 = 1;
198pub const PERF_MEM_LVL_HIT: u32 = 2;
199pub const PERF_MEM_LVL_MISS: u32 = 4;
200pub const PERF_MEM_LVL_L1: u32 = 8;
201pub const PERF_MEM_LVL_LFB: u32 = 16;
202pub const PERF_MEM_LVL_L2: u32 = 32;
203pub const PERF_MEM_LVL_L3: u32 = 64;
204pub const PERF_MEM_LVL_LOC_RAM: u32 = 128;
205pub const PERF_MEM_LVL_REM_RAM1: u32 = 256;
206pub const PERF_MEM_LVL_REM_RAM2: u32 = 512;
207pub const PERF_MEM_LVL_REM_CCE1: u32 = 1024;
208pub const PERF_MEM_LVL_REM_CCE2: u32 = 2048;
209pub const PERF_MEM_LVL_IO: u32 = 4096;
210pub const PERF_MEM_LVL_UNC: u32 = 8192;
211pub const PERF_MEM_LVL_SHIFT: u32 = 5;
212pub const PERF_MEM_REMOTE_REMOTE: u32 = 1;
213pub const PERF_MEM_REMOTE_SHIFT: u32 = 37;
214pub const PERF_MEM_LVLNUM_L1: u32 = 1;
215pub const PERF_MEM_LVLNUM_L2: u32 = 2;
216pub const PERF_MEM_LVLNUM_L3: u32 = 3;
217pub const PERF_MEM_LVLNUM_L4: u32 = 4;
218pub const PERF_MEM_LVLNUM_ANY_CACHE: u32 = 11;
219pub const PERF_MEM_LVLNUM_LFB: u32 = 12;
220pub const PERF_MEM_LVLNUM_RAM: u32 = 13;
221pub const PERF_MEM_LVLNUM_PMEM: u32 = 14;
222pub const PERF_MEM_LVLNUM_NA: u32 = 15;
223pub const PERF_MEM_LVLNUM_SHIFT: u32 = 33;
224pub const PERF_MEM_SNOOP_NA: u32 = 1;
225pub const PERF_MEM_SNOOP_NONE: u32 = 2;
226pub const PERF_MEM_SNOOP_HIT: u32 = 4;
227pub const PERF_MEM_SNOOP_MISS: u32 = 8;
228pub const PERF_MEM_SNOOP_HITM: u32 = 16;
229pub const PERF_MEM_SNOOP_SHIFT: u32 = 19;
230pub const PERF_MEM_SNOOPX_FWD: u32 = 1;
231pub const PERF_MEM_SNOOPX_SHIFT: u32 = 37;
232pub const PERF_MEM_LOCK_NA: u32 = 1;
233pub const PERF_MEM_LOCK_LOCKED: u32 = 2;
234pub const PERF_MEM_LOCK_SHIFT: u32 = 24;
235pub const PERF_MEM_TLB_NA: u32 = 1;
236pub const PERF_MEM_TLB_HIT: u32 = 2;
237pub const PERF_MEM_TLB_MISS: u32 = 4;
238pub const PERF_MEM_TLB_L1: u32 = 8;
239pub const PERF_MEM_TLB_L2: u32 = 16;
240pub const PERF_MEM_TLB_WK: u32 = 32;
241pub const PERF_MEM_TLB_OS: u32 = 64;
242pub const PERF_MEM_TLB_SHIFT: u32 = 26;
243pub const __X32_SYSCALL_BIT: u32 = 1073741824;
244pub const _ASM_X86_UNISTD_64_H: u32 = 1;
245pub const __NR_read: u32 = 0;
246pub const __NR_write: u32 = 1;
247pub const __NR_open: u32 = 2;
248pub const __NR_close: u32 = 3;
249pub const __NR_stat: u32 = 4;
250pub const __NR_fstat: u32 = 5;
251pub const __NR_lstat: u32 = 6;
252pub const __NR_poll: u32 = 7;
253pub const __NR_lseek: u32 = 8;
254pub const __NR_mmap: u32 = 9;
255pub const __NR_mprotect: u32 = 10;
256pub const __NR_munmap: u32 = 11;
257pub const __NR_brk: u32 = 12;
258pub const __NR_rt_sigaction: u32 = 13;
259pub const __NR_rt_sigprocmask: u32 = 14;
260pub const __NR_rt_sigreturn: u32 = 15;
261pub const __NR_ioctl: u32 = 16;
262pub const __NR_pread64: u32 = 17;
263pub const __NR_pwrite64: u32 = 18;
264pub const __NR_readv: u32 = 19;
265pub const __NR_writev: u32 = 20;
266pub const __NR_access: u32 = 21;
267pub const __NR_pipe: u32 = 22;
268pub const __NR_select: u32 = 23;
269pub const __NR_sched_yield: u32 = 24;
270pub const __NR_mremap: u32 = 25;
271pub const __NR_msync: u32 = 26;
272pub const __NR_mincore: u32 = 27;
273pub const __NR_madvise: u32 = 28;
274pub const __NR_shmget: u32 = 29;
275pub const __NR_shmat: u32 = 30;
276pub const __NR_shmctl: u32 = 31;
277pub const __NR_dup: u32 = 32;
278pub const __NR_dup2: u32 = 33;
279pub const __NR_pause: u32 = 34;
280pub const __NR_nanosleep: u32 = 35;
281pub const __NR_getitimer: u32 = 36;
282pub const __NR_alarm: u32 = 37;
283pub const __NR_setitimer: u32 = 38;
284pub const __NR_getpid: u32 = 39;
285pub const __NR_sendfile: u32 = 40;
286pub const __NR_socket: u32 = 41;
287pub const __NR_connect: u32 = 42;
288pub const __NR_accept: u32 = 43;
289pub const __NR_sendto: u32 = 44;
290pub const __NR_recvfrom: u32 = 45;
291pub const __NR_sendmsg: u32 = 46;
292pub const __NR_recvmsg: u32 = 47;
293pub const __NR_shutdown: u32 = 48;
294pub const __NR_bind: u32 = 49;
295pub const __NR_listen: u32 = 50;
296pub const __NR_getsockname: u32 = 51;
297pub const __NR_getpeername: u32 = 52;
298pub const __NR_socketpair: u32 = 53;
299pub const __NR_setsockopt: u32 = 54;
300pub const __NR_getsockopt: u32 = 55;
301pub const __NR_clone: u32 = 56;
302pub const __NR_fork: u32 = 57;
303pub const __NR_vfork: u32 = 58;
304pub const __NR_execve: u32 = 59;
305pub const __NR_exit: u32 = 60;
306pub const __NR_wait4: u32 = 61;
307pub const __NR_kill: u32 = 62;
308pub const __NR_uname: u32 = 63;
309pub const __NR_semget: u32 = 64;
310pub const __NR_semop: u32 = 65;
311pub const __NR_semctl: u32 = 66;
312pub const __NR_shmdt: u32 = 67;
313pub const __NR_msgget: u32 = 68;
314pub const __NR_msgsnd: u32 = 69;
315pub const __NR_msgrcv: u32 = 70;
316pub const __NR_msgctl: u32 = 71;
317pub const __NR_fcntl: u32 = 72;
318pub const __NR_flock: u32 = 73;
319pub const __NR_fsync: u32 = 74;
320pub const __NR_fdatasync: u32 = 75;
321pub const __NR_truncate: u32 = 76;
322pub const __NR_ftruncate: u32 = 77;
323pub const __NR_getdents: u32 = 78;
324pub const __NR_getcwd: u32 = 79;
325pub const __NR_chdir: u32 = 80;
326pub const __NR_fchdir: u32 = 81;
327pub const __NR_rename: u32 = 82;
328pub const __NR_mkdir: u32 = 83;
329pub const __NR_rmdir: u32 = 84;
330pub const __NR_creat: u32 = 85;
331pub const __NR_link: u32 = 86;
332pub const __NR_unlink: u32 = 87;
333pub const __NR_symlink: u32 = 88;
334pub const __NR_readlink: u32 = 89;
335pub const __NR_chmod: u32 = 90;
336pub const __NR_fchmod: u32 = 91;
337pub const __NR_chown: u32 = 92;
338pub const __NR_fchown: u32 = 93;
339pub const __NR_lchown: u32 = 94;
340pub const __NR_umask: u32 = 95;
341pub const __NR_gettimeofday: u32 = 96;
342pub const __NR_getrlimit: u32 = 97;
343pub const __NR_getrusage: u32 = 98;
344pub const __NR_sysinfo: u32 = 99;
345pub const __NR_times: u32 = 100;
346pub const __NR_ptrace: u32 = 101;
347pub const __NR_getuid: u32 = 102;
348pub const __NR_syslog: u32 = 103;
349pub const __NR_getgid: u32 = 104;
350pub const __NR_setuid: u32 = 105;
351pub const __NR_setgid: u32 = 106;
352pub const __NR_geteuid: u32 = 107;
353pub const __NR_getegid: u32 = 108;
354pub const __NR_setpgid: u32 = 109;
355pub const __NR_getppid: u32 = 110;
356pub const __NR_getpgrp: u32 = 111;
357pub const __NR_setsid: u32 = 112;
358pub const __NR_setreuid: u32 = 113;
359pub const __NR_setregid: u32 = 114;
360pub const __NR_getgroups: u32 = 115;
361pub const __NR_setgroups: u32 = 116;
362pub const __NR_setresuid: u32 = 117;
363pub const __NR_getresuid: u32 = 118;
364pub const __NR_setresgid: u32 = 119;
365pub const __NR_getresgid: u32 = 120;
366pub const __NR_getpgid: u32 = 121;
367pub const __NR_setfsuid: u32 = 122;
368pub const __NR_setfsgid: u32 = 123;
369pub const __NR_getsid: u32 = 124;
370pub const __NR_capget: u32 = 125;
371pub const __NR_capset: u32 = 126;
372pub const __NR_rt_sigpending: u32 = 127;
373pub const __NR_rt_sigtimedwait: u32 = 128;
374pub const __NR_rt_sigqueueinfo: u32 = 129;
375pub const __NR_rt_sigsuspend: u32 = 130;
376pub const __NR_sigaltstack: u32 = 131;
377pub const __NR_utime: u32 = 132;
378pub const __NR_mknod: u32 = 133;
379pub const __NR_uselib: u32 = 134;
380pub const __NR_personality: u32 = 135;
381pub const __NR_ustat: u32 = 136;
382pub const __NR_statfs: u32 = 137;
383pub const __NR_fstatfs: u32 = 138;
384pub const __NR_sysfs: u32 = 139;
385pub const __NR_getpriority: u32 = 140;
386pub const __NR_setpriority: u32 = 141;
387pub const __NR_sched_setparam: u32 = 142;
388pub const __NR_sched_getparam: u32 = 143;
389pub const __NR_sched_setscheduler: u32 = 144;
390pub const __NR_sched_getscheduler: u32 = 145;
391pub const __NR_sched_get_priority_max: u32 = 146;
392pub const __NR_sched_get_priority_min: u32 = 147;
393pub const __NR_sched_rr_get_interval: u32 = 148;
394pub const __NR_mlock: u32 = 149;
395pub const __NR_munlock: u32 = 150;
396pub const __NR_mlockall: u32 = 151;
397pub const __NR_munlockall: u32 = 152;
398pub const __NR_vhangup: u32 = 153;
399pub const __NR_modify_ldt: u32 = 154;
400pub const __NR_pivot_root: u32 = 155;
401pub const __NR__sysctl: u32 = 156;
402pub const __NR_prctl: u32 = 157;
403pub const __NR_arch_prctl: u32 = 158;
404pub const __NR_adjtimex: u32 = 159;
405pub const __NR_setrlimit: u32 = 160;
406pub const __NR_chroot: u32 = 161;
407pub const __NR_sync: u32 = 162;
408pub const __NR_acct: u32 = 163;
409pub const __NR_settimeofday: u32 = 164;
410pub const __NR_mount: u32 = 165;
411pub const __NR_umount2: u32 = 166;
412pub const __NR_swapon: u32 = 167;
413pub const __NR_swapoff: u32 = 168;
414pub const __NR_reboot: u32 = 169;
415pub const __NR_sethostname: u32 = 170;
416pub const __NR_setdomainname: u32 = 171;
417pub const __NR_iopl: u32 = 172;
418pub const __NR_ioperm: u32 = 173;
419pub const __NR_create_module: u32 = 174;
420pub const __NR_init_module: u32 = 175;
421pub const __NR_delete_module: u32 = 176;
422pub const __NR_get_kernel_syms: u32 = 177;
423pub const __NR_query_module: u32 = 178;
424pub const __NR_quotactl: u32 = 179;
425pub const __NR_nfsservctl: u32 = 180;
426pub const __NR_getpmsg: u32 = 181;
427pub const __NR_putpmsg: u32 = 182;
428pub const __NR_afs_syscall: u32 = 183;
429pub const __NR_tuxcall: u32 = 184;
430pub const __NR_security: u32 = 185;
431pub const __NR_gettid: u32 = 186;
432pub const __NR_readahead: u32 = 187;
433pub const __NR_setxattr: u32 = 188;
434pub const __NR_lsetxattr: u32 = 189;
435pub const __NR_fsetxattr: u32 = 190;
436pub const __NR_getxattr: u32 = 191;
437pub const __NR_lgetxattr: u32 = 192;
438pub const __NR_fgetxattr: u32 = 193;
439pub const __NR_listxattr: u32 = 194;
440pub const __NR_llistxattr: u32 = 195;
441pub const __NR_flistxattr: u32 = 196;
442pub const __NR_removexattr: u32 = 197;
443pub const __NR_lremovexattr: u32 = 198;
444pub const __NR_fremovexattr: u32 = 199;
445pub const __NR_tkill: u32 = 200;
446pub const __NR_time: u32 = 201;
447pub const __NR_futex: u32 = 202;
448pub const __NR_sched_setaffinity: u32 = 203;
449pub const __NR_sched_getaffinity: u32 = 204;
450pub const __NR_set_thread_area: u32 = 205;
451pub const __NR_io_setup: u32 = 206;
452pub const __NR_io_destroy: u32 = 207;
453pub const __NR_io_getevents: u32 = 208;
454pub const __NR_io_submit: u32 = 209;
455pub const __NR_io_cancel: u32 = 210;
456pub const __NR_get_thread_area: u32 = 211;
457pub const __NR_lookup_dcookie: u32 = 212;
458pub const __NR_epoll_create: u32 = 213;
459pub const __NR_epoll_ctl_old: u32 = 214;
460pub const __NR_epoll_wait_old: u32 = 215;
461pub const __NR_remap_file_pages: u32 = 216;
462pub const __NR_getdents64: u32 = 217;
463pub const __NR_set_tid_address: u32 = 218;
464pub const __NR_restart_syscall: u32 = 219;
465pub const __NR_semtimedop: u32 = 220;
466pub const __NR_fadvise64: u32 = 221;
467pub const __NR_timer_create: u32 = 222;
468pub const __NR_timer_settime: u32 = 223;
469pub const __NR_timer_gettime: u32 = 224;
470pub const __NR_timer_getoverrun: u32 = 225;
471pub const __NR_timer_delete: u32 = 226;
472pub const __NR_clock_settime: u32 = 227;
473pub const __NR_clock_gettime: u32 = 228;
474pub const __NR_clock_getres: u32 = 229;
475pub const __NR_clock_nanosleep: u32 = 230;
476pub const __NR_exit_group: u32 = 231;
477pub const __NR_epoll_wait: u32 = 232;
478pub const __NR_epoll_ctl: u32 = 233;
479pub const __NR_tgkill: u32 = 234;
480pub const __NR_utimes: u32 = 235;
481pub const __NR_vserver: u32 = 236;
482pub const __NR_mbind: u32 = 237;
483pub const __NR_set_mempolicy: u32 = 238;
484pub const __NR_get_mempolicy: u32 = 239;
485pub const __NR_mq_open: u32 = 240;
486pub const __NR_mq_unlink: u32 = 241;
487pub const __NR_mq_timedsend: u32 = 242;
488pub const __NR_mq_timedreceive: u32 = 243;
489pub const __NR_mq_notify: u32 = 244;
490pub const __NR_mq_getsetattr: u32 = 245;
491pub const __NR_kexec_load: u32 = 246;
492pub const __NR_waitid: u32 = 247;
493pub const __NR_add_key: u32 = 248;
494pub const __NR_request_key: u32 = 249;
495pub const __NR_keyctl: u32 = 250;
496pub const __NR_ioprio_set: u32 = 251;
497pub const __NR_ioprio_get: u32 = 252;
498pub const __NR_inotify_init: u32 = 253;
499pub const __NR_inotify_add_watch: u32 = 254;
500pub const __NR_inotify_rm_watch: u32 = 255;
501pub const __NR_migrate_pages: u32 = 256;
502pub const __NR_openat: u32 = 257;
503pub const __NR_mkdirat: u32 = 258;
504pub const __NR_mknodat: u32 = 259;
505pub const __NR_fchownat: u32 = 260;
506pub const __NR_futimesat: u32 = 261;
507pub const __NR_newfstatat: u32 = 262;
508pub const __NR_unlinkat: u32 = 263;
509pub const __NR_renameat: u32 = 264;
510pub const __NR_linkat: u32 = 265;
511pub const __NR_symlinkat: u32 = 266;
512pub const __NR_readlinkat: u32 = 267;
513pub const __NR_fchmodat: u32 = 268;
514pub const __NR_faccessat: u32 = 269;
515pub const __NR_pselect6: u32 = 270;
516pub const __NR_ppoll: u32 = 271;
517pub const __NR_unshare: u32 = 272;
518pub const __NR_set_robust_list: u32 = 273;
519pub const __NR_get_robust_list: u32 = 274;
520pub const __NR_splice: u32 = 275;
521pub const __NR_tee: u32 = 276;
522pub const __NR_sync_file_range: u32 = 277;
523pub const __NR_vmsplice: u32 = 278;
524pub const __NR_move_pages: u32 = 279;
525pub const __NR_utimensat: u32 = 280;
526pub const __NR_epoll_pwait: u32 = 281;
527pub const __NR_signalfd: u32 = 282;
528pub const __NR_timerfd_create: u32 = 283;
529pub const __NR_eventfd: u32 = 284;
530pub const __NR_fallocate: u32 = 285;
531pub const __NR_timerfd_settime: u32 = 286;
532pub const __NR_timerfd_gettime: u32 = 287;
533pub const __NR_accept4: u32 = 288;
534pub const __NR_signalfd4: u32 = 289;
535pub const __NR_eventfd2: u32 = 290;
536pub const __NR_epoll_create1: u32 = 291;
537pub const __NR_dup3: u32 = 292;
538pub const __NR_pipe2: u32 = 293;
539pub const __NR_inotify_init1: u32 = 294;
540pub const __NR_preadv: u32 = 295;
541pub const __NR_pwritev: u32 = 296;
542pub const __NR_rt_tgsigqueueinfo: u32 = 297;
543pub const __NR_perf_event_open: u32 = 298;
544pub const __NR_recvmmsg: u32 = 299;
545pub const __NR_fanotify_init: u32 = 300;
546pub const __NR_fanotify_mark: u32 = 301;
547pub const __NR_prlimit64: u32 = 302;
548pub const __NR_name_to_handle_at: u32 = 303;
549pub const __NR_open_by_handle_at: u32 = 304;
550pub const __NR_clock_adjtime: u32 = 305;
551pub const __NR_syncfs: u32 = 306;
552pub const __NR_sendmmsg: u32 = 307;
553pub const __NR_setns: u32 = 308;
554pub const __NR_getcpu: u32 = 309;
555pub const __NR_process_vm_readv: u32 = 310;
556pub const __NR_process_vm_writev: u32 = 311;
557pub const __NR_kcmp: u32 = 312;
558pub const __NR_finit_module: u32 = 313;
559pub const __NR_sched_setattr: u32 = 314;
560pub const __NR_sched_getattr: u32 = 315;
561pub const __NR_renameat2: u32 = 316;
562pub const __NR_seccomp: u32 = 317;
563pub const __NR_getrandom: u32 = 318;
564pub const __NR_memfd_create: u32 = 319;
565pub const __NR_kexec_file_load: u32 = 320;
566pub const __NR_bpf: u32 = 321;
567pub const __NR_execveat: u32 = 322;
568pub const __NR_userfaultfd: u32 = 323;
569pub const __NR_membarrier: u32 = 324;
570pub const __NR_mlock2: u32 = 325;
571pub const __NR_copy_file_range: u32 = 326;
572pub const __NR_preadv2: u32 = 327;
573pub const __NR_pwritev2: u32 = 328;
574pub const __NR_pkey_mprotect: u32 = 329;
575pub const __NR_pkey_alloc: u32 = 330;
576pub const __NR_pkey_free: u32 = 331;
577pub const __NR_statx: u32 = 332;
578pub const __NR_io_pgetevents: u32 = 333;
579pub const __NR_rseq: u32 = 334;
580pub const __NR_pidfd_send_signal: u32 = 424;
581pub const __NR_io_uring_setup: u32 = 425;
582pub const __NR_io_uring_enter: u32 = 426;
583pub const __NR_io_uring_register: u32 = 427;
584pub const __NR_open_tree: u32 = 428;
585pub const __NR_move_mount: u32 = 429;
586pub const __NR_fsopen: u32 = 430;
587pub const __NR_fsconfig: u32 = 431;
588pub const __NR_fsmount: u32 = 432;
589pub const __NR_fspick: u32 = 433;
590pub const __NR_pidfd_open: u32 = 434;
591pub const __NR_clone3: u32 = 435;
592pub const __NR_openat2: u32 = 437;
593pub const __NR_pidfd_getfd: u32 = 438;
594pub type __s8 = ::std::os::raw::c_schar;
595pub type __u8 = ::std::os::raw::c_uchar;
596pub type __s16 = ::std::os::raw::c_short;
597pub type __u16 = ::std::os::raw::c_ushort;
598pub type __s32 = ::std::os::raw::c_int;
599pub type __u32 = ::std::os::raw::c_uint;
600pub type __s64 = ::std::os::raw::c_longlong;
601pub type __u64 = ::std::os::raw::c_ulonglong;
602#[repr(C)]
603#[derive(Debug, Default, Copy, Clone)]
604pub struct __kernel_fd_set {
605 pub fds_bits: [::std::os::raw::c_ulong; 16usize],
606}
607#[test]
608fn bindgen_test_layout___kernel_fd_set() {
609 assert_eq!(
610 ::std::mem::size_of::<__kernel_fd_set>(),
611 128usize,
612 concat!("Size of: ", stringify!(__kernel_fd_set))
613 );
614 assert_eq!(
615 ::std::mem::align_of::<__kernel_fd_set>(),
616 8usize,
617 concat!("Alignment of ", stringify!(__kernel_fd_set))
618 );
619 assert_eq!(
620 unsafe { &(*(::std::ptr::null::<__kernel_fd_set>())).fds_bits as *const _ as usize },
621 0usize,
622 concat!(
623 "Offset of field: ",
624 stringify!(__kernel_fd_set),
625 "::",
626 stringify!(fds_bits)
627 )
628 );
629}
630pub type __kernel_sighandler_t =
631 ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>;
632pub type __kernel_key_t = ::std::os::raw::c_int;
633pub type __kernel_mqd_t = ::std::os::raw::c_int;
634pub type __kernel_old_uid_t = ::std::os::raw::c_ushort;
635pub type __kernel_old_gid_t = ::std::os::raw::c_ushort;
636pub type __kernel_old_dev_t = ::std::os::raw::c_ulong;
637pub type __kernel_long_t = ::std::os::raw::c_long;
638pub type __kernel_ulong_t = ::std::os::raw::c_ulong;
639pub type __kernel_ino_t = __kernel_ulong_t;
640pub type __kernel_mode_t = ::std::os::raw::c_uint;
641pub type __kernel_pid_t = ::std::os::raw::c_int;
642pub type __kernel_ipc_pid_t = ::std::os::raw::c_int;
643pub type __kernel_uid_t = ::std::os::raw::c_uint;
644pub type __kernel_gid_t = ::std::os::raw::c_uint;
645pub type __kernel_suseconds_t = __kernel_long_t;
646pub type __kernel_daddr_t = ::std::os::raw::c_int;
647pub type __kernel_uid32_t = ::std::os::raw::c_uint;
648pub type __kernel_gid32_t = ::std::os::raw::c_uint;
649pub type __kernel_size_t = __kernel_ulong_t;
650pub type __kernel_ssize_t = __kernel_long_t;
651pub type __kernel_ptrdiff_t = __kernel_long_t;
652#[repr(C)]
653#[derive(Debug, Default, Copy, Clone)]
654pub struct __kernel_fsid_t {
655 pub val: [::std::os::raw::c_int; 2usize],
656}
657#[test]
658fn bindgen_test_layout___kernel_fsid_t() {
659 assert_eq!(
660 ::std::mem::size_of::<__kernel_fsid_t>(),
661 8usize,
662 concat!("Size of: ", stringify!(__kernel_fsid_t))
663 );
664 assert_eq!(
665 ::std::mem::align_of::<__kernel_fsid_t>(),
666 4usize,
667 concat!("Alignment of ", stringify!(__kernel_fsid_t))
668 );
669 assert_eq!(
670 unsafe { &(*(::std::ptr::null::<__kernel_fsid_t>())).val as *const _ as usize },
671 0usize,
672 concat!(
673 "Offset of field: ",
674 stringify!(__kernel_fsid_t),
675 "::",
676 stringify!(val)
677 )
678 );
679}
680pub type __kernel_off_t = __kernel_long_t;
681pub type __kernel_loff_t = ::std::os::raw::c_longlong;
682pub type __kernel_old_time_t = __kernel_long_t;
683pub type __kernel_time_t = __kernel_long_t;
684pub type __kernel_time64_t = ::std::os::raw::c_longlong;
685pub type __kernel_clock_t = __kernel_long_t;
686pub type __kernel_timer_t = ::std::os::raw::c_int;
687pub type __kernel_clockid_t = ::std::os::raw::c_int;
688pub type __kernel_caddr_t = *mut ::std::os::raw::c_char;
689pub type __kernel_uid16_t = ::std::os::raw::c_ushort;
690pub type __kernel_gid16_t = ::std::os::raw::c_ushort;
691pub type __le16 = __u16;
692pub type __be16 = __u16;
693pub type __le32 = __u32;
694pub type __be32 = __u32;
695pub type __le64 = __u64;
696pub type __be64 = __u64;
697pub type __sum16 = __u16;
698pub type __wsum = __u32;
699pub type __poll_t = ::std::os::raw::c_uint;
700pub const perf_type_id_PERF_TYPE_HARDWARE: perf_type_id = 0;
701pub const perf_type_id_PERF_TYPE_SOFTWARE: perf_type_id = 1;
702pub const perf_type_id_PERF_TYPE_TRACEPOINT: perf_type_id = 2;
703pub const perf_type_id_PERF_TYPE_HW_CACHE: perf_type_id = 3;
704pub const perf_type_id_PERF_TYPE_RAW: perf_type_id = 4;
705pub const perf_type_id_PERF_TYPE_BREAKPOINT: perf_type_id = 5;
706pub const perf_type_id_PERF_TYPE_MAX: perf_type_id = 6;
707pub type perf_type_id = u32;
708pub const perf_hw_id_PERF_COUNT_HW_CPU_CYCLES: perf_hw_id = 0;
709pub const perf_hw_id_PERF_COUNT_HW_INSTRUCTIONS: perf_hw_id = 1;
710pub const perf_hw_id_PERF_COUNT_HW_CACHE_REFERENCES: perf_hw_id = 2;
711pub const perf_hw_id_PERF_COUNT_HW_CACHE_MISSES: perf_hw_id = 3;
712pub const perf_hw_id_PERF_COUNT_HW_BRANCH_INSTRUCTIONS: perf_hw_id = 4;
713pub const perf_hw_id_PERF_COUNT_HW_BRANCH_MISSES: perf_hw_id = 5;
714pub const perf_hw_id_PERF_COUNT_HW_BUS_CYCLES: perf_hw_id = 6;
715pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_FRONTEND: perf_hw_id = 7;
716pub const perf_hw_id_PERF_COUNT_HW_STALLED_CYCLES_BACKEND: perf_hw_id = 8;
717pub const perf_hw_id_PERF_COUNT_HW_REF_CPU_CYCLES: perf_hw_id = 9;
718pub const perf_hw_id_PERF_COUNT_HW_MAX: perf_hw_id = 10;
719pub type perf_hw_id = u32;
720pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1D: perf_hw_cache_id = 0;
721pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_L1I: perf_hw_cache_id = 1;
722pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_LL: perf_hw_cache_id = 2;
723pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_DTLB: perf_hw_cache_id = 3;
724pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_ITLB: perf_hw_cache_id = 4;
725pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_BPU: perf_hw_cache_id = 5;
726pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_NODE: perf_hw_cache_id = 6;
727pub const perf_hw_cache_id_PERF_COUNT_HW_CACHE_MAX: perf_hw_cache_id = 7;
728pub type perf_hw_cache_id = u32;
729pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_READ: perf_hw_cache_op_id = 0;
730pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_WRITE: perf_hw_cache_op_id = 1;
731pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_PREFETCH: perf_hw_cache_op_id = 2;
732pub const perf_hw_cache_op_id_PERF_COUNT_HW_CACHE_OP_MAX: perf_hw_cache_op_id = 3;
733pub type perf_hw_cache_op_id = u32;
734pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_ACCESS: perf_hw_cache_op_result_id =
735 0;
736pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MISS: perf_hw_cache_op_result_id =
737 1;
738pub const perf_hw_cache_op_result_id_PERF_COUNT_HW_CACHE_RESULT_MAX: perf_hw_cache_op_result_id = 2;
739pub type perf_hw_cache_op_result_id = u32;
740pub const perf_sw_ids_PERF_COUNT_SW_CPU_CLOCK: perf_sw_ids = 0;
741pub const perf_sw_ids_PERF_COUNT_SW_TASK_CLOCK: perf_sw_ids = 1;
742pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS: perf_sw_ids = 2;
743pub const perf_sw_ids_PERF_COUNT_SW_CONTEXT_SWITCHES: perf_sw_ids = 3;
744pub const perf_sw_ids_PERF_COUNT_SW_CPU_MIGRATIONS: perf_sw_ids = 4;
745pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MIN: perf_sw_ids = 5;
746pub const perf_sw_ids_PERF_COUNT_SW_PAGE_FAULTS_MAJ: perf_sw_ids = 6;
747pub const perf_sw_ids_PERF_COUNT_SW_ALIGNMENT_FAULTS: perf_sw_ids = 7;
748pub const perf_sw_ids_PERF_COUNT_SW_EMULATION_FAULTS: perf_sw_ids = 8;
749pub const perf_sw_ids_PERF_COUNT_SW_DUMMY: perf_sw_ids = 9;
750pub const perf_sw_ids_PERF_COUNT_SW_BPF_OUTPUT: perf_sw_ids = 10;
751pub const perf_sw_ids_PERF_COUNT_SW_MAX: perf_sw_ids = 11;
752pub type perf_sw_ids = u32;
753pub const perf_event_sample_format_PERF_SAMPLE_IP: perf_event_sample_format = 1;
754pub const perf_event_sample_format_PERF_SAMPLE_TID: perf_event_sample_format = 2;
755pub const perf_event_sample_format_PERF_SAMPLE_TIME: perf_event_sample_format = 4;
756pub const perf_event_sample_format_PERF_SAMPLE_ADDR: perf_event_sample_format = 8;
757pub const perf_event_sample_format_PERF_SAMPLE_READ: perf_event_sample_format = 16;
758pub const perf_event_sample_format_PERF_SAMPLE_CALLCHAIN: perf_event_sample_format = 32;
759pub const perf_event_sample_format_PERF_SAMPLE_ID: perf_event_sample_format = 64;
760pub const perf_event_sample_format_PERF_SAMPLE_CPU: perf_event_sample_format = 128;
761pub const perf_event_sample_format_PERF_SAMPLE_PERIOD: perf_event_sample_format = 256;
762pub const perf_event_sample_format_PERF_SAMPLE_STREAM_ID: perf_event_sample_format = 512;
763pub const perf_event_sample_format_PERF_SAMPLE_RAW: perf_event_sample_format = 1024;
764pub const perf_event_sample_format_PERF_SAMPLE_BRANCH_STACK: perf_event_sample_format = 2048;
765pub const perf_event_sample_format_PERF_SAMPLE_REGS_USER: perf_event_sample_format = 4096;
766pub const perf_event_sample_format_PERF_SAMPLE_STACK_USER: perf_event_sample_format = 8192;
767pub const perf_event_sample_format_PERF_SAMPLE_WEIGHT: perf_event_sample_format = 16384;
768pub const perf_event_sample_format_PERF_SAMPLE_DATA_SRC: perf_event_sample_format = 32768;
769pub const perf_event_sample_format_PERF_SAMPLE_IDENTIFIER: perf_event_sample_format = 65536;
770pub const perf_event_sample_format_PERF_SAMPLE_TRANSACTION: perf_event_sample_format = 131072;
771pub const perf_event_sample_format_PERF_SAMPLE_REGS_INTR: perf_event_sample_format = 262144;
772pub const perf_event_sample_format_PERF_SAMPLE_PHYS_ADDR: perf_event_sample_format = 524288;
773pub const perf_event_sample_format_PERF_SAMPLE_AUX: perf_event_sample_format = 1048576;
774pub const perf_event_sample_format_PERF_SAMPLE_MAX: perf_event_sample_format = 2097152;
775pub const perf_event_sample_format___PERF_SAMPLE_CALLCHAIN_EARLY: perf_event_sample_format =
776 9223372036854775808;
777pub type perf_event_sample_format = u64;
778pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_USER_SHIFT:
779 perf_branch_sample_type_shift = 0;
780pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_KERNEL_SHIFT:
781 perf_branch_sample_type_shift = 1;
782pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_HV_SHIFT: perf_branch_sample_type_shift =
783 2;
784pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_SHIFT:
785 perf_branch_sample_type_shift = 3;
786pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT:
787 perf_branch_sample_type_shift = 4;
788pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT:
789 perf_branch_sample_type_shift = 5;
790pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_CALL_SHIFT:
791 perf_branch_sample_type_shift = 6;
792pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT:
793 perf_branch_sample_type_shift = 7;
794pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IN_TX_SHIFT:
795 perf_branch_sample_type_shift = 8;
796pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_TX_SHIFT:
797 perf_branch_sample_type_shift = 9;
798pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_COND_SHIFT:
799 perf_branch_sample_type_shift = 10;
800pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT:
801 perf_branch_sample_type_shift = 11;
802pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT:
803 perf_branch_sample_type_shift = 12;
804pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_CALL_SHIFT:
805 perf_branch_sample_type_shift = 13;
806pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT:
807 perf_branch_sample_type_shift = 14;
808pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT:
809 perf_branch_sample_type_shift = 15;
810pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT:
811 perf_branch_sample_type_shift = 16;
812pub const perf_branch_sample_type_shift_PERF_SAMPLE_BRANCH_MAX_SHIFT:
813 perf_branch_sample_type_shift = 17;
814pub type perf_branch_sample_type_shift = u32;
815pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_USER: perf_branch_sample_type = 1;
816pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_KERNEL: perf_branch_sample_type = 2;
817pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_HV: perf_branch_sample_type = 4;
818pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY: perf_branch_sample_type = 8;
819pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_CALL: perf_branch_sample_type = 16;
820pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ANY_RETURN: perf_branch_sample_type = 32;
821pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_CALL: perf_branch_sample_type = 64;
822pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_ABORT_TX: perf_branch_sample_type = 128;
823pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IN_TX: perf_branch_sample_type = 256;
824pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_TX: perf_branch_sample_type = 512;
825pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_COND: perf_branch_sample_type = 1024;
826pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL_STACK: perf_branch_sample_type = 2048;
827pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_IND_JUMP: perf_branch_sample_type = 4096;
828pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_CALL: perf_branch_sample_type = 8192;
829pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_FLAGS: perf_branch_sample_type = 16384;
830pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_NO_CYCLES: perf_branch_sample_type = 32768;
831pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_TYPE_SAVE: perf_branch_sample_type = 65536;
832pub const perf_branch_sample_type_PERF_SAMPLE_BRANCH_MAX: perf_branch_sample_type = 131072;
833pub type perf_branch_sample_type = u32;
834pub const PERF_BR_UNKNOWN: _bindgen_ty_1 = 0;
835pub const PERF_BR_COND: _bindgen_ty_1 = 1;
836pub const PERF_BR_UNCOND: _bindgen_ty_1 = 2;
837pub const PERF_BR_IND: _bindgen_ty_1 = 3;
838pub const PERF_BR_CALL: _bindgen_ty_1 = 4;
839pub const PERF_BR_IND_CALL: _bindgen_ty_1 = 5;
840pub const PERF_BR_RET: _bindgen_ty_1 = 6;
841pub const PERF_BR_SYSCALL: _bindgen_ty_1 = 7;
842pub const PERF_BR_SYSRET: _bindgen_ty_1 = 8;
843pub const PERF_BR_COND_CALL: _bindgen_ty_1 = 9;
844pub const PERF_BR_COND_RET: _bindgen_ty_1 = 10;
845pub const PERF_BR_MAX: _bindgen_ty_1 = 11;
846pub type _bindgen_ty_1 = u32;
847pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_NONE: perf_sample_regs_abi = 0;
848pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_32: perf_sample_regs_abi = 1;
849pub const perf_sample_regs_abi_PERF_SAMPLE_REGS_ABI_64: perf_sample_regs_abi = 2;
850pub type perf_sample_regs_abi = u32;
851pub const PERF_TXN_ELISION: _bindgen_ty_2 = 1;
852pub const PERF_TXN_TRANSACTION: _bindgen_ty_2 = 2;
853pub const PERF_TXN_SYNC: _bindgen_ty_2 = 4;
854pub const PERF_TXN_ASYNC: _bindgen_ty_2 = 8;
855pub const PERF_TXN_RETRY: _bindgen_ty_2 = 16;
856pub const PERF_TXN_CONFLICT: _bindgen_ty_2 = 32;
857pub const PERF_TXN_CAPACITY_WRITE: _bindgen_ty_2 = 64;
858pub const PERF_TXN_CAPACITY_READ: _bindgen_ty_2 = 128;
859pub const PERF_TXN_MAX: _bindgen_ty_2 = 256;
860pub const PERF_TXN_ABORT_MASK: _bindgen_ty_2 = 18446744069414584320;
861pub const PERF_TXN_ABORT_SHIFT: _bindgen_ty_2 = 32;
862pub type _bindgen_ty_2 = u64;
863pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_ENABLED: perf_event_read_format = 1;
864pub const perf_event_read_format_PERF_FORMAT_TOTAL_TIME_RUNNING: perf_event_read_format = 2;
865pub const perf_event_read_format_PERF_FORMAT_ID: perf_event_read_format = 4;
866pub const perf_event_read_format_PERF_FORMAT_GROUP: perf_event_read_format = 8;
867pub const perf_event_read_format_PERF_FORMAT_MAX: perf_event_read_format = 16;
868pub type perf_event_read_format = u32;
869#[repr(C)]
870#[derive(Copy, Clone)]
871pub struct perf_event_attr {
872 pub type_: __u32,
873 pub size: __u32,
874 pub config: __u64,
875 pub __bindgen_anon_1: perf_event_attr__bindgen_ty_1,
876 pub sample_type: __u64,
877 pub read_format: __u64,
878 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize], u32>,
879 pub __bindgen_anon_2: perf_event_attr__bindgen_ty_2,
880 pub bp_type: __u32,
881 pub __bindgen_anon_3: perf_event_attr__bindgen_ty_3,
882 pub __bindgen_anon_4: perf_event_attr__bindgen_ty_4,
883 pub branch_sample_type: __u64,
884 pub sample_regs_user: __u64,
885 pub sample_stack_user: __u32,
886 pub clockid: __s32,
887 pub sample_regs_intr: __u64,
888 pub aux_watermark: __u32,
889 pub sample_max_stack: __u16,
890 pub __reserved_2: __u16,
891 pub aux_sample_size: __u32,
892 pub __reserved_3: __u32,
893}
894#[repr(C)]
895#[derive(Copy, Clone)]
896pub union perf_event_attr__bindgen_ty_1 {
897 pub sample_period: __u64,
898 pub sample_freq: __u64,
899 _bindgen_union_align: u64,
900}
901#[test]
902fn bindgen_test_layout_perf_event_attr__bindgen_ty_1() {
903 assert_eq!(
904 ::std::mem::size_of::<perf_event_attr__bindgen_ty_1>(),
905 8usize,
906 concat!("Size of: ", stringify!(perf_event_attr__bindgen_ty_1))
907 );
908 assert_eq!(
909 ::std::mem::align_of::<perf_event_attr__bindgen_ty_1>(),
910 8usize,
911 concat!("Alignment of ", stringify!(perf_event_attr__bindgen_ty_1))
912 );
913 assert_eq!(
914 unsafe {
915 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_1>())).sample_period as *const _
916 as usize
917 },
918 0usize,
919 concat!(
920 "Offset of field: ",
921 stringify!(perf_event_attr__bindgen_ty_1),
922 "::",
923 stringify!(sample_period)
924 )
925 );
926 assert_eq!(
927 unsafe {
928 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_1>())).sample_freq as *const _
929 as usize
930 },
931 0usize,
932 concat!(
933 "Offset of field: ",
934 stringify!(perf_event_attr__bindgen_ty_1),
935 "::",
936 stringify!(sample_freq)
937 )
938 );
939}
940impl Default for perf_event_attr__bindgen_ty_1 {
941 fn default() -> Self {
942 unsafe { ::std::mem::zeroed() }
943 }
944}
945#[repr(C)]
946#[derive(Copy, Clone)]
947pub union perf_event_attr__bindgen_ty_2 {
948 pub wakeup_events: __u32,
949 pub wakeup_watermark: __u32,
950 _bindgen_union_align: u32,
951}
952#[test]
953fn bindgen_test_layout_perf_event_attr__bindgen_ty_2() {
954 assert_eq!(
955 ::std::mem::size_of::<perf_event_attr__bindgen_ty_2>(),
956 4usize,
957 concat!("Size of: ", stringify!(perf_event_attr__bindgen_ty_2))
958 );
959 assert_eq!(
960 ::std::mem::align_of::<perf_event_attr__bindgen_ty_2>(),
961 4usize,
962 concat!("Alignment of ", stringify!(perf_event_attr__bindgen_ty_2))
963 );
964 assert_eq!(
965 unsafe {
966 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_2>())).wakeup_events as *const _
967 as usize
968 },
969 0usize,
970 concat!(
971 "Offset of field: ",
972 stringify!(perf_event_attr__bindgen_ty_2),
973 "::",
974 stringify!(wakeup_events)
975 )
976 );
977 assert_eq!(
978 unsafe {
979 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_2>())).wakeup_watermark as *const _
980 as usize
981 },
982 0usize,
983 concat!(
984 "Offset of field: ",
985 stringify!(perf_event_attr__bindgen_ty_2),
986 "::",
987 stringify!(wakeup_watermark)
988 )
989 );
990}
991impl Default for perf_event_attr__bindgen_ty_2 {
992 fn default() -> Self {
993 unsafe { ::std::mem::zeroed() }
994 }
995}
996#[repr(C)]
997#[derive(Copy, Clone)]
998pub union perf_event_attr__bindgen_ty_3 {
999 pub bp_addr: __u64,
1000 pub kprobe_func: __u64,
1001 pub uprobe_path: __u64,
1002 pub config1: __u64,
1003 _bindgen_union_align: u64,
1004}
1005#[test]
1006fn bindgen_test_layout_perf_event_attr__bindgen_ty_3() {
1007 assert_eq!(
1008 ::std::mem::size_of::<perf_event_attr__bindgen_ty_3>(),
1009 8usize,
1010 concat!("Size of: ", stringify!(perf_event_attr__bindgen_ty_3))
1011 );
1012 assert_eq!(
1013 ::std::mem::align_of::<perf_event_attr__bindgen_ty_3>(),
1014 8usize,
1015 concat!("Alignment of ", stringify!(perf_event_attr__bindgen_ty_3))
1016 );
1017 assert_eq!(
1018 unsafe {
1019 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_3>())).bp_addr as *const _ as usize
1020 },
1021 0usize,
1022 concat!(
1023 "Offset of field: ",
1024 stringify!(perf_event_attr__bindgen_ty_3),
1025 "::",
1026 stringify!(bp_addr)
1027 )
1028 );
1029 assert_eq!(
1030 unsafe {
1031 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_3>())).kprobe_func as *const _
1032 as usize
1033 },
1034 0usize,
1035 concat!(
1036 "Offset of field: ",
1037 stringify!(perf_event_attr__bindgen_ty_3),
1038 "::",
1039 stringify!(kprobe_func)
1040 )
1041 );
1042 assert_eq!(
1043 unsafe {
1044 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_3>())).uprobe_path as *const _
1045 as usize
1046 },
1047 0usize,
1048 concat!(
1049 "Offset of field: ",
1050 stringify!(perf_event_attr__bindgen_ty_3),
1051 "::",
1052 stringify!(uprobe_path)
1053 )
1054 );
1055 assert_eq!(
1056 unsafe {
1057 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_3>())).config1 as *const _ as usize
1058 },
1059 0usize,
1060 concat!(
1061 "Offset of field: ",
1062 stringify!(perf_event_attr__bindgen_ty_3),
1063 "::",
1064 stringify!(config1)
1065 )
1066 );
1067}
1068impl Default for perf_event_attr__bindgen_ty_3 {
1069 fn default() -> Self {
1070 unsafe { ::std::mem::zeroed() }
1071 }
1072}
1073#[repr(C)]
1074#[derive(Copy, Clone)]
1075pub union perf_event_attr__bindgen_ty_4 {
1076 pub bp_len: __u64,
1077 pub kprobe_addr: __u64,
1078 pub probe_offset: __u64,
1079 pub config2: __u64,
1080 _bindgen_union_align: u64,
1081}
1082#[test]
1083fn bindgen_test_layout_perf_event_attr__bindgen_ty_4() {
1084 assert_eq!(
1085 ::std::mem::size_of::<perf_event_attr__bindgen_ty_4>(),
1086 8usize,
1087 concat!("Size of: ", stringify!(perf_event_attr__bindgen_ty_4))
1088 );
1089 assert_eq!(
1090 ::std::mem::align_of::<perf_event_attr__bindgen_ty_4>(),
1091 8usize,
1092 concat!("Alignment of ", stringify!(perf_event_attr__bindgen_ty_4))
1093 );
1094 assert_eq!(
1095 unsafe {
1096 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_4>())).bp_len as *const _ as usize
1097 },
1098 0usize,
1099 concat!(
1100 "Offset of field: ",
1101 stringify!(perf_event_attr__bindgen_ty_4),
1102 "::",
1103 stringify!(bp_len)
1104 )
1105 );
1106 assert_eq!(
1107 unsafe {
1108 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_4>())).kprobe_addr as *const _
1109 as usize
1110 },
1111 0usize,
1112 concat!(
1113 "Offset of field: ",
1114 stringify!(perf_event_attr__bindgen_ty_4),
1115 "::",
1116 stringify!(kprobe_addr)
1117 )
1118 );
1119 assert_eq!(
1120 unsafe {
1121 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_4>())).probe_offset as *const _
1122 as usize
1123 },
1124 0usize,
1125 concat!(
1126 "Offset of field: ",
1127 stringify!(perf_event_attr__bindgen_ty_4),
1128 "::",
1129 stringify!(probe_offset)
1130 )
1131 );
1132 assert_eq!(
1133 unsafe {
1134 &(*(::std::ptr::null::<perf_event_attr__bindgen_ty_4>())).config2 as *const _ as usize
1135 },
1136 0usize,
1137 concat!(
1138 "Offset of field: ",
1139 stringify!(perf_event_attr__bindgen_ty_4),
1140 "::",
1141 stringify!(config2)
1142 )
1143 );
1144}
1145impl Default for perf_event_attr__bindgen_ty_4 {
1146 fn default() -> Self {
1147 unsafe { ::std::mem::zeroed() }
1148 }
1149}
1150#[test]
1151fn bindgen_test_layout_perf_event_attr() {
1152 assert_eq!(
1153 ::std::mem::size_of::<perf_event_attr>(),
1154 120usize,
1155 concat!("Size of: ", stringify!(perf_event_attr))
1156 );
1157 assert_eq!(
1158 ::std::mem::align_of::<perf_event_attr>(),
1159 8usize,
1160 concat!("Alignment of ", stringify!(perf_event_attr))
1161 );
1162 assert_eq!(
1163 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).type_ as *const _ as usize },
1164 0usize,
1165 concat!(
1166 "Offset of field: ",
1167 stringify!(perf_event_attr),
1168 "::",
1169 stringify!(type_)
1170 )
1171 );
1172 assert_eq!(
1173 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).size as *const _ as usize },
1174 4usize,
1175 concat!(
1176 "Offset of field: ",
1177 stringify!(perf_event_attr),
1178 "::",
1179 stringify!(size)
1180 )
1181 );
1182 assert_eq!(
1183 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).config as *const _ as usize },
1184 8usize,
1185 concat!(
1186 "Offset of field: ",
1187 stringify!(perf_event_attr),
1188 "::",
1189 stringify!(config)
1190 )
1191 );
1192 assert_eq!(
1193 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).sample_type as *const _ as usize },
1194 24usize,
1195 concat!(
1196 "Offset of field: ",
1197 stringify!(perf_event_attr),
1198 "::",
1199 stringify!(sample_type)
1200 )
1201 );
1202 assert_eq!(
1203 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).read_format as *const _ as usize },
1204 32usize,
1205 concat!(
1206 "Offset of field: ",
1207 stringify!(perf_event_attr),
1208 "::",
1209 stringify!(read_format)
1210 )
1211 );
1212 assert_eq!(
1213 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).bp_type as *const _ as usize },
1214 52usize,
1215 concat!(
1216 "Offset of field: ",
1217 stringify!(perf_event_attr),
1218 "::",
1219 stringify!(bp_type)
1220 )
1221 );
1222 assert_eq!(
1223 unsafe {
1224 &(*(::std::ptr::null::<perf_event_attr>())).branch_sample_type as *const _ as usize
1225 },
1226 72usize,
1227 concat!(
1228 "Offset of field: ",
1229 stringify!(perf_event_attr),
1230 "::",
1231 stringify!(branch_sample_type)
1232 )
1233 );
1234 assert_eq!(
1235 unsafe {
1236 &(*(::std::ptr::null::<perf_event_attr>())).sample_regs_user as *const _ as usize
1237 },
1238 80usize,
1239 concat!(
1240 "Offset of field: ",
1241 stringify!(perf_event_attr),
1242 "::",
1243 stringify!(sample_regs_user)
1244 )
1245 );
1246 assert_eq!(
1247 unsafe {
1248 &(*(::std::ptr::null::<perf_event_attr>())).sample_stack_user as *const _ as usize
1249 },
1250 88usize,
1251 concat!(
1252 "Offset of field: ",
1253 stringify!(perf_event_attr),
1254 "::",
1255 stringify!(sample_stack_user)
1256 )
1257 );
1258 assert_eq!(
1259 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).clockid as *const _ as usize },
1260 92usize,
1261 concat!(
1262 "Offset of field: ",
1263 stringify!(perf_event_attr),
1264 "::",
1265 stringify!(clockid)
1266 )
1267 );
1268 assert_eq!(
1269 unsafe {
1270 &(*(::std::ptr::null::<perf_event_attr>())).sample_regs_intr as *const _ as usize
1271 },
1272 96usize,
1273 concat!(
1274 "Offset of field: ",
1275 stringify!(perf_event_attr),
1276 "::",
1277 stringify!(sample_regs_intr)
1278 )
1279 );
1280 assert_eq!(
1281 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).aux_watermark as *const _ as usize },
1282 104usize,
1283 concat!(
1284 "Offset of field: ",
1285 stringify!(perf_event_attr),
1286 "::",
1287 stringify!(aux_watermark)
1288 )
1289 );
1290 assert_eq!(
1291 unsafe {
1292 &(*(::std::ptr::null::<perf_event_attr>())).sample_max_stack as *const _ as usize
1293 },
1294 108usize,
1295 concat!(
1296 "Offset of field: ",
1297 stringify!(perf_event_attr),
1298 "::",
1299 stringify!(sample_max_stack)
1300 )
1301 );
1302 assert_eq!(
1303 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).__reserved_2 as *const _ as usize },
1304 110usize,
1305 concat!(
1306 "Offset of field: ",
1307 stringify!(perf_event_attr),
1308 "::",
1309 stringify!(__reserved_2)
1310 )
1311 );
1312 assert_eq!(
1313 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).aux_sample_size as *const _ as usize },
1314 112usize,
1315 concat!(
1316 "Offset of field: ",
1317 stringify!(perf_event_attr),
1318 "::",
1319 stringify!(aux_sample_size)
1320 )
1321 );
1322 assert_eq!(
1323 unsafe { &(*(::std::ptr::null::<perf_event_attr>())).__reserved_3 as *const _ as usize },
1324 116usize,
1325 concat!(
1326 "Offset of field: ",
1327 stringify!(perf_event_attr),
1328 "::",
1329 stringify!(__reserved_3)
1330 )
1331 );
1332}
1333impl Default for perf_event_attr {
1334 fn default() -> Self {
1335 unsafe { ::std::mem::zeroed() }
1336 }
1337}
1338impl perf_event_attr {
1339 #[inline]
1340 pub fn disabled(&self) -> __u64 {
1341 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u64) }
1342 }
1343 #[inline]
1344 pub fn set_disabled(&mut self, val: __u64) {
1345 unsafe {
1346 let val: u64 = ::std::mem::transmute(val);
1347 self._bitfield_1.set(0usize, 1u8, val as u64)
1348 }
1349 }
1350 #[inline]
1351 pub fn inherit(&self) -> __u64 {
1352 unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u64) }
1353 }
1354 #[inline]
1355 pub fn set_inherit(&mut self, val: __u64) {
1356 unsafe {
1357 let val: u64 = ::std::mem::transmute(val);
1358 self._bitfield_1.set(1usize, 1u8, val as u64)
1359 }
1360 }
1361 #[inline]
1362 pub fn pinned(&self) -> __u64 {
1363 unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u64) }
1364 }
1365 #[inline]
1366 pub fn set_pinned(&mut self, val: __u64) {
1367 unsafe {
1368 let val: u64 = ::std::mem::transmute(val);
1369 self._bitfield_1.set(2usize, 1u8, val as u64)
1370 }
1371 }
1372 #[inline]
1373 pub fn exclusive(&self) -> __u64 {
1374 unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u64) }
1375 }
1376 #[inline]
1377 pub fn set_exclusive(&mut self, val: __u64) {
1378 unsafe {
1379 let val: u64 = ::std::mem::transmute(val);
1380 self._bitfield_1.set(3usize, 1u8, val as u64)
1381 }
1382 }
1383 #[inline]
1384 pub fn exclude_user(&self) -> __u64 {
1385 unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u64) }
1386 }
1387 #[inline]
1388 pub fn set_exclude_user(&mut self, val: __u64) {
1389 unsafe {
1390 let val: u64 = ::std::mem::transmute(val);
1391 self._bitfield_1.set(4usize, 1u8, val as u64)
1392 }
1393 }
1394 #[inline]
1395 pub fn exclude_kernel(&self) -> __u64 {
1396 unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u64) }
1397 }
1398 #[inline]
1399 pub fn set_exclude_kernel(&mut self, val: __u64) {
1400 unsafe {
1401 let val: u64 = ::std::mem::transmute(val);
1402 self._bitfield_1.set(5usize, 1u8, val as u64)
1403 }
1404 }
1405 #[inline]
1406 pub fn exclude_hv(&self) -> __u64 {
1407 unsafe { ::std::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u64) }
1408 }
1409 #[inline]
1410 pub fn set_exclude_hv(&mut self, val: __u64) {
1411 unsafe {
1412 let val: u64 = ::std::mem::transmute(val);
1413 self._bitfield_1.set(6usize, 1u8, val as u64)
1414 }
1415 }
1416 #[inline]
1417 pub fn exclude_idle(&self) -> __u64 {
1418 unsafe { ::std::mem::transmute(self._bitfield_1.get(7usize, 1u8) as u64) }
1419 }
1420 #[inline]
1421 pub fn set_exclude_idle(&mut self, val: __u64) {
1422 unsafe {
1423 let val: u64 = ::std::mem::transmute(val);
1424 self._bitfield_1.set(7usize, 1u8, val as u64)
1425 }
1426 }
1427 #[inline]
1428 pub fn mmap(&self) -> __u64 {
1429 unsafe { ::std::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u64) }
1430 }
1431 #[inline]
1432 pub fn set_mmap(&mut self, val: __u64) {
1433 unsafe {
1434 let val: u64 = ::std::mem::transmute(val);
1435 self._bitfield_1.set(8usize, 1u8, val as u64)
1436 }
1437 }
1438 #[inline]
1439 pub fn comm(&self) -> __u64 {
1440 unsafe { ::std::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u64) }
1441 }
1442 #[inline]
1443 pub fn set_comm(&mut self, val: __u64) {
1444 unsafe {
1445 let val: u64 = ::std::mem::transmute(val);
1446 self._bitfield_1.set(9usize, 1u8, val as u64)
1447 }
1448 }
1449 #[inline]
1450 pub fn freq(&self) -> __u64 {
1451 unsafe { ::std::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u64) }
1452 }
1453 #[inline]
1454 pub fn set_freq(&mut self, val: __u64) {
1455 unsafe {
1456 let val: u64 = ::std::mem::transmute(val);
1457 self._bitfield_1.set(10usize, 1u8, val as u64)
1458 }
1459 }
1460 #[inline]
1461 pub fn inherit_stat(&self) -> __u64 {
1462 unsafe { ::std::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u64) }
1463 }
1464 #[inline]
1465 pub fn set_inherit_stat(&mut self, val: __u64) {
1466 unsafe {
1467 let val: u64 = ::std::mem::transmute(val);
1468 self._bitfield_1.set(11usize, 1u8, val as u64)
1469 }
1470 }
1471 #[inline]
1472 pub fn enable_on_exec(&self) -> __u64 {
1473 unsafe { ::std::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u64) }
1474 }
1475 #[inline]
1476 pub fn set_enable_on_exec(&mut self, val: __u64) {
1477 unsafe {
1478 let val: u64 = ::std::mem::transmute(val);
1479 self._bitfield_1.set(12usize, 1u8, val as u64)
1480 }
1481 }
1482 #[inline]
1483 pub fn task(&self) -> __u64 {
1484 unsafe { ::std::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u64) }
1485 }
1486 #[inline]
1487 pub fn set_task(&mut self, val: __u64) {
1488 unsafe {
1489 let val: u64 = ::std::mem::transmute(val);
1490 self._bitfield_1.set(13usize, 1u8, val as u64)
1491 }
1492 }
1493 #[inline]
1494 pub fn watermark(&self) -> __u64 {
1495 unsafe { ::std::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u64) }
1496 }
1497 #[inline]
1498 pub fn set_watermark(&mut self, val: __u64) {
1499 unsafe {
1500 let val: u64 = ::std::mem::transmute(val);
1501 self._bitfield_1.set(14usize, 1u8, val as u64)
1502 }
1503 }
1504 #[inline]
1505 pub fn precise_ip(&self) -> __u64 {
1506 unsafe { ::std::mem::transmute(self._bitfield_1.get(15usize, 2u8) as u64) }
1507 }
1508 #[inline]
1509 pub fn set_precise_ip(&mut self, val: __u64) {
1510 unsafe {
1511 let val: u64 = ::std::mem::transmute(val);
1512 self._bitfield_1.set(15usize, 2u8, val as u64)
1513 }
1514 }
1515 #[inline]
1516 pub fn mmap_data(&self) -> __u64 {
1517 unsafe { ::std::mem::transmute(self._bitfield_1.get(17usize, 1u8) as u64) }
1518 }
1519 #[inline]
1520 pub fn set_mmap_data(&mut self, val: __u64) {
1521 unsafe {
1522 let val: u64 = ::std::mem::transmute(val);
1523 self._bitfield_1.set(17usize, 1u8, val as u64)
1524 }
1525 }
1526 #[inline]
1527 pub fn sample_id_all(&self) -> __u64 {
1528 unsafe { ::std::mem::transmute(self._bitfield_1.get(18usize, 1u8) as u64) }
1529 }
1530 #[inline]
1531 pub fn set_sample_id_all(&mut self, val: __u64) {
1532 unsafe {
1533 let val: u64 = ::std::mem::transmute(val);
1534 self._bitfield_1.set(18usize, 1u8, val as u64)
1535 }
1536 }
1537 #[inline]
1538 pub fn exclude_host(&self) -> __u64 {
1539 unsafe { ::std::mem::transmute(self._bitfield_1.get(19usize, 1u8) as u64) }
1540 }
1541 #[inline]
1542 pub fn set_exclude_host(&mut self, val: __u64) {
1543 unsafe {
1544 let val: u64 = ::std::mem::transmute(val);
1545 self._bitfield_1.set(19usize, 1u8, val as u64)
1546 }
1547 }
1548 #[inline]
1549 pub fn exclude_guest(&self) -> __u64 {
1550 unsafe { ::std::mem::transmute(self._bitfield_1.get(20usize, 1u8) as u64) }
1551 }
1552 #[inline]
1553 pub fn set_exclude_guest(&mut self, val: __u64) {
1554 unsafe {
1555 let val: u64 = ::std::mem::transmute(val);
1556 self._bitfield_1.set(20usize, 1u8, val as u64)
1557 }
1558 }
1559 #[inline]
1560 pub fn exclude_callchain_kernel(&self) -> __u64 {
1561 unsafe { ::std::mem::transmute(self._bitfield_1.get(21usize, 1u8) as u64) }
1562 }
1563 #[inline]
1564 pub fn set_exclude_callchain_kernel(&mut self, val: __u64) {
1565 unsafe {
1566 let val: u64 = ::std::mem::transmute(val);
1567 self._bitfield_1.set(21usize, 1u8, val as u64)
1568 }
1569 }
1570 #[inline]
1571 pub fn exclude_callchain_user(&self) -> __u64 {
1572 unsafe { ::std::mem::transmute(self._bitfield_1.get(22usize, 1u8) as u64) }
1573 }
1574 #[inline]
1575 pub fn set_exclude_callchain_user(&mut self, val: __u64) {
1576 unsafe {
1577 let val: u64 = ::std::mem::transmute(val);
1578 self._bitfield_1.set(22usize, 1u8, val as u64)
1579 }
1580 }
1581 #[inline]
1582 pub fn mmap2(&self) -> __u64 {
1583 unsafe { ::std::mem::transmute(self._bitfield_1.get(23usize, 1u8) as u64) }
1584 }
1585 #[inline]
1586 pub fn set_mmap2(&mut self, val: __u64) {
1587 unsafe {
1588 let val: u64 = ::std::mem::transmute(val);
1589 self._bitfield_1.set(23usize, 1u8, val as u64)
1590 }
1591 }
1592 #[inline]
1593 pub fn comm_exec(&self) -> __u64 {
1594 unsafe { ::std::mem::transmute(self._bitfield_1.get(24usize, 1u8) as u64) }
1595 }
1596 #[inline]
1597 pub fn set_comm_exec(&mut self, val: __u64) {
1598 unsafe {
1599 let val: u64 = ::std::mem::transmute(val);
1600 self._bitfield_1.set(24usize, 1u8, val as u64)
1601 }
1602 }
1603 #[inline]
1604 pub fn use_clockid(&self) -> __u64 {
1605 unsafe { ::std::mem::transmute(self._bitfield_1.get(25usize, 1u8) as u64) }
1606 }
1607 #[inline]
1608 pub fn set_use_clockid(&mut self, val: __u64) {
1609 unsafe {
1610 let val: u64 = ::std::mem::transmute(val);
1611 self._bitfield_1.set(25usize, 1u8, val as u64)
1612 }
1613 }
1614 #[inline]
1615 pub fn context_switch(&self) -> __u64 {
1616 unsafe { ::std::mem::transmute(self._bitfield_1.get(26usize, 1u8) as u64) }
1617 }
1618 #[inline]
1619 pub fn set_context_switch(&mut self, val: __u64) {
1620 unsafe {
1621 let val: u64 = ::std::mem::transmute(val);
1622 self._bitfield_1.set(26usize, 1u8, val as u64)
1623 }
1624 }
1625 #[inline]
1626 pub fn write_backward(&self) -> __u64 {
1627 unsafe { ::std::mem::transmute(self._bitfield_1.get(27usize, 1u8) as u64) }
1628 }
1629 #[inline]
1630 pub fn set_write_backward(&mut self, val: __u64) {
1631 unsafe {
1632 let val: u64 = ::std::mem::transmute(val);
1633 self._bitfield_1.set(27usize, 1u8, val as u64)
1634 }
1635 }
1636 #[inline]
1637 pub fn namespaces(&self) -> __u64 {
1638 unsafe { ::std::mem::transmute(self._bitfield_1.get(28usize, 1u8) as u64) }
1639 }
1640 #[inline]
1641 pub fn set_namespaces(&mut self, val: __u64) {
1642 unsafe {
1643 let val: u64 = ::std::mem::transmute(val);
1644 self._bitfield_1.set(28usize, 1u8, val as u64)
1645 }
1646 }
1647 #[inline]
1648 pub fn ksymbol(&self) -> __u64 {
1649 unsafe { ::std::mem::transmute(self._bitfield_1.get(29usize, 1u8) as u64) }
1650 }
1651 #[inline]
1652 pub fn set_ksymbol(&mut self, val: __u64) {
1653 unsafe {
1654 let val: u64 = ::std::mem::transmute(val);
1655 self._bitfield_1.set(29usize, 1u8, val as u64)
1656 }
1657 }
1658 #[inline]
1659 pub fn bpf_event(&self) -> __u64 {
1660 unsafe { ::std::mem::transmute(self._bitfield_1.get(30usize, 1u8) as u64) }
1661 }
1662 #[inline]
1663 pub fn set_bpf_event(&mut self, val: __u64) {
1664 unsafe {
1665 let val: u64 = ::std::mem::transmute(val);
1666 self._bitfield_1.set(30usize, 1u8, val as u64)
1667 }
1668 }
1669 #[inline]
1670 pub fn aux_output(&self) -> __u64 {
1671 unsafe { ::std::mem::transmute(self._bitfield_1.get(31usize, 1u8) as u64) }
1672 }
1673 #[inline]
1674 pub fn set_aux_output(&mut self, val: __u64) {
1675 unsafe {
1676 let val: u64 = ::std::mem::transmute(val);
1677 self._bitfield_1.set(31usize, 1u8, val as u64)
1678 }
1679 }
1680 #[inline]
1681 pub fn __reserved_1(&self) -> __u64 {
1682 unsafe { ::std::mem::transmute(self._bitfield_1.get(32usize, 32u8) as u64) }
1683 }
1684 #[inline]
1685 pub fn set___reserved_1(&mut self, val: __u64) {
1686 unsafe {
1687 let val: u64 = ::std::mem::transmute(val);
1688 self._bitfield_1.set(32usize, 32u8, val as u64)
1689 }
1690 }
1691 #[inline]
1692 pub fn new_bitfield_1(
1693 disabled: __u64,
1694 inherit: __u64,
1695 pinned: __u64,
1696 exclusive: __u64,
1697 exclude_user: __u64,
1698 exclude_kernel: __u64,
1699 exclude_hv: __u64,
1700 exclude_idle: __u64,
1701 mmap: __u64,
1702 comm: __u64,
1703 freq: __u64,
1704 inherit_stat: __u64,
1705 enable_on_exec: __u64,
1706 task: __u64,
1707 watermark: __u64,
1708 precise_ip: __u64,
1709 mmap_data: __u64,
1710 sample_id_all: __u64,
1711 exclude_host: __u64,
1712 exclude_guest: __u64,
1713 exclude_callchain_kernel: __u64,
1714 exclude_callchain_user: __u64,
1715 mmap2: __u64,
1716 comm_exec: __u64,
1717 use_clockid: __u64,
1718 context_switch: __u64,
1719 write_backward: __u64,
1720 namespaces: __u64,
1721 ksymbol: __u64,
1722 bpf_event: __u64,
1723 aux_output: __u64,
1724 __reserved_1: __u64,
1725 ) -> __BindgenBitfieldUnit<[u8; 8usize], u32> {
1726 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize], u32> =
1727 Default::default();
1728 __bindgen_bitfield_unit.set(0usize, 1u8, {
1729 let disabled: u64 = unsafe { ::std::mem::transmute(disabled) };
1730 disabled as u64
1731 });
1732 __bindgen_bitfield_unit.set(1usize, 1u8, {
1733 let inherit: u64 = unsafe { ::std::mem::transmute(inherit) };
1734 inherit as u64
1735 });
1736 __bindgen_bitfield_unit.set(2usize, 1u8, {
1737 let pinned: u64 = unsafe { ::std::mem::transmute(pinned) };
1738 pinned as u64
1739 });
1740 __bindgen_bitfield_unit.set(3usize, 1u8, {
1741 let exclusive: u64 = unsafe { ::std::mem::transmute(exclusive) };
1742 exclusive as u64
1743 });
1744 __bindgen_bitfield_unit.set(4usize, 1u8, {
1745 let exclude_user: u64 = unsafe { ::std::mem::transmute(exclude_user) };
1746 exclude_user as u64
1747 });
1748 __bindgen_bitfield_unit.set(5usize, 1u8, {
1749 let exclude_kernel: u64 = unsafe { ::std::mem::transmute(exclude_kernel) };
1750 exclude_kernel as u64
1751 });
1752 __bindgen_bitfield_unit.set(6usize, 1u8, {
1753 let exclude_hv: u64 = unsafe { ::std::mem::transmute(exclude_hv) };
1754 exclude_hv as u64
1755 });
1756 __bindgen_bitfield_unit.set(7usize, 1u8, {
1757 let exclude_idle: u64 = unsafe { ::std::mem::transmute(exclude_idle) };
1758 exclude_idle as u64
1759 });
1760 __bindgen_bitfield_unit.set(8usize, 1u8, {
1761 let mmap: u64 = unsafe { ::std::mem::transmute(mmap) };
1762 mmap as u64
1763 });
1764 __bindgen_bitfield_unit.set(9usize, 1u8, {
1765 let comm: u64 = unsafe { ::std::mem::transmute(comm) };
1766 comm as u64
1767 });
1768 __bindgen_bitfield_unit.set(10usize, 1u8, {
1769 let freq: u64 = unsafe { ::std::mem::transmute(freq) };
1770 freq as u64
1771 });
1772 __bindgen_bitfield_unit.set(11usize, 1u8, {
1773 let inherit_stat: u64 = unsafe { ::std::mem::transmute(inherit_stat) };
1774 inherit_stat as u64
1775 });
1776 __bindgen_bitfield_unit.set(12usize, 1u8, {
1777 let enable_on_exec: u64 = unsafe { ::std::mem::transmute(enable_on_exec) };
1778 enable_on_exec as u64
1779 });
1780 __bindgen_bitfield_unit.set(13usize, 1u8, {
1781 let task: u64 = unsafe { ::std::mem::transmute(task) };
1782 task as u64
1783 });
1784 __bindgen_bitfield_unit.set(14usize, 1u8, {
1785 let watermark: u64 = unsafe { ::std::mem::transmute(watermark) };
1786 watermark as u64
1787 });
1788 __bindgen_bitfield_unit.set(15usize, 2u8, {
1789 let precise_ip: u64 = unsafe { ::std::mem::transmute(precise_ip) };
1790 precise_ip as u64
1791 });
1792 __bindgen_bitfield_unit.set(17usize, 1u8, {
1793 let mmap_data: u64 = unsafe { ::std::mem::transmute(mmap_data) };
1794 mmap_data as u64
1795 });
1796 __bindgen_bitfield_unit.set(18usize, 1u8, {
1797 let sample_id_all: u64 = unsafe { ::std::mem::transmute(sample_id_all) };
1798 sample_id_all as u64
1799 });
1800 __bindgen_bitfield_unit.set(19usize, 1u8, {
1801 let exclude_host: u64 = unsafe { ::std::mem::transmute(exclude_host) };
1802 exclude_host as u64
1803 });
1804 __bindgen_bitfield_unit.set(20usize, 1u8, {
1805 let exclude_guest: u64 = unsafe { ::std::mem::transmute(exclude_guest) };
1806 exclude_guest as u64
1807 });
1808 __bindgen_bitfield_unit.set(21usize, 1u8, {
1809 let exclude_callchain_kernel: u64 =
1810 unsafe { ::std::mem::transmute(exclude_callchain_kernel) };
1811 exclude_callchain_kernel as u64
1812 });
1813 __bindgen_bitfield_unit.set(22usize, 1u8, {
1814 let exclude_callchain_user: u64 =
1815 unsafe { ::std::mem::transmute(exclude_callchain_user) };
1816 exclude_callchain_user as u64
1817 });
1818 __bindgen_bitfield_unit.set(23usize, 1u8, {
1819 let mmap2: u64 = unsafe { ::std::mem::transmute(mmap2) };
1820 mmap2 as u64
1821 });
1822 __bindgen_bitfield_unit.set(24usize, 1u8, {
1823 let comm_exec: u64 = unsafe { ::std::mem::transmute(comm_exec) };
1824 comm_exec as u64
1825 });
1826 __bindgen_bitfield_unit.set(25usize, 1u8, {
1827 let use_clockid: u64 = unsafe { ::std::mem::transmute(use_clockid) };
1828 use_clockid as u64
1829 });
1830 __bindgen_bitfield_unit.set(26usize, 1u8, {
1831 let context_switch: u64 = unsafe { ::std::mem::transmute(context_switch) };
1832 context_switch as u64
1833 });
1834 __bindgen_bitfield_unit.set(27usize, 1u8, {
1835 let write_backward: u64 = unsafe { ::std::mem::transmute(write_backward) };
1836 write_backward as u64
1837 });
1838 __bindgen_bitfield_unit.set(28usize, 1u8, {
1839 let namespaces: u64 = unsafe { ::std::mem::transmute(namespaces) };
1840 namespaces as u64
1841 });
1842 __bindgen_bitfield_unit.set(29usize, 1u8, {
1843 let ksymbol: u64 = unsafe { ::std::mem::transmute(ksymbol) };
1844 ksymbol as u64
1845 });
1846 __bindgen_bitfield_unit.set(30usize, 1u8, {
1847 let bpf_event: u64 = unsafe { ::std::mem::transmute(bpf_event) };
1848 bpf_event as u64
1849 });
1850 __bindgen_bitfield_unit.set(31usize, 1u8, {
1851 let aux_output: u64 = unsafe { ::std::mem::transmute(aux_output) };
1852 aux_output as u64
1853 });
1854 __bindgen_bitfield_unit.set(32usize, 32u8, {
1855 let __reserved_1: u64 = unsafe { ::std::mem::transmute(__reserved_1) };
1856 __reserved_1 as u64
1857 });
1858 __bindgen_bitfield_unit
1859 }
1860}
1861#[repr(C)]
1862#[derive(Debug, Default)]
1863pub struct perf_event_query_bpf {
1864 pub ids_len: __u32,
1865 pub prog_cnt: __u32,
1866 pub ids: __IncompleteArrayField<__u32>,
1867}
1868#[test]
1869fn bindgen_test_layout_perf_event_query_bpf() {
1870 assert_eq!(
1871 ::std::mem::size_of::<perf_event_query_bpf>(),
1872 8usize,
1873 concat!("Size of: ", stringify!(perf_event_query_bpf))
1874 );
1875 assert_eq!(
1876 ::std::mem::align_of::<perf_event_query_bpf>(),
1877 4usize,
1878 concat!("Alignment of ", stringify!(perf_event_query_bpf))
1879 );
1880 assert_eq!(
1881 unsafe { &(*(::std::ptr::null::<perf_event_query_bpf>())).ids_len as *const _ as usize },
1882 0usize,
1883 concat!(
1884 "Offset of field: ",
1885 stringify!(perf_event_query_bpf),
1886 "::",
1887 stringify!(ids_len)
1888 )
1889 );
1890 assert_eq!(
1891 unsafe { &(*(::std::ptr::null::<perf_event_query_bpf>())).prog_cnt as *const _ as usize },
1892 4usize,
1893 concat!(
1894 "Offset of field: ",
1895 stringify!(perf_event_query_bpf),
1896 "::",
1897 stringify!(prog_cnt)
1898 )
1899 );
1900 assert_eq!(
1901 unsafe { &(*(::std::ptr::null::<perf_event_query_bpf>())).ids as *const _ as usize },
1902 8usize,
1903 concat!(
1904 "Offset of field: ",
1905 stringify!(perf_event_query_bpf),
1906 "::",
1907 stringify!(ids)
1908 )
1909 );
1910}
1911pub const perf_event_ioc_flags_PERF_IOC_FLAG_GROUP: perf_event_ioc_flags = 1;
1912pub type perf_event_ioc_flags = u32;
1913#[repr(C)]
1914#[derive(Copy, Clone)]
1915pub struct perf_event_mmap_page {
1916 pub version: __u32,
1917 pub compat_version: __u32,
1918 pub lock: __u32,
1919 pub index: __u32,
1920 pub offset: __s64,
1921 pub time_enabled: __u64,
1922 pub time_running: __u64,
1923 pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1,
1924 pub pmc_width: __u16,
1925 pub time_shift: __u16,
1926 pub time_mult: __u32,
1927 pub time_offset: __u64,
1928 pub time_zero: __u64,
1929 pub size: __u32,
1930 pub __reserved: [__u8; 948usize],
1931 pub data_head: __u64,
1932 pub data_tail: __u64,
1933 pub data_offset: __u64,
1934 pub data_size: __u64,
1935 pub aux_head: __u64,
1936 pub aux_tail: __u64,
1937 pub aux_offset: __u64,
1938 pub aux_size: __u64,
1939}
1940#[repr(C)]
1941#[derive(Copy, Clone)]
1942pub union perf_event_mmap_page__bindgen_ty_1 {
1943 pub capabilities: __u64,
1944 pub __bindgen_anon_1: perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1,
1945 _bindgen_union_align: u64,
1946}
1947#[repr(C)]
1948#[repr(align(8))]
1949#[derive(Debug, Default, Copy, Clone)]
1950pub struct perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
1951 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize], u64>,
1952}
1953#[test]
1954fn bindgen_test_layout_perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1() {
1955 assert_eq!(
1956 ::std::mem::size_of::<perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1>(),
1957 8usize,
1958 concat!(
1959 "Size of: ",
1960 stringify!(perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1)
1961 )
1962 );
1963 assert_eq!(
1964 ::std::mem::align_of::<perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1>(),
1965 8usize,
1966 concat!(
1967 "Alignment of ",
1968 stringify!(perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1)
1969 )
1970 );
1971}
1972impl perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 {
1973 #[inline]
1974 pub fn cap_bit0(&self) -> __u64 {
1975 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u64) }
1976 }
1977 #[inline]
1978 pub fn set_cap_bit0(&mut self, val: __u64) {
1979 unsafe {
1980 let val: u64 = ::std::mem::transmute(val);
1981 self._bitfield_1.set(0usize, 1u8, val as u64)
1982 }
1983 }
1984 #[inline]
1985 pub fn cap_bit0_is_deprecated(&self) -> __u64 {
1986 unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u64) }
1987 }
1988 #[inline]
1989 pub fn set_cap_bit0_is_deprecated(&mut self, val: __u64) {
1990 unsafe {
1991 let val: u64 = ::std::mem::transmute(val);
1992 self._bitfield_1.set(1usize, 1u8, val as u64)
1993 }
1994 }
1995 #[inline]
1996 pub fn cap_user_rdpmc(&self) -> __u64 {
1997 unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u64) }
1998 }
1999 #[inline]
2000 pub fn set_cap_user_rdpmc(&mut self, val: __u64) {
2001 unsafe {
2002 let val: u64 = ::std::mem::transmute(val);
2003 self._bitfield_1.set(2usize, 1u8, val as u64)
2004 }
2005 }
2006 #[inline]
2007 pub fn cap_user_time(&self) -> __u64 {
2008 unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u64) }
2009 }
2010 #[inline]
2011 pub fn set_cap_user_time(&mut self, val: __u64) {
2012 unsafe {
2013 let val: u64 = ::std::mem::transmute(val);
2014 self._bitfield_1.set(3usize, 1u8, val as u64)
2015 }
2016 }
2017 #[inline]
2018 pub fn cap_user_time_zero(&self) -> __u64 {
2019 unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u64) }
2020 }
2021 #[inline]
2022 pub fn set_cap_user_time_zero(&mut self, val: __u64) {
2023 unsafe {
2024 let val: u64 = ::std::mem::transmute(val);
2025 self._bitfield_1.set(4usize, 1u8, val as u64)
2026 }
2027 }
2028 #[inline]
2029 pub fn cap_____res(&self) -> __u64 {
2030 unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 59u8) as u64) }
2031 }
2032 #[inline]
2033 pub fn set_cap_____res(&mut self, val: __u64) {
2034 unsafe {
2035 let val: u64 = ::std::mem::transmute(val);
2036 self._bitfield_1.set(5usize, 59u8, val as u64)
2037 }
2038 }
2039 #[inline]
2040 pub fn new_bitfield_1(
2041 cap_bit0: __u64,
2042 cap_bit0_is_deprecated: __u64,
2043 cap_user_rdpmc: __u64,
2044 cap_user_time: __u64,
2045 cap_user_time_zero: __u64,
2046 cap_____res: __u64,
2047 ) -> __BindgenBitfieldUnit<[u8; 8usize], u64> {
2048 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize], u64> =
2049 Default::default();
2050 __bindgen_bitfield_unit.set(0usize, 1u8, {
2051 let cap_bit0: u64 = unsafe { ::std::mem::transmute(cap_bit0) };
2052 cap_bit0 as u64
2053 });
2054 __bindgen_bitfield_unit.set(1usize, 1u8, {
2055 let cap_bit0_is_deprecated: u64 =
2056 unsafe { ::std::mem::transmute(cap_bit0_is_deprecated) };
2057 cap_bit0_is_deprecated as u64
2058 });
2059 __bindgen_bitfield_unit.set(2usize, 1u8, {
2060 let cap_user_rdpmc: u64 = unsafe { ::std::mem::transmute(cap_user_rdpmc) };
2061 cap_user_rdpmc as u64
2062 });
2063 __bindgen_bitfield_unit.set(3usize, 1u8, {
2064 let cap_user_time: u64 = unsafe { ::std::mem::transmute(cap_user_time) };
2065 cap_user_time as u64
2066 });
2067 __bindgen_bitfield_unit.set(4usize, 1u8, {
2068 let cap_user_time_zero: u64 = unsafe { ::std::mem::transmute(cap_user_time_zero) };
2069 cap_user_time_zero as u64
2070 });
2071 __bindgen_bitfield_unit.set(5usize, 59u8, {
2072 let cap_____res: u64 = unsafe { ::std::mem::transmute(cap_____res) };
2073 cap_____res as u64
2074 });
2075 __bindgen_bitfield_unit
2076 }
2077}
2078#[test]
2079fn bindgen_test_layout_perf_event_mmap_page__bindgen_ty_1() {
2080 assert_eq!(
2081 ::std::mem::size_of::<perf_event_mmap_page__bindgen_ty_1>(),
2082 8usize,
2083 concat!("Size of: ", stringify!(perf_event_mmap_page__bindgen_ty_1))
2084 );
2085 assert_eq!(
2086 ::std::mem::align_of::<perf_event_mmap_page__bindgen_ty_1>(),
2087 8usize,
2088 concat!(
2089 "Alignment of ",
2090 stringify!(perf_event_mmap_page__bindgen_ty_1)
2091 )
2092 );
2093 assert_eq!(
2094 unsafe {
2095 &(*(::std::ptr::null::<perf_event_mmap_page__bindgen_ty_1>())).capabilities as *const _
2096 as usize
2097 },
2098 0usize,
2099 concat!(
2100 "Offset of field: ",
2101 stringify!(perf_event_mmap_page__bindgen_ty_1),
2102 "::",
2103 stringify!(capabilities)
2104 )
2105 );
2106}
2107impl Default for perf_event_mmap_page__bindgen_ty_1 {
2108 fn default() -> Self {
2109 unsafe { ::std::mem::zeroed() }
2110 }
2111}
2112#[test]
2113fn bindgen_test_layout_perf_event_mmap_page() {
2114 assert_eq!(
2115 ::std::mem::size_of::<perf_event_mmap_page>(),
2116 1088usize,
2117 concat!("Size of: ", stringify!(perf_event_mmap_page))
2118 );
2119 assert_eq!(
2120 ::std::mem::align_of::<perf_event_mmap_page>(),
2121 8usize,
2122 concat!("Alignment of ", stringify!(perf_event_mmap_page))
2123 );
2124 assert_eq!(
2125 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).version as *const _ as usize },
2126 0usize,
2127 concat!(
2128 "Offset of field: ",
2129 stringify!(perf_event_mmap_page),
2130 "::",
2131 stringify!(version)
2132 )
2133 );
2134 assert_eq!(
2135 unsafe {
2136 &(*(::std::ptr::null::<perf_event_mmap_page>())).compat_version as *const _ as usize
2137 },
2138 4usize,
2139 concat!(
2140 "Offset of field: ",
2141 stringify!(perf_event_mmap_page),
2142 "::",
2143 stringify!(compat_version)
2144 )
2145 );
2146 assert_eq!(
2147 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).lock as *const _ as usize },
2148 8usize,
2149 concat!(
2150 "Offset of field: ",
2151 stringify!(perf_event_mmap_page),
2152 "::",
2153 stringify!(lock)
2154 )
2155 );
2156 assert_eq!(
2157 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).index as *const _ as usize },
2158 12usize,
2159 concat!(
2160 "Offset of field: ",
2161 stringify!(perf_event_mmap_page),
2162 "::",
2163 stringify!(index)
2164 )
2165 );
2166 assert_eq!(
2167 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).offset as *const _ as usize },
2168 16usize,
2169 concat!(
2170 "Offset of field: ",
2171 stringify!(perf_event_mmap_page),
2172 "::",
2173 stringify!(offset)
2174 )
2175 );
2176 assert_eq!(
2177 unsafe {
2178 &(*(::std::ptr::null::<perf_event_mmap_page>())).time_enabled as *const _ as usize
2179 },
2180 24usize,
2181 concat!(
2182 "Offset of field: ",
2183 stringify!(perf_event_mmap_page),
2184 "::",
2185 stringify!(time_enabled)
2186 )
2187 );
2188 assert_eq!(
2189 unsafe {
2190 &(*(::std::ptr::null::<perf_event_mmap_page>())).time_running as *const _ as usize
2191 },
2192 32usize,
2193 concat!(
2194 "Offset of field: ",
2195 stringify!(perf_event_mmap_page),
2196 "::",
2197 stringify!(time_running)
2198 )
2199 );
2200 assert_eq!(
2201 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).pmc_width as *const _ as usize },
2202 48usize,
2203 concat!(
2204 "Offset of field: ",
2205 stringify!(perf_event_mmap_page),
2206 "::",
2207 stringify!(pmc_width)
2208 )
2209 );
2210 assert_eq!(
2211 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).time_shift as *const _ as usize },
2212 50usize,
2213 concat!(
2214 "Offset of field: ",
2215 stringify!(perf_event_mmap_page),
2216 "::",
2217 stringify!(time_shift)
2218 )
2219 );
2220 assert_eq!(
2221 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).time_mult as *const _ as usize },
2222 52usize,
2223 concat!(
2224 "Offset of field: ",
2225 stringify!(perf_event_mmap_page),
2226 "::",
2227 stringify!(time_mult)
2228 )
2229 );
2230 assert_eq!(
2231 unsafe {
2232 &(*(::std::ptr::null::<perf_event_mmap_page>())).time_offset as *const _ as usize
2233 },
2234 56usize,
2235 concat!(
2236 "Offset of field: ",
2237 stringify!(perf_event_mmap_page),
2238 "::",
2239 stringify!(time_offset)
2240 )
2241 );
2242 assert_eq!(
2243 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).time_zero as *const _ as usize },
2244 64usize,
2245 concat!(
2246 "Offset of field: ",
2247 stringify!(perf_event_mmap_page),
2248 "::",
2249 stringify!(time_zero)
2250 )
2251 );
2252 assert_eq!(
2253 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).size as *const _ as usize },
2254 72usize,
2255 concat!(
2256 "Offset of field: ",
2257 stringify!(perf_event_mmap_page),
2258 "::",
2259 stringify!(size)
2260 )
2261 );
2262 assert_eq!(
2263 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).__reserved as *const _ as usize },
2264 76usize,
2265 concat!(
2266 "Offset of field: ",
2267 stringify!(perf_event_mmap_page),
2268 "::",
2269 stringify!(__reserved)
2270 )
2271 );
2272 assert_eq!(
2273 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).data_head as *const _ as usize },
2274 1024usize,
2275 concat!(
2276 "Offset of field: ",
2277 stringify!(perf_event_mmap_page),
2278 "::",
2279 stringify!(data_head)
2280 )
2281 );
2282 assert_eq!(
2283 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).data_tail as *const _ as usize },
2284 1032usize,
2285 concat!(
2286 "Offset of field: ",
2287 stringify!(perf_event_mmap_page),
2288 "::",
2289 stringify!(data_tail)
2290 )
2291 );
2292 assert_eq!(
2293 unsafe {
2294 &(*(::std::ptr::null::<perf_event_mmap_page>())).data_offset as *const _ as usize
2295 },
2296 1040usize,
2297 concat!(
2298 "Offset of field: ",
2299 stringify!(perf_event_mmap_page),
2300 "::",
2301 stringify!(data_offset)
2302 )
2303 );
2304 assert_eq!(
2305 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).data_size as *const _ as usize },
2306 1048usize,
2307 concat!(
2308 "Offset of field: ",
2309 stringify!(perf_event_mmap_page),
2310 "::",
2311 stringify!(data_size)
2312 )
2313 );
2314 assert_eq!(
2315 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).aux_head as *const _ as usize },
2316 1056usize,
2317 concat!(
2318 "Offset of field: ",
2319 stringify!(perf_event_mmap_page),
2320 "::",
2321 stringify!(aux_head)
2322 )
2323 );
2324 assert_eq!(
2325 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).aux_tail as *const _ as usize },
2326 1064usize,
2327 concat!(
2328 "Offset of field: ",
2329 stringify!(perf_event_mmap_page),
2330 "::",
2331 stringify!(aux_tail)
2332 )
2333 );
2334 assert_eq!(
2335 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).aux_offset as *const _ as usize },
2336 1072usize,
2337 concat!(
2338 "Offset of field: ",
2339 stringify!(perf_event_mmap_page),
2340 "::",
2341 stringify!(aux_offset)
2342 )
2343 );
2344 assert_eq!(
2345 unsafe { &(*(::std::ptr::null::<perf_event_mmap_page>())).aux_size as *const _ as usize },
2346 1080usize,
2347 concat!(
2348 "Offset of field: ",
2349 stringify!(perf_event_mmap_page),
2350 "::",
2351 stringify!(aux_size)
2352 )
2353 );
2354}
2355impl Default for perf_event_mmap_page {
2356 fn default() -> Self {
2357 unsafe { ::std::mem::zeroed() }
2358 }
2359}
2360#[repr(C)]
2361#[derive(Debug, Default, Copy, Clone)]
2362pub struct perf_event_header {
2363 pub type_: __u32,
2364 pub misc: __u16,
2365 pub size: __u16,
2366}
2367#[test]
2368fn bindgen_test_layout_perf_event_header() {
2369 assert_eq!(
2370 ::std::mem::size_of::<perf_event_header>(),
2371 8usize,
2372 concat!("Size of: ", stringify!(perf_event_header))
2373 );
2374 assert_eq!(
2375 ::std::mem::align_of::<perf_event_header>(),
2376 4usize,
2377 concat!("Alignment of ", stringify!(perf_event_header))
2378 );
2379 assert_eq!(
2380 unsafe { &(*(::std::ptr::null::<perf_event_header>())).type_ as *const _ as usize },
2381 0usize,
2382 concat!(
2383 "Offset of field: ",
2384 stringify!(perf_event_header),
2385 "::",
2386 stringify!(type_)
2387 )
2388 );
2389 assert_eq!(
2390 unsafe { &(*(::std::ptr::null::<perf_event_header>())).misc as *const _ as usize },
2391 4usize,
2392 concat!(
2393 "Offset of field: ",
2394 stringify!(perf_event_header),
2395 "::",
2396 stringify!(misc)
2397 )
2398 );
2399 assert_eq!(
2400 unsafe { &(*(::std::ptr::null::<perf_event_header>())).size as *const _ as usize },
2401 6usize,
2402 concat!(
2403 "Offset of field: ",
2404 stringify!(perf_event_header),
2405 "::",
2406 stringify!(size)
2407 )
2408 );
2409}
2410#[repr(C)]
2411#[derive(Debug, Default, Copy, Clone)]
2412pub struct perf_ns_link_info {
2413 pub dev: __u64,
2414 pub ino: __u64,
2415}
2416#[test]
2417fn bindgen_test_layout_perf_ns_link_info() {
2418 assert_eq!(
2419 ::std::mem::size_of::<perf_ns_link_info>(),
2420 16usize,
2421 concat!("Size of: ", stringify!(perf_ns_link_info))
2422 );
2423 assert_eq!(
2424 ::std::mem::align_of::<perf_ns_link_info>(),
2425 8usize,
2426 concat!("Alignment of ", stringify!(perf_ns_link_info))
2427 );
2428 assert_eq!(
2429 unsafe { &(*(::std::ptr::null::<perf_ns_link_info>())).dev as *const _ as usize },
2430 0usize,
2431 concat!(
2432 "Offset of field: ",
2433 stringify!(perf_ns_link_info),
2434 "::",
2435 stringify!(dev)
2436 )
2437 );
2438 assert_eq!(
2439 unsafe { &(*(::std::ptr::null::<perf_ns_link_info>())).ino as *const _ as usize },
2440 8usize,
2441 concat!(
2442 "Offset of field: ",
2443 stringify!(perf_ns_link_info),
2444 "::",
2445 stringify!(ino)
2446 )
2447 );
2448}
2449pub const NET_NS_INDEX: _bindgen_ty_3 = 0;
2450pub const UTS_NS_INDEX: _bindgen_ty_3 = 1;
2451pub const IPC_NS_INDEX: _bindgen_ty_3 = 2;
2452pub const PID_NS_INDEX: _bindgen_ty_3 = 3;
2453pub const USER_NS_INDEX: _bindgen_ty_3 = 4;
2454pub const MNT_NS_INDEX: _bindgen_ty_3 = 5;
2455pub const CGROUP_NS_INDEX: _bindgen_ty_3 = 6;
2456pub const NR_NAMESPACES: _bindgen_ty_3 = 7;
2457pub type _bindgen_ty_3 = u32;
2458pub const perf_event_type_PERF_RECORD_MMAP: perf_event_type = 1;
2459pub const perf_event_type_PERF_RECORD_LOST: perf_event_type = 2;
2460pub const perf_event_type_PERF_RECORD_COMM: perf_event_type = 3;
2461pub const perf_event_type_PERF_RECORD_EXIT: perf_event_type = 4;
2462pub const perf_event_type_PERF_RECORD_THROTTLE: perf_event_type = 5;
2463pub const perf_event_type_PERF_RECORD_UNTHROTTLE: perf_event_type = 6;
2464pub const perf_event_type_PERF_RECORD_FORK: perf_event_type = 7;
2465pub const perf_event_type_PERF_RECORD_READ: perf_event_type = 8;
2466pub const perf_event_type_PERF_RECORD_SAMPLE: perf_event_type = 9;
2467pub const perf_event_type_PERF_RECORD_MMAP2: perf_event_type = 10;
2468pub const perf_event_type_PERF_RECORD_AUX: perf_event_type = 11;
2469pub const perf_event_type_PERF_RECORD_ITRACE_START: perf_event_type = 12;
2470pub const perf_event_type_PERF_RECORD_LOST_SAMPLES: perf_event_type = 13;
2471pub const perf_event_type_PERF_RECORD_SWITCH: perf_event_type = 14;
2472pub const perf_event_type_PERF_RECORD_SWITCH_CPU_WIDE: perf_event_type = 15;
2473pub const perf_event_type_PERF_RECORD_NAMESPACES: perf_event_type = 16;
2474pub const perf_event_type_PERF_RECORD_KSYMBOL: perf_event_type = 17;
2475pub const perf_event_type_PERF_RECORD_BPF_EVENT: perf_event_type = 18;
2476pub const perf_event_type_PERF_RECORD_MAX: perf_event_type = 19;
2477pub type perf_event_type = u32;
2478pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_UNKNOWN: perf_record_ksymbol_type = 0;
2479pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_BPF: perf_record_ksymbol_type = 1;
2480pub const perf_record_ksymbol_type_PERF_RECORD_KSYMBOL_TYPE_MAX: perf_record_ksymbol_type = 2;
2481pub type perf_record_ksymbol_type = u32;
2482pub const perf_bpf_event_type_PERF_BPF_EVENT_UNKNOWN: perf_bpf_event_type = 0;
2483pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_LOAD: perf_bpf_event_type = 1;
2484pub const perf_bpf_event_type_PERF_BPF_EVENT_PROG_UNLOAD: perf_bpf_event_type = 2;
2485pub const perf_bpf_event_type_PERF_BPF_EVENT_MAX: perf_bpf_event_type = 3;
2486pub type perf_bpf_event_type = u32;
2487pub const perf_callchain_context_PERF_CONTEXT_HV: perf_callchain_context = 18446744073709551584;
2488pub const perf_callchain_context_PERF_CONTEXT_KERNEL: perf_callchain_context = 18446744073709551488;
2489pub const perf_callchain_context_PERF_CONTEXT_USER: perf_callchain_context = 18446744073709551104;
2490pub const perf_callchain_context_PERF_CONTEXT_GUEST: perf_callchain_context = 18446744073709549568;
2491pub const perf_callchain_context_PERF_CONTEXT_GUEST_KERNEL: perf_callchain_context =
2492 18446744073709549440;
2493pub const perf_callchain_context_PERF_CONTEXT_GUEST_USER: perf_callchain_context =
2494 18446744073709549056;
2495pub const perf_callchain_context_PERF_CONTEXT_MAX: perf_callchain_context = 18446744073709547521;
2496pub type perf_callchain_context = u64;
2497#[repr(C)]
2498#[derive(Copy, Clone)]
2499pub union perf_mem_data_src {
2500 pub val: __u64,
2501 pub __bindgen_anon_1: perf_mem_data_src__bindgen_ty_1,
2502 _bindgen_union_align: u64,
2503}
2504#[repr(C)]
2505#[repr(align(8))]
2506#[derive(Debug, Default, Copy, Clone)]
2507pub struct perf_mem_data_src__bindgen_ty_1 {
2508 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize], u32>,
2509}
2510#[test]
2511fn bindgen_test_layout_perf_mem_data_src__bindgen_ty_1() {
2512 assert_eq!(
2513 ::std::mem::size_of::<perf_mem_data_src__bindgen_ty_1>(),
2514 8usize,
2515 concat!("Size of: ", stringify!(perf_mem_data_src__bindgen_ty_1))
2516 );
2517 assert_eq!(
2518 ::std::mem::align_of::<perf_mem_data_src__bindgen_ty_1>(),
2519 8usize,
2520 concat!("Alignment of ", stringify!(perf_mem_data_src__bindgen_ty_1))
2521 );
2522}
2523impl perf_mem_data_src__bindgen_ty_1 {
2524 #[inline]
2525 pub fn mem_op(&self) -> __u64 {
2526 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 5u8) as u64) }
2527 }
2528 #[inline]
2529 pub fn set_mem_op(&mut self, val: __u64) {
2530 unsafe {
2531 let val: u64 = ::std::mem::transmute(val);
2532 self._bitfield_1.set(0usize, 5u8, val as u64)
2533 }
2534 }
2535 #[inline]
2536 pub fn mem_lvl(&self) -> __u64 {
2537 unsafe { ::std::mem::transmute(self._bitfield_1.get(5usize, 14u8) as u64) }
2538 }
2539 #[inline]
2540 pub fn set_mem_lvl(&mut self, val: __u64) {
2541 unsafe {
2542 let val: u64 = ::std::mem::transmute(val);
2543 self._bitfield_1.set(5usize, 14u8, val as u64)
2544 }
2545 }
2546 #[inline]
2547 pub fn mem_snoop(&self) -> __u64 {
2548 unsafe { ::std::mem::transmute(self._bitfield_1.get(19usize, 5u8) as u64) }
2549 }
2550 #[inline]
2551 pub fn set_mem_snoop(&mut self, val: __u64) {
2552 unsafe {
2553 let val: u64 = ::std::mem::transmute(val);
2554 self._bitfield_1.set(19usize, 5u8, val as u64)
2555 }
2556 }
2557 #[inline]
2558 pub fn mem_lock(&self) -> __u64 {
2559 unsafe { ::std::mem::transmute(self._bitfield_1.get(24usize, 2u8) as u64) }
2560 }
2561 #[inline]
2562 pub fn set_mem_lock(&mut self, val: __u64) {
2563 unsafe {
2564 let val: u64 = ::std::mem::transmute(val);
2565 self._bitfield_1.set(24usize, 2u8, val as u64)
2566 }
2567 }
2568 #[inline]
2569 pub fn mem_dtlb(&self) -> __u64 {
2570 unsafe { ::std::mem::transmute(self._bitfield_1.get(26usize, 7u8) as u64) }
2571 }
2572 #[inline]
2573 pub fn set_mem_dtlb(&mut self, val: __u64) {
2574 unsafe {
2575 let val: u64 = ::std::mem::transmute(val);
2576 self._bitfield_1.set(26usize, 7u8, val as u64)
2577 }
2578 }
2579 #[inline]
2580 pub fn mem_lvl_num(&self) -> __u64 {
2581 unsafe { ::std::mem::transmute(self._bitfield_1.get(33usize, 4u8) as u64) }
2582 }
2583 #[inline]
2584 pub fn set_mem_lvl_num(&mut self, val: __u64) {
2585 unsafe {
2586 let val: u64 = ::std::mem::transmute(val);
2587 self._bitfield_1.set(33usize, 4u8, val as u64)
2588 }
2589 }
2590 #[inline]
2591 pub fn mem_remote(&self) -> __u64 {
2592 unsafe { ::std::mem::transmute(self._bitfield_1.get(37usize, 1u8) as u64) }
2593 }
2594 #[inline]
2595 pub fn set_mem_remote(&mut self, val: __u64) {
2596 unsafe {
2597 let val: u64 = ::std::mem::transmute(val);
2598 self._bitfield_1.set(37usize, 1u8, val as u64)
2599 }
2600 }
2601 #[inline]
2602 pub fn mem_snoopx(&self) -> __u64 {
2603 unsafe { ::std::mem::transmute(self._bitfield_1.get(38usize, 2u8) as u64) }
2604 }
2605 #[inline]
2606 pub fn set_mem_snoopx(&mut self, val: __u64) {
2607 unsafe {
2608 let val: u64 = ::std::mem::transmute(val);
2609 self._bitfield_1.set(38usize, 2u8, val as u64)
2610 }
2611 }
2612 #[inline]
2613 pub fn mem_rsvd(&self) -> __u64 {
2614 unsafe { ::std::mem::transmute(self._bitfield_1.get(40usize, 24u8) as u64) }
2615 }
2616 #[inline]
2617 pub fn set_mem_rsvd(&mut self, val: __u64) {
2618 unsafe {
2619 let val: u64 = ::std::mem::transmute(val);
2620 self._bitfield_1.set(40usize, 24u8, val as u64)
2621 }
2622 }
2623 #[inline]
2624 pub fn new_bitfield_1(
2625 mem_op: __u64,
2626 mem_lvl: __u64,
2627 mem_snoop: __u64,
2628 mem_lock: __u64,
2629 mem_dtlb: __u64,
2630 mem_lvl_num: __u64,
2631 mem_remote: __u64,
2632 mem_snoopx: __u64,
2633 mem_rsvd: __u64,
2634 ) -> __BindgenBitfieldUnit<[u8; 8usize], u32> {
2635 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize], u32> =
2636 Default::default();
2637 __bindgen_bitfield_unit.set(0usize, 5u8, {
2638 let mem_op: u64 = unsafe { ::std::mem::transmute(mem_op) };
2639 mem_op as u64
2640 });
2641 __bindgen_bitfield_unit.set(5usize, 14u8, {
2642 let mem_lvl: u64 = unsafe { ::std::mem::transmute(mem_lvl) };
2643 mem_lvl as u64
2644 });
2645 __bindgen_bitfield_unit.set(19usize, 5u8, {
2646 let mem_snoop: u64 = unsafe { ::std::mem::transmute(mem_snoop) };
2647 mem_snoop as u64
2648 });
2649 __bindgen_bitfield_unit.set(24usize, 2u8, {
2650 let mem_lock: u64 = unsafe { ::std::mem::transmute(mem_lock) };
2651 mem_lock as u64
2652 });
2653 __bindgen_bitfield_unit.set(26usize, 7u8, {
2654 let mem_dtlb: u64 = unsafe { ::std::mem::transmute(mem_dtlb) };
2655 mem_dtlb as u64
2656 });
2657 __bindgen_bitfield_unit.set(33usize, 4u8, {
2658 let mem_lvl_num: u64 = unsafe { ::std::mem::transmute(mem_lvl_num) };
2659 mem_lvl_num as u64
2660 });
2661 __bindgen_bitfield_unit.set(37usize, 1u8, {
2662 let mem_remote: u64 = unsafe { ::std::mem::transmute(mem_remote) };
2663 mem_remote as u64
2664 });
2665 __bindgen_bitfield_unit.set(38usize, 2u8, {
2666 let mem_snoopx: u64 = unsafe { ::std::mem::transmute(mem_snoopx) };
2667 mem_snoopx as u64
2668 });
2669 __bindgen_bitfield_unit.set(40usize, 24u8, {
2670 let mem_rsvd: u64 = unsafe { ::std::mem::transmute(mem_rsvd) };
2671 mem_rsvd as u64
2672 });
2673 __bindgen_bitfield_unit
2674 }
2675}
2676#[test]
2677fn bindgen_test_layout_perf_mem_data_src() {
2678 assert_eq!(
2679 ::std::mem::size_of::<perf_mem_data_src>(),
2680 8usize,
2681 concat!("Size of: ", stringify!(perf_mem_data_src))
2682 );
2683 assert_eq!(
2684 ::std::mem::align_of::<perf_mem_data_src>(),
2685 8usize,
2686 concat!("Alignment of ", stringify!(perf_mem_data_src))
2687 );
2688 assert_eq!(
2689 unsafe { &(*(::std::ptr::null::<perf_mem_data_src>())).val as *const _ as usize },
2690 0usize,
2691 concat!(
2692 "Offset of field: ",
2693 stringify!(perf_mem_data_src),
2694 "::",
2695 stringify!(val)
2696 )
2697 );
2698}
2699impl Default for perf_mem_data_src {
2700 fn default() -> Self {
2701 unsafe { ::std::mem::zeroed() }
2702 }
2703}
2704#[repr(C)]
2705#[derive(Debug, Default, Copy, Clone)]
2706pub struct perf_branch_entry {
2707 pub from: __u64,
2708 pub to: __u64,
2709 pub _bitfield_1: __BindgenBitfieldUnit<[u8; 8usize], u64>,
2710}
2711#[test]
2712fn bindgen_test_layout_perf_branch_entry() {
2713 assert_eq!(
2714 ::std::mem::size_of::<perf_branch_entry>(),
2715 24usize,
2716 concat!("Size of: ", stringify!(perf_branch_entry))
2717 );
2718 assert_eq!(
2719 ::std::mem::align_of::<perf_branch_entry>(),
2720 8usize,
2721 concat!("Alignment of ", stringify!(perf_branch_entry))
2722 );
2723 assert_eq!(
2724 unsafe { &(*(::std::ptr::null::<perf_branch_entry>())).from as *const _ as usize },
2725 0usize,
2726 concat!(
2727 "Offset of field: ",
2728 stringify!(perf_branch_entry),
2729 "::",
2730 stringify!(from)
2731 )
2732 );
2733 assert_eq!(
2734 unsafe { &(*(::std::ptr::null::<perf_branch_entry>())).to as *const _ as usize },
2735 8usize,
2736 concat!(
2737 "Offset of field: ",
2738 stringify!(perf_branch_entry),
2739 "::",
2740 stringify!(to)
2741 )
2742 );
2743}
2744impl perf_branch_entry {
2745 #[inline]
2746 pub fn mispred(&self) -> __u64 {
2747 unsafe { ::std::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u64) }
2748 }
2749 #[inline]
2750 pub fn set_mispred(&mut self, val: __u64) {
2751 unsafe {
2752 let val: u64 = ::std::mem::transmute(val);
2753 self._bitfield_1.set(0usize, 1u8, val as u64)
2754 }
2755 }
2756 #[inline]
2757 pub fn predicted(&self) -> __u64 {
2758 unsafe { ::std::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u64) }
2759 }
2760 #[inline]
2761 pub fn set_predicted(&mut self, val: __u64) {
2762 unsafe {
2763 let val: u64 = ::std::mem::transmute(val);
2764 self._bitfield_1.set(1usize, 1u8, val as u64)
2765 }
2766 }
2767 #[inline]
2768 pub fn in_tx(&self) -> __u64 {
2769 unsafe { ::std::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u64) }
2770 }
2771 #[inline]
2772 pub fn set_in_tx(&mut self, val: __u64) {
2773 unsafe {
2774 let val: u64 = ::std::mem::transmute(val);
2775 self._bitfield_1.set(2usize, 1u8, val as u64)
2776 }
2777 }
2778 #[inline]
2779 pub fn abort(&self) -> __u64 {
2780 unsafe { ::std::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u64) }
2781 }
2782 #[inline]
2783 pub fn set_abort(&mut self, val: __u64) {
2784 unsafe {
2785 let val: u64 = ::std::mem::transmute(val);
2786 self._bitfield_1.set(3usize, 1u8, val as u64)
2787 }
2788 }
2789 #[inline]
2790 pub fn cycles(&self) -> __u64 {
2791 unsafe { ::std::mem::transmute(self._bitfield_1.get(4usize, 16u8) as u64) }
2792 }
2793 #[inline]
2794 pub fn set_cycles(&mut self, val: __u64) {
2795 unsafe {
2796 let val: u64 = ::std::mem::transmute(val);
2797 self._bitfield_1.set(4usize, 16u8, val as u64)
2798 }
2799 }
2800 #[inline]
2801 pub fn type_(&self) -> __u64 {
2802 unsafe { ::std::mem::transmute(self._bitfield_1.get(20usize, 4u8) as u64) }
2803 }
2804 #[inline]
2805 pub fn set_type(&mut self, val: __u64) {
2806 unsafe {
2807 let val: u64 = ::std::mem::transmute(val);
2808 self._bitfield_1.set(20usize, 4u8, val as u64)
2809 }
2810 }
2811 #[inline]
2812 pub fn reserved(&self) -> __u64 {
2813 unsafe { ::std::mem::transmute(self._bitfield_1.get(24usize, 40u8) as u64) }
2814 }
2815 #[inline]
2816 pub fn set_reserved(&mut self, val: __u64) {
2817 unsafe {
2818 let val: u64 = ::std::mem::transmute(val);
2819 self._bitfield_1.set(24usize, 40u8, val as u64)
2820 }
2821 }
2822 #[inline]
2823 pub fn new_bitfield_1(
2824 mispred: __u64,
2825 predicted: __u64,
2826 in_tx: __u64,
2827 abort: __u64,
2828 cycles: __u64,
2829 type_: __u64,
2830 reserved: __u64,
2831 ) -> __BindgenBitfieldUnit<[u8; 8usize], u64> {
2832 let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 8usize], u64> =
2833 Default::default();
2834 __bindgen_bitfield_unit.set(0usize, 1u8, {
2835 let mispred: u64 = unsafe { ::std::mem::transmute(mispred) };
2836 mispred as u64
2837 });
2838 __bindgen_bitfield_unit.set(1usize, 1u8, {
2839 let predicted: u64 = unsafe { ::std::mem::transmute(predicted) };
2840 predicted as u64
2841 });
2842 __bindgen_bitfield_unit.set(2usize, 1u8, {
2843 let in_tx: u64 = unsafe { ::std::mem::transmute(in_tx) };
2844 in_tx as u64
2845 });
2846 __bindgen_bitfield_unit.set(3usize, 1u8, {
2847 let abort: u64 = unsafe { ::std::mem::transmute(abort) };
2848 abort as u64
2849 });
2850 __bindgen_bitfield_unit.set(4usize, 16u8, {
2851 let cycles: u64 = unsafe { ::std::mem::transmute(cycles) };
2852 cycles as u64
2853 });
2854 __bindgen_bitfield_unit.set(20usize, 4u8, {
2855 let type_: u64 = unsafe { ::std::mem::transmute(type_) };
2856 type_ as u64
2857 });
2858 __bindgen_bitfield_unit.set(24usize, 40u8, {
2859 let reserved: u64 = unsafe { ::std::mem::transmute(reserved) };
2860 reserved as u64
2861 });
2862 __bindgen_bitfield_unit
2863 }
2864}
2865pub const HW_BREAKPOINT_LEN_1: _bindgen_ty_4 = 1;
2866pub const HW_BREAKPOINT_LEN_2: _bindgen_ty_4 = 2;
2867pub const HW_BREAKPOINT_LEN_3: _bindgen_ty_4 = 3;
2868pub const HW_BREAKPOINT_LEN_4: _bindgen_ty_4 = 4;
2869pub const HW_BREAKPOINT_LEN_5: _bindgen_ty_4 = 5;
2870pub const HW_BREAKPOINT_LEN_6: _bindgen_ty_4 = 6;
2871pub const HW_BREAKPOINT_LEN_7: _bindgen_ty_4 = 7;
2872pub const HW_BREAKPOINT_LEN_8: _bindgen_ty_4 = 8;
2873pub type _bindgen_ty_4 = u32;
2874pub const HW_BREAKPOINT_EMPTY: _bindgen_ty_5 = 0;
2875pub const HW_BREAKPOINT_R: _bindgen_ty_5 = 1;
2876pub const HW_BREAKPOINT_W: _bindgen_ty_5 = 2;
2877pub const HW_BREAKPOINT_RW: _bindgen_ty_5 = 3;
2878pub const HW_BREAKPOINT_X: _bindgen_ty_5 = 4;
2879pub const HW_BREAKPOINT_INVALID: _bindgen_ty_5 = 7;
2880pub type _bindgen_ty_5 = u32;
2881pub const bp_type_idx_TYPE_INST: bp_type_idx = 0;
2882pub const bp_type_idx_TYPE_DATA: bp_type_idx = 1;
2883pub const bp_type_idx_TYPE_MAX: bp_type_idx = 2;
2884pub type bp_type_idx = u32;
2885pub const perf_event_ioctls_ENABLE: perf_event_ioctls = 9216;
2886pub const perf_event_ioctls_DISABLE: perf_event_ioctls = 9217;
2887pub const perf_event_ioctls_REFRESH: perf_event_ioctls = 9218;
2888pub const perf_event_ioctls_RESET: perf_event_ioctls = 9219;
2889pub const perf_event_ioctls_PERIOD: perf_event_ioctls = 1074275332;
2890pub const perf_event_ioctls_SET_OUTPUT: perf_event_ioctls = 9221;
2891pub const perf_event_ioctls_SET_FILTER: perf_event_ioctls = 1074275334;
2892pub const perf_event_ioctls_ID: perf_event_ioctls = 2148017159;
2893pub const perf_event_ioctls_SET_BPF: perf_event_ioctls = 1074013192;
2894pub const perf_event_ioctls_PAUSE_OUTPUT: perf_event_ioctls = 1074013193;
2895pub const perf_event_ioctls_QUERY_BPF: perf_event_ioctls = 3221758986;
2896pub const perf_event_ioctls_MODIFY_ATTRIBUTES: perf_event_ioctls = 1074275339;
2897pub type perf_event_ioctls = u32;