linux_raw_sys/
lib.rs

1#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
2#![cfg_attr(not(feature = "std"), no_std)]
3/*
4Unsafe functions no longer implicitly create unsafe blocks (RFC 2585).
5While newer bindgen versions follow this convention, we support Rust 1.63 which warns about
6this behavior. We can simply silence these warnings.
7*/
8#![allow(unused_unsafe)]
9
10#[cfg(feature = "std")]
11pub use std::os::raw as ctypes;
12
13#[cfg(all(not(feature = "std"), feature = "no_std"))]
14pub mod ctypes {
15    // The signedness of `char` is platform-specific, and we have to match
16    // what Rust's `CStr` uses.
17    #[cfg(any(
18        target_arch = "aarch64",
19        target_arch = "arm",
20        target_arch = "msp430",
21        target_arch = "powerpc",
22        target_arch = "powerpc64",
23        target_arch = "riscv32",
24        target_arch = "riscv64",
25        target_arch = "s390x",
26    ))]
27    pub type c_char = c_uchar;
28    #[cfg(any(
29        target_arch = "loongarch64",
30        target_arch = "mips",
31        target_arch = "mips64",
32        target_arch = "mips32r6",
33        target_arch = "mips64r6",
34        target_arch = "sparc",
35        target_arch = "sparc64",
36        target_arch = "x86",
37        target_arch = "x86_64",
38        target_arch = "xtensa",
39    ))]
40    pub type c_char = c_schar;
41
42    // The following assumes that Linux is always either ILP32 or LP64,
43    // and char is always 8-bit.
44    //
45    // In theory, `c_long` and `c_ulong` could be `isize` and `usize`
46    // respectively, however in practice Linux doesn't use them in that way
47    // consistently. So stick with the convention followed by `libc` and
48    // others and use the fixed-width types.
49    pub type c_schar = i8;
50    pub type c_uchar = u8;
51    pub type c_short = i16;
52    pub type c_ushort = u16;
53    pub type c_int = i32;
54    pub type c_uint = u32;
55    #[cfg(target_pointer_width = "32")]
56    pub type c_long = i32;
57    #[cfg(target_pointer_width = "32")]
58    pub type c_ulong = u32;
59    #[cfg(target_pointer_width = "64")]
60    pub type c_long = i64;
61    #[cfg(target_pointer_width = "64")]
62    pub type c_ulong = u64;
63    pub type c_longlong = i64;
64    pub type c_ulonglong = u64;
65    pub type c_float = f32;
66    pub type c_double = f64;
67
68    pub use core::ffi::c_void;
69}
70
71// Confirm that our type definitions above match the actual type definitions.
72#[cfg(test)]
73mod assertions {
74    use super::ctypes;
75    static_assertions::assert_eq_size!(ctypes::c_char, libc::c_char);
76    static_assertions::assert_type_eq_all!(ctypes::c_schar, libc::c_schar);
77    static_assertions::assert_type_eq_all!(ctypes::c_uchar, libc::c_uchar);
78    static_assertions::assert_type_eq_all!(ctypes::c_short, libc::c_short);
79    static_assertions::assert_type_eq_all!(ctypes::c_ushort, libc::c_ushort);
80    static_assertions::assert_type_eq_all!(ctypes::c_int, libc::c_int);
81    static_assertions::assert_type_eq_all!(ctypes::c_uint, libc::c_uint);
82    static_assertions::assert_type_eq_all!(ctypes::c_long, libc::c_long);
83    static_assertions::assert_type_eq_all!(ctypes::c_ulong, libc::c_ulong);
84    static_assertions::assert_type_eq_all!(ctypes::c_longlong, libc::c_longlong);
85    static_assertions::assert_type_eq_all!(ctypes::c_ulonglong, libc::c_ulonglong);
86    static_assertions::assert_type_eq_all!(ctypes::c_float, libc::c_float);
87    static_assertions::assert_type_eq_all!(ctypes::c_double, libc::c_double);
88}
89
90// We don't enable `derive_eq` in bindgen because adding `PartialEq`/`Eq` to
91// *all* structs noticeably increases compile times. But we can add a few
92// manual impls where they're especially useful.
93#[cfg(feature = "general")]
94impl PartialEq for general::__kernel_timespec {
95    fn eq(&self, other: &Self) -> bool {
96        ({
97            let Self { tv_sec, tv_nsec } = self;
98            (tv_sec, tv_nsec)
99        }) == ({
100            let Self { tv_sec, tv_nsec } = other;
101            (tv_sec, tv_nsec)
102        })
103    }
104}
105#[cfg(feature = "general")]
106impl Eq for general::__kernel_timespec {}
107
108#[cfg(feature = "net")]
109pub mod cmsg_macros {
110    use crate::ctypes::{c_long, c_uchar, c_uint};
111    use crate::net::{cmsghdr, msghdr};
112    use core::mem::size_of;
113    use core::ptr;
114
115    pub const unsafe fn CMSG_ALIGN(len: c_uint) -> c_uint {
116        let c_long_size = size_of::<c_long>() as c_uint;
117        (len + c_long_size - 1) & !(c_long_size - 1)
118    }
119
120    pub const unsafe fn CMSG_DATA(cmsg: *const cmsghdr) -> *mut c_uchar {
121        (cmsg as *mut c_uchar).add(size_of::<cmsghdr>())
122    }
123
124    pub const unsafe fn CMSG_SPACE(len: c_uint) -> c_uint {
125        size_of::<cmsghdr>() as c_uint + CMSG_ALIGN(len)
126    }
127
128    pub const unsafe fn CMSG_LEN(len: c_uint) -> c_uint {
129        size_of::<cmsghdr>() as c_uint + len
130    }
131
132    pub const unsafe fn CMSG_FIRSTHDR(mhdr: *const msghdr) -> *mut cmsghdr {
133        if (*mhdr).msg_controllen < size_of::<cmsghdr>() as _ {
134            return ptr::null_mut();
135        }
136
137        (*mhdr).msg_control as *mut cmsghdr
138    }
139
140    pub unsafe fn CMSG_NXTHDR(mhdr: *const msghdr, cmsg: *const cmsghdr) -> *mut cmsghdr {
141        // We convert from raw pointers to usize here, which may not be sound in a
142        // future version of Rust. Once the provenance rules are set in stone,
143        // it will be a good idea to give this function a once-over.
144
145        let cmsg_len = (*cmsg).cmsg_len;
146        let next_cmsg = (cmsg as *mut u8).add(CMSG_ALIGN(cmsg_len as _) as usize) as *mut cmsghdr;
147        let max = ((*mhdr).msg_control as usize) + ((*mhdr).msg_controllen as usize);
148
149        if cmsg_len < size_of::<cmsghdr>() as _ {
150            return ptr::null_mut();
151        }
152
153        if next_cmsg.add(1) as usize > max
154            || next_cmsg as usize + CMSG_ALIGN((*next_cmsg).cmsg_len as _) as usize > max
155        {
156            return ptr::null_mut();
157        }
158
159        next_cmsg
160    }
161}
162
163#[cfg(feature = "general")]
164pub mod select_macros {
165    use crate::ctypes::c_int;
166    use crate::general::__kernel_fd_set;
167    use core::mem::size_of;
168
169    pub unsafe fn FD_CLR(fd: c_int, set: *mut __kernel_fd_set) {
170        let bytes = set as *mut u8;
171        if fd >= 0 {
172            *bytes.add((fd / 8) as usize) &= !(1 << (fd % 8));
173        }
174    }
175
176    pub unsafe fn FD_SET(fd: c_int, set: *mut __kernel_fd_set) {
177        let bytes = set as *mut u8;
178        if fd >= 0 {
179            *bytes.add((fd / 8) as usize) |= 1 << (fd % 8);
180        }
181    }
182
183    pub unsafe fn FD_ISSET(fd: c_int, set: *const __kernel_fd_set) -> bool {
184        let bytes = set as *const u8;
185        if fd >= 0 {
186            *bytes.add((fd / 8) as usize) & (1 << (fd % 8)) != 0
187        } else {
188            false
189        }
190    }
191
192    pub unsafe fn FD_ZERO(set: *mut __kernel_fd_set) {
193        let bytes = set as *mut u8;
194        core::ptr::write_bytes(bytes, 0, size_of::<__kernel_fd_set>());
195    }
196}
197
198#[cfg(feature = "general")]
199pub mod signal_macros {
200    pub const SIG_DFL: super::general::__kernel_sighandler_t = None;
201
202    /// Rust doesn't currently permit us to use `transmute` to convert the
203    /// `SIG_IGN` value into a function pointer in a `const` initializer, so
204    /// we make it a function instead.
205    ///
206    #[inline]
207    pub const fn sig_ign() -> super::general::__kernel_sighandler_t {
208        // Safety: This creates an invalid pointer, but the pointer type
209        // includes `unsafe`, which covers the safety of calling it.
210        Some(unsafe {
211            core::mem::transmute::<usize, unsafe extern "C" fn(crate::ctypes::c_int)>(1)
212        })
213    }
214}
215
216#[cfg(feature = "elf")]
217pub mod elf;
218
219// The rest of this file is auto-generated!
220#[cfg(feature = "auxvec")]
221#[cfg(target_arch = "arm")]
222#[path = "arm/auxvec.rs"]
223pub mod auxvec;
224#[cfg(feature = "bootparam")]
225#[cfg(target_arch = "arm")]
226#[path = "arm/bootparam.rs"]
227pub mod bootparam;
228#[cfg(feature = "btrfs")]
229#[cfg(target_arch = "arm")]
230#[path = "arm/btrfs.rs"]
231pub mod btrfs;
232#[cfg(feature = "elf_uapi")]
233#[cfg(target_arch = "arm")]
234#[path = "arm/elf_uapi.rs"]
235pub mod elf_uapi;
236#[cfg(feature = "errno")]
237#[cfg(target_arch = "arm")]
238#[path = "arm/errno.rs"]
239pub mod errno;
240#[cfg(feature = "general")]
241#[cfg(target_arch = "arm")]
242#[path = "arm/general.rs"]
243pub mod general;
244#[cfg(feature = "if_arp")]
245#[cfg(target_arch = "arm")]
246#[path = "arm/if_arp.rs"]
247pub mod if_arp;
248#[cfg(feature = "if_ether")]
249#[cfg(target_arch = "arm")]
250#[path = "arm/if_ether.rs"]
251pub mod if_ether;
252#[cfg(feature = "if_packet")]
253#[cfg(target_arch = "arm")]
254#[path = "arm/if_packet.rs"]
255pub mod if_packet;
256#[cfg(feature = "image")]
257#[cfg(target_arch = "arm")]
258#[path = "arm/image.rs"]
259pub mod image;
260#[cfg(feature = "io_uring")]
261#[cfg(target_arch = "arm")]
262#[path = "arm/io_uring.rs"]
263pub mod io_uring;
264#[cfg(feature = "ioctl")]
265#[cfg(target_arch = "arm")]
266#[path = "arm/ioctl.rs"]
267pub mod ioctl;
268#[cfg(feature = "landlock")]
269#[cfg(target_arch = "arm")]
270#[path = "arm/landlock.rs"]
271pub mod landlock;
272#[cfg(feature = "loop_device")]
273#[cfg(target_arch = "arm")]
274#[path = "arm/loop_device.rs"]
275pub mod loop_device;
276#[cfg(feature = "mempolicy")]
277#[cfg(target_arch = "arm")]
278#[path = "arm/mempolicy.rs"]
279pub mod mempolicy;
280#[cfg(feature = "net")]
281#[cfg(target_arch = "arm")]
282#[path = "arm/net.rs"]
283pub mod net;
284#[cfg(feature = "netlink")]
285#[cfg(target_arch = "arm")]
286#[path = "arm/netlink.rs"]
287pub mod netlink;
288#[cfg(feature = "prctl")]
289#[cfg(target_arch = "arm")]
290#[path = "arm/prctl.rs"]
291pub mod prctl;
292#[cfg(feature = "ptrace")]
293#[cfg(target_arch = "arm")]
294#[path = "arm/ptrace.rs"]
295pub mod ptrace;
296#[cfg(feature = "system")]
297#[cfg(target_arch = "arm")]
298#[path = "arm/system.rs"]
299pub mod system;
300#[cfg(feature = "xdp")]
301#[cfg(target_arch = "arm")]
302#[path = "arm/xdp.rs"]
303pub mod xdp;
304#[cfg(feature = "auxvec")]
305#[cfg(target_arch = "aarch64")]
306#[path = "aarch64/auxvec.rs"]
307pub mod auxvec;
308#[cfg(feature = "bootparam")]
309#[cfg(target_arch = "aarch64")]
310#[path = "aarch64/bootparam.rs"]
311pub mod bootparam;
312#[cfg(feature = "btrfs")]
313#[cfg(target_arch = "aarch64")]
314#[path = "aarch64/btrfs.rs"]
315pub mod btrfs;
316#[cfg(feature = "elf_uapi")]
317#[cfg(target_arch = "aarch64")]
318#[path = "aarch64/elf_uapi.rs"]
319pub mod elf_uapi;
320#[cfg(feature = "errno")]
321#[cfg(target_arch = "aarch64")]
322#[path = "aarch64/errno.rs"]
323pub mod errno;
324#[cfg(feature = "general")]
325#[cfg(target_arch = "aarch64")]
326#[path = "aarch64/general.rs"]
327pub mod general;
328#[cfg(feature = "if_arp")]
329#[cfg(target_arch = "aarch64")]
330#[path = "aarch64/if_arp.rs"]
331pub mod if_arp;
332#[cfg(feature = "if_ether")]
333#[cfg(target_arch = "aarch64")]
334#[path = "aarch64/if_ether.rs"]
335pub mod if_ether;
336#[cfg(feature = "if_packet")]
337#[cfg(target_arch = "aarch64")]
338#[path = "aarch64/if_packet.rs"]
339pub mod if_packet;
340#[cfg(feature = "image")]
341#[cfg(target_arch = "aarch64")]
342#[path = "aarch64/image.rs"]
343pub mod image;
344#[cfg(feature = "io_uring")]
345#[cfg(target_arch = "aarch64")]
346#[path = "aarch64/io_uring.rs"]
347pub mod io_uring;
348#[cfg(feature = "ioctl")]
349#[cfg(target_arch = "aarch64")]
350#[path = "aarch64/ioctl.rs"]
351pub mod ioctl;
352#[cfg(feature = "landlock")]
353#[cfg(target_arch = "aarch64")]
354#[path = "aarch64/landlock.rs"]
355pub mod landlock;
356#[cfg(feature = "loop_device")]
357#[cfg(target_arch = "aarch64")]
358#[path = "aarch64/loop_device.rs"]
359pub mod loop_device;
360#[cfg(feature = "mempolicy")]
361#[cfg(target_arch = "aarch64")]
362#[path = "aarch64/mempolicy.rs"]
363pub mod mempolicy;
364#[cfg(feature = "net")]
365#[cfg(target_arch = "aarch64")]
366#[path = "aarch64/net.rs"]
367pub mod net;
368#[cfg(feature = "netlink")]
369#[cfg(target_arch = "aarch64")]
370#[path = "aarch64/netlink.rs"]
371pub mod netlink;
372#[cfg(feature = "prctl")]
373#[cfg(target_arch = "aarch64")]
374#[path = "aarch64/prctl.rs"]
375pub mod prctl;
376#[cfg(feature = "ptrace")]
377#[cfg(target_arch = "aarch64")]
378#[path = "aarch64/ptrace.rs"]
379pub mod ptrace;
380#[cfg(feature = "system")]
381#[cfg(target_arch = "aarch64")]
382#[path = "aarch64/system.rs"]
383pub mod system;
384#[cfg(feature = "xdp")]
385#[cfg(target_arch = "aarch64")]
386#[path = "aarch64/xdp.rs"]
387pub mod xdp;
388#[cfg(feature = "auxvec")]
389#[cfg(target_arch = "csky")]
390#[path = "csky/auxvec.rs"]
391pub mod auxvec;
392#[cfg(feature = "bootparam")]
393#[cfg(target_arch = "csky")]
394#[path = "csky/bootparam.rs"]
395pub mod bootparam;
396#[cfg(feature = "btrfs")]
397#[cfg(target_arch = "csky")]
398#[path = "csky/btrfs.rs"]
399pub mod btrfs;
400#[cfg(feature = "elf_uapi")]
401#[cfg(target_arch = "csky")]
402#[path = "csky/elf_uapi.rs"]
403pub mod elf_uapi;
404#[cfg(feature = "errno")]
405#[cfg(target_arch = "csky")]
406#[path = "csky/errno.rs"]
407pub mod errno;
408#[cfg(feature = "general")]
409#[cfg(target_arch = "csky")]
410#[path = "csky/general.rs"]
411pub mod general;
412#[cfg(feature = "if_arp")]
413#[cfg(target_arch = "csky")]
414#[path = "csky/if_arp.rs"]
415pub mod if_arp;
416#[cfg(feature = "if_ether")]
417#[cfg(target_arch = "csky")]
418#[path = "csky/if_ether.rs"]
419pub mod if_ether;
420#[cfg(feature = "if_packet")]
421#[cfg(target_arch = "csky")]
422#[path = "csky/if_packet.rs"]
423pub mod if_packet;
424#[cfg(feature = "image")]
425#[cfg(target_arch = "csky")]
426#[path = "csky/image.rs"]
427pub mod image;
428#[cfg(feature = "io_uring")]
429#[cfg(target_arch = "csky")]
430#[path = "csky/io_uring.rs"]
431pub mod io_uring;
432#[cfg(feature = "ioctl")]
433#[cfg(target_arch = "csky")]
434#[path = "csky/ioctl.rs"]
435pub mod ioctl;
436#[cfg(feature = "landlock")]
437#[cfg(target_arch = "csky")]
438#[path = "csky/landlock.rs"]
439pub mod landlock;
440#[cfg(feature = "loop_device")]
441#[cfg(target_arch = "csky")]
442#[path = "csky/loop_device.rs"]
443pub mod loop_device;
444#[cfg(feature = "mempolicy")]
445#[cfg(target_arch = "csky")]
446#[path = "csky/mempolicy.rs"]
447pub mod mempolicy;
448#[cfg(feature = "net")]
449#[cfg(target_arch = "csky")]
450#[path = "csky/net.rs"]
451pub mod net;
452#[cfg(feature = "netlink")]
453#[cfg(target_arch = "csky")]
454#[path = "csky/netlink.rs"]
455pub mod netlink;
456#[cfg(feature = "prctl")]
457#[cfg(target_arch = "csky")]
458#[path = "csky/prctl.rs"]
459pub mod prctl;
460#[cfg(feature = "ptrace")]
461#[cfg(target_arch = "csky")]
462#[path = "csky/ptrace.rs"]
463pub mod ptrace;
464#[cfg(feature = "system")]
465#[cfg(target_arch = "csky")]
466#[path = "csky/system.rs"]
467pub mod system;
468#[cfg(feature = "xdp")]
469#[cfg(target_arch = "csky")]
470#[path = "csky/xdp.rs"]
471pub mod xdp;
472#[cfg(feature = "auxvec")]
473#[cfg(target_arch = "loongarch64")]
474#[path = "loongarch64/auxvec.rs"]
475pub mod auxvec;
476#[cfg(feature = "bootparam")]
477#[cfg(target_arch = "loongarch64")]
478#[path = "loongarch64/bootparam.rs"]
479pub mod bootparam;
480#[cfg(feature = "btrfs")]
481#[cfg(target_arch = "loongarch64")]
482#[path = "loongarch64/btrfs.rs"]
483pub mod btrfs;
484#[cfg(feature = "elf_uapi")]
485#[cfg(target_arch = "loongarch64")]
486#[path = "loongarch64/elf_uapi.rs"]
487pub mod elf_uapi;
488#[cfg(feature = "errno")]
489#[cfg(target_arch = "loongarch64")]
490#[path = "loongarch64/errno.rs"]
491pub mod errno;
492#[cfg(feature = "general")]
493#[cfg(target_arch = "loongarch64")]
494#[path = "loongarch64/general.rs"]
495pub mod general;
496#[cfg(feature = "if_arp")]
497#[cfg(target_arch = "loongarch64")]
498#[path = "loongarch64/if_arp.rs"]
499pub mod if_arp;
500#[cfg(feature = "if_ether")]
501#[cfg(target_arch = "loongarch64")]
502#[path = "loongarch64/if_ether.rs"]
503pub mod if_ether;
504#[cfg(feature = "if_packet")]
505#[cfg(target_arch = "loongarch64")]
506#[path = "loongarch64/if_packet.rs"]
507pub mod if_packet;
508#[cfg(feature = "image")]
509#[cfg(target_arch = "loongarch64")]
510#[path = "loongarch64/image.rs"]
511pub mod image;
512#[cfg(feature = "io_uring")]
513#[cfg(target_arch = "loongarch64")]
514#[path = "loongarch64/io_uring.rs"]
515pub mod io_uring;
516#[cfg(feature = "ioctl")]
517#[cfg(target_arch = "loongarch64")]
518#[path = "loongarch64/ioctl.rs"]
519pub mod ioctl;
520#[cfg(feature = "landlock")]
521#[cfg(target_arch = "loongarch64")]
522#[path = "loongarch64/landlock.rs"]
523pub mod landlock;
524#[cfg(feature = "loop_device")]
525#[cfg(target_arch = "loongarch64")]
526#[path = "loongarch64/loop_device.rs"]
527pub mod loop_device;
528#[cfg(feature = "mempolicy")]
529#[cfg(target_arch = "loongarch64")]
530#[path = "loongarch64/mempolicy.rs"]
531pub mod mempolicy;
532#[cfg(feature = "net")]
533#[cfg(target_arch = "loongarch64")]
534#[path = "loongarch64/net.rs"]
535pub mod net;
536#[cfg(feature = "netlink")]
537#[cfg(target_arch = "loongarch64")]
538#[path = "loongarch64/netlink.rs"]
539pub mod netlink;
540#[cfg(feature = "prctl")]
541#[cfg(target_arch = "loongarch64")]
542#[path = "loongarch64/prctl.rs"]
543pub mod prctl;
544#[cfg(feature = "ptrace")]
545#[cfg(target_arch = "loongarch64")]
546#[path = "loongarch64/ptrace.rs"]
547pub mod ptrace;
548#[cfg(feature = "system")]
549#[cfg(target_arch = "loongarch64")]
550#[path = "loongarch64/system.rs"]
551pub mod system;
552#[cfg(feature = "xdp")]
553#[cfg(target_arch = "loongarch64")]
554#[path = "loongarch64/xdp.rs"]
555pub mod xdp;
556#[cfg(feature = "auxvec")]
557#[cfg(target_arch = "mips")]
558#[path = "mips/auxvec.rs"]
559pub mod auxvec;
560#[cfg(feature = "bootparam")]
561#[cfg(target_arch = "mips")]
562#[path = "mips/bootparam.rs"]
563pub mod bootparam;
564#[cfg(feature = "btrfs")]
565#[cfg(target_arch = "mips")]
566#[path = "mips/btrfs.rs"]
567pub mod btrfs;
568#[cfg(feature = "elf_uapi")]
569#[cfg(target_arch = "mips")]
570#[path = "mips/elf_uapi.rs"]
571pub mod elf_uapi;
572#[cfg(feature = "errno")]
573#[cfg(target_arch = "mips")]
574#[path = "mips/errno.rs"]
575pub mod errno;
576#[cfg(feature = "general")]
577#[cfg(target_arch = "mips")]
578#[path = "mips/general.rs"]
579pub mod general;
580#[cfg(feature = "if_arp")]
581#[cfg(target_arch = "mips")]
582#[path = "mips/if_arp.rs"]
583pub mod if_arp;
584#[cfg(feature = "if_ether")]
585#[cfg(target_arch = "mips")]
586#[path = "mips/if_ether.rs"]
587pub mod if_ether;
588#[cfg(feature = "if_packet")]
589#[cfg(target_arch = "mips")]
590#[path = "mips/if_packet.rs"]
591pub mod if_packet;
592#[cfg(feature = "image")]
593#[cfg(target_arch = "mips")]
594#[path = "mips/image.rs"]
595pub mod image;
596#[cfg(feature = "io_uring")]
597#[cfg(target_arch = "mips")]
598#[path = "mips/io_uring.rs"]
599pub mod io_uring;
600#[cfg(feature = "ioctl")]
601#[cfg(target_arch = "mips")]
602#[path = "mips/ioctl.rs"]
603pub mod ioctl;
604#[cfg(feature = "landlock")]
605#[cfg(target_arch = "mips")]
606#[path = "mips/landlock.rs"]
607pub mod landlock;
608#[cfg(feature = "loop_device")]
609#[cfg(target_arch = "mips")]
610#[path = "mips/loop_device.rs"]
611pub mod loop_device;
612#[cfg(feature = "mempolicy")]
613#[cfg(target_arch = "mips")]
614#[path = "mips/mempolicy.rs"]
615pub mod mempolicy;
616#[cfg(feature = "net")]
617#[cfg(target_arch = "mips")]
618#[path = "mips/net.rs"]
619pub mod net;
620#[cfg(feature = "netlink")]
621#[cfg(target_arch = "mips")]
622#[path = "mips/netlink.rs"]
623pub mod netlink;
624#[cfg(feature = "prctl")]
625#[cfg(target_arch = "mips")]
626#[path = "mips/prctl.rs"]
627pub mod prctl;
628#[cfg(feature = "ptrace")]
629#[cfg(target_arch = "mips")]
630#[path = "mips/ptrace.rs"]
631pub mod ptrace;
632#[cfg(feature = "system")]
633#[cfg(target_arch = "mips")]
634#[path = "mips/system.rs"]
635pub mod system;
636#[cfg(feature = "xdp")]
637#[cfg(target_arch = "mips")]
638#[path = "mips/xdp.rs"]
639pub mod xdp;
640#[cfg(feature = "auxvec")]
641#[cfg(target_arch = "mips64")]
642#[path = "mips64/auxvec.rs"]
643pub mod auxvec;
644#[cfg(feature = "bootparam")]
645#[cfg(target_arch = "mips64")]
646#[path = "mips64/bootparam.rs"]
647pub mod bootparam;
648#[cfg(feature = "btrfs")]
649#[cfg(target_arch = "mips64")]
650#[path = "mips64/btrfs.rs"]
651pub mod btrfs;
652#[cfg(feature = "elf_uapi")]
653#[cfg(target_arch = "mips64")]
654#[path = "mips64/elf_uapi.rs"]
655pub mod elf_uapi;
656#[cfg(feature = "errno")]
657#[cfg(target_arch = "mips64")]
658#[path = "mips64/errno.rs"]
659pub mod errno;
660#[cfg(feature = "general")]
661#[cfg(target_arch = "mips64")]
662#[path = "mips64/general.rs"]
663pub mod general;
664#[cfg(feature = "if_arp")]
665#[cfg(target_arch = "mips64")]
666#[path = "mips64/if_arp.rs"]
667pub mod if_arp;
668#[cfg(feature = "if_ether")]
669#[cfg(target_arch = "mips64")]
670#[path = "mips64/if_ether.rs"]
671pub mod if_ether;
672#[cfg(feature = "if_packet")]
673#[cfg(target_arch = "mips64")]
674#[path = "mips64/if_packet.rs"]
675pub mod if_packet;
676#[cfg(feature = "image")]
677#[cfg(target_arch = "mips64")]
678#[path = "mips64/image.rs"]
679pub mod image;
680#[cfg(feature = "io_uring")]
681#[cfg(target_arch = "mips64")]
682#[path = "mips64/io_uring.rs"]
683pub mod io_uring;
684#[cfg(feature = "ioctl")]
685#[cfg(target_arch = "mips64")]
686#[path = "mips64/ioctl.rs"]
687pub mod ioctl;
688#[cfg(feature = "landlock")]
689#[cfg(target_arch = "mips64")]
690#[path = "mips64/landlock.rs"]
691pub mod landlock;
692#[cfg(feature = "loop_device")]
693#[cfg(target_arch = "mips64")]
694#[path = "mips64/loop_device.rs"]
695pub mod loop_device;
696#[cfg(feature = "mempolicy")]
697#[cfg(target_arch = "mips64")]
698#[path = "mips64/mempolicy.rs"]
699pub mod mempolicy;
700#[cfg(feature = "net")]
701#[cfg(target_arch = "mips64")]
702#[path = "mips64/net.rs"]
703pub mod net;
704#[cfg(feature = "netlink")]
705#[cfg(target_arch = "mips64")]
706#[path = "mips64/netlink.rs"]
707pub mod netlink;
708#[cfg(feature = "prctl")]
709#[cfg(target_arch = "mips64")]
710#[path = "mips64/prctl.rs"]
711pub mod prctl;
712#[cfg(feature = "ptrace")]
713#[cfg(target_arch = "mips64")]
714#[path = "mips64/ptrace.rs"]
715pub mod ptrace;
716#[cfg(feature = "system")]
717#[cfg(target_arch = "mips64")]
718#[path = "mips64/system.rs"]
719pub mod system;
720#[cfg(feature = "xdp")]
721#[cfg(target_arch = "mips64")]
722#[path = "mips64/xdp.rs"]
723pub mod xdp;
724#[cfg(feature = "auxvec")]
725#[cfg(target_arch = "mips32r6")]
726#[path = "mips32r6/auxvec.rs"]
727pub mod auxvec;
728#[cfg(feature = "bootparam")]
729#[cfg(target_arch = "mips32r6")]
730#[path = "mips32r6/bootparam.rs"]
731pub mod bootparam;
732#[cfg(feature = "btrfs")]
733#[cfg(target_arch = "mips32r6")]
734#[path = "mips32r6/btrfs.rs"]
735pub mod btrfs;
736#[cfg(feature = "elf_uapi")]
737#[cfg(target_arch = "mips32r6")]
738#[path = "mips32r6/elf_uapi.rs"]
739pub mod elf_uapi;
740#[cfg(feature = "errno")]
741#[cfg(target_arch = "mips32r6")]
742#[path = "mips32r6/errno.rs"]
743pub mod errno;
744#[cfg(feature = "general")]
745#[cfg(target_arch = "mips32r6")]
746#[path = "mips32r6/general.rs"]
747pub mod general;
748#[cfg(feature = "if_arp")]
749#[cfg(target_arch = "mips32r6")]
750#[path = "mips32r6/if_arp.rs"]
751pub mod if_arp;
752#[cfg(feature = "if_ether")]
753#[cfg(target_arch = "mips32r6")]
754#[path = "mips32r6/if_ether.rs"]
755pub mod if_ether;
756#[cfg(feature = "if_packet")]
757#[cfg(target_arch = "mips32r6")]
758#[path = "mips32r6/if_packet.rs"]
759pub mod if_packet;
760#[cfg(feature = "image")]
761#[cfg(target_arch = "mips32r6")]
762#[path = "mips32r6/image.rs"]
763pub mod image;
764#[cfg(feature = "io_uring")]
765#[cfg(target_arch = "mips32r6")]
766#[path = "mips32r6/io_uring.rs"]
767pub mod io_uring;
768#[cfg(feature = "ioctl")]
769#[cfg(target_arch = "mips32r6")]
770#[path = "mips32r6/ioctl.rs"]
771pub mod ioctl;
772#[cfg(feature = "landlock")]
773#[cfg(target_arch = "mips32r6")]
774#[path = "mips32r6/landlock.rs"]
775pub mod landlock;
776#[cfg(feature = "loop_device")]
777#[cfg(target_arch = "mips32r6")]
778#[path = "mips32r6/loop_device.rs"]
779pub mod loop_device;
780#[cfg(feature = "mempolicy")]
781#[cfg(target_arch = "mips32r6")]
782#[path = "mips32r6/mempolicy.rs"]
783pub mod mempolicy;
784#[cfg(feature = "net")]
785#[cfg(target_arch = "mips32r6")]
786#[path = "mips32r6/net.rs"]
787pub mod net;
788#[cfg(feature = "netlink")]
789#[cfg(target_arch = "mips32r6")]
790#[path = "mips32r6/netlink.rs"]
791pub mod netlink;
792#[cfg(feature = "prctl")]
793#[cfg(target_arch = "mips32r6")]
794#[path = "mips32r6/prctl.rs"]
795pub mod prctl;
796#[cfg(feature = "ptrace")]
797#[cfg(target_arch = "mips32r6")]
798#[path = "mips32r6/ptrace.rs"]
799pub mod ptrace;
800#[cfg(feature = "system")]
801#[cfg(target_arch = "mips32r6")]
802#[path = "mips32r6/system.rs"]
803pub mod system;
804#[cfg(feature = "xdp")]
805#[cfg(target_arch = "mips32r6")]
806#[path = "mips32r6/xdp.rs"]
807pub mod xdp;
808#[cfg(feature = "auxvec")]
809#[cfg(target_arch = "mips64r6")]
810#[path = "mips64r6/auxvec.rs"]
811pub mod auxvec;
812#[cfg(feature = "bootparam")]
813#[cfg(target_arch = "mips64r6")]
814#[path = "mips64r6/bootparam.rs"]
815pub mod bootparam;
816#[cfg(feature = "btrfs")]
817#[cfg(target_arch = "mips64r6")]
818#[path = "mips64r6/btrfs.rs"]
819pub mod btrfs;
820#[cfg(feature = "elf_uapi")]
821#[cfg(target_arch = "mips64r6")]
822#[path = "mips64r6/elf_uapi.rs"]
823pub mod elf_uapi;
824#[cfg(feature = "errno")]
825#[cfg(target_arch = "mips64r6")]
826#[path = "mips64r6/errno.rs"]
827pub mod errno;
828#[cfg(feature = "general")]
829#[cfg(target_arch = "mips64r6")]
830#[path = "mips64r6/general.rs"]
831pub mod general;
832#[cfg(feature = "if_arp")]
833#[cfg(target_arch = "mips64r6")]
834#[path = "mips64r6/if_arp.rs"]
835pub mod if_arp;
836#[cfg(feature = "if_ether")]
837#[cfg(target_arch = "mips64r6")]
838#[path = "mips64r6/if_ether.rs"]
839pub mod if_ether;
840#[cfg(feature = "if_packet")]
841#[cfg(target_arch = "mips64r6")]
842#[path = "mips64r6/if_packet.rs"]
843pub mod if_packet;
844#[cfg(feature = "image")]
845#[cfg(target_arch = "mips64r6")]
846#[path = "mips64r6/image.rs"]
847pub mod image;
848#[cfg(feature = "io_uring")]
849#[cfg(target_arch = "mips64r6")]
850#[path = "mips64r6/io_uring.rs"]
851pub mod io_uring;
852#[cfg(feature = "ioctl")]
853#[cfg(target_arch = "mips64r6")]
854#[path = "mips64r6/ioctl.rs"]
855pub mod ioctl;
856#[cfg(feature = "landlock")]
857#[cfg(target_arch = "mips64r6")]
858#[path = "mips64r6/landlock.rs"]
859pub mod landlock;
860#[cfg(feature = "loop_device")]
861#[cfg(target_arch = "mips64r6")]
862#[path = "mips64r6/loop_device.rs"]
863pub mod loop_device;
864#[cfg(feature = "mempolicy")]
865#[cfg(target_arch = "mips64r6")]
866#[path = "mips64r6/mempolicy.rs"]
867pub mod mempolicy;
868#[cfg(feature = "net")]
869#[cfg(target_arch = "mips64r6")]
870#[path = "mips64r6/net.rs"]
871pub mod net;
872#[cfg(feature = "netlink")]
873#[cfg(target_arch = "mips64r6")]
874#[path = "mips64r6/netlink.rs"]
875pub mod netlink;
876#[cfg(feature = "prctl")]
877#[cfg(target_arch = "mips64r6")]
878#[path = "mips64r6/prctl.rs"]
879pub mod prctl;
880#[cfg(feature = "ptrace")]
881#[cfg(target_arch = "mips64r6")]
882#[path = "mips64r6/ptrace.rs"]
883pub mod ptrace;
884#[cfg(feature = "system")]
885#[cfg(target_arch = "mips64r6")]
886#[path = "mips64r6/system.rs"]
887pub mod system;
888#[cfg(feature = "xdp")]
889#[cfg(target_arch = "mips64r6")]
890#[path = "mips64r6/xdp.rs"]
891pub mod xdp;
892#[cfg(feature = "auxvec")]
893#[cfg(target_arch = "powerpc")]
894#[path = "powerpc/auxvec.rs"]
895pub mod auxvec;
896#[cfg(feature = "bootparam")]
897#[cfg(target_arch = "powerpc")]
898#[path = "powerpc/bootparam.rs"]
899pub mod bootparam;
900#[cfg(feature = "btrfs")]
901#[cfg(target_arch = "powerpc")]
902#[path = "powerpc/btrfs.rs"]
903pub mod btrfs;
904#[cfg(feature = "elf_uapi")]
905#[cfg(target_arch = "powerpc")]
906#[path = "powerpc/elf_uapi.rs"]
907pub mod elf_uapi;
908#[cfg(feature = "errno")]
909#[cfg(target_arch = "powerpc")]
910#[path = "powerpc/errno.rs"]
911pub mod errno;
912#[cfg(feature = "general")]
913#[cfg(target_arch = "powerpc")]
914#[path = "powerpc/general.rs"]
915pub mod general;
916#[cfg(feature = "if_arp")]
917#[cfg(target_arch = "powerpc")]
918#[path = "powerpc/if_arp.rs"]
919pub mod if_arp;
920#[cfg(feature = "if_ether")]
921#[cfg(target_arch = "powerpc")]
922#[path = "powerpc/if_ether.rs"]
923pub mod if_ether;
924#[cfg(feature = "if_packet")]
925#[cfg(target_arch = "powerpc")]
926#[path = "powerpc/if_packet.rs"]
927pub mod if_packet;
928#[cfg(feature = "image")]
929#[cfg(target_arch = "powerpc")]
930#[path = "powerpc/image.rs"]
931pub mod image;
932#[cfg(feature = "io_uring")]
933#[cfg(target_arch = "powerpc")]
934#[path = "powerpc/io_uring.rs"]
935pub mod io_uring;
936#[cfg(feature = "ioctl")]
937#[cfg(target_arch = "powerpc")]
938#[path = "powerpc/ioctl.rs"]
939pub mod ioctl;
940#[cfg(feature = "landlock")]
941#[cfg(target_arch = "powerpc")]
942#[path = "powerpc/landlock.rs"]
943pub mod landlock;
944#[cfg(feature = "loop_device")]
945#[cfg(target_arch = "powerpc")]
946#[path = "powerpc/loop_device.rs"]
947pub mod loop_device;
948#[cfg(feature = "mempolicy")]
949#[cfg(target_arch = "powerpc")]
950#[path = "powerpc/mempolicy.rs"]
951pub mod mempolicy;
952#[cfg(feature = "net")]
953#[cfg(target_arch = "powerpc")]
954#[path = "powerpc/net.rs"]
955pub mod net;
956#[cfg(feature = "netlink")]
957#[cfg(target_arch = "powerpc")]
958#[path = "powerpc/netlink.rs"]
959pub mod netlink;
960#[cfg(feature = "prctl")]
961#[cfg(target_arch = "powerpc")]
962#[path = "powerpc/prctl.rs"]
963pub mod prctl;
964#[cfg(feature = "ptrace")]
965#[cfg(target_arch = "powerpc")]
966#[path = "powerpc/ptrace.rs"]
967pub mod ptrace;
968#[cfg(feature = "system")]
969#[cfg(target_arch = "powerpc")]
970#[path = "powerpc/system.rs"]
971pub mod system;
972#[cfg(feature = "xdp")]
973#[cfg(target_arch = "powerpc")]
974#[path = "powerpc/xdp.rs"]
975pub mod xdp;
976#[cfg(feature = "auxvec")]
977#[cfg(target_arch = "powerpc64")]
978#[path = "powerpc64/auxvec.rs"]
979pub mod auxvec;
980#[cfg(feature = "bootparam")]
981#[cfg(target_arch = "powerpc64")]
982#[path = "powerpc64/bootparam.rs"]
983pub mod bootparam;
984#[cfg(feature = "btrfs")]
985#[cfg(target_arch = "powerpc64")]
986#[path = "powerpc64/btrfs.rs"]
987pub mod btrfs;
988#[cfg(feature = "elf_uapi")]
989#[cfg(target_arch = "powerpc64")]
990#[path = "powerpc64/elf_uapi.rs"]
991pub mod elf_uapi;
992#[cfg(feature = "errno")]
993#[cfg(target_arch = "powerpc64")]
994#[path = "powerpc64/errno.rs"]
995pub mod errno;
996#[cfg(feature = "general")]
997#[cfg(target_arch = "powerpc64")]
998#[path = "powerpc64/general.rs"]
999pub mod general;
1000#[cfg(feature = "if_arp")]
1001#[cfg(target_arch = "powerpc64")]
1002#[path = "powerpc64/if_arp.rs"]
1003pub mod if_arp;
1004#[cfg(feature = "if_ether")]
1005#[cfg(target_arch = "powerpc64")]
1006#[path = "powerpc64/if_ether.rs"]
1007pub mod if_ether;
1008#[cfg(feature = "if_packet")]
1009#[cfg(target_arch = "powerpc64")]
1010#[path = "powerpc64/if_packet.rs"]
1011pub mod if_packet;
1012#[cfg(feature = "image")]
1013#[cfg(target_arch = "powerpc64")]
1014#[path = "powerpc64/image.rs"]
1015pub mod image;
1016#[cfg(feature = "io_uring")]
1017#[cfg(target_arch = "powerpc64")]
1018#[path = "powerpc64/io_uring.rs"]
1019pub mod io_uring;
1020#[cfg(feature = "ioctl")]
1021#[cfg(target_arch = "powerpc64")]
1022#[path = "powerpc64/ioctl.rs"]
1023pub mod ioctl;
1024#[cfg(feature = "landlock")]
1025#[cfg(target_arch = "powerpc64")]
1026#[path = "powerpc64/landlock.rs"]
1027pub mod landlock;
1028#[cfg(feature = "loop_device")]
1029#[cfg(target_arch = "powerpc64")]
1030#[path = "powerpc64/loop_device.rs"]
1031pub mod loop_device;
1032#[cfg(feature = "mempolicy")]
1033#[cfg(target_arch = "powerpc64")]
1034#[path = "powerpc64/mempolicy.rs"]
1035pub mod mempolicy;
1036#[cfg(feature = "net")]
1037#[cfg(target_arch = "powerpc64")]
1038#[path = "powerpc64/net.rs"]
1039pub mod net;
1040#[cfg(feature = "netlink")]
1041#[cfg(target_arch = "powerpc64")]
1042#[path = "powerpc64/netlink.rs"]
1043pub mod netlink;
1044#[cfg(feature = "prctl")]
1045#[cfg(target_arch = "powerpc64")]
1046#[path = "powerpc64/prctl.rs"]
1047pub mod prctl;
1048#[cfg(feature = "ptrace")]
1049#[cfg(target_arch = "powerpc64")]
1050#[path = "powerpc64/ptrace.rs"]
1051pub mod ptrace;
1052#[cfg(feature = "system")]
1053#[cfg(target_arch = "powerpc64")]
1054#[path = "powerpc64/system.rs"]
1055pub mod system;
1056#[cfg(feature = "xdp")]
1057#[cfg(target_arch = "powerpc64")]
1058#[path = "powerpc64/xdp.rs"]
1059pub mod xdp;
1060#[cfg(feature = "auxvec")]
1061#[cfg(target_arch = "riscv32")]
1062#[path = "riscv32/auxvec.rs"]
1063pub mod auxvec;
1064#[cfg(feature = "bootparam")]
1065#[cfg(target_arch = "riscv32")]
1066#[path = "riscv32/bootparam.rs"]
1067pub mod bootparam;
1068#[cfg(feature = "btrfs")]
1069#[cfg(target_arch = "riscv32")]
1070#[path = "riscv32/btrfs.rs"]
1071pub mod btrfs;
1072#[cfg(feature = "elf_uapi")]
1073#[cfg(target_arch = "riscv32")]
1074#[path = "riscv32/elf_uapi.rs"]
1075pub mod elf_uapi;
1076#[cfg(feature = "errno")]
1077#[cfg(target_arch = "riscv32")]
1078#[path = "riscv32/errno.rs"]
1079pub mod errno;
1080#[cfg(feature = "general")]
1081#[cfg(target_arch = "riscv32")]
1082#[path = "riscv32/general.rs"]
1083pub mod general;
1084#[cfg(feature = "if_arp")]
1085#[cfg(target_arch = "riscv32")]
1086#[path = "riscv32/if_arp.rs"]
1087pub mod if_arp;
1088#[cfg(feature = "if_ether")]
1089#[cfg(target_arch = "riscv32")]
1090#[path = "riscv32/if_ether.rs"]
1091pub mod if_ether;
1092#[cfg(feature = "if_packet")]
1093#[cfg(target_arch = "riscv32")]
1094#[path = "riscv32/if_packet.rs"]
1095pub mod if_packet;
1096#[cfg(feature = "image")]
1097#[cfg(target_arch = "riscv32")]
1098#[path = "riscv32/image.rs"]
1099pub mod image;
1100#[cfg(feature = "io_uring")]
1101#[cfg(target_arch = "riscv32")]
1102#[path = "riscv32/io_uring.rs"]
1103pub mod io_uring;
1104#[cfg(feature = "ioctl")]
1105#[cfg(target_arch = "riscv32")]
1106#[path = "riscv32/ioctl.rs"]
1107pub mod ioctl;
1108#[cfg(feature = "landlock")]
1109#[cfg(target_arch = "riscv32")]
1110#[path = "riscv32/landlock.rs"]
1111pub mod landlock;
1112#[cfg(feature = "loop_device")]
1113#[cfg(target_arch = "riscv32")]
1114#[path = "riscv32/loop_device.rs"]
1115pub mod loop_device;
1116#[cfg(feature = "mempolicy")]
1117#[cfg(target_arch = "riscv32")]
1118#[path = "riscv32/mempolicy.rs"]
1119pub mod mempolicy;
1120#[cfg(feature = "net")]
1121#[cfg(target_arch = "riscv32")]
1122#[path = "riscv32/net.rs"]
1123pub mod net;
1124#[cfg(feature = "netlink")]
1125#[cfg(target_arch = "riscv32")]
1126#[path = "riscv32/netlink.rs"]
1127pub mod netlink;
1128#[cfg(feature = "prctl")]
1129#[cfg(target_arch = "riscv32")]
1130#[path = "riscv32/prctl.rs"]
1131pub mod prctl;
1132#[cfg(feature = "ptrace")]
1133#[cfg(target_arch = "riscv32")]
1134#[path = "riscv32/ptrace.rs"]
1135pub mod ptrace;
1136#[cfg(feature = "system")]
1137#[cfg(target_arch = "riscv32")]
1138#[path = "riscv32/system.rs"]
1139pub mod system;
1140#[cfg(feature = "xdp")]
1141#[cfg(target_arch = "riscv32")]
1142#[path = "riscv32/xdp.rs"]
1143pub mod xdp;
1144#[cfg(feature = "auxvec")]
1145#[cfg(target_arch = "riscv64")]
1146#[path = "riscv64/auxvec.rs"]
1147pub mod auxvec;
1148#[cfg(feature = "bootparam")]
1149#[cfg(target_arch = "riscv64")]
1150#[path = "riscv64/bootparam.rs"]
1151pub mod bootparam;
1152#[cfg(feature = "btrfs")]
1153#[cfg(target_arch = "riscv64")]
1154#[path = "riscv64/btrfs.rs"]
1155pub mod btrfs;
1156#[cfg(feature = "elf_uapi")]
1157#[cfg(target_arch = "riscv64")]
1158#[path = "riscv64/elf_uapi.rs"]
1159pub mod elf_uapi;
1160#[cfg(feature = "errno")]
1161#[cfg(target_arch = "riscv64")]
1162#[path = "riscv64/errno.rs"]
1163pub mod errno;
1164#[cfg(feature = "general")]
1165#[cfg(target_arch = "riscv64")]
1166#[path = "riscv64/general.rs"]
1167pub mod general;
1168#[cfg(feature = "if_arp")]
1169#[cfg(target_arch = "riscv64")]
1170#[path = "riscv64/if_arp.rs"]
1171pub mod if_arp;
1172#[cfg(feature = "if_ether")]
1173#[cfg(target_arch = "riscv64")]
1174#[path = "riscv64/if_ether.rs"]
1175pub mod if_ether;
1176#[cfg(feature = "if_packet")]
1177#[cfg(target_arch = "riscv64")]
1178#[path = "riscv64/if_packet.rs"]
1179pub mod if_packet;
1180#[cfg(feature = "image")]
1181#[cfg(target_arch = "riscv64")]
1182#[path = "riscv64/image.rs"]
1183pub mod image;
1184#[cfg(feature = "io_uring")]
1185#[cfg(target_arch = "riscv64")]
1186#[path = "riscv64/io_uring.rs"]
1187pub mod io_uring;
1188#[cfg(feature = "ioctl")]
1189#[cfg(target_arch = "riscv64")]
1190#[path = "riscv64/ioctl.rs"]
1191pub mod ioctl;
1192#[cfg(feature = "landlock")]
1193#[cfg(target_arch = "riscv64")]
1194#[path = "riscv64/landlock.rs"]
1195pub mod landlock;
1196#[cfg(feature = "loop_device")]
1197#[cfg(target_arch = "riscv64")]
1198#[path = "riscv64/loop_device.rs"]
1199pub mod loop_device;
1200#[cfg(feature = "mempolicy")]
1201#[cfg(target_arch = "riscv64")]
1202#[path = "riscv64/mempolicy.rs"]
1203pub mod mempolicy;
1204#[cfg(feature = "net")]
1205#[cfg(target_arch = "riscv64")]
1206#[path = "riscv64/net.rs"]
1207pub mod net;
1208#[cfg(feature = "netlink")]
1209#[cfg(target_arch = "riscv64")]
1210#[path = "riscv64/netlink.rs"]
1211pub mod netlink;
1212#[cfg(feature = "prctl")]
1213#[cfg(target_arch = "riscv64")]
1214#[path = "riscv64/prctl.rs"]
1215pub mod prctl;
1216#[cfg(feature = "ptrace")]
1217#[cfg(target_arch = "riscv64")]
1218#[path = "riscv64/ptrace.rs"]
1219pub mod ptrace;
1220#[cfg(feature = "system")]
1221#[cfg(target_arch = "riscv64")]
1222#[path = "riscv64/system.rs"]
1223pub mod system;
1224#[cfg(feature = "xdp")]
1225#[cfg(target_arch = "riscv64")]
1226#[path = "riscv64/xdp.rs"]
1227pub mod xdp;
1228#[cfg(feature = "auxvec")]
1229#[cfg(target_arch = "s390x")]
1230#[path = "s390x/auxvec.rs"]
1231pub mod auxvec;
1232#[cfg(feature = "bootparam")]
1233#[cfg(target_arch = "s390x")]
1234#[path = "s390x/bootparam.rs"]
1235pub mod bootparam;
1236#[cfg(feature = "btrfs")]
1237#[cfg(target_arch = "s390x")]
1238#[path = "s390x/btrfs.rs"]
1239pub mod btrfs;
1240#[cfg(feature = "elf_uapi")]
1241#[cfg(target_arch = "s390x")]
1242#[path = "s390x/elf_uapi.rs"]
1243pub mod elf_uapi;
1244#[cfg(feature = "errno")]
1245#[cfg(target_arch = "s390x")]
1246#[path = "s390x/errno.rs"]
1247pub mod errno;
1248#[cfg(feature = "general")]
1249#[cfg(target_arch = "s390x")]
1250#[path = "s390x/general.rs"]
1251pub mod general;
1252#[cfg(feature = "if_arp")]
1253#[cfg(target_arch = "s390x")]
1254#[path = "s390x/if_arp.rs"]
1255pub mod if_arp;
1256#[cfg(feature = "if_ether")]
1257#[cfg(target_arch = "s390x")]
1258#[path = "s390x/if_ether.rs"]
1259pub mod if_ether;
1260#[cfg(feature = "if_packet")]
1261#[cfg(target_arch = "s390x")]
1262#[path = "s390x/if_packet.rs"]
1263pub mod if_packet;
1264#[cfg(feature = "image")]
1265#[cfg(target_arch = "s390x")]
1266#[path = "s390x/image.rs"]
1267pub mod image;
1268#[cfg(feature = "io_uring")]
1269#[cfg(target_arch = "s390x")]
1270#[path = "s390x/io_uring.rs"]
1271pub mod io_uring;
1272#[cfg(feature = "ioctl")]
1273#[cfg(target_arch = "s390x")]
1274#[path = "s390x/ioctl.rs"]
1275pub mod ioctl;
1276#[cfg(feature = "landlock")]
1277#[cfg(target_arch = "s390x")]
1278#[path = "s390x/landlock.rs"]
1279pub mod landlock;
1280#[cfg(feature = "loop_device")]
1281#[cfg(target_arch = "s390x")]
1282#[path = "s390x/loop_device.rs"]
1283pub mod loop_device;
1284#[cfg(feature = "mempolicy")]
1285#[cfg(target_arch = "s390x")]
1286#[path = "s390x/mempolicy.rs"]
1287pub mod mempolicy;
1288#[cfg(feature = "net")]
1289#[cfg(target_arch = "s390x")]
1290#[path = "s390x/net.rs"]
1291pub mod net;
1292#[cfg(feature = "netlink")]
1293#[cfg(target_arch = "s390x")]
1294#[path = "s390x/netlink.rs"]
1295pub mod netlink;
1296#[cfg(feature = "prctl")]
1297#[cfg(target_arch = "s390x")]
1298#[path = "s390x/prctl.rs"]
1299pub mod prctl;
1300#[cfg(feature = "ptrace")]
1301#[cfg(target_arch = "s390x")]
1302#[path = "s390x/ptrace.rs"]
1303pub mod ptrace;
1304#[cfg(feature = "system")]
1305#[cfg(target_arch = "s390x")]
1306#[path = "s390x/system.rs"]
1307pub mod system;
1308#[cfg(feature = "xdp")]
1309#[cfg(target_arch = "s390x")]
1310#[path = "s390x/xdp.rs"]
1311pub mod xdp;
1312#[cfg(feature = "auxvec")]
1313#[cfg(target_arch = "sparc")]
1314#[path = "sparc/auxvec.rs"]
1315pub mod auxvec;
1316#[cfg(feature = "bootparam")]
1317#[cfg(target_arch = "sparc")]
1318#[path = "sparc/bootparam.rs"]
1319pub mod bootparam;
1320#[cfg(feature = "btrfs")]
1321#[cfg(target_arch = "sparc")]
1322#[path = "sparc/btrfs.rs"]
1323pub mod btrfs;
1324#[cfg(feature = "elf_uapi")]
1325#[cfg(target_arch = "sparc")]
1326#[path = "sparc/elf_uapi.rs"]
1327pub mod elf_uapi;
1328#[cfg(feature = "errno")]
1329#[cfg(target_arch = "sparc")]
1330#[path = "sparc/errno.rs"]
1331pub mod errno;
1332#[cfg(feature = "general")]
1333#[cfg(target_arch = "sparc")]
1334#[path = "sparc/general.rs"]
1335pub mod general;
1336#[cfg(feature = "if_arp")]
1337#[cfg(target_arch = "sparc")]
1338#[path = "sparc/if_arp.rs"]
1339pub mod if_arp;
1340#[cfg(feature = "if_ether")]
1341#[cfg(target_arch = "sparc")]
1342#[path = "sparc/if_ether.rs"]
1343pub mod if_ether;
1344#[cfg(feature = "if_packet")]
1345#[cfg(target_arch = "sparc")]
1346#[path = "sparc/if_packet.rs"]
1347pub mod if_packet;
1348#[cfg(feature = "image")]
1349#[cfg(target_arch = "sparc")]
1350#[path = "sparc/image.rs"]
1351pub mod image;
1352#[cfg(feature = "io_uring")]
1353#[cfg(target_arch = "sparc")]
1354#[path = "sparc/io_uring.rs"]
1355pub mod io_uring;
1356#[cfg(feature = "ioctl")]
1357#[cfg(target_arch = "sparc")]
1358#[path = "sparc/ioctl.rs"]
1359pub mod ioctl;
1360#[cfg(feature = "landlock")]
1361#[cfg(target_arch = "sparc")]
1362#[path = "sparc/landlock.rs"]
1363pub mod landlock;
1364#[cfg(feature = "loop_device")]
1365#[cfg(target_arch = "sparc")]
1366#[path = "sparc/loop_device.rs"]
1367pub mod loop_device;
1368#[cfg(feature = "mempolicy")]
1369#[cfg(target_arch = "sparc")]
1370#[path = "sparc/mempolicy.rs"]
1371pub mod mempolicy;
1372#[cfg(feature = "net")]
1373#[cfg(target_arch = "sparc")]
1374#[path = "sparc/net.rs"]
1375pub mod net;
1376#[cfg(feature = "netlink")]
1377#[cfg(target_arch = "sparc")]
1378#[path = "sparc/netlink.rs"]
1379pub mod netlink;
1380#[cfg(feature = "prctl")]
1381#[cfg(target_arch = "sparc")]
1382#[path = "sparc/prctl.rs"]
1383pub mod prctl;
1384#[cfg(feature = "ptrace")]
1385#[cfg(target_arch = "sparc")]
1386#[path = "sparc/ptrace.rs"]
1387pub mod ptrace;
1388#[cfg(feature = "system")]
1389#[cfg(target_arch = "sparc")]
1390#[path = "sparc/system.rs"]
1391pub mod system;
1392#[cfg(feature = "xdp")]
1393#[cfg(target_arch = "sparc")]
1394#[path = "sparc/xdp.rs"]
1395pub mod xdp;
1396#[cfg(feature = "auxvec")]
1397#[cfg(target_arch = "sparc64")]
1398#[path = "sparc64/auxvec.rs"]
1399pub mod auxvec;
1400#[cfg(feature = "bootparam")]
1401#[cfg(target_arch = "sparc64")]
1402#[path = "sparc64/bootparam.rs"]
1403pub mod bootparam;
1404#[cfg(feature = "btrfs")]
1405#[cfg(target_arch = "sparc64")]
1406#[path = "sparc64/btrfs.rs"]
1407pub mod btrfs;
1408#[cfg(feature = "elf_uapi")]
1409#[cfg(target_arch = "sparc64")]
1410#[path = "sparc64/elf_uapi.rs"]
1411pub mod elf_uapi;
1412#[cfg(feature = "errno")]
1413#[cfg(target_arch = "sparc64")]
1414#[path = "sparc64/errno.rs"]
1415pub mod errno;
1416#[cfg(feature = "general")]
1417#[cfg(target_arch = "sparc64")]
1418#[path = "sparc64/general.rs"]
1419pub mod general;
1420#[cfg(feature = "if_arp")]
1421#[cfg(target_arch = "sparc64")]
1422#[path = "sparc64/if_arp.rs"]
1423pub mod if_arp;
1424#[cfg(feature = "if_ether")]
1425#[cfg(target_arch = "sparc64")]
1426#[path = "sparc64/if_ether.rs"]
1427pub mod if_ether;
1428#[cfg(feature = "if_packet")]
1429#[cfg(target_arch = "sparc64")]
1430#[path = "sparc64/if_packet.rs"]
1431pub mod if_packet;
1432#[cfg(feature = "image")]
1433#[cfg(target_arch = "sparc64")]
1434#[path = "sparc64/image.rs"]
1435pub mod image;
1436#[cfg(feature = "io_uring")]
1437#[cfg(target_arch = "sparc64")]
1438#[path = "sparc64/io_uring.rs"]
1439pub mod io_uring;
1440#[cfg(feature = "ioctl")]
1441#[cfg(target_arch = "sparc64")]
1442#[path = "sparc64/ioctl.rs"]
1443pub mod ioctl;
1444#[cfg(feature = "landlock")]
1445#[cfg(target_arch = "sparc64")]
1446#[path = "sparc64/landlock.rs"]
1447pub mod landlock;
1448#[cfg(feature = "loop_device")]
1449#[cfg(target_arch = "sparc64")]
1450#[path = "sparc64/loop_device.rs"]
1451pub mod loop_device;
1452#[cfg(feature = "mempolicy")]
1453#[cfg(target_arch = "sparc64")]
1454#[path = "sparc64/mempolicy.rs"]
1455pub mod mempolicy;
1456#[cfg(feature = "net")]
1457#[cfg(target_arch = "sparc64")]
1458#[path = "sparc64/net.rs"]
1459pub mod net;
1460#[cfg(feature = "netlink")]
1461#[cfg(target_arch = "sparc64")]
1462#[path = "sparc64/netlink.rs"]
1463pub mod netlink;
1464#[cfg(feature = "prctl")]
1465#[cfg(target_arch = "sparc64")]
1466#[path = "sparc64/prctl.rs"]
1467pub mod prctl;
1468#[cfg(feature = "ptrace")]
1469#[cfg(target_arch = "sparc64")]
1470#[path = "sparc64/ptrace.rs"]
1471pub mod ptrace;
1472#[cfg(feature = "system")]
1473#[cfg(target_arch = "sparc64")]
1474#[path = "sparc64/system.rs"]
1475pub mod system;
1476#[cfg(feature = "xdp")]
1477#[cfg(target_arch = "sparc64")]
1478#[path = "sparc64/xdp.rs"]
1479pub mod xdp;
1480#[cfg(feature = "auxvec")]
1481#[cfg(target_arch = "x86")]
1482#[path = "x86/auxvec.rs"]
1483pub mod auxvec;
1484#[cfg(feature = "bootparam")]
1485#[cfg(target_arch = "x86")]
1486#[path = "x86/bootparam.rs"]
1487pub mod bootparam;
1488#[cfg(feature = "btrfs")]
1489#[cfg(target_arch = "x86")]
1490#[path = "x86/btrfs.rs"]
1491pub mod btrfs;
1492#[cfg(feature = "elf_uapi")]
1493#[cfg(target_arch = "x86")]
1494#[path = "x86/elf_uapi.rs"]
1495pub mod elf_uapi;
1496#[cfg(feature = "errno")]
1497#[cfg(target_arch = "x86")]
1498#[path = "x86/errno.rs"]
1499pub mod errno;
1500#[cfg(feature = "general")]
1501#[cfg(target_arch = "x86")]
1502#[path = "x86/general.rs"]
1503pub mod general;
1504#[cfg(feature = "if_arp")]
1505#[cfg(target_arch = "x86")]
1506#[path = "x86/if_arp.rs"]
1507pub mod if_arp;
1508#[cfg(feature = "if_ether")]
1509#[cfg(target_arch = "x86")]
1510#[path = "x86/if_ether.rs"]
1511pub mod if_ether;
1512#[cfg(feature = "if_packet")]
1513#[cfg(target_arch = "x86")]
1514#[path = "x86/if_packet.rs"]
1515pub mod if_packet;
1516#[cfg(feature = "image")]
1517#[cfg(target_arch = "x86")]
1518#[path = "x86/image.rs"]
1519pub mod image;
1520#[cfg(feature = "io_uring")]
1521#[cfg(target_arch = "x86")]
1522#[path = "x86/io_uring.rs"]
1523pub mod io_uring;
1524#[cfg(feature = "ioctl")]
1525#[cfg(target_arch = "x86")]
1526#[path = "x86/ioctl.rs"]
1527pub mod ioctl;
1528#[cfg(feature = "landlock")]
1529#[cfg(target_arch = "x86")]
1530#[path = "x86/landlock.rs"]
1531pub mod landlock;
1532#[cfg(feature = "loop_device")]
1533#[cfg(target_arch = "x86")]
1534#[path = "x86/loop_device.rs"]
1535pub mod loop_device;
1536#[cfg(feature = "mempolicy")]
1537#[cfg(target_arch = "x86")]
1538#[path = "x86/mempolicy.rs"]
1539pub mod mempolicy;
1540#[cfg(feature = "net")]
1541#[cfg(target_arch = "x86")]
1542#[path = "x86/net.rs"]
1543pub mod net;
1544#[cfg(feature = "netlink")]
1545#[cfg(target_arch = "x86")]
1546#[path = "x86/netlink.rs"]
1547pub mod netlink;
1548#[cfg(feature = "prctl")]
1549#[cfg(target_arch = "x86")]
1550#[path = "x86/prctl.rs"]
1551pub mod prctl;
1552#[cfg(feature = "ptrace")]
1553#[cfg(target_arch = "x86")]
1554#[path = "x86/ptrace.rs"]
1555pub mod ptrace;
1556#[cfg(feature = "system")]
1557#[cfg(target_arch = "x86")]
1558#[path = "x86/system.rs"]
1559pub mod system;
1560#[cfg(feature = "xdp")]
1561#[cfg(target_arch = "x86")]
1562#[path = "x86/xdp.rs"]
1563pub mod xdp;
1564#[cfg(feature = "auxvec")]
1565#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1566#[path = "x86_64/auxvec.rs"]
1567pub mod auxvec;
1568#[cfg(feature = "bootparam")]
1569#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1570#[path = "x86_64/bootparam.rs"]
1571pub mod bootparam;
1572#[cfg(feature = "btrfs")]
1573#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1574#[path = "x86_64/btrfs.rs"]
1575pub mod btrfs;
1576#[cfg(feature = "elf_uapi")]
1577#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1578#[path = "x86_64/elf_uapi.rs"]
1579pub mod elf_uapi;
1580#[cfg(feature = "errno")]
1581#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1582#[path = "x86_64/errno.rs"]
1583pub mod errno;
1584#[cfg(feature = "general")]
1585#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1586#[path = "x86_64/general.rs"]
1587pub mod general;
1588#[cfg(feature = "if_arp")]
1589#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1590#[path = "x86_64/if_arp.rs"]
1591pub mod if_arp;
1592#[cfg(feature = "if_ether")]
1593#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1594#[path = "x86_64/if_ether.rs"]
1595pub mod if_ether;
1596#[cfg(feature = "if_packet")]
1597#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1598#[path = "x86_64/if_packet.rs"]
1599pub mod if_packet;
1600#[cfg(feature = "image")]
1601#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1602#[path = "x86_64/image.rs"]
1603pub mod image;
1604#[cfg(feature = "io_uring")]
1605#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1606#[path = "x86_64/io_uring.rs"]
1607pub mod io_uring;
1608#[cfg(feature = "ioctl")]
1609#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1610#[path = "x86_64/ioctl.rs"]
1611pub mod ioctl;
1612#[cfg(feature = "landlock")]
1613#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1614#[path = "x86_64/landlock.rs"]
1615pub mod landlock;
1616#[cfg(feature = "loop_device")]
1617#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1618#[path = "x86_64/loop_device.rs"]
1619pub mod loop_device;
1620#[cfg(feature = "mempolicy")]
1621#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1622#[path = "x86_64/mempolicy.rs"]
1623pub mod mempolicy;
1624#[cfg(feature = "net")]
1625#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1626#[path = "x86_64/net.rs"]
1627pub mod net;
1628#[cfg(feature = "netlink")]
1629#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1630#[path = "x86_64/netlink.rs"]
1631pub mod netlink;
1632#[cfg(feature = "prctl")]
1633#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1634#[path = "x86_64/prctl.rs"]
1635pub mod prctl;
1636#[cfg(feature = "ptrace")]
1637#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1638#[path = "x86_64/ptrace.rs"]
1639pub mod ptrace;
1640#[cfg(feature = "system")]
1641#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1642#[path = "x86_64/system.rs"]
1643pub mod system;
1644#[cfg(feature = "xdp")]
1645#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
1646#[path = "x86_64/xdp.rs"]
1647pub mod xdp;
1648#[cfg(feature = "auxvec")]
1649#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1650#[path = "x32/auxvec.rs"]
1651pub mod auxvec;
1652#[cfg(feature = "bootparam")]
1653#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1654#[path = "x32/bootparam.rs"]
1655pub mod bootparam;
1656#[cfg(feature = "btrfs")]
1657#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1658#[path = "x32/btrfs.rs"]
1659pub mod btrfs;
1660#[cfg(feature = "elf_uapi")]
1661#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1662#[path = "x32/elf_uapi.rs"]
1663pub mod elf_uapi;
1664#[cfg(feature = "errno")]
1665#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1666#[path = "x32/errno.rs"]
1667pub mod errno;
1668#[cfg(feature = "general")]
1669#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1670#[path = "x32/general.rs"]
1671pub mod general;
1672#[cfg(feature = "if_arp")]
1673#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1674#[path = "x32/if_arp.rs"]
1675pub mod if_arp;
1676#[cfg(feature = "if_ether")]
1677#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1678#[path = "x32/if_ether.rs"]
1679pub mod if_ether;
1680#[cfg(feature = "if_packet")]
1681#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1682#[path = "x32/if_packet.rs"]
1683pub mod if_packet;
1684#[cfg(feature = "image")]
1685#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1686#[path = "x32/image.rs"]
1687pub mod image;
1688#[cfg(feature = "io_uring")]
1689#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1690#[path = "x32/io_uring.rs"]
1691pub mod io_uring;
1692#[cfg(feature = "ioctl")]
1693#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1694#[path = "x32/ioctl.rs"]
1695pub mod ioctl;
1696#[cfg(feature = "landlock")]
1697#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1698#[path = "x32/landlock.rs"]
1699pub mod landlock;
1700#[cfg(feature = "loop_device")]
1701#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1702#[path = "x32/loop_device.rs"]
1703pub mod loop_device;
1704#[cfg(feature = "mempolicy")]
1705#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1706#[path = "x32/mempolicy.rs"]
1707pub mod mempolicy;
1708#[cfg(feature = "net")]
1709#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1710#[path = "x32/net.rs"]
1711pub mod net;
1712#[cfg(feature = "netlink")]
1713#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1714#[path = "x32/netlink.rs"]
1715pub mod netlink;
1716#[cfg(feature = "prctl")]
1717#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1718#[path = "x32/prctl.rs"]
1719pub mod prctl;
1720#[cfg(feature = "ptrace")]
1721#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1722#[path = "x32/ptrace.rs"]
1723pub mod ptrace;
1724#[cfg(feature = "system")]
1725#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1726#[path = "x32/system.rs"]
1727pub mod system;
1728#[cfg(feature = "xdp")]
1729#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
1730#[path = "x32/xdp.rs"]
1731pub mod xdp;