[INFO] fetching crate redbpf-macros 2.3.0... [INFO] testing redbpf-macros-2.3.0 against 1.60.0 for beta-1.61-1 [INFO] extracting crate redbpf-macros 2.3.0 into /workspace/builds/worker-38/source [INFO] validating manifest of crates.io crate redbpf-macros 2.3.0 on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate redbpf-macros 2.3.0 [INFO] finished tweaking crates.io crate redbpf-macros 2.3.0 [INFO] tweaked toml for crates.io crate redbpf-macros 2.3.0 written to /workspace/builds/worker-38/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tracing-serde v0.1.3 [INFO] [stderr] Downloaded ufmt-macros v0.1.1 [INFO] [stderr] Downloaded ufmt v0.1.0 [INFO] [stderr] Downloaded zero v0.1.2 [INFO] [stderr] Downloaded ufmt-write v0.1.0 [INFO] [stderr] Downloaded bpf-sys v2.3.0 [INFO] [stderr] Downloaded redbpf-macros v2.3.0 [INFO] [stderr] Downloaded cargo-bpf v2.3.0 [INFO] [stderr] Downloaded redbpf-probes v2.3.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-38/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-38/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7f24a59c04bf588546ad92e9abb96577ca8664d3eda73c22c8c2d140cd08698f [INFO] running `Command { std: "docker" "start" "-a" "7f24a59c04bf588546ad92e9abb96577ca8664d3eda73c22c8c2d140cd08698f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7f24a59c04bf588546ad92e9abb96577ca8664d3eda73c22c8c2d140cd08698f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7f24a59c04bf588546ad92e9abb96577ca8664d3eda73c22c8c2d140cd08698f", kill_on_drop: false }` [INFO] [stdout] 7f24a59c04bf588546ad92e9abb96577ca8664d3eda73c22c8c2d140cd08698f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-38/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-38/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 80ae3a0b9f097ad54c0ecd9a090470660f890bba4ab0d720728ba2809fb76a88 [INFO] running `Command { std: "docker" "start" "-a" "80ae3a0b9f097ad54c0ecd9a090470660f890bba4ab0d720728ba2809fb76a88", kill_on_drop: false }` [INFO] [stderr] Compiling ucd-trie v0.1.3 [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling getrandom v0.2.6 [INFO] [stderr] Compiling uuid v0.8.2 [INFO] [stderr] Compiling pest v2.1.3 [INFO] [stderr] Compiling semver-parser v0.10.2 [INFO] [stderr] Compiling semver v0.11.0 [INFO] [stderr] Compiling rustc_version v0.3.3 [INFO] [stderr] Compiling redbpf-macros v2.3.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 19.03s [INFO] running `Command { std: "docker" "inspect" "80ae3a0b9f097ad54c0ecd9a090470660f890bba4ab0d720728ba2809fb76a88", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "80ae3a0b9f097ad54c0ecd9a090470660f890bba4ab0d720728ba2809fb76a88", kill_on_drop: false }` [INFO] [stdout] 80ae3a0b9f097ad54c0ecd9a090470660f890bba4ab0d720728ba2809fb76a88 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-38/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-38/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6b39e3d7205bf8aa18479055ad4427d0869bb97e216407ee934a6b35cf91b313 [INFO] running `Command { std: "docker" "start" "-a" "6b39e3d7205bf8aa18479055ad4427d0869bb97e216407ee934a6b35cf91b313", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling regex-syntax v0.6.25 [INFO] [stderr] Compiling glob v0.3.0 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling bindgen v0.59.2 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling shlex v1.1.0 [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Compiling cc v1.0.73 [INFO] [stderr] Compiling anyhow v1.0.56 [INFO] [stderr] Compiling rustversion v1.0.6 [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Compiling itoa v1.0.1 [INFO] [stderr] Compiling proc-macro-hack v0.5.19 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling zero v0.1.2 [INFO] [stderr] Compiling ryu v1.0.9 [INFO] [stderr] Compiling smallvec v1.8.0 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling ufmt-write v0.1.0 [INFO] [stderr] Compiling cty v0.2.2 [INFO] [stderr] Compiling libloading v0.7.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling tracing-core v0.1.25 [INFO] [stderr] Compiling sharded-slab v0.1.4 [INFO] [stderr] Compiling thread_local v1.1.4 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling tracing-attributes v0.1.20 [INFO] [stderr] Compiling redbpf-macros v2.3.0 [INFO] [stderr] Compiling tempfile v3.3.0 [INFO] [stderr] Compiling clang-sys v1.3.1 [INFO] [stderr] Compiling tracing-log v0.1.2 [INFO] [stderr] Compiling aho-corasick v0.7.18 [INFO] [stderr] Compiling nom v7.1.1 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling regex v1.5.5 [INFO] [stderr] Compiling matchers v0.0.1 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling tracing v0.1.33 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Compiling ufmt-macros v0.1.1 [INFO] [stderr] Compiling tracing-serde v0.1.3 [INFO] [stderr] Compiling tracing-subscriber v0.2.25 [INFO] [stderr] Compiling ufmt v0.1.0 [INFO] [stderr] Compiling bpf-sys v2.3.0 [INFO] [stderr] Compiling cargo-bpf v2.3.0 [INFO] [stderr] Compiling redbpf-probes v2.3.0 [INFO] [stdout] error[E0428]: the name `BPF_ANY` is defined multiple times [INFO] [stdout] --> /opt/rustwide/target/debug/build/redbpf-probes-4d36d0df496888c3/out/gen_bindings.rs:12:6171 [INFO] [stdout] | [INFO] [stdout] 10 | ...t = :: cty :: c_uint ; pub type phys_addr_t = _cargo_bpf_u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct atomic_t { pub counter : :: cty :: c_int , } # [test] fn bindgen_test_layout_atomic_t () { assert_eq ! (:: core :: mem :: size_of :: < atomic_t > () , 4usize , concat ! ("Size of: " , stringify ! (atomic_t))) ; assert_eq ! (:: core :: mem :: align_of :: < atomic_t > () , 4usize , concat ! ("Alignment of " , stringify ! (atomic_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < atomic_t > ())) . counter as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (atomic_t) , "::" , stringify ! (counter))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct atomic64_t { pub counter : s64 , } # [test] fn bindgen_test_layout_atomic64_t () { assert_eq ! (:: core :: mem :: size_of :: < atomic64_t > () , 8usize , concat ! ("Size of: " , stringify ! (atomic64_t))) ; assert_eq ! (:: core :: mem :: align_of :: < atomic64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (atomic64_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < atomic64_t > ())) . counter as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (atomic64_t) , "::" , stringify ! (counter))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct list_head { pub next : * mut list_head , pub prev : * mut list_head , } # [test] fn bindgen_test_layout_list_head () { assert_eq ! (:: core :: mem :: size_of :: < list_head > () , 16usize , concat ! ("Size of: " , stringify ! (list_head))) ; assert_eq ! (:: core :: mem :: align_of :: < list_head > () , 8usize , concat ! ("Alignment of " , stringify ! (list_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_head > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (list_head) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_head > ())) . prev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (list_head) , "::" , stringify ! (prev))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hlist_head { pub first : * mut hlist_node , } # [test] fn bindgen_test_layout_hlist_head () { assert_eq ! (:: core :: mem :: size_of :: < hlist_head > () , 8usize , concat ! ("Size of: " , stringify ! (hlist_head))) ; assert_eq ! (:: core :: mem :: align_of :: < hlist_head > () , 8usize , concat ! ("Alignment of " , stringify ! (hlist_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_head > ())) . first as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hlist_head) , "::" , stringify ! (first))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hlist_node { pub next : * mut hlist_node , pub pprev : * mut * mut hlist_node , } # [test] fn bindgen_test_layout_hlist_node () { assert_eq ! (:: core :: mem :: size_of :: < hlist_node > () , 16usize , concat ! ("Size of: " , stringify ! (hlist_node))) ; assert_eq ! (:: core :: mem :: align_of :: < hlist_node > () , 8usize , concat ! ("Alignment of " , stringify ! (hlist_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_node > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hlist_node) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_node > ())) . pprev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hlist_node) , "::" , stringify ! (pprev))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct callback_head { pub next : * mut callback_head , pub func : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut callback_head) > , } # [test] fn bindgen_test_layout_callback_head () { assert_eq ! (:: core :: mem :: size_of :: < callback_head > () , 16usize , concat ! ("Size of: " , stringify ! (callback_head))) ; assert_eq ! (:: core :: mem :: align_of :: < callback_head > () , 8usize , concat ! ("Alignment of " , stringify ! (callback_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < callback_head > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (callback_head) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < callback_head > ())) . func as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (callback_head) , "::" , stringify ! (func))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct lock_class_key { } # [test] fn bindgen_test_layout_lock_class_key () { assert_eq ! (:: core :: mem :: size_of :: < lock_class_key > () , 0usize , concat ! ("Size of: " , stringify ! (lock_class_key))) ; assert_eq ! (:: core :: mem :: align_of :: < lock_class_key > () , 1usize , concat ! ("Alignment of " , stringify ! (lock_class_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct file_system_type { pub name : * const :: cty :: c_char , pub fs_flags : :: cty :: c_int , pub init_fs_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context) -> :: cty :: c_int > , pub parameters : * const fs_parameter_spec , pub mount : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_system_type , arg2 : :: cty :: c_int , arg3 : * const :: cty :: c_char , arg4 : * mut :: cty :: c_void) -> * mut dentry > , pub kill_sb : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) > , pub owner : * mut module , pub next : * mut file_system_type , pub fs_supers : hlist_head , pub s_lock_key : lock_class_key , pub s_umount_key : lock_class_key , pub s_vfs_rename_key : lock_class_key , pub s_writers_key : [lock_class_key ; 3usize] , pub i_lock_key : lock_class_key , pub i_mutex_key : lock_class_key , pub i_mutex_dir_key : lock_class_key , } # [test] fn bindgen_test_layout_file_system_type () { assert_eq ! (:: core :: mem :: size_of :: < file_system_type > () , 72usize , concat ! ("Size of: " , stringify ! (file_system_type))) ; assert_eq ! (:: core :: mem :: align_of :: < file_system_type > () , 8usize , concat ! ("Alignment of " , stringify ! (file_system_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . fs_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (fs_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . init_fs_context as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (init_fs_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . parameters as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (parameters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . mount as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (mount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . kill_sb as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (kill_sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . owner as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . next as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . fs_supers as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (fs_supers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . s_lock_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (s_lock_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . s_umount_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (s_umount_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . s_vfs_rename_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (s_vfs_rename_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . s_writers_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (s_writers_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . i_lock_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (i_lock_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . i_mutex_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (i_mutex_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_system_type > ())) . i_mutex_dir_key as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_system_type) , "::" , stringify ! (i_mutex_dir_key))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct qspinlock { pub __bindgen_anon_1 : qspinlock__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union qspinlock__bindgen_ty_1 { pub val : atomic_t , pub __bindgen_anon_1 : qspinlock__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : qspinlock__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qspinlock__bindgen_ty_1__bindgen_ty_1 { pub locked : _cargo_bpf_u8 , pub pending : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_qspinlock__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < qspinlock__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Size of: " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < qspinlock__bindgen_ty_1__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qspinlock__bindgen_ty_1__bindgen_ty_1 > ())) . locked as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (locked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qspinlock__bindgen_ty_1__bindgen_ty_1 > ())) . pending as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (pending))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qspinlock__bindgen_ty_1__bindgen_ty_2 { pub locked_pending : _cargo_bpf_u16 , pub tail : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_qspinlock__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < qspinlock__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < qspinlock__bindgen_ty_1__bindgen_ty_2 > () , 2usize , concat ! ("Alignment of " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qspinlock__bindgen_ty_1__bindgen_ty_2 > ())) . locked_pending as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (locked_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qspinlock__bindgen_ty_1__bindgen_ty_2 > ())) . tail as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (qspinlock__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (tail))) ; } # [test] fn bindgen_test_layout_qspinlock__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < qspinlock__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (qspinlock__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < qspinlock__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (qspinlock__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qspinlock__bindgen_ty_1 > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qspinlock__bindgen_ty_1) , "::" , stringify ! (val))) ; } # [test] fn bindgen_test_layout_qspinlock () { assert_eq ! (:: core :: mem :: size_of :: < qspinlock > () , 4usize , concat ! ("Size of: " , stringify ! (qspinlock))) ; assert_eq ! (:: core :: mem :: align_of :: < qspinlock > () , 4usize , concat ! ("Alignment of " , stringify ! (qspinlock))) ; } pub type arch_spinlock_t = qspinlock ; # [repr (C)] # [derive (Copy , Clone)] pub struct qrwlock { pub __bindgen_anon_1 : qrwlock__bindgen_ty_1 , pub wait_lock : arch_spinlock_t , } # [repr (C)] # [derive (Copy , Clone)] pub union qrwlock__bindgen_ty_1 { pub cnts : atomic_t , pub __bindgen_anon_1 : qrwlock__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qrwlock__bindgen_ty_1__bindgen_ty_1 { pub wlocked : _cargo_bpf_u8 , pub __lstate : [_cargo_bpf_u8 ; 3usize] , } # [test] fn bindgen_test_layout_qrwlock__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < qrwlock__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (qrwlock__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < qrwlock__bindgen_ty_1__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (qrwlock__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qrwlock__bindgen_ty_1__bindgen_ty_1 > ())) . wlocked as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qrwlock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (wlocked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qrwlock__bindgen_ty_1__bindgen_ty_1 > ())) . __lstate as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (qrwlock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (__lstate))) ; } # [test] fn bindgen_test_layout_qrwlock__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < qrwlock__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (qrwlock__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < qrwlock__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (qrwlock__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qrwlock__bindgen_ty_1 > ())) . cnts as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qrwlock__bindgen_ty_1) , "::" , stringify ! (cnts))) ; } # [test] fn bindgen_test_layout_qrwlock () { assert_eq ! (:: core :: mem :: size_of :: < qrwlock > () , 8usize , concat ! ("Size of: " , stringify ! (qrwlock))) ; assert_eq ! (:: core :: mem :: align_of :: < qrwlock > () , 4usize , concat ! ("Alignment of " , stringify ! (qrwlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qrwlock > ())) . wait_lock as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (qrwlock) , "::" , stringify ! (wait_lock))) ; } pub type arch_rwlock_t = qrwlock ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct lockdep_map { } # [test] fn bindgen_test_layout_lockdep_map () { assert_eq ! (:: core :: mem :: size_of :: < lockdep_map > () , 0usize , concat ! ("Size of: " , stringify ! (lockdep_map))) ; assert_eq ! (:: core :: mem :: align_of :: < lockdep_map > () , 1usize , concat ! ("Alignment of " , stringify ! (lockdep_map))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct raw_spinlock { pub raw_lock : arch_spinlock_t , } # [test] fn bindgen_test_layout_raw_spinlock () { assert_eq ! (:: core :: mem :: size_of :: < raw_spinlock > () , 4usize , concat ! ("Size of: " , stringify ! (raw_spinlock))) ; assert_eq ! (:: core :: mem :: align_of :: < raw_spinlock > () , 4usize , concat ! ("Alignment of " , stringify ! (raw_spinlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < raw_spinlock > ())) . raw_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (raw_spinlock) , "::" , stringify ! (raw_lock))) ; } pub type raw_spinlock_t = raw_spinlock ; # [repr (C)] # [derive (Copy , Clone)] pub struct spinlock { pub __bindgen_anon_1 : spinlock__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union spinlock__bindgen_ty_1 { pub rlock : raw_spinlock , } # [test] fn bindgen_test_layout_spinlock__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < spinlock__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (spinlock__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < spinlock__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (spinlock__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < spinlock__bindgen_ty_1 > ())) . rlock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (spinlock__bindgen_ty_1) , "::" , stringify ! (rlock))) ; } # [test] fn bindgen_test_layout_spinlock () { assert_eq ! (:: core :: mem :: size_of :: < spinlock > () , 4usize , concat ! ("Size of: " , stringify ! (spinlock))) ; assert_eq ! (:: core :: mem :: align_of :: < spinlock > () , 4usize , concat ! ("Alignment of " , stringify ! (spinlock))) ; } pub type spinlock_t = spinlock ; # [repr (C)] # [derive (Copy , Clone)] pub struct rwlock_t { pub raw_lock : arch_rwlock_t , } # [test] fn bindgen_test_layout_rwlock_t () { assert_eq ! (:: core :: mem :: size_of :: < rwlock_t > () , 8usize , concat ! ("Size of: " , stringify ! (rwlock_t))) ; assert_eq ! (:: core :: mem :: align_of :: < rwlock_t > () , 4usize , concat ! ("Alignment of " , stringify ! (rwlock_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rwlock_t > ())) . raw_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rwlock_t) , "::" , stringify ! (raw_lock))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ratelimit_state { pub lock : raw_spinlock_t , pub interval : :: cty :: c_int , pub burst : :: cty :: c_int , pub printed : :: cty :: c_int , pub missed : :: cty :: c_int , pub begin : :: cty :: c_ulong , pub flags : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_ratelimit_state () { assert_eq ! (:: core :: mem :: size_of :: < ratelimit_state > () , 40usize , concat ! ("Size of: " , stringify ! (ratelimit_state))) ; assert_eq ! (:: core :: mem :: align_of :: < ratelimit_state > () , 8usize , concat ! ("Alignment of " , stringify ! (ratelimit_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . interval as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . burst as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (burst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . printed as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (printed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . missed as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (missed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . begin as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (begin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ratelimit_state > ())) . flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ratelimit_state) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct jump_entry { pub code : s32 , pub target : s32 , pub key : :: cty :: c_long , } # [test] fn bindgen_test_layout_jump_entry () { assert_eq ! (:: core :: mem :: size_of :: < jump_entry > () , 16usize , concat ! ("Size of: " , stringify ! (jump_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < jump_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (jump_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < jump_entry > ())) . code as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (jump_entry) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < jump_entry > ())) . target as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (jump_entry) , "::" , stringify ! (target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < jump_entry > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (jump_entry) , "::" , stringify ! (key))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct static_key { pub enabled : atomic_t , pub __bindgen_anon_1 : static_key__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union static_key__bindgen_ty_1 { pub type_ : :: cty :: c_ulong , pub entries : * mut jump_entry , pub next : * mut static_key_mod , } # [test] fn bindgen_test_layout_static_key__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < static_key__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (static_key__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < static_key__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (static_key__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_key__bindgen_ty_1 > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_key__bindgen_ty_1) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_key__bindgen_ty_1 > ())) . entries as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_key__bindgen_ty_1) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_key__bindgen_ty_1 > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_key__bindgen_ty_1) , "::" , stringify ! (next))) ; } # [test] fn bindgen_test_layout_static_key () { assert_eq ! (:: core :: mem :: size_of :: < static_key > () , 16usize , concat ! ("Size of: " , stringify ! (static_key))) ; assert_eq ! (:: core :: mem :: align_of :: < static_key > () , 8usize , concat ! ("Alignment of " , stringify ! (static_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_key > ())) . enabled as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_key) , "::" , stringify ! (enabled))) ; } pub type fl_owner_t = * mut :: cty :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct file_operations { pub owner : * mut module , pub llseek : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : loff_t , arg3 : :: cty :: c_int) -> loff_t > , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut :: cty :: c_char , arg3 : size_t , arg4 : * mut loff_t) -> ssize_t > , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * const :: cty :: c_char , arg3 : size_t , arg4 : * mut loff_t) -> ssize_t > , pub read_iter : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kiocb , arg2 : * mut iov_iter) -> ssize_t > , pub write_iter : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kiocb , arg2 : * mut iov_iter) -> ssize_t > , pub iopoll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kiocb , arg2 : bool_) -> :: cty :: c_int > , pub iterate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut dir_context) -> :: cty :: c_int > , pub iterate_shared : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut dir_context) -> :: cty :: c_int > , pub poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut poll_table_struct) -> __poll_t > , pub unlocked_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_long > , pub compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_long > , pub mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut vm_area_struct) -> :: cty :: c_int > , pub mmap_supported_flags : :: cty :: c_ulong , pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut file) -> :: cty :: c_int > , pub flush : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : fl_owner_t) -> :: cty :: c_int > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut file) -> :: cty :: c_int > , pub fsync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : loff_t , arg3 : loff_t , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub fasync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int , arg2 : * mut file , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub lock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_int , arg3 : * mut file_lock) -> :: cty :: c_int > , pub sendpage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut page , arg3 : :: cty :: c_int , arg4 : size_t , arg5 : * mut loff_t , arg6 : :: cty :: c_int) -> ssize_t > , pub get_unmapped_area : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_ulong , arg5 : :: cty :: c_ulong) -> :: cty :: c_ulong > , pub check_flags : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int) -> :: cty :: c_int > , pub setfl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_ulong) -> :: cty :: c_int > , pub flock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_int , arg3 : * mut file_lock) -> :: cty :: c_int > , pub splice_write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pipe_inode_info , arg2 : * mut file , arg3 : * mut loff_t , arg4 : size_t , arg5 : :: cty :: c_uint) -> ssize_t > , pub splice_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut loff_t , arg3 : * mut pipe_inode_info , arg4 : size_t , arg5 : :: cty :: c_uint) -> ssize_t > , pub setlease : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_long , arg3 : * mut * mut file_lock , arg4 : * mut * mut :: cty :: c_void) -> :: cty :: c_int > , pub fallocate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_int , arg3 : loff_t , arg4 : loff_t) -> :: cty :: c_long > , pub show_fdinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut file) > , pub copy_file_range : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : loff_t , arg3 : * mut file , arg4 : loff_t , arg5 : size_t , arg6 : :: cty :: c_uint) -> ssize_t > , pub remap_file_range : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : loff_t , arg3 : * mut file , arg4 : loff_t , arg5 : loff_t , arg6 : :: cty :: c_uint) -> loff_t > , pub fadvise : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : loff_t , arg3 : loff_t , arg4 : :: cty :: c_int) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_file_operations () { assert_eq ! (:: core :: mem :: size_of :: < file_operations > () , 264usize , concat ! ("Size of: " , stringify ! (file_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < file_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (file_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . owner as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . llseek as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (llseek))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . read as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . write as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . read_iter as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (read_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . write_iter as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (write_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . iopoll as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (iopoll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . iterate as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (iterate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . iterate_shared as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (iterate_shared))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . poll as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . unlocked_ioctl as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (unlocked_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . compat_ioctl as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . mmap as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . mmap_supported_flags as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (mmap_supported_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . open as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . flush as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (flush))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . release as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . fsync as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (fsync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . fasync as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (fasync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . lock as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . sendpage as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (sendpage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . get_unmapped_area as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (get_unmapped_area))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . check_flags as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (check_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . setfl as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (setfl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . flock as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (flock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . splice_write as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (splice_write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . splice_read as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (splice_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . setlease as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (setlease))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . fallocate as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (fallocate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . show_fdinfo as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (show_fdinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . copy_file_range as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (copy_file_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . remap_file_range as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (remap_file_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_operations > ())) . fadvise as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (file_operations) , "::" , stringify ! (fadvise))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct static_call_site { pub addr : s32 , pub key : s32 , } # [test] fn bindgen_test_layout_static_call_site () { assert_eq ! (:: core :: mem :: size_of :: < static_call_site > () , 8usize , concat ! ("Size of: " , stringify ! (static_call_site))) ; assert_eq ! (:: core :: mem :: align_of :: < static_call_site > () , 4usize , concat ! ("Alignment of " , stringify ! (static_call_site))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_site > ())) . addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_call_site) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_site > ())) . key as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (static_call_site) , "::" , stringify ! (key))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct static_call_key { pub func : * mut :: cty :: c_void , pub __bindgen_anon_1 : static_call_key__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union static_call_key__bindgen_ty_1 { pub type_ : :: cty :: c_ulong , pub mods : * mut static_call_mod , pub sites : * mut static_call_site , } # [test] fn bindgen_test_layout_static_call_key__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < static_call_key__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (static_call_key__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < static_call_key__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (static_call_key__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_key__bindgen_ty_1 > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_call_key__bindgen_ty_1) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_key__bindgen_ty_1 > ())) . mods as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_call_key__bindgen_ty_1) , "::" , stringify ! (mods))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_key__bindgen_ty_1 > ())) . sites as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_call_key__bindgen_ty_1) , "::" , stringify ! (sites))) ; } # [test] fn bindgen_test_layout_static_call_key () { assert_eq ! (:: core :: mem :: size_of :: < static_call_key > () , 16usize , concat ! ("Size of: " , stringify ! (static_call_key))) ; assert_eq ! (:: core :: mem :: align_of :: < static_call_key > () , 8usize , concat ! ("Alignment of " , stringify ! (static_call_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_key > ())) . func as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_call_key) , "::" , stringify ! (func))) ; } pub type time64_t = __s64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_timespec { pub tv_sec : __kernel_time64_t , pub tv_nsec : :: cty :: c_longlong , } # [test] fn bindgen_test_layout___kernel_timespec () { assert_eq ! (:: core :: mem :: size_of :: < __kernel_timespec > () , 16usize , concat ! ("Size of: " , stringify ! (__kernel_timespec))) ; assert_eq ! (:: core :: mem :: align_of :: < __kernel_timespec > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_timespec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __kernel_timespec > ())) . tv_sec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_timespec) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __kernel_timespec > ())) . tv_nsec as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__kernel_timespec) , "::" , stringify ! (tv_nsec))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timespec64 { pub tv_sec : time64_t , pub tv_nsec : :: cty :: c_long , } # [test] fn bindgen_test_layout_timespec64 () { assert_eq ! (:: core :: mem :: size_of :: < timespec64 > () , 16usize , concat ! ("Size of: " , stringify ! (timespec64))) ; assert_eq ! (:: core :: mem :: align_of :: < timespec64 > () , 8usize , concat ! ("Alignment of " , stringify ! (timespec64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timespec64 > ())) . tv_sec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timespec64) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timespec64 > ())) . tv_nsec as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timespec64) , "::" , stringify ! (tv_nsec))) ; } pub const timespec_type_TT_NONE : timespec_type = 0 ; pub const timespec_type_TT_NATIVE : timespec_type = 1 ; pub const timespec_type_TT_COMPAT : timespec_type = 2 ; pub type timespec_type = :: cty :: c_uint ; pub type old_time32_t = s32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct old_timespec32 { pub tv_sec : old_time32_t , pub tv_nsec : s32 , } # [test] fn bindgen_test_layout_old_timespec32 () { assert_eq ! (:: core :: mem :: size_of :: < old_timespec32 > () , 8usize , concat ! ("Size of: " , stringify ! (old_timespec32))) ; assert_eq ! (:: core :: mem :: align_of :: < old_timespec32 > () , 4usize , concat ! ("Alignment of " , stringify ! (old_timespec32))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < old_timespec32 > ())) . tv_sec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (old_timespec32) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < old_timespec32 > ())) . tv_nsec as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (old_timespec32) , "::" , stringify ! (tv_nsec))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct restart_block { pub arch_data : :: cty :: c_ulong , pub fn_ : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut restart_block) -> :: cty :: c_long > , pub __bindgen_anon_1 : restart_block__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union restart_block__bindgen_ty_1 { pub futex : restart_block__bindgen_ty_1__bindgen_ty_1 , pub nanosleep : restart_block__bindgen_ty_1__bindgen_ty_2 , pub poll : restart_block__bindgen_ty_1__bindgen_ty_3 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct restart_block__bindgen_ty_1__bindgen_ty_1 { pub uaddr : * mut _cargo_bpf_u32 , pub val : _cargo_bpf_u32 , pub flags : _cargo_bpf_u32 , pub bitset : _cargo_bpf_u32 , pub time : _cargo_bpf_u64 , pub uaddr2 : * mut _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_restart_block__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < restart_block__bindgen_ty_1__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < restart_block__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_1 > ())) . uaddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (uaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_1 > ())) . val as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_1 > ())) . flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_1 > ())) . bitset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (bitset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_1 > ())) . time as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_1 > ())) . uaddr2 as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (uaddr2))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct restart_block__bindgen_ty_1__bindgen_ty_2 { pub clockid : clockid_t , pub type_ : timespec_type , pub __bindgen_anon_1 : restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 , pub expires : _cargo_bpf_u64 , } # [repr (C)] # [derive (Copy , Clone)] pub union restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 { pub rmtp : * mut __kernel_timespec , pub compat_rmtp : * mut old_timespec32 , } # [test] fn bindgen_test_layout_restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 > ())) . rmtp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (rmtp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 > ())) . compat_rmtp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (compat_rmtp))) ; } # [test] fn bindgen_test_layout_restart_block__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < restart_block__bindgen_ty_1__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < restart_block__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_2 > ())) . clockid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (clockid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_2 > ())) . type_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_2 > ())) . expires as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (expires))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct restart_block__bindgen_ty_1__bindgen_ty_3 { pub ufds : * mut pollfd , pub nfds : :: cty :: c_int , pub has_timeout : :: cty :: c_int , pub tv_sec : :: cty :: c_ulong , pub tv_nsec : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_restart_block__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < restart_block__bindgen_ty_1__bindgen_ty_3 > () , 32usize , concat ! ("Size of: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < restart_block__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_3 > ())) . ufds as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (ufds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_3 > ())) . nfds as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (nfds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_3 > ())) . has_timeout as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (has_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_3 > ())) . tv_sec as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1__bindgen_ty_3 > ())) . tv_nsec as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (tv_nsec))) ; } # [test] fn bindgen_test_layout_restart_block__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < restart_block__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (restart_block__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < restart_block__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (restart_block__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1 > ())) . futex as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1) , "::" , stringify ! (futex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1 > ())) . nanosleep as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1) , "::" , stringify ! (nanosleep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block__bindgen_ty_1 > ())) . poll as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block__bindgen_ty_1) , "::" , stringify ! (poll))) ; } # [test] fn bindgen_test_layout_restart_block () { assert_eq ! (:: core :: mem :: size_of :: < restart_block > () , 56usize , concat ! ("Size of: " , stringify ! (restart_block))) ; assert_eq ! (:: core :: mem :: align_of :: < restart_block > () , 8usize , concat ! ("Alignment of " , stringify ! (restart_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block > ())) . arch_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (restart_block) , "::" , stringify ! (arch_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < restart_block > ())) . fn_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (restart_block) , "::" , stringify ! (fn_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct thread_info { pub flags : :: cty :: c_ulong , pub syscall_work : :: cty :: c_ulong , pub status : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_thread_info () { assert_eq ! (:: core :: mem :: size_of :: < thread_info > () , 24usize , concat ! ("Size of: " , stringify ! (thread_info))) ; assert_eq ! (:: core :: mem :: align_of :: < thread_info > () , 8usize , concat ! ("Alignment of " , stringify ! (thread_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_info > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (thread_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_info > ())) . syscall_work as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (thread_info) , "::" , stringify ! (syscall_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_info > ())) . status as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (thread_info) , "::" , stringify ! (status))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct refcount_struct { pub refs : atomic_t , } # [test] fn bindgen_test_layout_refcount_struct () { assert_eq ! (:: core :: mem :: size_of :: < refcount_struct > () , 4usize , concat ! ("Size of: " , stringify ! (refcount_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < refcount_struct > () , 4usize , concat ! ("Alignment of " , stringify ! (refcount_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < refcount_struct > ())) . refs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (refcount_struct) , "::" , stringify ! (refs))) ; } pub type refcount_t = refcount_struct ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct llist_node { pub next : * mut llist_node , } # [test] fn bindgen_test_layout_llist_node () { assert_eq ! (:: core :: mem :: size_of :: < llist_node > () , 8usize , concat ! ("Size of: " , stringify ! (llist_node))) ; assert_eq ! (:: core :: mem :: align_of :: < llist_node > () , 8usize , concat ! ("Alignment of " , stringify ! (llist_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < llist_node > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (llist_node) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __call_single_node { pub llist : llist_node , pub __bindgen_anon_1 : __call_single_node__bindgen_ty_1 , pub src : _cargo_bpf_u16 , pub dst : _cargo_bpf_u16 , } # [repr (C)] # [derive (Copy , Clone)] pub union __call_single_node__bindgen_ty_1 { pub u_flags : :: cty :: c_uint , pub a_flags : atomic_t , } # [test] fn bindgen_test_layout___call_single_node__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < __call_single_node__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (__call_single_node__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < __call_single_node__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__call_single_node__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_node__bindgen_ty_1 > ())) . u_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__call_single_node__bindgen_ty_1) , "::" , stringify ! (u_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_node__bindgen_ty_1 > ())) . a_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__call_single_node__bindgen_ty_1) , "::" , stringify ! (a_flags))) ; } # [test] fn bindgen_test_layout___call_single_node () { assert_eq ! (:: core :: mem :: size_of :: < __call_single_node > () , 16usize , concat ! ("Size of: " , stringify ! (__call_single_node))) ; assert_eq ! (:: core :: mem :: align_of :: < __call_single_node > () , 8usize , concat ! ("Alignment of " , stringify ! (__call_single_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_node > ())) . llist as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__call_single_node) , "::" , stringify ! (llist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_node > ())) . src as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__call_single_node) , "::" , stringify ! (src))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_node > ())) . dst as * const _ as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (__call_single_node) , "::" , stringify ! (dst))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct load_weight { pub weight : :: cty :: c_ulong , pub inv_weight : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_load_weight () { assert_eq ! (:: core :: mem :: size_of :: < load_weight > () , 16usize , concat ! ("Size of: " , stringify ! (load_weight))) ; assert_eq ! (:: core :: mem :: align_of :: < load_weight > () , 8usize , concat ! ("Alignment of " , stringify ! (load_weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < load_weight > ())) . weight as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (load_weight) , "::" , stringify ! (weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < load_weight > ())) . inv_weight as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (load_weight) , "::" , stringify ! (inv_weight))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rb_node { pub __rb_parent_color : :: cty :: c_ulong , pub rb_right : * mut rb_node , pub rb_left : * mut rb_node , } # [test] fn bindgen_test_layout_rb_node () { assert_eq ! (:: core :: mem :: size_of :: < rb_node > () , 24usize , concat ! ("Size of: " , stringify ! (rb_node))) ; assert_eq ! (:: core :: mem :: align_of :: < rb_node > () , 8usize , concat ! ("Alignment of " , stringify ! (rb_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_node > ())) . __rb_parent_color as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rb_node) , "::" , stringify ! (__rb_parent_color))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_node > ())) . rb_right as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rb_node) , "::" , stringify ! (rb_right))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_node > ())) . rb_left as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rb_node) , "::" , stringify ! (rb_left))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_statistics { pub wait_start : _cargo_bpf_u64 , pub wait_max : _cargo_bpf_u64 , pub wait_count : _cargo_bpf_u64 , pub wait_sum : _cargo_bpf_u64 , pub iowait_count : _cargo_bpf_u64 , pub iowait_sum : _cargo_bpf_u64 , pub sleep_start : _cargo_bpf_u64 , pub sleep_max : _cargo_bpf_u64 , pub sum_sleep_runtime : s64 , pub block_start : _cargo_bpf_u64 , pub block_max : _cargo_bpf_u64 , pub exec_max : _cargo_bpf_u64 , pub slice_max : _cargo_bpf_u64 , pub nr_migrations_cold : _cargo_bpf_u64 , pub nr_failed_migrations_affine : _cargo_bpf_u64 , pub nr_failed_migrations_running : _cargo_bpf_u64 , pub nr_failed_migrations_hot : _cargo_bpf_u64 , pub nr_forced_migrations : _cargo_bpf_u64 , pub nr_wakeups : _cargo_bpf_u64 , pub nr_wakeups_sync : _cargo_bpf_u64 , pub nr_wakeups_migrate : _cargo_bpf_u64 , pub nr_wakeups_local : _cargo_bpf_u64 , pub nr_wakeups_remote : _cargo_bpf_u64 , pub nr_wakeups_affine : _cargo_bpf_u64 , pub nr_wakeups_affine_attempts : _cargo_bpf_u64 , pub nr_wakeups_passive : _cargo_bpf_u64 , pub nr_wakeups_idle : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_sched_statistics () { assert_eq ! (:: core :: mem :: size_of :: < sched_statistics > () , 216usize , concat ! ("Size of: " , stringify ! (sched_statistics))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_statistics > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . wait_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (wait_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . wait_max as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (wait_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . wait_count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (wait_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . wait_sum as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (wait_sum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . iowait_count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (iowait_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . iowait_sum as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (iowait_sum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . sleep_start as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (sleep_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . sleep_max as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (sleep_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . sum_sleep_runtime as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (sum_sleep_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . block_start as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (block_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . block_max as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (block_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . exec_max as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (exec_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . slice_max as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (slice_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_migrations_cold as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_migrations_cold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_failed_migrations_affine as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_failed_migrations_affine))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_failed_migrations_running as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_failed_migrations_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_failed_migrations_hot as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_failed_migrations_hot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_forced_migrations as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_forced_migrations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_sync as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_migrate as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_migrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_local as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_local))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_remote as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_remote))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_affine as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_affine))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_affine_attempts as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_affine_attempts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_passive as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_passive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_statistics > ())) . nr_wakeups_idle as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (sched_statistics) , "::" , stringify ! (nr_wakeups_idle))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct util_est { pub enqueued : :: cty :: c_uint , pub ewma : :: cty :: c_uint , } # [test] fn bindgen_test_layout_util_est () { assert_eq ! (:: core :: mem :: size_of :: < util_est > () , 8usize , concat ! ("Size of: " , stringify ! (util_est))) ; assert_eq ! (:: core :: mem :: align_of :: < util_est > () , 4usize , concat ! ("Alignment of " , stringify ! (util_est))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < util_est > ())) . enqueued as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (util_est) , "::" , stringify ! (enqueued))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < util_est > ())) . ewma as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (util_est) , "::" , stringify ! (ewma))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_avg { pub last_update_time : _cargo_bpf_u64 , pub load_sum : _cargo_bpf_u64 , pub runnable_sum : _cargo_bpf_u64 , pub util_sum : _cargo_bpf_u32 , pub period_contrib : _cargo_bpf_u32 , pub load_avg : :: cty :: c_ulong , pub runnable_avg : :: cty :: c_ulong , pub util_avg : :: cty :: c_ulong , pub util_est : util_est , } # [test] fn bindgen_test_layout_sched_avg () { assert_eq ! (:: core :: mem :: size_of :: < sched_avg > () , 64usize , concat ! ("Size of: " , stringify ! (sched_avg))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_avg > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . last_update_time as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (last_update_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . load_sum as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (load_sum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . runnable_sum as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (runnable_sum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . util_sum as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (util_sum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . period_contrib as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (period_contrib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . load_avg as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (load_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . runnable_avg as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (runnable_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . util_avg as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (util_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_avg > ())) . util_est as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sched_avg) , "::" , stringify ! (util_est))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_entity { pub load : load_weight , pub run_node : rb_node , pub group_node : list_head , pub on_rq : :: cty :: c_uint , pub exec_start : _cargo_bpf_u64 , pub sum_exec_runtime : _cargo_bpf_u64 , pub vruntime : _cargo_bpf_u64 , pub prev_sum_exec_runtime : _cargo_bpf_u64 , pub nr_migrations : _cargo_bpf_u64 , pub statistics : sched_statistics , pub depth : :: cty :: c_int , pub parent : * mut sched_entity , pub cfs_rq : * mut cfs_rq , pub my_q : * mut cfs_rq , pub runnable_weight : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub avg : sched_avg , } # [test] fn bindgen_test_layout_sched_entity () { assert_eq ! (:: core :: mem :: size_of :: < sched_entity > () , 448usize , concat ! ("Size of: " , stringify ! (sched_entity))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_entity > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_entity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . load as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . run_node as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (run_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . group_node as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (group_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . on_rq as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (on_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . exec_start as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (exec_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . sum_exec_runtime as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (sum_exec_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . vruntime as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (vruntime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . prev_sum_exec_runtime as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (prev_sum_exec_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . nr_migrations as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (nr_migrations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . statistics as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . depth as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . parent as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . cfs_rq as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (cfs_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . my_q as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (my_q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . runnable_weight as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (runnable_weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_entity > ())) . avg as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (sched_entity) , "::" , stringify ! (avg))) ; } impl sched_entity { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_rt_entity { pub run_list : list_head , pub timeout : :: cty :: c_ulong , pub watchdog_stamp : :: cty :: c_ulong , pub time_slice : :: cty :: c_uint , pub on_rq : :: cty :: c_ushort , pub on_list : :: cty :: c_ushort , pub back : * mut sched_rt_entity , } # [test] fn bindgen_test_layout_sched_rt_entity () { assert_eq ! (:: core :: mem :: size_of :: < sched_rt_entity > () , 48usize , concat ! ("Size of: " , stringify ! (sched_rt_entity))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_rt_entity > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_rt_entity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . run_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (run_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . timeout as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . watchdog_stamp as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (watchdog_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . time_slice as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (time_slice))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . on_rq as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (on_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . on_list as * const _ as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (on_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_rt_entity > ())) . back as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_rt_entity) , "::" , stringify ! (back))) ; } pub type ktime_t = s64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timerqueue_node { pub node : rb_node , pub expires : ktime_t , } # [test] fn bindgen_test_layout_timerqueue_node () { assert_eq ! (:: core :: mem :: size_of :: < timerqueue_node > () , 32usize , concat ! ("Size of: " , stringify ! (timerqueue_node))) ; assert_eq ! (:: core :: mem :: align_of :: < timerqueue_node > () , 8usize , concat ! ("Alignment of " , stringify ! (timerqueue_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timerqueue_node > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timerqueue_node) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timerqueue_node > ())) . expires as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (timerqueue_node) , "::" , stringify ! (expires))) ; } pub const hrtimer_restart_HRTIMER_NORESTART : hrtimer_restart = 0 ; pub const hrtimer_restart_HRTIMER_RESTART : hrtimer_restart = 1 ; pub type hrtimer_restart = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hrtimer { pub node : timerqueue_node , pub _softexpires : ktime_t , pub function : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut hrtimer) -> hrtimer_restart > , pub base : * mut hrtimer_clock_base , pub state : _cargo_bpf_u8 , pub is_rel : _cargo_bpf_u8 , pub is_soft : _cargo_bpf_u8 , pub is_hard : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_hrtimer () { assert_eq ! (:: core :: mem :: size_of :: < hrtimer > () , 64usize , concat ! ("Size of: " , stringify ! (hrtimer))) ; assert_eq ! (:: core :: mem :: align_of :: < hrtimer > () , 8usize , concat ! ("Alignment of " , stringify ! (hrtimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . _softexpires as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (_softexpires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . function as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (function))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . base as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . state as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . is_rel as * const _ as usize } , 57usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (is_rel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . is_soft as * const _ as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (is_soft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer > ())) . is_hard as * const _ as usize } , 59usize , concat ! ("Offset of field: " , stringify ! (hrtimer) , "::" , stringify ! (is_hard))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_dl_entity { pub rb_node : rb_node , pub dl_runtime : _cargo_bpf_u64 , pub dl_deadline : _cargo_bpf_u64 , pub dl_period : _cargo_bpf_u64 , pub dl_bw : _cargo_bpf_u64 , pub dl_density : _cargo_bpf_u64 , pub runtime : s64 , pub deadline : _cargo_bpf_u64 , pub flags : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub dl_timer : hrtimer , pub inactive_timer : hrtimer , pub pi_se : * mut sched_dl_entity , } # [test] fn bindgen_test_layout_sched_dl_entity () { assert_eq ! (:: core :: mem :: size_of :: < sched_dl_entity > () , 224usize , concat ! ("Size of: " , stringify ! (sched_dl_entity))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_dl_entity > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_dl_entity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . rb_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (rb_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . dl_runtime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (dl_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . dl_deadline as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (dl_deadline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . dl_period as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (dl_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . dl_bw as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (dl_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . dl_density as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (dl_density))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . runtime as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . deadline as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (deadline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . dl_timer as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (dl_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . inactive_timer as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (inactive_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_dl_entity > ())) . pi_se as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (sched_dl_entity) , "::" , stringify ! (pi_se))) ; } impl sched_dl_entity { # [inline] pub fn dl_throttled (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_dl_throttled (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn dl_yielded (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_dl_yielded (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn dl_non_contending (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_dl_non_contending (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn dl_overrun (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_dl_overrun (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (dl_throttled : :: cty :: c_uint , dl_yielded : :: cty :: c_uint , dl_non_contending : :: cty :: c_uint , dl_overrun : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let dl_throttled : u32 = unsafe { :: core :: mem :: transmute (dl_throttled) } ; dl_throttled as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let dl_yielded : u32 = unsafe { :: core :: mem :: transmute (dl_yielded) } ; dl_yielded as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let dl_non_contending : u32 = unsafe { :: core :: mem :: transmute (dl_non_contending) } ; dl_non_contending as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let dl_overrun : u32 = unsafe { :: core :: mem :: transmute (dl_overrun) } ; dl_overrun as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpumask { pub bits : [:: cty :: c_ulong ; 128usize] , } # [test] fn bindgen_test_layout_cpumask () { assert_eq ! (:: core :: mem :: size_of :: < cpumask > () , 1024usize , concat ! ("Size of: " , stringify ! (cpumask))) ; assert_eq ! (:: core :: mem :: align_of :: < cpumask > () , 8usize , concat ! ("Alignment of " , stringify ! (cpumask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpumask > ())) . bits as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpumask) , "::" , stringify ! (bits))) ; } pub type cpumask_t = cpumask ; # [repr (C)] # [derive (Copy , Clone)] pub union rcu_special { pub b : rcu_special__bindgen_ty_1 , pub s : _cargo_bpf_u32 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rcu_special__bindgen_ty_1 { pub blocked : _cargo_bpf_u8 , pub need_qs : _cargo_bpf_u8 , pub exp_hint : _cargo_bpf_u8 , pub need_mb : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_rcu_special__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rcu_special__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (rcu_special__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rcu_special__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (rcu_special__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_special__bindgen_ty_1 > ())) . blocked as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcu_special__bindgen_ty_1) , "::" , stringify ! (blocked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_special__bindgen_ty_1 > ())) . need_qs as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (rcu_special__bindgen_ty_1) , "::" , stringify ! (need_qs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_special__bindgen_ty_1 > ())) . exp_hint as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rcu_special__bindgen_ty_1) , "::" , stringify ! (exp_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_special__bindgen_ty_1 > ())) . need_mb as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (rcu_special__bindgen_ty_1) , "::" , stringify ! (need_mb))) ; } # [test] fn bindgen_test_layout_rcu_special () { assert_eq ! (:: core :: mem :: size_of :: < rcu_special > () , 4usize , concat ! ("Size of: " , stringify ! (rcu_special))) ; assert_eq ! (:: core :: mem :: align_of :: < rcu_special > () , 4usize , concat ! ("Alignment of " , stringify ! (rcu_special))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_special > ())) . b as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcu_special) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_special > ())) . s as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcu_special) , "::" , stringify ! (s))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_info { pub pcount : :: cty :: c_ulong , pub run_delay : :: cty :: c_ulonglong , pub last_arrival : :: cty :: c_ulonglong , pub last_queued : :: cty :: c_ulonglong , } # [test] fn bindgen_test_layout_sched_info () { assert_eq ! (:: core :: mem :: size_of :: < sched_info > () , 32usize , concat ! ("Size of: " , stringify ! (sched_info))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_info > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_info > ())) . pcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_info) , "::" , stringify ! (pcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_info > ())) . run_delay as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_info) , "::" , stringify ! (run_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_info > ())) . last_arrival as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_info) , "::" , stringify ! (last_arrival))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_info > ())) . last_queued as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_info) , "::" , stringify ! (last_queued))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct plist_node { pub prio : :: cty :: c_int , pub prio_list : list_head , pub node_list : list_head , } # [test] fn bindgen_test_layout_plist_node () { assert_eq ! (:: core :: mem :: size_of :: < plist_node > () , 40usize , concat ! ("Size of: " , stringify ! (plist_node))) ; assert_eq ! (:: core :: mem :: align_of :: < plist_node > () , 8usize , concat ! ("Alignment of " , stringify ! (plist_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < plist_node > ())) . prio as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (plist_node) , "::" , stringify ! (prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < plist_node > ())) . prio_list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (plist_node) , "::" , stringify ! (prio_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < plist_node > ())) . node_list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (plist_node) , "::" , stringify ! (node_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vmacache { pub seqnum : _cargo_bpf_u64 , pub vmas : [* mut vm_area_struct ; 4usize] , } # [test] fn bindgen_test_layout_vmacache () { assert_eq ! (:: core :: mem :: size_of :: < vmacache > () , 40usize , concat ! ("Size of: " , stringify ! (vmacache))) ; assert_eq ! (:: core :: mem :: align_of :: < vmacache > () , 8usize , concat ! ("Alignment of " , stringify ! (vmacache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmacache > ())) . seqnum as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vmacache) , "::" , stringify ! (seqnum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmacache > ())) . vmas as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vmacache) , "::" , stringify ! (vmas))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct task_rss_stat { pub events : :: cty :: c_int , pub count : [:: cty :: c_int ; 4usize] , } # [test] fn bindgen_test_layout_task_rss_stat () { assert_eq ! (:: core :: mem :: size_of :: < task_rss_stat > () , 20usize , concat ! ("Size of: " , stringify ! (task_rss_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < task_rss_stat > () , 4usize , concat ! ("Alignment of " , stringify ! (task_rss_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_rss_stat > ())) . events as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_rss_stat) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_rss_stat > ())) . count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (task_rss_stat) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct prev_cputime { pub utime : _cargo_bpf_u64 , pub stime : _cargo_bpf_u64 , pub lock : raw_spinlock_t , } # [test] fn bindgen_test_layout_prev_cputime () { assert_eq ! (:: core :: mem :: size_of :: < prev_cputime > () , 24usize , concat ! ("Size of: " , stringify ! (prev_cputime))) ; assert_eq ! (:: core :: mem :: align_of :: < prev_cputime > () , 8usize , concat ! ("Alignment of " , stringify ! (prev_cputime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prev_cputime > ())) . utime as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (prev_cputime) , "::" , stringify ! (utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prev_cputime > ())) . stime as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (prev_cputime) , "::" , stringify ! (stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prev_cputime > ())) . lock as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (prev_cputime) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rb_root { pub rb_node : * mut rb_node , } # [test] fn bindgen_test_layout_rb_root () { assert_eq ! (:: core :: mem :: size_of :: < rb_root > () , 8usize , concat ! ("Size of: " , stringify ! (rb_root))) ; assert_eq ! (:: core :: mem :: align_of :: < rb_root > () , 8usize , concat ! ("Alignment of " , stringify ! (rb_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_root > ())) . rb_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rb_root) , "::" , stringify ! (rb_node))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rb_root_cached { pub rb_root : rb_root , pub rb_leftmost : * mut rb_node , } # [test] fn bindgen_test_layout_rb_root_cached () { assert_eq ! (:: core :: mem :: size_of :: < rb_root_cached > () , 16usize , concat ! ("Size of: " , stringify ! (rb_root_cached))) ; assert_eq ! (:: core :: mem :: align_of :: < rb_root_cached > () , 8usize , concat ! ("Alignment of " , stringify ! (rb_root_cached))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_root_cached > ())) . rb_root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rb_root_cached) , "::" , stringify ! (rb_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_root_cached > ())) . rb_leftmost as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rb_root_cached) , "::" , stringify ! (rb_leftmost))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timerqueue_head { pub rb_root : rb_root_cached , } # [test] fn bindgen_test_layout_timerqueue_head () { assert_eq ! (:: core :: mem :: size_of :: < timerqueue_head > () , 16usize , concat ! ("Size of: " , stringify ! (timerqueue_head))) ; assert_eq ! (:: core :: mem :: align_of :: < timerqueue_head > () , 8usize , concat ! ("Alignment of " , stringify ! (timerqueue_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timerqueue_head > ())) . rb_root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timerqueue_head) , "::" , stringify ! (rb_root))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct posix_cputimer_base { pub nextevt : _cargo_bpf_u64 , pub tqhead : timerqueue_head , } # [test] fn bindgen_test_layout_posix_cputimer_base () { assert_eq ! (:: core :: mem :: size_of :: < posix_cputimer_base > () , 24usize , concat ! ("Size of: " , stringify ! (posix_cputimer_base))) ; assert_eq ! (:: core :: mem :: align_of :: < posix_cputimer_base > () , 8usize , concat ! ("Alignment of " , stringify ! (posix_cputimer_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimer_base > ())) . nextevt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_cputimer_base) , "::" , stringify ! (nextevt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimer_base > ())) . tqhead as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (posix_cputimer_base) , "::" , stringify ! (tqhead))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct posix_cputimers { pub bases : [posix_cputimer_base ; 3usize] , pub timers_active : :: cty :: c_uint , pub expiry_active : :: cty :: c_uint , } # [test] fn bindgen_test_layout_posix_cputimers () { assert_eq ! (:: core :: mem :: size_of :: < posix_cputimers > () , 80usize , concat ! ("Size of: " , stringify ! (posix_cputimers))) ; assert_eq ! (:: core :: mem :: align_of :: < posix_cputimers > () , 8usize , concat ! ("Alignment of " , stringify ! (posix_cputimers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimers > ())) . bases as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_cputimers) , "::" , stringify ! (bases))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimers > ())) . timers_active as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (posix_cputimers) , "::" , stringify ! (timers_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimers > ())) . expiry_active as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (posix_cputimers) , "::" , stringify ! (expiry_active))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct posix_cputimers_work { pub work : callback_head , pub scheduled : :: cty :: c_uint , } # [test] fn bindgen_test_layout_posix_cputimers_work () { assert_eq ! (:: core :: mem :: size_of :: < posix_cputimers_work > () , 24usize , concat ! ("Size of: " , stringify ! (posix_cputimers_work))) ; assert_eq ! (:: core :: mem :: align_of :: < posix_cputimers_work > () , 8usize , concat ! ("Alignment of " , stringify ! (posix_cputimers_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimers_work > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_cputimers_work) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_cputimers_work > ())) . scheduled as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (posix_cputimers_work) , "::" , stringify ! (scheduled))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sysv_sem { pub undo_list : * mut sem_undo_list , } # [test] fn bindgen_test_layout_sysv_sem () { assert_eq ! (:: core :: mem :: size_of :: < sysv_sem > () , 8usize , concat ! ("Size of: " , stringify ! (sysv_sem))) ; assert_eq ! (:: core :: mem :: align_of :: < sysv_sem > () , 8usize , concat ! ("Alignment of " , stringify ! (sysv_sem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sysv_sem > ())) . undo_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sysv_sem) , "::" , stringify ! (undo_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sysv_shm { pub shm_clist : list_head , } # [test] fn bindgen_test_layout_sysv_shm () { assert_eq ! (:: core :: mem :: size_of :: < sysv_shm > () , 16usize , concat ! ("Size of: " , stringify ! (sysv_shm))) ; assert_eq ! (:: core :: mem :: align_of :: < sysv_shm > () , 8usize , concat ! ("Alignment of " , stringify ! (sysv_shm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sysv_shm > ())) . shm_clist as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sysv_shm) , "::" , stringify ! (shm_clist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sigset_t { pub sig : [:: cty :: c_ulong ; 1usize] , } # [test] fn bindgen_test_layout_sigset_t () { assert_eq ! (:: core :: mem :: size_of :: < sigset_t > () , 8usize , concat ! ("Size of: " , stringify ! (sigset_t))) ; assert_eq ! (:: core :: mem :: align_of :: < sigset_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sigset_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigset_t > ())) . sig as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sigset_t) , "::" , stringify ! (sig))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sigpending { pub list : list_head , pub signal : sigset_t , } # [test] fn bindgen_test_layout_sigpending () { assert_eq ! (:: core :: mem :: size_of :: < sigpending > () , 24usize , concat ! ("Size of: " , stringify ! (sigpending))) ; assert_eq ! (:: core :: mem :: align_of :: < sigpending > () , 8usize , concat ! ("Alignment of " , stringify ! (sigpending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigpending > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sigpending) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigpending > ())) . signal as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sigpending) , "::" , stringify ! (signal))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kuid_t { pub val : uid_t , } # [test] fn bindgen_test_layout_kuid_t () { assert_eq ! (:: core :: mem :: size_of :: < kuid_t > () , 4usize , concat ! ("Size of: " , stringify ! (kuid_t))) ; assert_eq ! (:: core :: mem :: align_of :: < kuid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (kuid_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kuid_t > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kuid_t) , "::" , stringify ! (val))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct seccomp { pub mode : :: cty :: c_int , pub filter_count : atomic_t , pub filter : * mut seccomp_filter , } # [test] fn bindgen_test_layout_seccomp () { assert_eq ! (:: core :: mem :: size_of :: < seccomp > () , 16usize , concat ! ("Size of: " , stringify ! (seccomp))) ; assert_eq ! (:: core :: mem :: align_of :: < seccomp > () , 8usize , concat ! ("Alignment of " , stringify ! (seccomp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp > ())) . mode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seccomp) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp > ())) . filter_count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (seccomp) , "::" , stringify ! (filter_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp > ())) . filter as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (seccomp) , "::" , stringify ! (filter))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct syscall_user_dispatch { pub selector : * mut :: cty :: c_char , pub offset : :: cty :: c_ulong , pub len : :: cty :: c_ulong , pub on_dispatch : bool_ , } # [test] fn bindgen_test_layout_syscall_user_dispatch () { assert_eq ! (:: core :: mem :: size_of :: < syscall_user_dispatch > () , 32usize , concat ! ("Size of: " , stringify ! (syscall_user_dispatch))) ; assert_eq ! (:: core :: mem :: align_of :: < syscall_user_dispatch > () , 8usize , concat ! ("Alignment of " , stringify ! (syscall_user_dispatch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < syscall_user_dispatch > ())) . selector as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (syscall_user_dispatch) , "::" , stringify ! (selector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < syscall_user_dispatch > ())) . offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (syscall_user_dispatch) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < syscall_user_dispatch > ())) . len as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (syscall_user_dispatch) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < syscall_user_dispatch > ())) . on_dispatch as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (syscall_user_dispatch) , "::" , stringify ! (on_dispatch))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct wake_q_node { pub next : * mut wake_q_node , } # [test] fn bindgen_test_layout_wake_q_node () { assert_eq ! (:: core :: mem :: size_of :: < wake_q_node > () , 8usize , concat ! ("Size of: " , stringify ! (wake_q_node))) ; assert_eq ! (:: core :: mem :: align_of :: < wake_q_node > () , 8usize , concat ! ("Alignment of " , stringify ! (wake_q_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wake_q_node > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wake_q_node) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct task_io_accounting { pub rchar : _cargo_bpf_u64 , pub wchar : _cargo_bpf_u64 , pub syscr : _cargo_bpf_u64 , pub syscw : _cargo_bpf_u64 , pub read_bytes : _cargo_bpf_u64 , pub write_bytes : _cargo_bpf_u64 , pub cancelled_write_bytes : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_task_io_accounting () { assert_eq ! (:: core :: mem :: size_of :: < task_io_accounting > () , 56usize , concat ! ("Size of: " , stringify ! (task_io_accounting))) ; assert_eq ! (:: core :: mem :: align_of :: < task_io_accounting > () , 8usize , concat ! ("Alignment of " , stringify ! (task_io_accounting))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . rchar as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (rchar))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . wchar as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (wchar))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . syscr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (syscr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . syscw as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (syscw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . read_bytes as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (read_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . write_bytes as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (write_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_io_accounting > ())) . cancelled_write_bytes as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (task_io_accounting) , "::" , stringify ! (cancelled_write_bytes))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nodemask_t { pub bits : [:: cty :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout_nodemask_t () { assert_eq ! (:: core :: mem :: size_of :: < nodemask_t > () , 128usize , concat ! ("Size of: " , stringify ! (nodemask_t))) ; assert_eq ! (:: core :: mem :: align_of :: < nodemask_t > () , 8usize , concat ! ("Alignment of " , stringify ! (nodemask_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nodemask_t > ())) . bits as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nodemask_t) , "::" , stringify ! (bits))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct seqcount { pub sequence : :: cty :: c_uint , } # [test] fn bindgen_test_layout_seqcount () { assert_eq ! (:: core :: mem :: size_of :: < seqcount > () , 4usize , concat ! ("Size of: " , stringify ! (seqcount))) ; assert_eq ! (:: core :: mem :: align_of :: < seqcount > () , 4usize , concat ! ("Alignment of " , stringify ! (seqcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seqcount > ())) . sequence as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seqcount) , "::" , stringify ! (sequence))) ; } pub type seqcount_t = seqcount ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct seqcount_spinlock { pub seqcount : seqcount_t , } # [test] fn bindgen_test_layout_seqcount_spinlock () { assert_eq ! (:: core :: mem :: size_of :: < seqcount_spinlock > () , 4usize , concat ! ("Size of: " , stringify ! (seqcount_spinlock))) ; assert_eq ! (:: core :: mem :: align_of :: < seqcount_spinlock > () , 4usize , concat ! ("Alignment of " , stringify ! (seqcount_spinlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seqcount_spinlock > ())) . seqcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seqcount_spinlock) , "::" , stringify ! (seqcount))) ; } pub type seqcount_spinlock_t = seqcount_spinlock ; pub type atomic_long_t = atomic64_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct optimistic_spin_queue { pub tail : atomic_t , } # [test] fn bindgen_test_layout_optimistic_spin_queue () { assert_eq ! (:: core :: mem :: size_of :: < optimistic_spin_queue > () , 4usize , concat ! ("Size of: " , stringify ! (optimistic_spin_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < optimistic_spin_queue > () , 4usize , concat ! ("Alignment of " , stringify ! (optimistic_spin_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < optimistic_spin_queue > ())) . tail as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (optimistic_spin_queue) , "::" , stringify ! (tail))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct mutex { pub owner : atomic_long_t , pub wait_lock : spinlock_t , pub osq : optimistic_spin_queue , pub wait_list : list_head , } # [test] fn bindgen_test_layout_mutex () { assert_eq ! (:: core :: mem :: size_of :: < mutex > () , 32usize , concat ! ("Size of: " , stringify ! (mutex))) ; assert_eq ! (:: core :: mem :: align_of :: < mutex > () , 8usize , concat ! ("Alignment of " , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mutex > ())) . owner as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mutex) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mutex > ())) . wait_lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mutex) , "::" , stringify ! (wait_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mutex > ())) . osq as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (mutex) , "::" , stringify ! (osq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mutex > ())) . wait_list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mutex) , "::" , stringify ! (wait_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct arch_tlbflush_unmap_batch { pub cpumask : cpumask , } # [test] fn bindgen_test_layout_arch_tlbflush_unmap_batch () { assert_eq ! (:: core :: mem :: size_of :: < arch_tlbflush_unmap_batch > () , 1024usize , concat ! ("Size of: " , stringify ! (arch_tlbflush_unmap_batch))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_tlbflush_unmap_batch > () , 8usize , concat ! ("Alignment of " , stringify ! (arch_tlbflush_unmap_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_tlbflush_unmap_batch > ())) . cpumask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_tlbflush_unmap_batch) , "::" , stringify ! (cpumask))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tlbflush_unmap_batch { pub arch : arch_tlbflush_unmap_batch , pub flush_required : bool_ , pub writable : bool_ , } # [test] fn bindgen_test_layout_tlbflush_unmap_batch () { assert_eq ! (:: core :: mem :: size_of :: < tlbflush_unmap_batch > () , 1032usize , concat ! ("Size of: " , stringify ! (tlbflush_unmap_batch))) ; assert_eq ! (:: core :: mem :: align_of :: < tlbflush_unmap_batch > () , 8usize , concat ! ("Alignment of " , stringify ! (tlbflush_unmap_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tlbflush_unmap_batch > ())) . arch as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tlbflush_unmap_batch) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tlbflush_unmap_batch > ())) . flush_required as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (tlbflush_unmap_batch) , "::" , stringify ! (flush_required))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tlbflush_unmap_batch > ())) . writable as * const _ as usize } , 1025usize , concat ! ("Offset of field: " , stringify ! (tlbflush_unmap_batch) , "::" , stringify ! (writable))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page_frag { pub page : * mut page , pub offset : __u32 , pub size : __u32 , } # [test] fn bindgen_test_layout_page_frag () { assert_eq ! (:: core :: mem :: size_of :: < page_frag > () , 16usize , concat ! ("Size of: " , stringify ! (page_frag))) ; assert_eq ! (:: core :: mem :: align_of :: < page_frag > () , 8usize , concat ! ("Alignment of " , stringify ! (page_frag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_frag > ())) . page as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page_frag) , "::" , stringify ! (page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_frag > ())) . offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page_frag) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_frag > ())) . size as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (page_frag) , "::" , stringify ! (size))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kmap_ctrl { } # [test] fn bindgen_test_layout_kmap_ctrl () { assert_eq ! (:: core :: mem :: size_of :: < kmap_ctrl > () , 0usize , concat ! ("Size of: " , stringify ! (kmap_ctrl))) ; assert_eq ! (:: core :: mem :: align_of :: < kmap_ctrl > () , 1usize , concat ! ("Alignment of " , stringify ! (kmap_ctrl))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct llist_head { pub first : * mut llist_node , } # [test] fn bindgen_test_layout_llist_head () { assert_eq ! (:: core :: mem :: size_of :: < llist_head > () , 8usize , concat ! ("Size of: " , stringify ! (llist_head))) ; assert_eq ! (:: core :: mem :: align_of :: < llist_head > () , 8usize , concat ! ("Alignment of " , stringify ! (llist_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < llist_head > ())) . first as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (llist_head) , "::" , stringify ! (first))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct desc_struct { pub limit0 : _cargo_bpf_u16 , pub base0 : _cargo_bpf_u16 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_desc_struct () { assert_eq ! (:: core :: mem :: size_of :: < desc_struct > () , 8usize , concat ! ("Size of: " , stringify ! (desc_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < desc_struct > () , 2usize , concat ! ("Alignment of " , stringify ! (desc_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < desc_struct > ())) . limit0 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (desc_struct) , "::" , stringify ! (limit0))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < desc_struct > ())) . base0 as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (desc_struct) , "::" , stringify ! (base0))) ; } impl desc_struct { # [inline] pub fn base1 (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u16) } } # [inline] pub fn set_base1 (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn type_ (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 4u8) as u16) } } # [inline] pub fn set_type (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 4u8 , val as u64) } } # [inline] pub fn s (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u16) } } # [inline] pub fn set_s (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn dpl (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (13usize , 2u8) as u16) } } # [inline] pub fn set_dpl (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 2u8 , val as u64) } } # [inline] pub fn p (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (15usize , 1u8) as u16) } } # [inline] pub fn set_p (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 1u8 , val as u64) } } # [inline] pub fn limit1 (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (16usize , 4u8) as u16) } } # [inline] pub fn set_limit1 (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 4u8 , val as u64) } } # [inline] pub fn avl (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (20usize , 1u8) as u16) } } # [inline] pub fn set_avl (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (20usize , 1u8 , val as u64) } } # [inline] pub fn l (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (21usize , 1u8) as u16) } } # [inline] pub fn set_l (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (21usize , 1u8 , val as u64) } } # [inline] pub fn d (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (22usize , 1u8) as u16) } } # [inline] pub fn set_d (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (22usize , 1u8 , val as u64) } } # [inline] pub fn g (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (23usize , 1u8) as u16) } } # [inline] pub fn set_g (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 1u8 , val as u64) } } # [inline] pub fn base2 (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u16) } } # [inline] pub fn set_base2 (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (base1 : _cargo_bpf_u16 , type_ : _cargo_bpf_u16 , s : _cargo_bpf_u16 , dpl : _cargo_bpf_u16 , p : _cargo_bpf_u16 , limit1 : _cargo_bpf_u16 , avl : _cargo_bpf_u16 , l : _cargo_bpf_u16 , d : _cargo_bpf_u16 , g : _cargo_bpf_u16 , base2 : _cargo_bpf_u16) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let base1 : u16 = unsafe { :: core :: mem :: transmute (base1) } ; base1 as u64 }) ; __bindgen_bitfield_unit . set (8usize , 4u8 , { let type_ : u16 = unsafe { :: core :: mem :: transmute (type_) } ; type_ as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let s : u16 = unsafe { :: core :: mem :: transmute (s) } ; s as u64 }) ; __bindgen_bitfield_unit . set (13usize , 2u8 , { let dpl : u16 = unsafe { :: core :: mem :: transmute (dpl) } ; dpl as u64 }) ; __bindgen_bitfield_unit . set (15usize , 1u8 , { let p : u16 = unsafe { :: core :: mem :: transmute (p) } ; p as u64 }) ; __bindgen_bitfield_unit . set (16usize , 4u8 , { let limit1 : u16 = unsafe { :: core :: mem :: transmute (limit1) } ; limit1 as u64 }) ; __bindgen_bitfield_unit . set (20usize , 1u8 , { let avl : u16 = unsafe { :: core :: mem :: transmute (avl) } ; avl as u64 }) ; __bindgen_bitfield_unit . set (21usize , 1u8 , { let l : u16 = unsafe { :: core :: mem :: transmute (l) } ; l as u64 }) ; __bindgen_bitfield_unit . set (22usize , 1u8 , { let d : u16 = unsafe { :: core :: mem :: transmute (d) } ; d as u64 }) ; __bindgen_bitfield_unit . set (23usize , 1u8 , { let g : u16 = unsafe { :: core :: mem :: transmute (g) } ; g as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let base2 : u16 = unsafe { :: core :: mem :: transmute (base2) } ; base2 as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fregs_state { pub cwd : _cargo_bpf_u32 , pub swd : _cargo_bpf_u32 , pub twd : _cargo_bpf_u32 , pub fip : _cargo_bpf_u32 , pub fcs : _cargo_bpf_u32 , pub foo : _cargo_bpf_u32 , pub fos : _cargo_bpf_u32 , pub st_space : [_cargo_bpf_u32 ; 20usize] , pub status : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_fregs_state () { assert_eq ! (:: core :: mem :: size_of :: < fregs_state > () , 112usize , concat ! ("Size of: " , stringify ! (fregs_state))) ; assert_eq ! (:: core :: mem :: align_of :: < fregs_state > () , 4usize , concat ! ("Alignment of " , stringify ! (fregs_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . cwd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . swd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (swd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . twd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (twd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . fip as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (fip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . fcs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (fcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . foo as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (foo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . fos as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (fos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . st_space as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (st_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fregs_state > ())) . status as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (fregs_state) , "::" , stringify ! (status))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fxregs_state { pub cwd : _cargo_bpf_u16 , pub swd : _cargo_bpf_u16 , pub twd : _cargo_bpf_u16 , pub fop : _cargo_bpf_u16 , pub __bindgen_anon_1 : fxregs_state__bindgen_ty_1 , pub mxcsr : _cargo_bpf_u32 , pub mxcsr_mask : _cargo_bpf_u32 , pub st_space : [_cargo_bpf_u32 ; 32usize] , pub xmm_space : [_cargo_bpf_u32 ; 64usize] , pub padding : [_cargo_bpf_u32 ; 12usize] , pub __bindgen_anon_2 : fxregs_state__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union fxregs_state__bindgen_ty_1 { pub __bindgen_anon_1 : fxregs_state__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : fxregs_state__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fxregs_state__bindgen_ty_1__bindgen_ty_1 { pub rip : _cargo_bpf_u64 , pub rdp : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_fxregs_state__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < fxregs_state__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < fxregs_state__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_1__bindgen_ty_1 > ())) . rip as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (rip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_1__bindgen_ty_1 > ())) . rdp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (rdp))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fxregs_state__bindgen_ty_1__bindgen_ty_2 { pub fip : _cargo_bpf_u32 , pub fcs : _cargo_bpf_u32 , pub foo : _cargo_bpf_u32 , pub fos : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_fxregs_state__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < fxregs_state__bindgen_ty_1__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < fxregs_state__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_1__bindgen_ty_2 > ())) . fip as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (fip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_1__bindgen_ty_2 > ())) . fcs as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (fcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_1__bindgen_ty_2 > ())) . foo as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (foo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_1__bindgen_ty_2 > ())) . fos as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (fos))) ; } # [test] fn bindgen_test_layout_fxregs_state__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < fxregs_state__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (fxregs_state__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < fxregs_state__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (fxregs_state__bindgen_ty_1))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union fxregs_state__bindgen_ty_2 { pub padding1 : [_cargo_bpf_u32 ; 12usize] , pub sw_reserved : [_cargo_bpf_u32 ; 12usize] , } # [test] fn bindgen_test_layout_fxregs_state__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < fxregs_state__bindgen_ty_2 > () , 48usize , concat ! ("Size of: " , stringify ! (fxregs_state__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < fxregs_state__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (fxregs_state__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_2 > ())) . padding1 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_2) , "::" , stringify ! (padding1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state__bindgen_ty_2 > ())) . sw_reserved as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fxregs_state__bindgen_ty_2) , "::" , stringify ! (sw_reserved))) ; } # [test] fn bindgen_test_layout_fxregs_state () { assert_eq ! (:: core :: mem :: size_of :: < fxregs_state > () , 512usize , concat ! ("Size of: " , stringify ! (fxregs_state))) ; assert_eq ! (:: core :: mem :: align_of :: < fxregs_state > () , 8usize , concat ! ("Alignment of " , stringify ! (fxregs_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . cwd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . swd as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (swd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . twd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (twd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . fop as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (fop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . mxcsr as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (mxcsr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . mxcsr_mask as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (mxcsr_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . st_space as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (st_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . xmm_space as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (xmm_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fxregs_state > ())) . padding as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (fxregs_state) , "::" , stringify ! (padding))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct swregs_state { pub cwd : _cargo_bpf_u32 , pub swd : _cargo_bpf_u32 , pub twd : _cargo_bpf_u32 , pub fip : _cargo_bpf_u32 , pub fcs : _cargo_bpf_u32 , pub foo : _cargo_bpf_u32 , pub fos : _cargo_bpf_u32 , pub st_space : [_cargo_bpf_u32 ; 20usize] , pub ftop : _cargo_bpf_u8 , pub changed : _cargo_bpf_u8 , pub lookahead : _cargo_bpf_u8 , pub no_update : _cargo_bpf_u8 , pub rm : _cargo_bpf_u8 , pub alimit : _cargo_bpf_u8 , pub info : * mut math_emu_info , pub entry_eip : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_swregs_state () { assert_eq ! (:: core :: mem :: size_of :: < swregs_state > () , 136usize , concat ! ("Size of: " , stringify ! (swregs_state))) ; assert_eq ! (:: core :: mem :: align_of :: < swregs_state > () , 8usize , concat ! ("Alignment of " , stringify ! (swregs_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . cwd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . swd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (swd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . twd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (twd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . fip as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (fip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . fcs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (fcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . foo as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (foo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . fos as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (fos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . st_space as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (st_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . ftop as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (ftop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . changed as * const _ as usize } , 109usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (changed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . lookahead as * const _ as usize } , 110usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (lookahead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . no_update as * const _ as usize } , 111usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (no_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . rm as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (rm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . alimit as * const _ as usize } , 113usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (alimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . info as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swregs_state > ())) . entry_eip as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (swregs_state) , "::" , stringify ! (entry_eip))) ; } # [repr (C)] # [repr (align (8))] pub struct xregs_state { pub _bindgen_opaque_blob : [u64 ; 72usize] , } # [test] fn bindgen_test_layout_xregs_state () { assert_eq ! (:: core :: mem :: size_of :: < xregs_state > () , 576usize , concat ! ("Size of: " , stringify ! (xregs_state))) ; assert_eq ! (:: core :: mem :: align_of :: < xregs_state > () , 8usize , concat ! ("Alignment of " , stringify ! (xregs_state))) ; } # [repr (C)] pub struct fpregs_state { pub fsave : __BindgenUnionField < fregs_state > , pub fxsave : __BindgenUnionField < fxregs_state > , pub soft : __BindgenUnionField < swregs_state > , pub xsave : __BindgenUnionField < xregs_state > , pub __padding : __BindgenUnionField < [_cargo_bpf_u8 ; 4096usize] > , pub bindgen_union_field : [u64 ; 512usize] , } # [test] fn bindgen_test_layout_fpregs_state () { assert_eq ! (:: core :: mem :: size_of :: < fpregs_state > () , 4096usize , concat ! ("Size of: " , stringify ! (fpregs_state))) ; assert_eq ! (:: core :: mem :: align_of :: < fpregs_state > () , 8usize , concat ! ("Alignment of " , stringify ! (fpregs_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpregs_state > ())) . fsave as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fpregs_state) , "::" , stringify ! (fsave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpregs_state > ())) . fxsave as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fpregs_state) , "::" , stringify ! (fxsave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpregs_state > ())) . soft as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fpregs_state) , "::" , stringify ! (soft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpregs_state > ())) . xsave as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fpregs_state) , "::" , stringify ! (xsave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpregs_state > ())) . __padding as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fpregs_state) , "::" , stringify ! (__padding))) ; } # [repr (C)] pub struct fpu { pub last_cpu : :: cty :: c_uint , pub avx512_timestamp : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , pub state : fpregs_state , } # [test] fn bindgen_test_layout_fpu () { assert_eq ! (:: core :: mem :: size_of :: < fpu > () , 4160usize , concat ! ("Size of: " , stringify ! (fpu))) ; assert_eq ! (:: core :: mem :: align_of :: < fpu > () , 8usize , concat ! ("Alignment of " , stringify ! (fpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpu > ())) . last_cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fpu) , "::" , stringify ! (last_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpu > ())) . avx512_timestamp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fpu) , "::" , stringify ! (avx512_timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fpu > ())) . state as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fpu) , "::" , stringify ! (state))) ; } # [repr (C)] pub struct thread_struct { pub tls_array : [desc_struct ; 3usize] , pub sp : :: cty :: c_ulong , pub es : :: cty :: c_ushort , pub ds : :: cty :: c_ushort , pub fsindex : :: cty :: c_ushort , pub gsindex : :: cty :: c_ushort , pub fsbase : :: cty :: c_ulong , pub gsbase : :: cty :: c_ulong , pub ptrace_bps : [* mut perf_event ; 4usize] , pub virtual_dr6 : :: cty :: c_ulong , pub ptrace_dr7 : :: cty :: c_ulong , pub cr2 : :: cty :: c_ulong , pub trap_nr : :: cty :: c_ulong , pub error_code : :: cty :: c_ulong , pub io_bitmap : * mut io_bitmap , pub iopl_emul : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , pub fpu : fpu , } # [test] fn bindgen_test_layout_thread_struct () { assert_eq ! (:: core :: mem :: size_of :: < thread_struct > () , 4352usize , concat ! ("Size of: " , stringify ! (thread_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < thread_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (thread_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . tls_array as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (tls_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . sp as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (sp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . es as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (es))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . ds as * const _ as usize } , 34usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (ds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . fsindex as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (fsindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . gsindex as * const _ as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (gsindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . fsbase as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (fsbase))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . gsbase as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (gsbase))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . ptrace_bps as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (ptrace_bps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . virtual_dr6 as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (virtual_dr6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . ptrace_dr7 as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (ptrace_dr7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . cr2 as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (cr2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . trap_nr as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (trap_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . error_code as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (error_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . io_bitmap as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (io_bitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . iopl_emul as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (iopl_emul))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_struct > ())) . fpu as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (thread_struct) , "::" , stringify ! (fpu))) ; } impl thread_struct { # [inline] pub fn iopl_warn (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_iopl_warn (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn sig_on_uaccess_err (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_sig_on_uaccess_err (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } } pub type kernel_siginfo_t = kernel_siginfo ; # [repr (C)] pub struct task_struct { pub thread_info : thread_info , pub state : :: cty :: c_long , pub stack : * mut :: cty :: c_void , pub usage : refcount_t , pub flags : :: cty :: c_uint , pub ptrace : :: cty :: c_uint , pub on_cpu : :: cty :: c_int , pub wake_entry : __call_single_node , pub cpu : :: cty :: c_uint , pub wakee_flips : :: cty :: c_uint , pub wakee_flip_decay_ts : :: cty :: c_ulong , pub last_wakee : * mut task_struct , pub recent_used_cpu : :: cty :: c_int , pub wake_cpu : :: cty :: c_int , pub on_rq : :: cty :: c_int , pub prio : :: cty :: c_int , pub static_prio : :: cty :: c_int , pub normal_prio : :: cty :: c_int , pub rt_priority : :: cty :: c_uint , pub sched_class : * const sched_class , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 56usize] > , pub se : sched_entity , pub rt : sched_rt_entity , pub sched_task_group : * mut task_group , pub dl : sched_dl_entity , pub preempt_notifiers : hlist_head , pub btrace_seq : :: cty :: c_uint , pub policy : :: cty :: c_uint , pub nr_cpus_allowed : :: cty :: c_int , pub cpus_ptr : * const cpumask_t , pub cpus_mask : cpumask_t , pub migration_pending : * mut :: cty :: c_void , pub migration_disabled : :: cty :: c_ushort , pub migration_flags : :: cty :: c_ushort , pub trc_reader_nesting : :: cty :: c_int , pub trc_ipi_to_cpu : :: cty :: c_int , pub trc_reader_special : rcu_special , pub trc_reader_checked : bool_ , pub trc_holdout_list : list_head , pub sched_info : sched_info , pub tasks : list_head , pub pushable_tasks : plist_node , pub pushable_dl_tasks : rb_node , pub mm : * mut mm_struct , pub active_mm : * mut mm_struct , pub vmacache : vmacache , pub rss_stat : task_rss_stat , pub exit_state : :: cty :: c_int , pub exit_code : :: cty :: c_int , pub exit_signal : :: cty :: c_int , pub pdeath_signal : :: cty :: c_int , pub jobctl : :: cty :: c_ulong , pub personality : :: cty :: c_uint , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 6usize] > , pub atomic_flags : :: cty :: c_ulong , pub restart_block : restart_block , pub pid : pid_t , pub tgid : pid_t , pub stack_canary : :: cty :: c_ulong , pub real_parent : * mut task_struct , pub parent : * mut task_struct , pub children : list_head , pub sibling : list_head , pub group_leader : * mut task_struct , pub ptraced : list_head , pub ptrace_entry : list_head , pub thread_pid : * mut pid , pub pid_links : [hlist_node ; 4usize] , pub thread_group : list_head , pub thread_node : list_head , pub vfork_done : * mut completion , pub set_child_tid : * mut :: cty :: c_int , pub clear_child_tid : * mut :: cty :: c_int , pub pf_io_worker : * mut :: cty :: c_void , pub utime : _cargo_bpf_u64 , pub stime : _cargo_bpf_u64 , pub gtime : _cargo_bpf_u64 , pub prev_cputime : prev_cputime , pub nvcsw : :: cty :: c_ulong , pub nivcsw : :: cty :: c_ulong , pub start_time : _cargo_bpf_u64 , pub start_boottime : _cargo_bpf_u64 , pub min_flt : :: cty :: c_ulong , pub maj_flt : :: cty :: c_ulong , pub posix_cputimers : posix_cputimers , pub posix_cputimers_work : posix_cputimers_work , pub ptracer_cred : * const cred , pub real_cred : * const cred , pub cred : * const cred , pub cached_requested_key : * mut key , pub comm : [:: cty :: c_char ; 16usize] , pub nameidata : * mut nameidata , pub sysvsem : sysv_sem , pub sysvshm : sysv_shm , pub last_switch_count : :: cty :: c_ulong , pub last_switch_time : :: cty :: c_ulong , pub fs : * mut fs_struct , pub files : * mut files_struct , pub io_uring : * mut io_uring_task , pub nsproxy : * mut nsproxy , pub signal : * mut signal_struct , pub sighand : * mut sighand_struct , pub blocked : sigset_t , pub real_blocked : sigset_t , pub saved_sigmask : sigset_t , pub pending : sigpending , pub sas_ss_sp : :: cty :: c_ulong , pub sas_ss_size : size_t , pub sas_ss_flags : :: cty :: c_uint , pub task_works : * mut callback_head , pub audit_context : * mut audit_context , pub loginuid : kuid_t , pub sessionid : :: cty :: c_uint , pub seccomp : seccomp , pub syscall_dispatch : syscall_user_dispatch , pub parent_exec_id : _cargo_bpf_u64 , pub self_exec_id : _cargo_bpf_u64 , pub alloc_lock : spinlock_t , pub pi_lock : raw_spinlock_t , pub wake_q : wake_q_node , pub pi_waiters : rb_root_cached , pub pi_top_task : * mut task_struct , pub pi_blocked_on : * mut rt_mutex_waiter , pub journal_info : * mut :: cty :: c_void , pub bio_list : * mut bio_list , pub plug : * mut blk_plug , pub reclaim_state : * mut reclaim_state , pub backing_dev_info : * mut backing_dev_info , pub io_context : * mut io_context , pub capture_control : * mut capture_control , pub ptrace_message : :: cty :: c_ulong , pub last_siginfo : * mut kernel_siginfo_t , pub ioac : task_io_accounting , pub psi_flags : :: cty :: c_uint , pub acct_rss_mem1 : _cargo_bpf_u64 , pub acct_vm_mem1 : _cargo_bpf_u64 , pub acct_timexpd : _cargo_bpf_u64 , pub mems_allowed : nodemask_t , pub mems_allowed_seq : seqcount_spinlock_t , pub cpuset_mem_spread_rotor : :: cty :: c_int , pub cpuset_slab_spread_rotor : :: cty :: c_int , pub cgroups : * mut css_set , pub cg_list : list_head , pub closid : _cargo_bpf_u32 , pub rmid : _cargo_bpf_u32 , pub robust_list : * mut robust_list_head , pub compat_robust_list : * mut compat_robust_list_head , pub pi_state_list : list_head , pub pi_state_cache : * mut futex_pi_state , pub futex_exit_mutex : mutex , pub futex_state : :: cty :: c_uint , pub perf_event_ctxp : [* mut perf_event_context ; 2usize] , pub perf_event_mutex : mutex , pub perf_event_list : list_head , pub mempolicy : * mut mempolicy , pub il_prev : :: cty :: c_short , pub pref_node_fork : :: cty :: c_short , pub numa_scan_seq : :: cty :: c_int , pub numa_scan_period : :: cty :: c_uint , pub numa_scan_period_max : :: cty :: c_uint , pub numa_preferred_nid : :: cty :: c_int , pub numa_migrate_retry : :: cty :: c_ulong , pub node_stamp : _cargo_bpf_u64 , pub last_task_numa_placement : _cargo_bpf_u64 , pub last_sum_exec_runtime : _cargo_bpf_u64 , pub numa_work : callback_head , pub numa_group : * mut numa_group , pub numa_faults : * mut :: cty :: c_ulong , pub total_numa_faults : :: cty :: c_ulong , pub numa_faults_locality : [:: cty :: c_ulong ; 3usize] , pub numa_pages_migrated : :: cty :: c_ulong , pub rseq : * mut rseq , pub rseq_sig : _cargo_bpf_u32 , pub rseq_event_mask : :: cty :: c_ulong , pub tlb_ubc : tlbflush_unmap_batch , pub __bindgen_anon_1 : task_struct__bindgen_ty_1 , pub splice_pipe : * mut pipe_inode_info , pub task_frag : page_frag , pub delays : * mut task_delay_info , pub nr_dirtied : :: cty :: c_int , pub nr_dirtied_pause : :: cty :: c_int , pub dirty_paused_when : :: cty :: c_ulong , pub timer_slack_ns : _cargo_bpf_u64 , pub default_timer_slack_ns : _cargo_bpf_u64 , pub curr_ret_stack : :: cty :: c_int , pub curr_ret_depth : :: cty :: c_int , pub ret_stack : * mut ftrace_ret_stack , pub ftrace_timestamp : :: cty :: c_ulonglong , pub trace_overrun : atomic_t , pub tracing_graph_pause : atomic_t , pub trace : :: cty :: c_ulong , pub trace_recursion : :: cty :: c_ulong , pub memcg_in_oom : * mut mem_cgroup , pub memcg_oom_gfp_mask : gfp_t , pub memcg_oom_order : :: cty :: c_int , pub memcg_nr_pages_over_high : :: cty :: c_uint , pub active_memcg : * mut mem_cgroup , pub throttle_queue : * mut request_queue , pub utask : * mut uprobe_task , pub sequential_io : :: cty :: c_uint , pub sequential_io_avg : :: cty :: c_uint , pub kmap_ctrl : kmap_ctrl , pub pagefault_disabled : :: cty :: c_int , pub oom_reaper_list : * mut task_struct , pub stack_vm_area : * mut vm_struct , pub stack_refcount : refcount_t , pub patch_state : :: cty :: c_int , pub security : * mut :: cty :: c_void , pub bpf_storage : * mut bpf_local_storage , pub mce_vaddr : * mut :: cty :: c_void , pub mce_kflags : __u64 , pub mce_addr : _cargo_bpf_u64 , pub _bitfield_align_3 : [u64 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub mce_kill_me : callback_head , pub mce_count : :: cty :: c_int , pub kretprobe_instances : llist_head , pub _bitfield_align_4 : [u8 ; 0] , pub _bitfield_4 : __BindgenBitfieldUnit < [u8 ; 40usize] > , pub thread : thread_struct , } # [repr (C)] # [derive (Copy , Clone)] pub union task_struct__bindgen_ty_1 { pub rcu_users : refcount_t , pub rcu : callback_head , } # [test] fn bindgen_test_layout_task_struct__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < task_struct__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (task_struct__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < task_struct__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (task_struct__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct__bindgen_ty_1 > ())) . rcu_users as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_struct__bindgen_ty_1) , "::" , stringify ! (rcu_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_struct__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_task_struct () { assert_eq ! (:: core :: mem :: size_of :: < task_struct > () , 9472usize , concat ! ("Size of: " , stringify ! (task_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < task_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (task_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . thread_info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (thread_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . state as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . stack as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . usage as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . flags as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ptrace as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ptrace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . on_cpu as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (on_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . wake_entry as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (wake_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cpu as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . wakee_flips as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (wakee_flips))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . wakee_flip_decay_ts as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (wakee_flip_decay_ts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . last_wakee as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (last_wakee))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . recent_used_cpu as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (recent_used_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . wake_cpu as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (wake_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . on_rq as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (on_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . prio as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . static_prio as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (static_prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . normal_prio as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (normal_prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rt_priority as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rt_priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sched_class as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sched_class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . se as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (se))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rt as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sched_task_group as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sched_task_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . dl as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (dl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . preempt_notifiers as * const _ as usize } , 920usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (preempt_notifiers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . btrace_seq as * const _ as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (btrace_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . policy as * const _ as usize } , 932usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nr_cpus_allowed as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nr_cpus_allowed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cpus_ptr as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cpus_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cpus_mask as * const _ as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cpus_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . migration_pending as * const _ as usize } , 1976usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (migration_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . migration_disabled as * const _ as usize } , 1984usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (migration_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . migration_flags as * const _ as usize } , 1986usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (migration_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trc_reader_nesting as * const _ as usize } , 1988usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trc_reader_nesting))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trc_ipi_to_cpu as * const _ as usize } , 1992usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trc_ipi_to_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trc_reader_special as * const _ as usize } , 1996usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trc_reader_special))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trc_reader_checked as * const _ as usize } , 2000usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trc_reader_checked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trc_holdout_list as * const _ as usize } , 2008usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trc_holdout_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sched_info as * const _ as usize } , 2024usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sched_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . tasks as * const _ as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pushable_tasks as * const _ as usize } , 2072usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pushable_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pushable_dl_tasks as * const _ as usize } , 2112usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pushable_dl_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mm as * const _ as usize } , 2136usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . active_mm as * const _ as usize } , 2144usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (active_mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . vmacache as * const _ as usize } , 2152usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (vmacache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rss_stat as * const _ as usize } , 2192usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rss_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . exit_state as * const _ as usize } , 2212usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (exit_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . exit_code as * const _ as usize } , 2216usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (exit_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . exit_signal as * const _ as usize } , 2220usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (exit_signal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pdeath_signal as * const _ as usize } , 2224usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pdeath_signal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . jobctl as * const _ as usize } , 2232usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (jobctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . personality as * const _ as usize } , 2240usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (personality))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . atomic_flags as * const _ as usize } , 2256usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (atomic_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . restart_block as * const _ as usize } , 2264usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (restart_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pid as * const _ as usize } , 2320usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . tgid as * const _ as usize } , 2324usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (tgid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . stack_canary as * const _ as usize } , 2328usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (stack_canary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . real_parent as * const _ as usize } , 2336usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (real_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . parent as * const _ as usize } , 2344usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . children as * const _ as usize } , 2352usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sibling as * const _ as usize } , 2368usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sibling))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . group_leader as * const _ as usize } , 2384usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (group_leader))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ptraced as * const _ as usize } , 2392usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ptraced))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ptrace_entry as * const _ as usize } , 2408usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ptrace_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . thread_pid as * const _ as usize } , 2424usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (thread_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pid_links as * const _ as usize } , 2432usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pid_links))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . thread_group as * const _ as usize } , 2496usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (thread_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . thread_node as * const _ as usize } , 2512usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (thread_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . vfork_done as * const _ as usize } , 2528usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (vfork_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . set_child_tid as * const _ as usize } , 2536usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (set_child_tid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . clear_child_tid as * const _ as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (clear_child_tid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pf_io_worker as * const _ as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pf_io_worker))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . utime as * const _ as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . stime as * const _ as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . gtime as * const _ as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (gtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . prev_cputime as * const _ as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (prev_cputime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nvcsw as * const _ as usize } , 2608usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nvcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nivcsw as * const _ as usize } , 2616usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nivcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . start_time as * const _ as usize } , 2624usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (start_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . start_boottime as * const _ as usize } , 2632usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (start_boottime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . min_flt as * const _ as usize } , 2640usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (min_flt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . maj_flt as * const _ as usize } , 2648usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (maj_flt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . posix_cputimers as * const _ as usize } , 2656usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (posix_cputimers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . posix_cputimers_work as * const _ as usize } , 2736usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (posix_cputimers_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ptracer_cred as * const _ as usize } , 2760usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ptracer_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . real_cred as * const _ as usize } , 2768usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (real_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cred as * const _ as usize } , 2776usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cached_requested_key as * const _ as usize } , 2784usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cached_requested_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . comm as * const _ as usize } , 2792usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (comm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nameidata as * const _ as usize } , 2808usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nameidata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sysvsem as * const _ as usize } , 2816usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sysvsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sysvshm as * const _ as usize } , 2824usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sysvshm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . last_switch_count as * const _ as usize } , 2840usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (last_switch_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . last_switch_time as * const _ as usize } , 2848usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (last_switch_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . fs as * const _ as usize } , 2856usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (fs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . files as * const _ as usize } , 2864usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . io_uring as * const _ as usize } , 2872usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (io_uring))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nsproxy as * const _ as usize } , 2880usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nsproxy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . signal as * const _ as usize } , 2888usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (signal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sighand as * const _ as usize } , 2896usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sighand))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . blocked as * const _ as usize } , 2904usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (blocked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . real_blocked as * const _ as usize } , 2912usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (real_blocked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . saved_sigmask as * const _ as usize } , 2920usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (saved_sigmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pending as * const _ as usize } , 2928usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sas_ss_sp as * const _ as usize } , 2952usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sas_ss_sp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sas_ss_size as * const _ as usize } , 2960usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sas_ss_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sas_ss_flags as * const _ as usize } , 2968usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sas_ss_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . task_works as * const _ as usize } , 2976usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (task_works))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . audit_context as * const _ as usize } , 2984usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (audit_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . loginuid as * const _ as usize } , 2992usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (loginuid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sessionid as * const _ as usize } , 2996usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sessionid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . seccomp as * const _ as usize } , 3000usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (seccomp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . syscall_dispatch as * const _ as usize } , 3016usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (syscall_dispatch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . parent_exec_id as * const _ as usize } , 3048usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (parent_exec_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . self_exec_id as * const _ as usize } , 3056usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (self_exec_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . alloc_lock as * const _ as usize } , 3064usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (alloc_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pi_lock as * const _ as usize } , 3068usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pi_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . wake_q as * const _ as usize } , 3072usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (wake_q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pi_waiters as * const _ as usize } , 3080usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pi_waiters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pi_top_task as * const _ as usize } , 3096usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pi_top_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pi_blocked_on as * const _ as usize } , 3104usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pi_blocked_on))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . journal_info as * const _ as usize } , 3112usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (journal_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . bio_list as * const _ as usize } , 3120usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (bio_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . plug as * const _ as usize } , 3128usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (plug))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . reclaim_state as * const _ as usize } , 3136usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (reclaim_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . backing_dev_info as * const _ as usize } , 3144usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (backing_dev_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . io_context as * const _ as usize } , 3152usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (io_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . capture_control as * const _ as usize } , 3160usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (capture_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ptrace_message as * const _ as usize } , 3168usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ptrace_message))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . last_siginfo as * const _ as usize } , 3176usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (last_siginfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ioac as * const _ as usize } , 3184usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ioac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . psi_flags as * const _ as usize } , 3240usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (psi_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . acct_rss_mem1 as * const _ as usize } , 3248usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (acct_rss_mem1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . acct_vm_mem1 as * const _ as usize } , 3256usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (acct_vm_mem1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . acct_timexpd as * const _ as usize } , 3264usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (acct_timexpd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mems_allowed as * const _ as usize } , 3272usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mems_allowed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mems_allowed_seq as * const _ as usize } , 3400usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mems_allowed_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cpuset_mem_spread_rotor as * const _ as usize } , 3404usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cpuset_mem_spread_rotor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cpuset_slab_spread_rotor as * const _ as usize } , 3408usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cpuset_slab_spread_rotor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cgroups as * const _ as usize } , 3416usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cgroups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . cg_list as * const _ as usize } , 3424usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (cg_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . closid as * const _ as usize } , 3440usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (closid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rmid as * const _ as usize } , 3444usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rmid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . robust_list as * const _ as usize } , 3448usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (robust_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . compat_robust_list as * const _ as usize } , 3456usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (compat_robust_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pi_state_list as * const _ as usize } , 3464usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pi_state_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pi_state_cache as * const _ as usize } , 3480usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pi_state_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . futex_exit_mutex as * const _ as usize } , 3488usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (futex_exit_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . futex_state as * const _ as usize } , 3520usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (futex_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . perf_event_ctxp as * const _ as usize } , 3528usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (perf_event_ctxp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . perf_event_mutex as * const _ as usize } , 3544usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (perf_event_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . perf_event_list as * const _ as usize } , 3576usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (perf_event_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mempolicy as * const _ as usize } , 3592usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mempolicy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . il_prev as * const _ as usize } , 3600usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (il_prev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pref_node_fork as * const _ as usize } , 3602usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pref_node_fork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_scan_seq as * const _ as usize } , 3604usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_scan_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_scan_period as * const _ as usize } , 3608usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_scan_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_scan_period_max as * const _ as usize } , 3612usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_scan_period_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_preferred_nid as * const _ as usize } , 3616usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_preferred_nid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_migrate_retry as * const _ as usize } , 3624usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_migrate_retry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . node_stamp as * const _ as usize } , 3632usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (node_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . last_task_numa_placement as * const _ as usize } , 3640usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (last_task_numa_placement))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . last_sum_exec_runtime as * const _ as usize } , 3648usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (last_sum_exec_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_work as * const _ as usize } , 3656usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_group as * const _ as usize } , 3672usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_faults as * const _ as usize } , 3680usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_faults))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . total_numa_faults as * const _ as usize } , 3688usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (total_numa_faults))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_faults_locality as * const _ as usize } , 3696usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_faults_locality))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . numa_pages_migrated as * const _ as usize } , 3720usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (numa_pages_migrated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rseq as * const _ as usize } , 3728usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rseq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rseq_sig as * const _ as usize } , 3736usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rseq_sig))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . rseq_event_mask as * const _ as usize } , 3744usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (rseq_event_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . tlb_ubc as * const _ as usize } , 3752usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (tlb_ubc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . splice_pipe as * const _ as usize } , 4800usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (splice_pipe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . task_frag as * const _ as usize } , 4808usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (task_frag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . delays as * const _ as usize } , 4824usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (delays))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nr_dirtied as * const _ as usize } , 4832usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nr_dirtied))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . nr_dirtied_pause as * const _ as usize } , 4836usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (nr_dirtied_pause))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . dirty_paused_when as * const _ as usize } , 4840usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (dirty_paused_when))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . timer_slack_ns as * const _ as usize } , 4848usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (timer_slack_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . default_timer_slack_ns as * const _ as usize } , 4856usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (default_timer_slack_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . curr_ret_stack as * const _ as usize } , 4864usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (curr_ret_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . curr_ret_depth as * const _ as usize } , 4868usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (curr_ret_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ret_stack as * const _ as usize } , 4872usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ret_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . ftrace_timestamp as * const _ as usize } , 4880usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (ftrace_timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trace_overrun as * const _ as usize } , 4888usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trace_overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . tracing_graph_pause as * const _ as usize } , 4892usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (tracing_graph_pause))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trace as * const _ as usize } , 4896usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . trace_recursion as * const _ as usize } , 4904usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (trace_recursion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . memcg_in_oom as * const _ as usize } , 4912usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (memcg_in_oom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . memcg_oom_gfp_mask as * const _ as usize } , 4920usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (memcg_oom_gfp_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . memcg_oom_order as * const _ as usize } , 4924usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (memcg_oom_order))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . memcg_nr_pages_over_high as * const _ as usize } , 4928usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (memcg_nr_pages_over_high))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . active_memcg as * const _ as usize } , 4936usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (active_memcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . throttle_queue as * const _ as usize } , 4944usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (throttle_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . utask as * const _ as usize } , 4952usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (utask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sequential_io as * const _ as usize } , 4960usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sequential_io))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . sequential_io_avg as * const _ as usize } , 4964usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (sequential_io_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . kmap_ctrl as * const _ as usize } , 4968usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (kmap_ctrl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . pagefault_disabled as * const _ as usize } , 4968usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (pagefault_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . oom_reaper_list as * const _ as usize } , 4976usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (oom_reaper_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . stack_vm_area as * const _ as usize } , 4984usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (stack_vm_area))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . stack_refcount as * const _ as usize } , 4992usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (stack_refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . patch_state as * const _ as usize } , 4996usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (patch_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . security as * const _ as usize } , 5000usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . bpf_storage as * const _ as usize } , 5008usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (bpf_storage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mce_vaddr as * const _ as usize } , 5016usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mce_vaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mce_kflags as * const _ as usize } , 5024usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mce_kflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mce_addr as * const _ as usize } , 5032usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mce_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mce_kill_me as * const _ as usize } , 5048usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mce_kill_me))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . mce_count as * const _ as usize } , 5064usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (mce_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . kretprobe_instances as * const _ as usize } , 5072usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (kretprobe_instances))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_struct > ())) . thread as * const _ as usize } , 5120usize , concat ! ("Offset of field: " , stringify ! (task_struct) , "::" , stringify ! (thread))) ; } impl task_struct { # [inline] pub fn sched_reset_on_fork (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_sched_reset_on_fork (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn sched_contributes_to_load (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_sched_contributes_to_load (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn sched_migrated (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_sched_migrated (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn sched_psi_wake_requeue (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_sched_psi_wake_requeue (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn sched_remote_wakeup (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (32usize , 1u8) as u32) } } # [inline] pub fn set_sched_remote_wakeup (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (32usize , 1u8 , val as u64) } } # [inline] pub fn in_execve (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (33usize , 1u8) as u32) } } # [inline] pub fn set_in_execve (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (33usize , 1u8 , val as u64) } } # [inline] pub fn in_iowait (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (34usize , 1u8) as u32) } } # [inline] pub fn set_in_iowait (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (34usize , 1u8 , val as u64) } } # [inline] pub fn restore_sigmask (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (35usize , 1u8) as u32) } } # [inline] pub fn set_restore_sigmask (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (35usize , 1u8 , val as u64) } } # [inline] pub fn in_user_fault (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (36usize , 1u8) as u32) } } # [inline] pub fn set_in_user_fault (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (36usize , 1u8 , val as u64) } } # [inline] pub fn no_cgroup_migration (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (37usize , 1u8) as u32) } } # [inline] pub fn set_no_cgroup_migration (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (37usize , 1u8 , val as u64) } } # [inline] pub fn frozen (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (38usize , 1u8) as u32) } } # [inline] pub fn set_frozen (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (38usize , 1u8 , val as u64) } } # [inline] pub fn use_memdelay (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (39usize , 1u8) as u32) } } # [inline] pub fn set_use_memdelay (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (39usize , 1u8 , val as u64) } } # [inline] pub fn in_memstall (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (40usize , 1u8) as u32) } } # [inline] pub fn set_in_memstall (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (40usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_2 (sched_reset_on_fork : :: cty :: c_uint , sched_contributes_to_load : :: cty :: c_uint , sched_migrated : :: cty :: c_uint , sched_psi_wake_requeue : :: cty :: c_uint , sched_remote_wakeup : :: cty :: c_uint , in_execve : :: cty :: c_uint , in_iowait : :: cty :: c_uint , restore_sigmask : :: cty :: c_uint , in_user_fault : :: cty :: c_uint , no_cgroup_migration : :: cty :: c_uint , frozen : :: cty :: c_uint , use_memdelay : :: cty :: c_uint , in_memstall : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 6usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 6usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let sched_reset_on_fork : u32 = unsafe { :: core :: mem :: transmute (sched_reset_on_fork) } ; sched_reset_on_fork as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let sched_contributes_to_load : u32 = unsafe { :: core :: mem :: transmute (sched_contributes_to_load) } ; sched_contributes_to_load as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let sched_migrated : u32 = unsafe { :: core :: mem :: transmute (sched_migrated) } ; sched_migrated as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let sched_psi_wake_requeue : u32 = unsafe { :: core :: mem :: transmute (sched_psi_wake_requeue) } ; sched_psi_wake_requeue as u64 }) ; __bindgen_bitfield_unit . set (32usize , 1u8 , { let sched_remote_wakeup : u32 = unsafe { :: core :: mem :: transmute (sched_remote_wakeup) } ; sched_remote_wakeup as u64 }) ; __bindgen_bitfield_unit . set (33usize , 1u8 , { let in_execve : u32 = unsafe { :: core :: mem :: transmute (in_execve) } ; in_execve as u64 }) ; __bindgen_bitfield_unit . set (34usize , 1u8 , { let in_iowait : u32 = unsafe { :: core :: mem :: transmute (in_iowait) } ; in_iowait as u64 }) ; __bindgen_bitfield_unit . set (35usize , 1u8 , { let restore_sigmask : u32 = unsafe { :: core :: mem :: transmute (restore_sigmask) } ; restore_sigmask as u64 }) ; __bindgen_bitfield_unit . set (36usize , 1u8 , { let in_user_fault : u32 = unsafe { :: core :: mem :: transmute (in_user_fault) } ; in_user_fault as u64 }) ; __bindgen_bitfield_unit . set (37usize , 1u8 , { let no_cgroup_migration : u32 = unsafe { :: core :: mem :: transmute (no_cgroup_migration) } ; no_cgroup_migration as u64 }) ; __bindgen_bitfield_unit . set (38usize , 1u8 , { let frozen : u32 = unsafe { :: core :: mem :: transmute (frozen) } ; frozen as u64 }) ; __bindgen_bitfield_unit . set (39usize , 1u8 , { let use_memdelay : u32 = unsafe { :: core :: mem :: transmute (use_memdelay) } ; use_memdelay as u64 }) ; __bindgen_bitfield_unit . set (40usize , 1u8 , { let in_memstall : u32 = unsafe { :: core :: mem :: transmute (in_memstall) } ; in_memstall as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn mce_ripv (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (0usize , 1u8) as u64) } } # [inline] pub fn set_mce_ripv (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn mce_whole_page (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (1usize , 1u8) as u64) } } # [inline] pub fn set_mce_whole_page (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn __mce_reserved (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (2usize , 62u8) as u64) } } # [inline] pub fn set___mce_reserved (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (2usize , 62u8 , val as u64) } } # [inline] pub fn new_bitfield_3 (mce_ripv : __u64 , mce_whole_page : __u64 , __mce_reserved : __u64) -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let mce_ripv : u64 = unsafe { :: core :: mem :: transmute (mce_ripv) } ; mce_ripv as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let mce_whole_page : u64 = unsafe { :: core :: mem :: transmute (mce_whole_page) } ; mce_whole_page as u64 }) ; __bindgen_bitfield_unit . set (2usize , 62u8 , { let __mce_reserved : u64 = unsafe { :: core :: mem :: transmute (__mce_reserved) } ; __mce_reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct range { pub start : _cargo_bpf_u64 , pub end : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_range () { assert_eq ! (:: core :: mem :: size_of :: < range > () , 16usize , concat ! ("Size of: " , stringify ! (range))) ; assert_eq ! (:: core :: mem :: align_of :: < range > () , 8usize , concat ! ("Alignment of " , stringify ! (range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < range > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (range) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < range > ())) . end as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (range) , "::" , stringify ! (end))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pt_regs { pub r15 : :: cty :: c_ulong , pub r14 : :: cty :: c_ulong , pub r13 : :: cty :: c_ulong , pub r12 : :: cty :: c_ulong , pub bp : :: cty :: c_ulong , pub bx : :: cty :: c_ulong , pub r11 : :: cty :: c_ulong , pub r10 : :: cty :: c_ulong , pub r9 : :: cty :: c_ulong , pub r8 : :: cty :: c_ulong , pub ax : :: cty :: c_ulong , pub cx : :: cty :: c_ulong , pub dx : :: cty :: c_ulong , pub si : :: cty :: c_ulong , pub di : :: cty :: c_ulong , pub orig_ax : :: cty :: c_ulong , pub ip : :: cty :: c_ulong , pub cs : :: cty :: c_ulong , pub flags : :: cty :: c_ulong , pub sp : :: cty :: c_ulong , pub ss : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_pt_regs () { assert_eq ! (:: core :: mem :: size_of :: < pt_regs > () , 168usize , concat ! ("Size of: " , stringify ! (pt_regs))) ; assert_eq ! (:: core :: mem :: align_of :: < pt_regs > () , 8usize , concat ! ("Alignment of " , stringify ! (pt_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r15 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r15))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r14 as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r14))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r13 as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r13))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r12 as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r12))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . bp as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (bp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . bx as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (bx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r11 as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r11))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r10 as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r10))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r9 as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r9))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . r8 as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (r8))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . ax as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (ax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . cx as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (cx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . dx as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (dx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . si as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (si))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . di as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (di))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . orig_ax as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (orig_ax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . ip as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (ip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . cs as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (cs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . flags as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . sp as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (sp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pt_regs > ())) . ss as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (pt_regs) , "::" , stringify ! (ss))) ; } pub type pteval_t = :: cty :: c_ulong ; pub type pmdval_t = :: cty :: c_ulong ; pub type pudval_t = :: cty :: c_ulong ; pub type pgdval_t = :: cty :: c_ulong ; pub type pgprotval_t = :: cty :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pte_t { pub pte : pteval_t , } # [test] fn bindgen_test_layout_pte_t () { assert_eq ! (:: core :: mem :: size_of :: < pte_t > () , 8usize , concat ! ("Size of: " , stringify ! (pte_t))) ; assert_eq ! (:: core :: mem :: align_of :: < pte_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pte_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pte_t > ())) . pte as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pte_t) , "::" , stringify ! (pte))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pgprot { pub pgprot : pgprotval_t , } # [test] fn bindgen_test_layout_pgprot () { assert_eq ! (:: core :: mem :: size_of :: < pgprot > () , 8usize , concat ! ("Size of: " , stringify ! (pgprot))) ; assert_eq ! (:: core :: mem :: align_of :: < pgprot > () , 8usize , concat ! ("Alignment of " , stringify ! (pgprot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pgprot > ())) . pgprot as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pgprot) , "::" , stringify ! (pgprot))) ; } pub type pgprot_t = pgprot ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pgd_t { pub pgd : pgdval_t , } # [test] fn bindgen_test_layout_pgd_t () { assert_eq ! (:: core :: mem :: size_of :: < pgd_t > () , 8usize , concat ! ("Size of: " , stringify ! (pgd_t))) ; assert_eq ! (:: core :: mem :: align_of :: < pgd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pgd_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pgd_t > ())) . pgd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pgd_t) , "::" , stringify ! (pgd))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pud_t { pub pud : pudval_t , } # [test] fn bindgen_test_layout_pud_t () { assert_eq ! (:: core :: mem :: size_of :: < pud_t > () , 8usize , concat ! ("Size of: " , stringify ! (pud_t))) ; assert_eq ! (:: core :: mem :: align_of :: < pud_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pud_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pud_t > ())) . pud as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pud_t) , "::" , stringify ! (pud))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pmd_t { pub pmd : pmdval_t , } # [test] fn bindgen_test_layout_pmd_t () { assert_eq ! (:: core :: mem :: size_of :: < pmd_t > () , 8usize , concat ! ("Size of: " , stringify ! (pmd_t))) ; assert_eq ! (:: core :: mem :: align_of :: < pmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pmd_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmd_t > ())) . pmd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pmd_t) , "::" , stringify ! (pmd))) ; } pub type pgtable_t = * mut page ; # [repr (C)] # [derive (Copy , Clone)] pub struct page { pub flags : :: cty :: c_ulong , pub __bindgen_anon_1 : page__bindgen_ty_1 , pub __bindgen_anon_2 : page__bindgen_ty_2 , pub _refcount : atomic_t , pub memcg_data : :: cty :: c_ulong , } # [repr (C)] # [derive (Copy , Clone)] pub union page__bindgen_ty_1 { pub __bindgen_anon_1 : page__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : page__bindgen_ty_1__bindgen_ty_2 , pub __bindgen_anon_3 : page__bindgen_ty_1__bindgen_ty_3 , pub __bindgen_anon_4 : page__bindgen_ty_1__bindgen_ty_4 , pub __bindgen_anon_5 : page__bindgen_ty_1__bindgen_ty_5 , pub __bindgen_anon_6 : page__bindgen_ty_1__bindgen_ty_6 , pub __bindgen_anon_7 : page__bindgen_ty_1__bindgen_ty_7 , pub callback_head : callback_head , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_1 { pub lru : list_head , pub mapping : * mut address_space , pub index : :: cty :: c_ulong , pub private : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_1 > ())) . lru as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_1 > ())) . mapping as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_1 > ())) . index as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_1 > ())) . private as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (private))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_2 { pub dma_addr : [:: cty :: c_ulong ; 2usize] , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_2 > ())) . dma_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dma_addr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_3 { pub __bindgen_anon_1 : page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 , pub slab_cache : * mut kmem_cache , pub freelist : * mut :: cty :: c_void , pub __bindgen_anon_2 : page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 { pub slab_list : list_head , pub __bindgen_anon_1 : page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 { pub next : * mut page , pub pages : :: cty :: c_int , pub pobjects : :: cty :: c_int , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 > ())) . pages as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1 > ())) . pobjects as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (pobjects))) ; } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1 > ())) . slab_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (slab_list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 { pub s_mem : * mut :: cty :: c_void , pub counters : :: cty :: c_ulong , pub __bindgen_anon_1 : page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1 { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1))) ; } impl page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2__bindgen_ty_1 { # [inline] pub fn inuse (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 16u8) as u32) } } # [inline] pub fn set_inuse (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 16u8 , val as u64) } } # [inline] pub fn objects (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (16usize , 15u8) as u32) } } # [inline] pub fn set_objects (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 15u8 , val as u64) } } # [inline] pub fn frozen (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (31usize , 1u8) as u32) } } # [inline] pub fn set_frozen (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (31usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (inuse : :: cty :: c_uint , objects : :: cty :: c_uint , frozen : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 16u8 , { let inuse : u32 = unsafe { :: core :: mem :: transmute (inuse) } ; inuse as u64 }) ; __bindgen_bitfield_unit . set (16usize , 15u8 , { let objects : u32 = unsafe { :: core :: mem :: transmute (objects) } ; objects as u64 }) ; __bindgen_bitfield_unit . set (31usize , 1u8 , { let frozen : u32 = unsafe { :: core :: mem :: transmute (frozen) } ; frozen as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 > ())) . s_mem as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (s_mem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2 > ())) . counters as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (counters))) ; } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3 > ())) . slab_cache as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (slab_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_3 > ())) . freelist as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (freelist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_4 { pub compound_head : :: cty :: c_ulong , pub compound_dtor : :: cty :: c_uchar , pub compound_order : :: cty :: c_uchar , pub compound_mapcount : atomic_t , pub compound_nr : :: cty :: c_uint , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_4 > () , 24usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_4 > ())) . compound_head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (compound_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_4 > ())) . compound_dtor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (compound_dtor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_4 > ())) . compound_order as * const _ as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (compound_order))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_4 > ())) . compound_mapcount as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (compound_mapcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_4 > ())) . compound_nr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (compound_nr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_5 { pub _compound_pad_1 : :: cty :: c_ulong , pub hpage_pinned_refcount : atomic_t , pub deferred_list : list_head , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_5 > () , 32usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_5 > ())) . _compound_pad_1 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (_compound_pad_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_5 > ())) . hpage_pinned_refcount as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (hpage_pinned_refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_5 > ())) . deferred_list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (deferred_list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_6 { pub _pt_pad_1 : :: cty :: c_ulong , pub pmd_huge_pte : pgtable_t , pub _pt_pad_2 : :: cty :: c_ulong , pub __bindgen_anon_1 : page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 , pub ptl : spinlock_t , } # [repr (C)] # [derive (Copy , Clone)] pub union page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 { pub pt_mm : * mut mm_struct , pub pt_frag_refcount : atomic_t , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 > ())) . pt_mm as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1) , "::" , stringify ! (pt_mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1 > ())) . pt_frag_refcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6__bindgen_ty_1) , "::" , stringify ! (pt_frag_refcount))) ; } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_6 > () , 40usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_6 > ())) . _pt_pad_1 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (_pt_pad_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_6 > ())) . pmd_huge_pte as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (pmd_huge_pte))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_6 > ())) . _pt_pad_2 as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (_pt_pad_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_6 > ())) . ptl as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (ptl))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page__bindgen_ty_1__bindgen_ty_7 { pub pgmap : * mut dev_pagemap , pub zone_device_data : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_page__bindgen_ty_1__bindgen_ty_7 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1__bindgen_ty_7 > () , 16usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1__bindgen_ty_7))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1__bindgen_ty_7 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1__bindgen_ty_7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_7 > ())) . pgmap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_7) , "::" , stringify ! (pgmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1__bindgen_ty_7 > ())) . zone_device_data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1__bindgen_ty_7) , "::" , stringify ! (zone_device_data))) ; } # [test] fn bindgen_test_layout_page__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_1 > ())) . callback_head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_1) , "::" , stringify ! (callback_head))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union page__bindgen_ty_2 { pub _mapcount : atomic_t , pub page_type : :: cty :: c_uint , pub active : :: cty :: c_uint , pub units : :: cty :: c_int , } # [test] fn bindgen_test_layout_page__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < page__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (page__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < page__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (page__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_2 > ())) . _mapcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_2) , "::" , stringify ! (_mapcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_2 > ())) . page_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_2) , "::" , stringify ! (page_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_2 > ())) . active as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_2) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page__bindgen_ty_2 > ())) . units as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page__bindgen_ty_2) , "::" , stringify ! (units))) ; } # [test] fn bindgen_test_layout_page () { assert_eq ! (:: core :: mem :: size_of :: < page > () , 64usize , concat ! ("Size of: " , stringify ! (page))) ; assert_eq ! (:: core :: mem :: align_of :: < page > () , 8usize , concat ! ("Alignment of " , stringify ! (page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page > ())) . _refcount as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (page) , "::" , stringify ! (_refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page > ())) . memcg_data as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (page) , "::" , stringify ! (memcg_data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rw_semaphore { pub count : atomic_long_t , pub owner : atomic_long_t , pub osq : optimistic_spin_queue , pub wait_lock : raw_spinlock_t , pub wait_list : list_head , } # [test] fn bindgen_test_layout_rw_semaphore () { assert_eq ! (:: core :: mem :: size_of :: < rw_semaphore > () , 40usize , concat ! ("Size of: " , stringify ! (rw_semaphore))) ; assert_eq ! (:: core :: mem :: align_of :: < rw_semaphore > () , 8usize , concat ! ("Alignment of " , stringify ! (rw_semaphore))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rw_semaphore > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rw_semaphore) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rw_semaphore > ())) . owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rw_semaphore) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rw_semaphore > ())) . osq as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rw_semaphore) , "::" , stringify ! (osq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rw_semaphore > ())) . wait_lock as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (rw_semaphore) , "::" , stringify ! (wait_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rw_semaphore > ())) . wait_list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rw_semaphore) , "::" , stringify ! (wait_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mm_rss_stat { pub count : [atomic_long_t ; 4usize] , } # [test] fn bindgen_test_layout_mm_rss_stat () { assert_eq ! (:: core :: mem :: size_of :: < mm_rss_stat > () , 32usize , concat ! ("Size of: " , stringify ! (mm_rss_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < mm_rss_stat > () , 8usize , concat ! ("Alignment of " , stringify ! (mm_rss_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_rss_stat > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mm_rss_stat) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct mm_context_t { pub ctx_id : _cargo_bpf_u64 , pub tlb_gen : atomic64_t , pub ldt_usr_sem : rw_semaphore , pub ldt : * mut ldt_struct , pub flags : :: cty :: c_ushort , pub lock : mutex , pub vdso : * mut :: cty :: c_void , pub vdso_image : * const vdso_image , pub perf_rdpmc_allowed : atomic_t , pub pkey_allocation_map : _cargo_bpf_u16 , pub execute_only_pkey : s16 , } # [test] fn bindgen_test_layout_mm_context_t () { assert_eq ! (:: core :: mem :: size_of :: < mm_context_t > () , 128usize , concat ! ("Size of: " , stringify ! (mm_context_t))) ; assert_eq ! (:: core :: mem :: align_of :: < mm_context_t > () , 8usize , concat ! ("Alignment of " , stringify ! (mm_context_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . ctx_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (ctx_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . tlb_gen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (tlb_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . ldt_usr_sem as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (ldt_usr_sem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . ldt as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (ldt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . flags as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . lock as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . vdso as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (vdso))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . vdso_image as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (vdso_image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . perf_rdpmc_allowed as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (perf_rdpmc_allowed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . pkey_allocation_map as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (pkey_allocation_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_context_t > ())) . execute_only_pkey as * const _ as usize } , 126usize , concat ! ("Offset of field: " , stringify ! (mm_context_t) , "::" , stringify ! (execute_only_pkey))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uprobes_state { pub xol_area : * mut xol_area , } # [test] fn bindgen_test_layout_uprobes_state () { assert_eq ! (:: core :: mem :: size_of :: < uprobes_state > () , 8usize , concat ! ("Size of: " , stringify ! (uprobes_state))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobes_state > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobes_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobes_state > ())) . xol_area as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uprobes_state) , "::" , stringify ! (xol_area))) ; } pub type work_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut work_struct) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct work_struct { pub data : atomic_long_t , pub entry : list_head , pub func : work_func_t , } # [test] fn bindgen_test_layout_work_struct () { assert_eq ! (:: core :: mem :: size_of :: < work_struct > () , 32usize , concat ! ("Size of: " , stringify ! (work_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < work_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (work_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < work_struct > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (work_struct) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < work_struct > ())) . entry as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (work_struct) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < work_struct > ())) . func as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (work_struct) , "::" , stringify ! (func))) ; } # [repr (C)] pub struct mm_struct { pub __bindgen_anon_1 : mm_struct__bindgen_ty_1 , pub cpu_bitmap : __IncompleteArrayField < :: cty :: c_ulong > , } # [repr (C)] # [derive (Copy , Clone)] pub struct mm_struct__bindgen_ty_1 { pub mmap : * mut vm_area_struct , pub mm_rb : rb_root , pub vmacache_seqnum : _cargo_bpf_u64 , pub get_unmapped_area : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_ulong , arg5 : :: cty :: c_ulong) -> :: cty :: c_ulong > , pub mmap_base : :: cty :: c_ulong , pub mmap_legacy_base : :: cty :: c_ulong , pub mmap_compat_base : :: cty :: c_ulong , pub mmap_compat_legacy_base : :: cty :: c_ulong , pub task_size : :: cty :: c_ulong , pub highest_vm_end : :: cty :: c_ulong , pub pgd : * mut pgd_t , pub membarrier_state : atomic_t , pub mm_users : atomic_t , pub mm_count : atomic_t , pub has_pinned : atomic_t , pub pgtables_bytes : atomic_long_t , pub map_count : :: cty :: c_int , pub page_table_lock : spinlock_t , pub mmap_lock : rw_semaphore , pub mmlist : list_head , pub hiwater_rss : :: cty :: c_ulong , pub hiwater_vm : :: cty :: c_ulong , pub total_vm : :: cty :: c_ulong , pub locked_vm : :: cty :: c_ulong , pub pinned_vm : atomic64_t , pub data_vm : :: cty :: c_ulong , pub exec_vm : :: cty :: c_ulong , pub stack_vm : :: cty :: c_ulong , pub def_flags : :: cty :: c_ulong , pub write_protect_seq : seqcount_t , pub arg_lock : spinlock_t , pub start_code : :: cty :: c_ulong , pub end_code : :: cty :: c_ulong , pub start_data : :: cty :: c_ulong , pub end_data : :: cty :: c_ulong , pub start_brk : :: cty :: c_ulong , pub brk : :: cty :: c_ulong , pub start_stack : :: cty :: c_ulong , pub arg_start : :: cty :: c_ulong , pub arg_end : :: cty :: c_ulong , pub env_start : :: cty :: c_ulong , pub env_end : :: cty :: c_ulong , pub saved_auxv : [:: cty :: c_ulong ; 46usize] , pub rss_stat : mm_rss_stat , pub binfmt : * mut linux_binfmt , pub context : mm_context_t , pub flags : :: cty :: c_ulong , pub core_state : * mut core_state , pub ioctx_lock : spinlock_t , pub ioctx_table : * mut kioctx_table , pub owner : * mut task_struct , pub user_ns : * mut user_namespace , pub exe_file : * mut file , pub notifier_subscriptions : * mut mmu_notifier_subscriptions , pub numa_next_scan : :: cty :: c_ulong , pub numa_scan_offset : :: cty :: c_ulong , pub numa_scan_seq : :: cty :: c_int , pub tlb_flush_pending : atomic_t , pub tlb_flush_batched : bool_ , pub uprobes_state : uprobes_state , pub hugetlb_usage : atomic_long_t , pub async_put_work : work_struct , pub pasid : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_mm_struct__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < mm_struct__bindgen_ty_1 > () , 1032usize , concat ! ("Size of: " , stringify ! (mm_struct__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < mm_struct__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (mm_struct__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mm_rb as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mm_rb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . vmacache_seqnum as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (vmacache_seqnum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . get_unmapped_area as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (get_unmapped_area))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmap_base as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmap_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmap_legacy_base as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmap_legacy_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmap_compat_base as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmap_compat_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmap_compat_legacy_base as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmap_compat_legacy_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . task_size as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (task_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . highest_vm_end as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (highest_vm_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . pgd as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (pgd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . membarrier_state as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (membarrier_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mm_users as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mm_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mm_count as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mm_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . has_pinned as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (has_pinned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . pgtables_bytes as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (pgtables_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . map_count as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (map_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . page_table_lock as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (page_table_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmap_lock as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmap_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . mmlist as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (mmlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . hiwater_rss as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (hiwater_rss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . hiwater_vm as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (hiwater_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . total_vm as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (total_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . locked_vm as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (locked_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . pinned_vm as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (pinned_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . data_vm as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (data_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . exec_vm as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (exec_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . stack_vm as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (stack_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . def_flags as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (def_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . write_protect_seq as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (write_protect_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . arg_lock as * const _ as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (arg_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . start_code as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (start_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . end_code as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (end_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . start_data as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (start_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . end_data as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (end_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . start_brk as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (start_brk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . brk as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (brk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . start_stack as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (start_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . arg_start as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (arg_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . arg_end as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (arg_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . env_start as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (env_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . env_end as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (env_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . saved_auxv as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (saved_auxv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . rss_stat as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (rss_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . binfmt as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (binfmt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . context as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . flags as * const _ as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . core_state as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (core_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . ioctx_lock as * const _ as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (ioctx_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . ioctx_table as * const _ as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (ioctx_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . owner as * const _ as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . user_ns as * const _ as usize } , 920usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . exe_file as * const _ as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (exe_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . notifier_subscriptions as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (notifier_subscriptions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . numa_next_scan as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (numa_next_scan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . numa_scan_offset as * const _ as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (numa_scan_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . numa_scan_seq as * const _ as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (numa_scan_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . tlb_flush_pending as * const _ as usize } , 964usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (tlb_flush_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . tlb_flush_batched as * const _ as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (tlb_flush_batched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . uprobes_state as * const _ as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (uprobes_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . hugetlb_usage as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (hugetlb_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . async_put_work as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (async_put_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct__bindgen_ty_1 > ())) . pasid as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (mm_struct__bindgen_ty_1) , "::" , stringify ! (pasid))) ; } # [test] fn bindgen_test_layout_mm_struct () { assert_eq ! (:: core :: mem :: size_of :: < mm_struct > () , 1032usize , concat ! ("Size of: " , stringify ! (mm_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < mm_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (mm_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mm_struct > ())) . cpu_bitmap as * const _ as usize } , 1032usize , concat ! ("Offset of field: " , stringify ! (mm_struct) , "::" , stringify ! (cpu_bitmap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_userfaultfd_ctx { pub ctx : * mut userfaultfd_ctx , } # [test] fn bindgen_test_layout_vm_userfaultfd_ctx () { assert_eq ! (:: core :: mem :: size_of :: < vm_userfaultfd_ctx > () , 8usize , concat ! ("Size of: " , stringify ! (vm_userfaultfd_ctx))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_userfaultfd_ctx > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_userfaultfd_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_userfaultfd_ctx > ())) . ctx as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_userfaultfd_ctx) , "::" , stringify ! (ctx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_area_struct { pub vm_start : :: cty :: c_ulong , pub vm_end : :: cty :: c_ulong , pub vm_next : * mut vm_area_struct , pub vm_prev : * mut vm_area_struct , pub vm_rb : rb_node , pub rb_subtree_gap : :: cty :: c_ulong , pub vm_mm : * mut mm_struct , pub vm_page_prot : pgprot_t , pub vm_flags : :: cty :: c_ulong , pub shared : vm_area_struct__bindgen_ty_1 , pub anon_vma_chain : list_head , pub anon_vma : * mut anon_vma , pub vm_ops : * const vm_operations_struct , pub vm_pgoff : :: cty :: c_ulong , pub vm_file : * mut file , pub vm_prfile : * mut file , pub vm_private_data : * mut :: cty :: c_void , pub swap_readahead_info : atomic_long_t , pub vm_policy : * mut mempolicy , pub vm_userfaultfd_ctx : vm_userfaultfd_ctx , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_area_struct__bindgen_ty_1 { pub rb : rb_node , pub rb_subtree_last : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_vm_area_struct__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < vm_area_struct__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (vm_area_struct__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_area_struct__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_area_struct__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct__bindgen_ty_1 > ())) . rb as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct__bindgen_ty_1) , "::" , stringify ! (rb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct__bindgen_ty_1 > ())) . rb_subtree_last as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct__bindgen_ty_1) , "::" , stringify ! (rb_subtree_last))) ; } # [test] fn bindgen_test_layout_vm_area_struct () { assert_eq ! (:: core :: mem :: size_of :: < vm_area_struct > () , 208usize , concat ! ("Size of: " , stringify ! (vm_area_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_area_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_area_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_end as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_next as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_prev as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_prev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_rb as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_rb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . rb_subtree_gap as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (rb_subtree_gap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_mm as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_page_prot as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_page_prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . shared as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (shared))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . anon_vma_chain as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (anon_vma_chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . anon_vma as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (anon_vma))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_ops as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_pgoff as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_pgoff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_file as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_prfile as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_prfile))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_private_data as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_private_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . swap_readahead_info as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (swap_readahead_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_policy as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_area_struct > ())) . vm_userfaultfd_ctx as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (vm_area_struct) , "::" , stringify ! (vm_userfaultfd_ctx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct math_emu_info { pub ___orig_eip : :: cty :: c_long , pub regs : * mut pt_regs , } # [test] fn bindgen_test_layout_math_emu_info () { assert_eq ! (:: core :: mem :: size_of :: < math_emu_info > () , 16usize , concat ! ("Size of: " , stringify ! (math_emu_info))) ; assert_eq ! (:: core :: mem :: align_of :: < math_emu_info > () , 8usize , concat ! ("Alignment of " , stringify ! (math_emu_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < math_emu_info > ())) . ___orig_eip as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (math_emu_info) , "::" , stringify ! (___orig_eip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < math_emu_info > ())) . regs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (math_emu_info) , "::" , stringify ! (regs))) ; } pub type cpumask_var_t = * mut cpumask ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tracepoint_func { pub func : * mut :: cty :: c_void , pub data : * mut :: cty :: c_void , pub prio : :: cty :: c_int , } # [test] fn bindgen_test_layout_tracepoint_func () { assert_eq ! (:: core :: mem :: size_of :: < tracepoint_func > () , 24usize , concat ! ("Size of: " , stringify ! (tracepoint_func))) ; assert_eq ! (:: core :: mem :: align_of :: < tracepoint_func > () , 8usize , concat ! ("Alignment of " , stringify ! (tracepoint_func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint_func > ())) . func as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tracepoint_func) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint_func > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tracepoint_func) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint_func > ())) . prio as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tracepoint_func) , "::" , stringify ! (prio))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct tracepoint { pub name : * const :: cty :: c_char , pub key : static_key , pub static_call_key : * mut static_call_key , pub static_call_tramp : * mut :: cty :: c_void , pub iterator : * mut :: cty :: c_void , pub regfunc : :: core :: option :: Option < unsafe extern "C" fn () -> :: cty :: c_int > , pub unregfunc : :: core :: option :: Option < unsafe extern "C" fn () > , pub funcs : * mut tracepoint_func , } # [test] fn bindgen_test_layout_tracepoint () { assert_eq ! (:: core :: mem :: size_of :: < tracepoint > () , 72usize , concat ! ("Size of: " , stringify ! (tracepoint))) ; assert_eq ! (:: core :: mem :: align_of :: < tracepoint > () , 8usize , concat ! ("Alignment of " , stringify ! (tracepoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . static_call_key as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (static_call_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . static_call_tramp as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (static_call_tramp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . iterator as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (iterator))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . regfunc as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (regfunc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . unregfunc as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (unregfunc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracepoint > ())) . funcs as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tracepoint) , "::" , stringify ! (funcs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct seq_operations { pub start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut loff_t) -> * mut :: cty :: c_void > , pub stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) > , pub next : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void , arg3 : * mut loff_t) -> * mut :: cty :: c_void > , pub show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_seq_operations () { assert_eq ! (:: core :: mem :: size_of :: < seq_operations > () , 32usize , concat ! ("Size of: " , stringify ! (seq_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < seq_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (seq_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_operations > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seq_operations) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_operations > ())) . stop as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (seq_operations) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_operations > ())) . next as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (seq_operations) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_operations > ())) . show as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (seq_operations) , "::" , stringify ! (show))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fwnode_handle { pub secondary : * mut fwnode_handle , pub ops : * const fwnode_operations , pub dev : * mut device , pub suppliers : list_head , pub consumers : list_head , pub flags : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_fwnode_handle () { assert_eq ! (:: core :: mem :: size_of :: < fwnode_handle > () , 64usize , concat ! ("Size of: " , stringify ! (fwnode_handle))) ; assert_eq ! (:: core :: mem :: align_of :: < fwnode_handle > () , 8usize , concat ! ("Alignment of " , stringify ! (fwnode_handle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_handle > ())) . secondary as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fwnode_handle) , "::" , stringify ! (secondary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_handle > ())) . ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fwnode_handle) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_handle > ())) . dev as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fwnode_handle) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_handle > ())) . suppliers as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fwnode_handle) , "::" , stringify ! (suppliers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_handle > ())) . consumers as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fwnode_handle) , "::" , stringify ! (consumers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_handle > ())) . flags as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (fwnode_handle) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fwnode_operations { pub get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fwnode_handle) -> * mut fwnode_handle > , pub put : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fwnode_handle) > , pub device_is_available : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle) -> bool_ > , pub device_get_match_data : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * const device) -> * const :: cty :: c_void > , pub property_present : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * const :: cty :: c_char) -> bool_ > , pub property_read_int_array : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * const :: cty :: c_char , arg3 : :: cty :: c_uint , arg4 : * mut :: cty :: c_void , arg5 : size_t) -> :: cty :: c_int > , pub property_read_string_array : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * const :: cty :: c_char , arg3 : * mut * const :: cty :: c_char , arg4 : size_t) -> :: cty :: c_int > , pub get_name : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle) -> * const :: cty :: c_char > , pub get_name_prefix : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle) -> * const :: cty :: c_char > , pub get_parent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle) -> * mut fwnode_handle > , pub get_next_child_node : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * mut fwnode_handle) -> * mut fwnode_handle > , pub get_named_child_node : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * const :: cty :: c_char) -> * mut fwnode_handle > , pub get_reference_args : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * const :: cty :: c_char , arg3 : * const :: cty :: c_char , arg4 : :: cty :: c_uint , arg5 : :: cty :: c_uint , arg6 : * mut fwnode_reference_args) -> :: cty :: c_int > , pub graph_get_next_endpoint : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * mut fwnode_handle) -> * mut fwnode_handle > , pub graph_get_remote_endpoint : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle) -> * mut fwnode_handle > , pub graph_get_port_parent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fwnode_handle) -> * mut fwnode_handle > , pub graph_parse_endpoint : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const fwnode_handle , arg2 : * mut fwnode_endpoint) -> :: cty :: c_int > , pub add_links : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fwnode_handle) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_fwnode_operations () { assert_eq ! (:: core :: mem :: size_of :: < fwnode_operations > () , 144usize , concat ! ("Size of: " , stringify ! (fwnode_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < fwnode_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (fwnode_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . put as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (put))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . device_is_available as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (device_is_available))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . device_get_match_data as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (device_get_match_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . property_present as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (property_present))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . property_read_int_array as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (property_read_int_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . property_read_string_array as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (property_read_string_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get_name as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get_name_prefix as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get_name_prefix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get_parent as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get_next_child_node as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get_next_child_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get_named_child_node as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get_named_child_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . get_reference_args as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (get_reference_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . graph_get_next_endpoint as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (graph_get_next_endpoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . graph_get_remote_endpoint as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (graph_get_remote_endpoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . graph_get_port_parent as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (graph_get_port_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . graph_parse_endpoint as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (graph_parse_endpoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_operations > ())) . add_links as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (fwnode_operations) , "::" , stringify ! (add_links))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kref { pub refcount : refcount_t , } # [test] fn bindgen_test_layout_kref () { assert_eq ! (:: core :: mem :: size_of :: < kref > () , 4usize , concat ! ("Size of: " , stringify ! (kref))) ; assert_eq ! (:: core :: mem :: align_of :: < kref > () , 4usize , concat ! ("Alignment of " , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kref > ())) . refcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kref) , "::" , stringify ! (refcount))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kobject { pub name : * const :: cty :: c_char , pub entry : list_head , pub parent : * mut kobject , pub kset : * mut kset , pub ktype : * mut kobj_type , pub sd : * mut kernfs_node , pub kref : kref , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_kobject () { assert_eq ! (:: core :: mem :: size_of :: < kobject > () , 64usize , concat ! ("Size of: " , stringify ! (kobject))) ; assert_eq ! (:: core :: mem :: align_of :: < kobject > () , 8usize , concat ! ("Alignment of " , stringify ! (kobject))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . entry as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . parent as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . kset as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (kset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . ktype as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (ktype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . sd as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (sd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobject > ())) . kref as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (kobject) , "::" , stringify ! (kref))) ; } impl kobject { # [inline] pub fn state_initialized (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_state_initialized (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn state_in_sysfs (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_state_in_sysfs (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn state_add_uevent_sent (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_state_add_uevent_sent (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn state_remove_uevent_sent (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_state_remove_uevent_sent (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn uevent_suppress (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_uevent_suppress (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (state_initialized : :: cty :: c_uint , state_in_sysfs : :: cty :: c_uint , state_add_uevent_sent : :: cty :: c_uint , state_remove_uevent_sent : :: cty :: c_uint , uevent_suppress : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let state_initialized : u32 = unsafe { :: core :: mem :: transmute (state_initialized) } ; state_initialized as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let state_in_sysfs : u32 = unsafe { :: core :: mem :: transmute (state_in_sysfs) } ; state_in_sysfs as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let state_add_uevent_sent : u32 = unsafe { :: core :: mem :: transmute (state_add_uevent_sent) } ; state_add_uevent_sent as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let state_remove_uevent_sent : u32 = unsafe { :: core :: mem :: transmute (state_remove_uevent_sent) } ; state_remove_uevent_sent as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let uevent_suppress : u32 = unsafe { :: core :: mem :: transmute (uevent_suppress) } ; uevent_suppress as u64 }) ; __bindgen_bitfield_unit } } pub const dl_dev_state_DL_DEV_NO_DRIVER : dl_dev_state = 0 ; pub const dl_dev_state_DL_DEV_PROBING : dl_dev_state = 1 ; pub const dl_dev_state_DL_DEV_DRIVER_BOUND : dl_dev_state = 2 ; pub const dl_dev_state_DL_DEV_UNBINDING : dl_dev_state = 3 ; pub type dl_dev_state = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dev_links_info { pub suppliers : list_head , pub consumers : list_head , pub defer_sync : list_head , pub status : dl_dev_state , } # [test] fn bindgen_test_layout_dev_links_info () { assert_eq ! (:: core :: mem :: size_of :: < dev_links_info > () , 56usize , concat ! ("Size of: " , stringify ! (dev_links_info))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_links_info > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_links_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_links_info > ())) . suppliers as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_links_info) , "::" , stringify ! (suppliers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_links_info > ())) . consumers as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dev_links_info) , "::" , stringify ! (consumers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_links_info > ())) . defer_sync as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dev_links_info) , "::" , stringify ! (defer_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_links_info > ())) . status as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dev_links_info) , "::" , stringify ! (status))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pm_message { pub event : :: cty :: c_int , } # [test] fn bindgen_test_layout_pm_message () { assert_eq ! (:: core :: mem :: size_of :: < pm_message > () , 4usize , concat ! ("Size of: " , stringify ! (pm_message))) ; assert_eq ! (:: core :: mem :: align_of :: < pm_message > () , 4usize , concat ! ("Alignment of " , stringify ! (pm_message))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_message > ())) . event as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pm_message) , "::" , stringify ! (event))) ; } pub type pm_message_t = pm_message ; # [repr (C)] # [derive (Copy , Clone)] pub struct swait_queue_head { pub lock : raw_spinlock_t , pub task_list : list_head , } # [test] fn bindgen_test_layout_swait_queue_head () { assert_eq ! (:: core :: mem :: size_of :: < swait_queue_head > () , 24usize , concat ! ("Size of: " , stringify ! (swait_queue_head))) ; assert_eq ! (:: core :: mem :: align_of :: < swait_queue_head > () , 8usize , concat ! ("Alignment of " , stringify ! (swait_queue_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swait_queue_head > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (swait_queue_head) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swait_queue_head > ())) . task_list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (swait_queue_head) , "::" , stringify ! (task_list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct completion { pub done : :: cty :: c_uint , pub wait : swait_queue_head , } # [test] fn bindgen_test_layout_completion () { assert_eq ! (:: core :: mem :: size_of :: < completion > () , 32usize , concat ! ("Size of: " , stringify ! (completion))) ; assert_eq ! (:: core :: mem :: align_of :: < completion > () , 8usize , concat ! ("Alignment of " , stringify ! (completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < completion > ())) . done as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (completion) , "::" , stringify ! (done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < completion > ())) . wait as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (completion) , "::" , stringify ! (wait))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct wait_queue_head { pub lock : spinlock_t , pub head : list_head , } # [test] fn bindgen_test_layout_wait_queue_head () { assert_eq ! (:: core :: mem :: size_of :: < wait_queue_head > () , 24usize , concat ! ("Size of: " , stringify ! (wait_queue_head))) ; assert_eq ! (:: core :: mem :: align_of :: < wait_queue_head > () , 8usize , concat ! ("Alignment of " , stringify ! (wait_queue_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_queue_head > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wait_queue_head) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_queue_head > ())) . head as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wait_queue_head) , "::" , stringify ! (head))) ; } pub type wait_queue_head_t = wait_queue_head ; pub const rpm_request_RPM_REQ_NONE : rpm_request = 0 ; pub const rpm_request_RPM_REQ_IDLE : rpm_request = 1 ; pub const rpm_request_RPM_REQ_SUSPEND : rpm_request = 2 ; pub const rpm_request_RPM_REQ_AUTOSUSPEND : rpm_request = 3 ; pub const rpm_request_RPM_REQ_RESUME : rpm_request = 4 ; pub type rpm_request = :: cty :: c_uint ; pub const rpm_status_RPM_ACTIVE : rpm_status = 0 ; pub const rpm_status_RPM_RESUMING : rpm_status = 1 ; pub const rpm_status_RPM_SUSPENDED : rpm_status = 2 ; pub const rpm_status_RPM_SUSPENDING : rpm_status = 3 ; pub type rpm_status = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct dev_pm_info { pub power_state : pm_message_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub driver_flags : _cargo_bpf_u32 , pub lock : spinlock_t , pub entry : list_head , pub completion : completion , pub wakeup : * mut wakeup_source , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub suspend_timer : hrtimer , pub timer_expires : _cargo_bpf_u64 , pub work : work_struct , pub wait_queue : wait_queue_head_t , pub wakeirq : * mut wake_irq , pub usage_count : atomic_t , pub child_count : atomic_t , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub links_count : :: cty :: c_uint , pub request : rpm_request , pub runtime_status : rpm_status , pub runtime_error : :: cty :: c_int , pub autosuspend_delay : :: cty :: c_int , pub last_busy : _cargo_bpf_u64 , pub active_time : _cargo_bpf_u64 , pub suspended_time : _cargo_bpf_u64 , pub accounting_timestamp : _cargo_bpf_u64 , pub subsys_data : * mut pm_subsys_data , pub set_latency_tolerance : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : s32) > , pub qos : * mut dev_pm_qos , } # [test] fn bindgen_test_layout_dev_pm_info () { assert_eq ! (:: core :: mem :: size_of :: < dev_pm_info > () , 304usize , concat ! ("Size of: " , stringify ! (dev_pm_info))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pm_info > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pm_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . power_state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (power_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . driver_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (driver_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . lock as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . entry as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . completion as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . wakeup as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (wakeup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . suspend_timer as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (suspend_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . timer_expires as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (timer_expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . work as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . wait_queue as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (wait_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . wakeirq as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (wakeirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . usage_count as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (usage_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . child_count as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (child_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . links_count as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (links_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . request as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . runtime_status as * const _ as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (runtime_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . runtime_error as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (runtime_error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . autosuspend_delay as * const _ as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (autosuspend_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . last_busy as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (last_busy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . active_time as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (active_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . suspended_time as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (suspended_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . accounting_timestamp as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (accounting_timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . subsys_data as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (subsys_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . set_latency_tolerance as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (set_latency_tolerance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_info > ())) . qos as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (dev_pm_info) , "::" , stringify ! (qos))) ; } impl dev_pm_info { # [inline] pub fn can_wakeup (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_can_wakeup (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn async_suspend (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_async_suspend (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn in_dpm_list (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_in_dpm_list (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn is_prepared (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u8) } } # [inline] pub fn set_is_prepared (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn is_suspended (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u8) } } # [inline] pub fn set_is_suspended (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn is_noirq_suspended (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u8) } } # [inline] pub fn set_is_noirq_suspended (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn is_late_suspended (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u8) } } # [inline] pub fn set_is_late_suspended (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn no_pm (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (7usize , 1u8) as u8) } } # [inline] pub fn set_no_pm (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn early_init (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u8) } } # [inline] pub fn set_early_init (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn direct_complete (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u8) } } # [inline] pub fn set_direct_complete (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (can_wakeup : :: cty :: c_uint , async_suspend : :: cty :: c_uint , in_dpm_list : bool_ , is_prepared : bool_ , is_suspended : bool_ , is_noirq_suspended : bool_ , is_late_suspended : bool_ , no_pm : bool_ , early_init : bool_ , direct_complete : bool_) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let can_wakeup : u32 = unsafe { :: core :: mem :: transmute (can_wakeup) } ; can_wakeup as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let async_suspend : u32 = unsafe { :: core :: mem :: transmute (async_suspend) } ; async_suspend as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let in_dpm_list : u8 = unsafe { :: core :: mem :: transmute (in_dpm_list) } ; in_dpm_list as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let is_prepared : u8 = unsafe { :: core :: mem :: transmute (is_prepared) } ; is_prepared as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let is_suspended : u8 = unsafe { :: core :: mem :: transmute (is_suspended) } ; is_suspended as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let is_noirq_suspended : u8 = unsafe { :: core :: mem :: transmute (is_noirq_suspended) } ; is_noirq_suspended as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let is_late_suspended : u8 = unsafe { :: core :: mem :: transmute (is_late_suspended) } ; is_late_suspended as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let no_pm : u8 = unsafe { :: core :: mem :: transmute (no_pm) } ; no_pm as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let early_init : u8 = unsafe { :: core :: mem :: transmute (early_init) } ; early_init as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let direct_complete : u8 = unsafe { :: core :: mem :: transmute (direct_complete) } ; direct_complete as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn wakeup_path (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_wakeup_path (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn syscore (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_syscore (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn no_pm_callbacks (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_no_pm_callbacks (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn must_resume (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_must_resume (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn may_skip_resume (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_may_skip_resume (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_2 (wakeup_path : bool_ , syscore : bool_ , no_pm_callbacks : bool_ , must_resume : :: cty :: c_uint , may_skip_resume : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let wakeup_path : u8 = unsafe { :: core :: mem :: transmute (wakeup_path) } ; wakeup_path as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let syscore : u8 = unsafe { :: core :: mem :: transmute (syscore) } ; syscore as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let no_pm_callbacks : u8 = unsafe { :: core :: mem :: transmute (no_pm_callbacks) } ; no_pm_callbacks as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let must_resume : u32 = unsafe { :: core :: mem :: transmute (must_resume) } ; must_resume as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let may_skip_resume : u32 = unsafe { :: core :: mem :: transmute (may_skip_resume) } ; may_skip_resume as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn disable_depth (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (0usize , 3u8) as u32) } } # [inline] pub fn set_disable_depth (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn idle_notification (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_idle_notification (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn request_pending (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_request_pending (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn deferred_resume (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (5usize , 1u8) as u32) } } # [inline] pub fn set_deferred_resume (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn needs_force_resume (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (6usize , 1u8) as u32) } } # [inline] pub fn set_needs_force_resume (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn runtime_auto (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (7usize , 1u8) as u32) } } # [inline] pub fn set_runtime_auto (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn ignore_children (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (8usize , 1u8) as u8) } } # [inline] pub fn set_ignore_children (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn no_callbacks (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (9usize , 1u8) as u32) } } # [inline] pub fn set_no_callbacks (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn irq_safe (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (10usize , 1u8) as u32) } } # [inline] pub fn set_irq_safe (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn use_autosuspend (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (11usize , 1u8) as u32) } } # [inline] pub fn set_use_autosuspend (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn timer_autosuspends (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (12usize , 1u8) as u32) } } # [inline] pub fn set_timer_autosuspends (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn memalloc_noio (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (13usize , 1u8) as u32) } } # [inline] pub fn set_memalloc_noio (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_3 (disable_depth : :: cty :: c_uint , idle_notification : :: cty :: c_uint , request_pending : :: cty :: c_uint , deferred_resume : :: cty :: c_uint , needs_force_resume : :: cty :: c_uint , runtime_auto : :: cty :: c_uint , ignore_children : bool_ , no_callbacks : :: cty :: c_uint , irq_safe : :: cty :: c_uint , use_autosuspend : :: cty :: c_uint , timer_autosuspends : :: cty :: c_uint , memalloc_noio : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let disable_depth : u32 = unsafe { :: core :: mem :: transmute (disable_depth) } ; disable_depth as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let idle_notification : u32 = unsafe { :: core :: mem :: transmute (idle_notification) } ; idle_notification as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let request_pending : u32 = unsafe { :: core :: mem :: transmute (request_pending) } ; request_pending as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let deferred_resume : u32 = unsafe { :: core :: mem :: transmute (deferred_resume) } ; deferred_resume as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let needs_force_resume : u32 = unsafe { :: core :: mem :: transmute (needs_force_resume) } ; needs_force_resume as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let runtime_auto : u32 = unsafe { :: core :: mem :: transmute (runtime_auto) } ; runtime_auto as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let ignore_children : u8 = unsafe { :: core :: mem :: transmute (ignore_children) } ; ignore_children as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let no_callbacks : u32 = unsafe { :: core :: mem :: transmute (no_callbacks) } ; no_callbacks as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let irq_safe : u32 = unsafe { :: core :: mem :: transmute (irq_safe) } ; irq_safe as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let use_autosuspend : u32 = unsafe { :: core :: mem :: transmute (use_autosuspend) } ; use_autosuspend as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let timer_autosuspends : u32 = unsafe { :: core :: mem :: transmute (timer_autosuspends) } ; timer_autosuspends as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let memalloc_noio : u32 = unsafe { :: core :: mem :: transmute (memalloc_noio) } ; memalloc_noio as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dev_archdata { } # [test] fn bindgen_test_layout_dev_archdata () { assert_eq ! (:: core :: mem :: size_of :: < dev_archdata > () , 0usize , concat ! ("Size of: " , stringify ! (dev_archdata))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_archdata > () , 1usize , concat ! ("Alignment of " , stringify ! (dev_archdata))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct device { pub kobj : kobject , pub parent : * mut device , pub p : * mut device_private , pub init_name : * const :: cty :: c_char , pub type_ : * const device_type , pub bus : * mut bus_type , pub driver : * mut device_driver , pub platform_data : * mut :: cty :: c_void , pub driver_data : * mut :: cty :: c_void , pub mutex : mutex , pub links : dev_links_info , pub power : dev_pm_info , pub pm_domain : * mut dev_pm_domain , pub msi_domain : * mut irq_domain , pub pins : * mut dev_pin_info , pub msi_lock : raw_spinlock_t , pub msi_list : list_head , pub dma_ops : * const dma_map_ops , pub dma_mask : * mut _cargo_bpf_u64 , pub coherent_dma_mask : _cargo_bpf_u64 , pub bus_dma_limit : _cargo_bpf_u64 , pub dma_range_map : * const bus_dma_region , pub dma_parms : * mut device_dma_parameters , pub dma_pools : list_head , pub archdata : dev_archdata , pub of_node : * mut device_node , pub fwnode : * mut fwnode_handle , pub numa_node : :: cty :: c_int , pub devt : dev_t , pub id : _cargo_bpf_u32 , pub devres_lock : spinlock_t , pub devres_head : list_head , pub class : * mut class , pub groups : * mut * const attribute_group , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub iommu_group : * mut iommu_group , pub iommu : * mut dev_iommu , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_device () { assert_eq ! (:: core :: mem :: size_of :: < device > () , 728usize , concat ! ("Size of: " , stringify ! (device))) ; assert_eq ! (:: core :: mem :: align_of :: < device > () , 8usize , concat ! ("Alignment of " , stringify ! (device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . kobj as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . parent as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . p as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . init_name as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (init_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . type_ as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . bus as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (bus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . driver as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (driver))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . platform_data as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (platform_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . driver_data as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (driver_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . mutex as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . links as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (links))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . power as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (power))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . pm_domain as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (pm_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . msi_domain as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (msi_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . pins as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (pins))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . msi_lock as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (msi_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . msi_list as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (msi_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . dma_ops as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (dma_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . dma_mask as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (dma_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . coherent_dma_mask as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (coherent_dma_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . bus_dma_limit as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (bus_dma_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . dma_range_map as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (dma_range_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . dma_parms as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (dma_parms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . dma_pools as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (dma_pools))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . archdata as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (archdata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . of_node as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (of_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . fwnode as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . numa_node as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (numa_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . devt as * const _ as usize } , 652usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (devt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . id as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . devres_lock as * const _ as usize } , 660usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (devres_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . devres_head as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (devres_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . class as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . groups as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . release as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . iommu_group as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (iommu_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device > ())) . iommu as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (device) , "::" , stringify ! (iommu))) ; } impl device { # [inline] pub fn offline_disabled (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_offline_disabled (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn offline (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_offline (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn of_node_reused (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_of_node_reused (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn state_synced (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u8) } } # [inline] pub fn set_state_synced (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn can_match (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u8) } } # [inline] pub fn set_can_match (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (offline_disabled : bool_ , offline : bool_ , of_node_reused : bool_ , state_synced : bool_ , can_match : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let offline_disabled : u8 = unsafe { :: core :: mem :: transmute (offline_disabled) } ; offline_disabled as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let offline : u8 = unsafe { :: core :: mem :: transmute (offline) } ; offline as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let of_node_reused : u8 = unsafe { :: core :: mem :: transmute (of_node_reused) } ; of_node_reused as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let state_synced : u8 = unsafe { :: core :: mem :: transmute (state_synced) } ; state_synced as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let can_match : u8 = unsafe { :: core :: mem :: transmute (can_match) } ; can_match as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fwnode_endpoint { pub port : :: cty :: c_uint , pub id : :: cty :: c_uint , pub local_fwnode : * const fwnode_handle , } # [test] fn bindgen_test_layout_fwnode_endpoint () { assert_eq ! (:: core :: mem :: size_of :: < fwnode_endpoint > () , 16usize , concat ! ("Size of: " , stringify ! (fwnode_endpoint))) ; assert_eq ! (:: core :: mem :: align_of :: < fwnode_endpoint > () , 8usize , concat ! ("Alignment of " , stringify ! (fwnode_endpoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_endpoint > ())) . port as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fwnode_endpoint) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_endpoint > ())) . id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fwnode_endpoint) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_endpoint > ())) . local_fwnode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fwnode_endpoint) , "::" , stringify ! (local_fwnode))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fwnode_reference_args { pub fwnode : * mut fwnode_handle , pub nargs : :: cty :: c_uint , pub args : [_cargo_bpf_u64 ; 8usize] , } # [test] fn bindgen_test_layout_fwnode_reference_args () { assert_eq ! (:: core :: mem :: size_of :: < fwnode_reference_args > () , 80usize , concat ! ("Size of: " , stringify ! (fwnode_reference_args))) ; assert_eq ! (:: core :: mem :: align_of :: < fwnode_reference_args > () , 8usize , concat ! ("Alignment of " , stringify ! (fwnode_reference_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_reference_args > ())) . fwnode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fwnode_reference_args) , "::" , stringify ! (fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_reference_args > ())) . nargs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fwnode_reference_args) , "::" , stringify ! (nargs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fwnode_reference_args > ())) . args as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fwnode_reference_args) , "::" , stringify ! (args))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_struct { pub next : * mut vm_struct , pub addr : * mut :: cty :: c_void , pub size : :: cty :: c_ulong , pub flags : :: cty :: c_ulong , pub pages : * mut * mut page , pub nr_pages : :: cty :: c_uint , pub phys_addr : phys_addr_t , pub caller : * const :: cty :: c_void , } # [test] fn bindgen_test_layout_vm_struct () { assert_eq ! (:: core :: mem :: size_of :: < vm_struct > () , 64usize , concat ! ("Size of: " , stringify ! (vm_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . addr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . pages as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . nr_pages as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (nr_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . phys_addr as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (phys_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_struct > ())) . caller as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (vm_struct) , "::" , stringify ! (caller))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct seqcount_raw_spinlock { pub seqcount : seqcount_t , } # [test] fn bindgen_test_layout_seqcount_raw_spinlock () { assert_eq ! (:: core :: mem :: size_of :: < seqcount_raw_spinlock > () , 4usize , concat ! ("Size of: " , stringify ! (seqcount_raw_spinlock))) ; assert_eq ! (:: core :: mem :: align_of :: < seqcount_raw_spinlock > () , 4usize , concat ! ("Alignment of " , stringify ! (seqcount_raw_spinlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seqcount_raw_spinlock > ())) . seqcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seqcount_raw_spinlock) , "::" , stringify ! (seqcount))) ; } pub type seqcount_raw_spinlock_t = seqcount_raw_spinlock ; # [repr (C)] # [derive (Copy , Clone)] pub struct seqlock_t { pub seqcount : seqcount_spinlock_t , pub lock : spinlock_t , } # [test] fn bindgen_test_layout_seqlock_t () { assert_eq ! (:: core :: mem :: size_of :: < seqlock_t > () , 8usize , concat ! ("Size of: " , stringify ! (seqlock_t))) ; assert_eq ! (:: core :: mem :: align_of :: < seqlock_t > () , 4usize , concat ! ("Alignment of " , stringify ! (seqlock_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seqlock_t > ())) . seqcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seqlock_t) , "::" , stringify ! (seqcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seqlock_t > ())) . lock as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (seqlock_t) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timer_list { pub entry : hlist_node , pub expires : :: cty :: c_ulong , pub function : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut timer_list) > , pub flags : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_timer_list () { assert_eq ! (:: core :: mem :: size_of :: < timer_list > () , 40usize , concat ! ("Size of: " , stringify ! (timer_list))) ; assert_eq ! (:: core :: mem :: align_of :: < timer_list > () , 8usize , concat ! ("Alignment of " , stringify ! (timer_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timer_list > ())) . entry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timer_list) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timer_list > ())) . expires as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (timer_list) , "::" , stringify ! (expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timer_list > ())) . function as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (timer_list) , "::" , stringify ! (function))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timer_list > ())) . flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (timer_list) , "::" , stringify ! (flags))) ; } pub type notifier_fn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut notifier_block , arg2 : :: cty :: c_ulong , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct notifier_block { pub notifier_call : notifier_fn_t , pub next : * mut notifier_block , pub priority : :: cty :: c_int , } # [test] fn bindgen_test_layout_notifier_block () { assert_eq ! (:: core :: mem :: size_of :: < notifier_block > () , 24usize , concat ! ("Size of: " , stringify ! (notifier_block))) ; assert_eq ! (:: core :: mem :: align_of :: < notifier_block > () , 8usize , concat ! ("Alignment of " , stringify ! (notifier_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < notifier_block > ())) . notifier_call as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (notifier_block) , "::" , stringify ! (notifier_call))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < notifier_block > ())) . next as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (notifier_block) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < notifier_block > ())) . priority as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (notifier_block) , "::" , stringify ! (priority))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct blocking_notifier_head { pub rwsem : rw_semaphore , pub head : * mut notifier_block , } # [test] fn bindgen_test_layout_blocking_notifier_head () { assert_eq ! (:: core :: mem :: size_of :: < blocking_notifier_head > () , 48usize , concat ! ("Size of: " , stringify ! (blocking_notifier_head))) ; assert_eq ! (:: core :: mem :: align_of :: < blocking_notifier_head > () , 8usize , concat ! ("Alignment of " , stringify ! (blocking_notifier_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blocking_notifier_head > ())) . rwsem as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blocking_notifier_head) , "::" , stringify ! (rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blocking_notifier_head > ())) . head as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (blocking_notifier_head) , "::" , stringify ! (head))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct arch_uprobe_task { pub saved_scratch_register : :: cty :: c_ulong , pub saved_trap_nr : :: cty :: c_uint , pub saved_tf : :: cty :: c_uint , } # [test] fn bindgen_test_layout_arch_uprobe_task () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe_task > () , 16usize , concat ! ("Size of: " , stringify ! (arch_uprobe_task))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe_task > () , 8usize , concat ! ("Alignment of " , stringify ! (arch_uprobe_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe_task > ())) . saved_scratch_register as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe_task) , "::" , stringify ! (saved_scratch_register))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe_task > ())) . saved_trap_nr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe_task) , "::" , stringify ! (saved_trap_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe_task > ())) . saved_tf as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe_task) , "::" , stringify ! (saved_tf))) ; } pub const uprobe_task_state_UTASK_RUNNING : uprobe_task_state = 0 ; pub const uprobe_task_state_UTASK_SSTEP : uprobe_task_state = 1 ; pub const uprobe_task_state_UTASK_SSTEP_ACK : uprobe_task_state = 2 ; pub const uprobe_task_state_UTASK_SSTEP_TRAPPED : uprobe_task_state = 3 ; pub type uprobe_task_state = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct uprobe_task { pub state : uprobe_task_state , pub __bindgen_anon_1 : uprobe_task__bindgen_ty_1 , pub active_uprobe : * mut uprobe , pub xol_vaddr : :: cty :: c_ulong , pub return_instances : * mut return_instance , pub depth : :: cty :: c_uint , } # [repr (C)] # [derive (Copy , Clone)] pub union uprobe_task__bindgen_ty_1 { pub __bindgen_anon_1 : uprobe_task__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : uprobe_task__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uprobe_task__bindgen_ty_1__bindgen_ty_1 { pub autask : arch_uprobe_task , pub vaddr : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_uprobe_task__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < uprobe_task__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobe_task__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task__bindgen_ty_1__bindgen_ty_1 > ())) . autask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (autask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task__bindgen_ty_1__bindgen_ty_1 > ())) . vaddr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (vaddr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uprobe_task__bindgen_ty_1__bindgen_ty_2 { pub dup_xol_work : callback_head , pub dup_xol_addr : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_uprobe_task__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < uprobe_task__bindgen_ty_1__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobe_task__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task__bindgen_ty_1__bindgen_ty_2 > ())) . dup_xol_work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dup_xol_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task__bindgen_ty_1__bindgen_ty_2 > ())) . dup_xol_addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (uprobe_task__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (dup_xol_addr))) ; } # [test] fn bindgen_test_layout_uprobe_task__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < uprobe_task__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (uprobe_task__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobe_task__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobe_task__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_uprobe_task () { assert_eq ! (:: core :: mem :: size_of :: < uprobe_task > () , 64usize , concat ! ("Size of: " , stringify ! (uprobe_task))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobe_task > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobe_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task > ())) . state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uprobe_task) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task > ())) . active_uprobe as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (uprobe_task) , "::" , stringify ! (active_uprobe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task > ())) . xol_vaddr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (uprobe_task) , "::" , stringify ! (xol_vaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task > ())) . return_instances as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (uprobe_task) , "::" , stringify ! (return_instances))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_task > ())) . depth as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (uprobe_task) , "::" , stringify ! (depth))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct return_instance { pub uprobe : * mut uprobe , pub func : :: cty :: c_ulong , pub stack : :: cty :: c_ulong , pub orig_ret_vaddr : :: cty :: c_ulong , pub chained : bool_ , pub next : * mut return_instance , } # [test] fn bindgen_test_layout_return_instance () { assert_eq ! (:: core :: mem :: size_of :: < return_instance > () , 48usize , concat ! ("Size of: " , stringify ! (return_instance))) ; assert_eq ! (:: core :: mem :: align_of :: < return_instance > () , 8usize , concat ! ("Alignment of " , stringify ! (return_instance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < return_instance > ())) . uprobe as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (return_instance) , "::" , stringify ! (uprobe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < return_instance > ())) . func as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (return_instance) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < return_instance > ())) . stack as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (return_instance) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < return_instance > ())) . orig_ret_vaddr as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (return_instance) , "::" , stringify ! (orig_ret_vaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < return_instance > ())) . chained as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (return_instance) , "::" , stringify ! (chained))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < return_instance > ())) . next as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (return_instance) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vdso_image { pub data : * mut :: cty :: c_void , pub size : :: cty :: c_ulong , pub alt : :: cty :: c_ulong , pub alt_len : :: cty :: c_ulong , pub extable_base : :: cty :: c_ulong , pub extable_len : :: cty :: c_ulong , pub extable : * const :: cty :: c_void , pub sym_vvar_start : :: cty :: c_long , pub sym_vvar_page : :: cty :: c_long , pub sym_pvclock_page : :: cty :: c_long , pub sym_hvclock_page : :: cty :: c_long , pub sym_timens_page : :: cty :: c_long , pub sym_VDSO32_NOTE_MASK : :: cty :: c_long , pub sym___kernel_sigreturn : :: cty :: c_long , pub sym___kernel_rt_sigreturn : :: cty :: c_long , pub sym___kernel_vsyscall : :: cty :: c_long , pub sym_int80_landing_pad : :: cty :: c_long , pub sym_vdso32_sigreturn_landing_pad : :: cty :: c_long , pub sym_vdso32_rt_sigreturn_landing_pad : :: cty :: c_long , } # [test] fn bindgen_test_layout_vdso_image () { assert_eq ! (:: core :: mem :: size_of :: < vdso_image > () , 152usize , concat ! ("Size of: " , stringify ! (vdso_image))) ; assert_eq ! (:: core :: mem :: align_of :: < vdso_image > () , 8usize , concat ! ("Alignment of " , stringify ! (vdso_image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . alt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (alt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . alt_len as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (alt_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . extable_base as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (extable_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . extable_len as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (extable_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . extable as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (extable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_vvar_start as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_vvar_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_vvar_page as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_vvar_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_pvclock_page as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_pvclock_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_hvclock_page as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_hvclock_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_timens_page as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_timens_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_VDSO32_NOTE_MASK as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_VDSO32_NOTE_MASK))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym___kernel_sigreturn as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym___kernel_sigreturn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym___kernel_rt_sigreturn as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym___kernel_rt_sigreturn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym___kernel_vsyscall as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym___kernel_vsyscall))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_int80_landing_pad as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_int80_landing_pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_vdso32_sigreturn_landing_pad as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_vdso32_sigreturn_landing_pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vdso_image > ())) . sym_vdso32_rt_sigreturn_landing_pad as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (vdso_image) , "::" , stringify ! (sym_vdso32_rt_sigreturn_landing_pad))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct xarray { pub xa_lock : spinlock_t , pub xa_flags : gfp_t , pub xa_head : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_xarray () { assert_eq ! (:: core :: mem :: size_of :: < xarray > () , 16usize , concat ! ("Size of: " , stringify ! (xarray))) ; assert_eq ! (:: core :: mem :: align_of :: < xarray > () , 8usize , concat ! ("Alignment of " , stringify ! (xarray))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xarray > ())) . xa_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xarray) , "::" , stringify ! (xa_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xarray > ())) . xa_flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (xarray) , "::" , stringify ! (xa_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xarray > ())) . xa_head as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xarray) , "::" , stringify ! (xa_head))) ; } pub type errseq_t = _cargo_bpf_u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct address_space { pub host : * mut inode , pub i_pages : xarray , pub gfp_mask : gfp_t , pub i_mmap_writable : atomic_t , pub i_mmap : rb_root_cached , pub i_mmap_rwsem : rw_semaphore , pub nrpages : :: cty :: c_ulong , pub writeback_index : :: cty :: c_ulong , pub a_ops : * const address_space_operations , pub flags : :: cty :: c_ulong , pub wb_err : errseq_t , pub private_lock : spinlock_t , pub private_list : list_head , pub private_data : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_address_space () { assert_eq ! (:: core :: mem :: size_of :: < address_space > () , 152usize , concat ! ("Size of: " , stringify ! (address_space))) ; assert_eq ! (:: core :: mem :: align_of :: < address_space > () , 8usize , concat ! ("Alignment of " , stringify ! (address_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . host as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (host))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . i_pages as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (i_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . gfp_mask as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (gfp_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . i_mmap_writable as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (i_mmap_writable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . i_mmap as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (i_mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . i_mmap_rwsem as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (i_mmap_rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . nrpages as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (nrpages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . writeback_index as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (writeback_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . a_ops as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (a_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . flags as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . wb_err as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (wb_err))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . private_lock as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (private_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . private_list as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (private_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space > ())) . private_data as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (address_space) , "::" , stringify ! (private_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vmem_altmap { pub base_pfn : :: cty :: c_ulong , pub end_pfn : :: cty :: c_ulong , pub reserve : :: cty :: c_ulong , pub free : :: cty :: c_ulong , pub align : :: cty :: c_ulong , pub alloc : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_vmem_altmap () { assert_eq ! (:: core :: mem :: size_of :: < vmem_altmap > () , 48usize , concat ! ("Size of: " , stringify ! (vmem_altmap))) ; assert_eq ! (:: core :: mem :: align_of :: < vmem_altmap > () , 8usize , concat ! ("Alignment of " , stringify ! (vmem_altmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmem_altmap > ())) . base_pfn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vmem_altmap) , "::" , stringify ! (base_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmem_altmap > ())) . end_pfn as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vmem_altmap) , "::" , stringify ! (end_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmem_altmap > ())) . reserve as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vmem_altmap) , "::" , stringify ! (reserve))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmem_altmap > ())) . free as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vmem_altmap) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmem_altmap > ())) . align as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vmem_altmap) , "::" , stringify ! (align))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmem_altmap > ())) . alloc as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (vmem_altmap) , "::" , stringify ! (alloc))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct percpu_ref { pub percpu_count_ptr : :: cty :: c_ulong , pub data : * mut percpu_ref_data , } # [test] fn bindgen_test_layout_percpu_ref () { assert_eq ! (:: core :: mem :: size_of :: < percpu_ref > () , 16usize , concat ! ("Size of: " , stringify ! (percpu_ref))) ; assert_eq ! (:: core :: mem :: align_of :: < percpu_ref > () , 8usize , concat ! ("Alignment of " , stringify ! (percpu_ref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref > ())) . percpu_count_ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (percpu_ref) , "::" , stringify ! (percpu_count_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (percpu_ref) , "::" , stringify ! (data))) ; } pub const memory_type_MEMORY_DEVICE_PRIVATE : memory_type = 1 ; pub const memory_type_MEMORY_DEVICE_FS_DAX : memory_type = 2 ; pub const memory_type_MEMORY_DEVICE_GENERIC : memory_type = 3 ; pub const memory_type_MEMORY_DEVICE_PCI_P2PDMA : memory_type = 4 ; pub type memory_type = :: cty :: c_uint ; # [repr (C)] pub struct dev_pagemap { pub altmap : vmem_altmap , pub ref_ : * mut percpu_ref , pub internal_ref : percpu_ref , pub done : completion , pub type_ : memory_type , pub flags : :: cty :: c_uint , pub ops : * const dev_pagemap_ops , pub owner : * mut :: cty :: c_void , pub nr_range : :: cty :: c_int , pub __bindgen_anon_1 : dev_pagemap__bindgen_ty_1 , } # [repr (C)] pub struct dev_pagemap__bindgen_ty_1 { pub range : __BindgenUnionField < range > , pub ranges : __BindgenUnionField < [range ; 0usize] > , pub bindgen_union_field : [u64 ; 2usize] , } # [test] fn bindgen_test_layout_dev_pagemap__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < dev_pagemap__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dev_pagemap__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pagemap__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pagemap__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap__bindgen_ty_1 > ())) . range as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap__bindgen_ty_1) , "::" , stringify ! (range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap__bindgen_ty_1 > ())) . ranges as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap__bindgen_ty_1) , "::" , stringify ! (ranges))) ; } # [test] fn bindgen_test_layout_dev_pagemap () { assert_eq ! (:: core :: mem :: size_of :: < dev_pagemap > () , 152usize , concat ! ("Size of: " , stringify ! (dev_pagemap))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pagemap > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pagemap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . altmap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (altmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . ref_ as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . internal_ref as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (internal_ref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . done as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . type_ as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . flags as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . ops as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . owner as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap > ())) . nr_range as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap) , "::" , stringify ! (nr_range))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct path { pub mnt : * mut vfsmount , pub dentry : * mut dentry , } # [test] fn bindgen_test_layout_path () { assert_eq ! (:: core :: mem :: size_of :: < path > () , 16usize , concat ! ("Size of: " , stringify ! (path))) ; assert_eq ! (:: core :: mem :: align_of :: < path > () , 8usize , concat ! ("Alignment of " , stringify ! (path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < path > ())) . mnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (path) , "::" , stringify ! (mnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < path > ())) . dentry as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (path) , "::" , stringify ! (dentry))) ; } pub const rw_hint_WRITE_LIFE_NOT_SET : rw_hint = 0 ; pub const rw_hint_WRITE_LIFE_NONE : rw_hint = 1 ; pub const rw_hint_WRITE_LIFE_SHORT : rw_hint = 2 ; pub const rw_hint_WRITE_LIFE_MEDIUM : rw_hint = 3 ; pub const rw_hint_WRITE_LIFE_LONG : rw_hint = 4 ; pub const rw_hint_WRITE_LIFE_EXTREME : rw_hint = 5 ; pub type rw_hint = :: cty :: c_uint ; pub const pid_type_PIDTYPE_PID : pid_type = 0 ; pub const pid_type_PIDTYPE_TGID : pid_type = 1 ; pub const pid_type_PIDTYPE_PGID : pid_type = 2 ; pub const pid_type_PIDTYPE_SID : pid_type = 3 ; pub const pid_type_PIDTYPE_MAX : pid_type = 4 ; pub type pid_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct fown_struct { pub lock : rwlock_t , pub pid : * mut pid , pub pid_type : pid_type , pub uid : kuid_t , pub euid : kuid_t , pub signum : :: cty :: c_int , } # [test] fn bindgen_test_layout_fown_struct () { assert_eq ! (:: core :: mem :: size_of :: < fown_struct > () , 32usize , concat ! ("Size of: " , stringify ! (fown_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < fown_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (fown_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fown_struct > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fown_struct) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fown_struct > ())) . pid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fown_struct) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fown_struct > ())) . pid_type as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fown_struct) , "::" , stringify ! (pid_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fown_struct > ())) . uid as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (fown_struct) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fown_struct > ())) . euid as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fown_struct) , "::" , stringify ! (euid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fown_struct > ())) . signum as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (fown_struct) , "::" , stringify ! (signum))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct file_ra_state { pub start : :: cty :: c_ulong , pub size : :: cty :: c_uint , pub async_size : :: cty :: c_uint , pub ra_pages : :: cty :: c_uint , pub mmap_miss : :: cty :: c_uint , pub prev_pos : loff_t , } # [test] fn bindgen_test_layout_file_ra_state () { assert_eq ! (:: core :: mem :: size_of :: < file_ra_state > () , 32usize , concat ! ("Size of: " , stringify ! (file_ra_state))) ; assert_eq ! (:: core :: mem :: align_of :: < file_ra_state > () , 8usize , concat ! ("Alignment of " , stringify ! (file_ra_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_ra_state > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_ra_state) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_ra_state > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (file_ra_state) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_ra_state > ())) . async_size as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (file_ra_state) , "::" , stringify ! (async_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_ra_state > ())) . ra_pages as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (file_ra_state) , "::" , stringify ! (ra_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_ra_state > ())) . mmap_miss as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (file_ra_state) , "::" , stringify ! (mmap_miss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_ra_state > ())) . prev_pos as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (file_ra_state) , "::" , stringify ! (prev_pos))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct file { pub f_u : file__bindgen_ty_1 , pub f_path : path , pub f_inode : * mut inode , pub f_op : * const file_operations , pub f_lock : spinlock_t , pub f_write_hint : rw_hint , pub f_count : atomic_long_t , pub f_flags : :: cty :: c_uint , pub f_mode : fmode_t , pub f_pos_lock : mutex , pub f_pos : loff_t , pub f_owner : fown_struct , pub f_cred : * const cred , pub f_ra : file_ra_state , pub f_version : _cargo_bpf_u64 , pub f_security : * mut :: cty :: c_void , pub private_data : * mut :: cty :: c_void , pub f_ep : * mut hlist_head , pub f_mapping : * mut address_space , pub f_wb_err : errseq_t , pub f_sb_err : errseq_t , } # [repr (C)] # [derive (Copy , Clone)] pub union file__bindgen_ty_1 { pub fu_llist : llist_node , pub fu_rcuhead : callback_head , } # [test] fn bindgen_test_layout_file__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < file__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (file__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < file__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (file__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file__bindgen_ty_1 > ())) . fu_llist as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file__bindgen_ty_1) , "::" , stringify ! (fu_llist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file__bindgen_ty_1 > ())) . fu_rcuhead as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file__bindgen_ty_1) , "::" , stringify ! (fu_rcuhead))) ; } # [test] fn bindgen_test_layout_file () { assert_eq ! (:: core :: mem :: size_of :: < file > () , 232usize , concat ! ("Size of: " , stringify ! (file))) ; assert_eq ! (:: core :: mem :: align_of :: < file > () , 8usize , concat ! ("Alignment of " , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_u as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_u))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_path as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_inode as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_op as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_lock as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_write_hint as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_write_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_count as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_flags as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_mode as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_pos_lock as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_pos_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_pos as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_pos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_owner as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_cred as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_ra as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_ra))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_version as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_security as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . private_data as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (private_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_ep as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_ep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_mapping as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_wb_err as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_wb_err))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file > ())) . f_sb_err as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (file) , "::" , stringify ! (f_sb_err))) ; } pub type vm_fault_t = :: cty :: c_uint ; pub const page_entry_size_PE_SIZE_PTE : page_entry_size = 0 ; pub const page_entry_size_PE_SIZE_PMD : page_entry_size = 1 ; pub const page_entry_size_PE_SIZE_PUD : page_entry_size = 2 ; pub type page_entry_size = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_operations_struct { pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct) > , pub close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct) > , pub may_split : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct , arg2 : :: cty :: c_ulong) -> :: cty :: c_int > , pub mremap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct) -> :: cty :: c_int > , pub mprotect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_ulong) -> :: cty :: c_int > , pub fault : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_fault) -> vm_fault_t > , pub huge_fault : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_fault , arg2 : page_entry_size) -> vm_fault_t > , pub map_pages : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_fault , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong) -> vm_fault_t > , pub pagesize : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct) -> :: cty :: c_ulong > , pub page_mkwrite : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_fault) -> vm_fault_t > , pub pfn_mkwrite : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_fault) -> vm_fault_t > , pub access : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct , arg2 : :: cty :: c_ulong , arg3 : * mut :: cty :: c_void , arg4 : :: cty :: c_int , arg5 : :: cty :: c_int) -> :: cty :: c_int > , pub name : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct) -> * const :: cty :: c_char > , pub set_policy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct , arg2 : * mut mempolicy) -> :: cty :: c_int > , pub get_policy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct , arg2 : :: cty :: c_ulong) -> * mut mempolicy > , pub find_special_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_area_struct , arg2 : :: cty :: c_ulong) -> * mut page > , } # [test] fn bindgen_test_layout_vm_operations_struct () { assert_eq ! (:: core :: mem :: size_of :: < vm_operations_struct > () , 128usize , concat ! ("Size of: " , stringify ! (vm_operations_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_operations_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_operations_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . open as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . close as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . may_split as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (may_split))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . mremap as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (mremap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . mprotect as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (mprotect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . fault as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (fault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . huge_fault as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (huge_fault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . map_pages as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (map_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . pagesize as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (pagesize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . page_mkwrite as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (page_mkwrite))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . pfn_mkwrite as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (pfn_mkwrite))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . access as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . name as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . set_policy as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (set_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . get_policy as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (get_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_operations_struct > ())) . find_special_page as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (vm_operations_struct) , "::" , stringify ! (find_special_page))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct core_thread { pub task : * mut task_struct , pub next : * mut core_thread , } # [test] fn bindgen_test_layout_core_thread () { assert_eq ! (:: core :: mem :: size_of :: < core_thread > () , 16usize , concat ! ("Size of: " , stringify ! (core_thread))) ; assert_eq ! (:: core :: mem :: align_of :: < core_thread > () , 8usize , concat ! ("Alignment of " , stringify ! (core_thread))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < core_thread > ())) . task as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (core_thread) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < core_thread > ())) . next as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (core_thread) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct core_state { pub nr_threads : atomic_t , pub dumper : core_thread , pub startup : completion , } # [test] fn bindgen_test_layout_core_state () { assert_eq ! (:: core :: mem :: size_of :: < core_state > () , 56usize , concat ! ("Size of: " , stringify ! (core_state))) ; assert_eq ! (:: core :: mem :: align_of :: < core_state > () , 8usize , concat ! ("Alignment of " , stringify ! (core_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < core_state > ())) . nr_threads as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (core_state) , "::" , stringify ! (nr_threads))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < core_state > ())) . dumper as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (core_state) , "::" , stringify ! (dumper))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < core_state > ())) . startup as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (core_state) , "::" , stringify ! (startup))) ; } pub const fault_flag_FAULT_FLAG_WRITE : fault_flag = 1 ; pub const fault_flag_FAULT_FLAG_MKWRITE : fault_flag = 2 ; pub const fault_flag_FAULT_FLAG_ALLOW_RETRY : fault_flag = 4 ; pub const fault_flag_FAULT_FLAG_RETRY_NOWAIT : fault_flag = 8 ; pub const fault_flag_FAULT_FLAG_KILLABLE : fault_flag = 16 ; pub const fault_flag_FAULT_FLAG_TRIED : fault_flag = 32 ; pub const fault_flag_FAULT_FLAG_USER : fault_flag = 64 ; pub const fault_flag_FAULT_FLAG_REMOTE : fault_flag = 128 ; pub const fault_flag_FAULT_FLAG_INSTRUCTION : fault_flag = 256 ; pub const fault_flag_FAULT_FLAG_INTERRUPTIBLE : fault_flag = 512 ; pub type fault_flag = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_fault { pub __bindgen_anon_1 : vm_fault__bindgen_ty_1 , pub flags : fault_flag , pub pmd : * mut pmd_t , pub pud : * mut pud_t , pub orig_pte : pte_t , pub cow_page : * mut page , pub page : * mut page , pub pte : * mut pte_t , pub ptl : * mut spinlock_t , pub prealloc_pte : pgtable_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_fault__bindgen_ty_1 { pub vma : * mut vm_area_struct , pub gfp_mask : gfp_t , pub pgoff : :: cty :: c_ulong , pub address : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_vm_fault__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < vm_fault__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (vm_fault__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_fault__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_fault__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault__bindgen_ty_1 > ())) . vma as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_fault__bindgen_ty_1) , "::" , stringify ! (vma))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault__bindgen_ty_1 > ())) . gfp_mask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vm_fault__bindgen_ty_1) , "::" , stringify ! (gfp_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault__bindgen_ty_1 > ())) . pgoff as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vm_fault__bindgen_ty_1) , "::" , stringify ! (pgoff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault__bindgen_ty_1 > ())) . address as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vm_fault__bindgen_ty_1) , "::" , stringify ! (address))) ; } # [test] fn bindgen_test_layout_vm_fault () { assert_eq ! (:: core :: mem :: size_of :: < vm_fault > () , 104usize , concat ! ("Size of: " , stringify ! (vm_fault))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_fault > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_fault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . pmd as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (pmd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . pud as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (pud))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . orig_pte as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (orig_pte))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . cow_page as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (cow_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . page as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . pte as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (pte))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . ptl as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (ptl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_fault > ())) . prealloc_pte as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (vm_fault) , "::" , stringify ! (prealloc_pte))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct free_area { pub free_list : [list_head ; 5usize] , pub nr_free : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_free_area () { assert_eq ! (:: core :: mem :: size_of :: < free_area > () , 88usize , concat ! ("Size of: " , stringify ! (free_area))) ; assert_eq ! (:: core :: mem :: align_of :: < free_area > () , 8usize , concat ! ("Alignment of " , stringify ! (free_area))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < free_area > ())) . free_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (free_area) , "::" , stringify ! (free_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < free_area > ())) . nr_free as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (free_area) , "::" , stringify ! (nr_free))) ; } # [repr (C)] # [derive (Debug)] pub struct zone_padding { pub x : __IncompleteArrayField < :: cty :: c_char > , } # [test] fn bindgen_test_layout_zone_padding () { assert_eq ! (:: core :: mem :: size_of :: < zone_padding > () , 0usize , concat ! ("Size of: " , stringify ! (zone_padding))) ; assert_eq ! (:: core :: mem :: align_of :: < zone_padding > () , 1usize , concat ! ("Alignment of " , stringify ! (zone_padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone_padding > ())) . x as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (zone_padding) , "::" , stringify ! (x))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct lruvec { pub lists : [list_head ; 5usize] , pub lru_lock : spinlock_t , pub anon_cost : :: cty :: c_ulong , pub file_cost : :: cty :: c_ulong , pub nonresident_age : atomic_long_t , pub refaults : [:: cty :: c_ulong ; 2usize] , pub flags : :: cty :: c_ulong , pub pgdat : * mut pglist_data , } # [test] fn bindgen_test_layout_lruvec () { assert_eq ! (:: core :: mem :: size_of :: < lruvec > () , 144usize , concat ! ("Size of: " , stringify ! (lruvec))) ; assert_eq ! (:: core :: mem :: align_of :: < lruvec > () , 8usize , concat ! ("Alignment of " , stringify ! (lruvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . lists as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (lists))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . lru_lock as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (lru_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . anon_cost as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (anon_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . file_cost as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (file_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . nonresident_age as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (nonresident_age))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . refaults as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (refaults))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . flags as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec > ())) . pgdat as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (lruvec) , "::" , stringify ! (pgdat))) ; } # [repr (C)] pub struct zone { pub _watermark : [:: cty :: c_ulong ; 3usize] , pub watermark_boost : :: cty :: c_ulong , pub nr_reserved_highatomic : :: cty :: c_ulong , pub lowmem_reserve : [:: cty :: c_long ; 5usize] , pub node : :: cty :: c_int , pub zone_pgdat : * mut pglist_data , pub pageset : * mut per_cpu_pageset , pub pageset_high : :: cty :: c_int , pub pageset_batch : :: cty :: c_int , pub zone_start_pfn : :: cty :: c_ulong , pub managed_pages : atomic_long_t , pub spanned_pages : :: cty :: c_ulong , pub present_pages : :: cty :: c_ulong , pub name : * const :: cty :: c_char , pub nr_isolate_pageblock : :: cty :: c_ulong , pub span_seqlock : seqlock_t , pub initialized : :: cty :: c_int , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub _pad1_ : zone_padding , pub free_area : [free_area ; 11usize] , pub flags : :: cty :: c_ulong , pub lock : spinlock_t , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 48usize] > , pub _pad2_ : zone_padding , pub percpu_drift_mark : :: cty :: c_ulong , pub compact_cached_free_pfn : :: cty :: c_ulong , pub compact_cached_migrate_pfn : [:: cty :: c_ulong ; 2usize] , pub compact_init_migrate_pfn : :: cty :: c_ulong , pub compact_init_free_pfn : :: cty :: c_ulong , pub compact_considered : :: cty :: c_uint , pub compact_defer_shift : :: cty :: c_uint , pub compact_order_failed : :: cty :: c_int , pub compact_blockskip_flush : bool_ , pub contiguous : bool_ , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub _pad3_ : zone_padding , pub vm_stat : [atomic_long_t ; 11usize] , pub vm_numa_stat : [atomic_long_t ; 6usize] , pub _bitfield_align_4 : [u8 ; 0] , pub _bitfield_4 : __BindgenBitfieldUnit < [u8 ; 56usize] > , } # [test] fn bindgen_test_layout_zone () { assert_eq ! (:: core :: mem :: size_of :: < zone > () , 1472usize , concat ! ("Size of: " , stringify ! (zone))) ; assert_eq ! (:: core :: mem :: align_of :: < zone > () , 8usize , concat ! ("Alignment of " , stringify ! (zone))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . _watermark as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (_watermark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . watermark_boost as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (watermark_boost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . nr_reserved_highatomic as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (nr_reserved_highatomic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . lowmem_reserve as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (lowmem_reserve))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . node as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . zone_pgdat as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (zone_pgdat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . pageset as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (pageset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . pageset_high as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (pageset_high))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . pageset_batch as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (pageset_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . zone_start_pfn as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (zone_start_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . managed_pages as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (managed_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . spanned_pages as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (spanned_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . present_pages as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (present_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . name as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . nr_isolate_pageblock as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (nr_isolate_pageblock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . span_seqlock as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (span_seqlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . initialized as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (initialized))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . _pad1_ as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (_pad1_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . free_area as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (free_area))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . flags as * const _ as usize } , 1160usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . lock as * const _ as usize } , 1168usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . _pad2_ as * const _ as usize } , 1216usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (_pad2_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . percpu_drift_mark as * const _ as usize } , 1216usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (percpu_drift_mark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_cached_free_pfn as * const _ as usize } , 1224usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_cached_free_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_cached_migrate_pfn as * const _ as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_cached_migrate_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_init_migrate_pfn as * const _ as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_init_migrate_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_init_free_pfn as * const _ as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_init_free_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_considered as * const _ as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_considered))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_defer_shift as * const _ as usize } , 1268usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_defer_shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_order_failed as * const _ as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_order_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . compact_blockskip_flush as * const _ as usize } , 1276usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (compact_blockskip_flush))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . contiguous as * const _ as usize } , 1277usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (contiguous))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . _pad3_ as * const _ as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (_pad3_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . vm_stat as * const _ as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (vm_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zone > ())) . vm_numa_stat as * const _ as usize } , 1368usize , concat ! ("Offset of field: " , stringify ! (zone) , "::" , stringify ! (vm_numa_stat))) ; } impl zone { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_3 () -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct zoneref { pub zone : * mut zone , pub zone_idx : :: cty :: c_int , } # [test] fn bindgen_test_layout_zoneref () { assert_eq ! (:: core :: mem :: size_of :: < zoneref > () , 16usize , concat ! ("Size of: " , stringify ! (zoneref))) ; assert_eq ! (:: core :: mem :: align_of :: < zoneref > () , 8usize , concat ! ("Alignment of " , stringify ! (zoneref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zoneref > ())) . zone as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (zoneref) , "::" , stringify ! (zone))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zoneref > ())) . zone_idx as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (zoneref) , "::" , stringify ! (zone_idx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct zonelist { pub _zonerefs : [zoneref ; 5121usize] , } # [test] fn bindgen_test_layout_zonelist () { assert_eq ! (:: core :: mem :: size_of :: < zonelist > () , 81936usize , concat ! ("Size of: " , stringify ! (zonelist))) ; assert_eq ! (:: core :: mem :: align_of :: < zonelist > () , 8usize , concat ! ("Alignment of " , stringify ! (zonelist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < zonelist > ())) . _zonerefs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (zonelist) , "::" , stringify ! (_zonerefs))) ; } pub const zone_type_ZONE_DMA : zone_type = 0 ; pub const zone_type_ZONE_DMA32 : zone_type = 1 ; pub const zone_type_ZONE_NORMAL : zone_type = 2 ; pub const zone_type_ZONE_MOVABLE : zone_type = 3 ; pub const zone_type_ZONE_DEVICE : zone_type = 4 ; pub const zone_type___MAX_NR_ZONES : zone_type = 5 ; pub type zone_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct deferred_split { pub split_queue_lock : spinlock_t , pub split_queue : list_head , pub split_queue_len : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_deferred_split () { assert_eq ! (:: core :: mem :: size_of :: < deferred_split > () , 32usize , concat ! ("Size of: " , stringify ! (deferred_split))) ; assert_eq ! (:: core :: mem :: align_of :: < deferred_split > () , 8usize , concat ! ("Alignment of " , stringify ! (deferred_split))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < deferred_split > ())) . split_queue_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (deferred_split) , "::" , stringify ! (split_queue_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < deferred_split > ())) . split_queue as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (deferred_split) , "::" , stringify ! (split_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < deferred_split > ())) . split_queue_len as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (deferred_split) , "::" , stringify ! (split_queue_len))) ; } # [repr (C)] pub struct pglist_data { pub node_zones : [zone ; 5usize] , pub node_zonelists : [zonelist ; 2usize] , pub nr_zones : :: cty :: c_int , pub node_size_lock : spinlock_t , pub node_start_pfn : :: cty :: c_ulong , pub node_present_pages : :: cty :: c_ulong , pub node_spanned_pages : :: cty :: c_ulong , pub node_id : :: cty :: c_int , pub kswapd_wait : wait_queue_head_t , pub pfmemalloc_wait : wait_queue_head_t , pub kswapd : * mut task_struct , pub kswapd_order : :: cty :: c_int , pub kswapd_highest_zoneidx : zone_type , pub kswapd_failures : :: cty :: c_int , pub kcompactd_max_order : :: cty :: c_int , pub kcompactd_highest_zoneidx : zone_type , pub kcompactd_wait : wait_queue_head_t , pub kcompactd : * mut task_struct , pub totalreserve_pages : :: cty :: c_ulong , pub min_unmapped_pages : :: cty :: c_ulong , pub min_slab_pages : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , pub _pad1_ : zone_padding , pub deferred_split_queue : deferred_split , pub __lruvec : lruvec , pub flags : :: cty :: c_ulong , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub _pad2_ : zone_padding , pub per_cpu_nodestats : * mut per_cpu_nodestat , pub vm_stat : [atomic_long_t ; 39usize] , } # [test] fn bindgen_test_layout_pglist_data () { assert_eq ! (:: core :: mem :: size_of :: < pglist_data > () , 171968usize , concat ! ("Size of: " , stringify ! (pglist_data))) ; assert_eq ! (:: core :: mem :: align_of :: < pglist_data > () , 8usize , concat ! ("Alignment of " , stringify ! (pglist_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_zones as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_zones))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_zonelists as * const _ as usize } , 7360usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_zonelists))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . nr_zones as * const _ as usize } , 171232usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (nr_zones))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_size_lock as * const _ as usize } , 171236usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_size_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_start_pfn as * const _ as usize } , 171240usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_start_pfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_present_pages as * const _ as usize } , 171248usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_present_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_spanned_pages as * const _ as usize } , 171256usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_spanned_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . node_id as * const _ as usize } , 171264usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (node_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kswapd_wait as * const _ as usize } , 171272usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kswapd_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . pfmemalloc_wait as * const _ as usize } , 171296usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (pfmemalloc_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kswapd as * const _ as usize } , 171320usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kswapd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kswapd_order as * const _ as usize } , 171328usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kswapd_order))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kswapd_highest_zoneidx as * const _ as usize } , 171332usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kswapd_highest_zoneidx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kswapd_failures as * const _ as usize } , 171336usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kswapd_failures))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kcompactd_max_order as * const _ as usize } , 171340usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kcompactd_max_order))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kcompactd_highest_zoneidx as * const _ as usize } , 171344usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kcompactd_highest_zoneidx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kcompactd_wait as * const _ as usize } , 171352usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kcompactd_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . kcompactd as * const _ as usize } , 171376usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (kcompactd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . totalreserve_pages as * const _ as usize } , 171384usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (totalreserve_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . min_unmapped_pages as * const _ as usize } , 171392usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (min_unmapped_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . min_slab_pages as * const _ as usize } , 171400usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (min_slab_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . _pad1_ as * const _ as usize } , 171456usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (_pad1_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . deferred_split_queue as * const _ as usize } , 171456usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (deferred_split_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . __lruvec as * const _ as usize } , 171488usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (__lruvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . flags as * const _ as usize } , 171632usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . _pad2_ as * const _ as usize } , 171648usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (_pad2_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . per_cpu_nodestats as * const _ as usize } , 171648usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (per_cpu_nodestats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pglist_data > ())) . vm_stat as * const _ as usize } , 171656usize , concat ! ("Offset of field: " , stringify ! (pglist_data) , "::" , stringify ! (vm_stat))) ; } impl pglist_data { # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } pub type isolate_mode_t = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct per_cpu_pages { pub count : :: cty :: c_int , pub high : :: cty :: c_int , pub batch : :: cty :: c_int , pub lists : [list_head ; 3usize] , } # [test] fn bindgen_test_layout_per_cpu_pages () { assert_eq ! (:: core :: mem :: size_of :: < per_cpu_pages > () , 64usize , concat ! ("Size of: " , stringify ! (per_cpu_pages))) ; assert_eq ! (:: core :: mem :: align_of :: < per_cpu_pages > () , 8usize , concat ! ("Alignment of " , stringify ! (per_cpu_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pages > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pages) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pages > ())) . high as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pages) , "::" , stringify ! (high))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pages > ())) . batch as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pages) , "::" , stringify ! (batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pages > ())) . lists as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pages) , "::" , stringify ! (lists))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct per_cpu_pageset { pub pcp : per_cpu_pages , pub expire : s8 , pub vm_numa_stat_diff : [_cargo_bpf_u16 ; 6usize] , pub stat_threshold : s8 , pub vm_stat_diff : [s8 ; 11usize] , } # [test] fn bindgen_test_layout_per_cpu_pageset () { assert_eq ! (:: core :: mem :: size_of :: < per_cpu_pageset > () , 96usize , concat ! ("Size of: " , stringify ! (per_cpu_pageset))) ; assert_eq ! (:: core :: mem :: align_of :: < per_cpu_pageset > () , 8usize , concat ! ("Alignment of " , stringify ! (per_cpu_pageset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pageset > ())) . pcp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pageset) , "::" , stringify ! (pcp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pageset > ())) . expire as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pageset) , "::" , stringify ! (expire))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pageset > ())) . vm_numa_stat_diff as * const _ as usize } , 66usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pageset) , "::" , stringify ! (vm_numa_stat_diff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pageset > ())) . stat_threshold as * const _ as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pageset) , "::" , stringify ! (stat_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_pageset > ())) . vm_stat_diff as * const _ as usize } , 79usize , concat ! ("Offset of field: " , stringify ! (per_cpu_pageset) , "::" , stringify ! (vm_stat_diff))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct per_cpu_nodestat { pub stat_threshold : s8 , pub vm_node_stat_diff : [s8 ; 39usize] , } # [test] fn bindgen_test_layout_per_cpu_nodestat () { assert_eq ! (:: core :: mem :: size_of :: < per_cpu_nodestat > () , 40usize , concat ! ("Size of: " , stringify ! (per_cpu_nodestat))) ; assert_eq ! (:: core :: mem :: align_of :: < per_cpu_nodestat > () , 1usize , concat ! ("Alignment of " , stringify ! (per_cpu_nodestat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_nodestat > ())) . stat_threshold as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (per_cpu_nodestat) , "::" , stringify ! (stat_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < per_cpu_nodestat > ())) . vm_node_stat_diff as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (per_cpu_nodestat) , "::" , stringify ! (vm_node_stat_diff))) ; } pub type percpu_ref_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut percpu_ref) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct percpu_ref_data { pub count : atomic_long_t , pub release : percpu_ref_func_t , pub confirm_switch : percpu_ref_func_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub rcu : callback_head , pub ref_ : * mut percpu_ref , } # [test] fn bindgen_test_layout_percpu_ref_data () { assert_eq ! (:: core :: mem :: size_of :: < percpu_ref_data > () , 56usize , concat ! ("Size of: " , stringify ! (percpu_ref_data))) ; assert_eq ! (:: core :: mem :: align_of :: < percpu_ref_data > () , 8usize , concat ! ("Alignment of " , stringify ! (percpu_ref_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref_data > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (percpu_ref_data) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref_data > ())) . release as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (percpu_ref_data) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref_data > ())) . confirm_switch as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (percpu_ref_data) , "::" , stringify ! (confirm_switch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref_data > ())) . rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (percpu_ref_data) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_ref_data > ())) . ref_ as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (percpu_ref_data) , "::" , stringify ! (ref_))) ; } impl percpu_ref_data { # [inline] pub fn force_atomic (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_force_atomic (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn allow_reinit (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_allow_reinit (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (force_atomic : bool_ , allow_reinit : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let force_atomic : u8 = unsafe { :: core :: mem :: transmute (force_atomic) } ; force_atomic as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let allow_reinit : u8 = unsafe { :: core :: mem :: transmute (allow_reinit) } ; allow_reinit as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct shrink_control { pub gfp_mask : gfp_t , pub nid : :: cty :: c_int , pub nr_to_scan : :: cty :: c_ulong , pub nr_scanned : :: cty :: c_ulong , pub memcg : * mut mem_cgroup , } # [test] fn bindgen_test_layout_shrink_control () { assert_eq ! (:: core :: mem :: size_of :: < shrink_control > () , 32usize , concat ! ("Size of: " , stringify ! (shrink_control))) ; assert_eq ! (:: core :: mem :: align_of :: < shrink_control > () , 8usize , concat ! ("Alignment of " , stringify ! (shrink_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrink_control > ())) . gfp_mask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (shrink_control) , "::" , stringify ! (gfp_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrink_control > ())) . nid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (shrink_control) , "::" , stringify ! (nid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrink_control > ())) . nr_to_scan as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (shrink_control) , "::" , stringify ! (nr_to_scan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrink_control > ())) . nr_scanned as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (shrink_control) , "::" , stringify ! (nr_scanned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrink_control > ())) . memcg as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (shrink_control) , "::" , stringify ! (memcg))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct shrinker { pub count_objects : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut shrinker , arg2 : * mut shrink_control) -> :: cty :: c_ulong > , pub scan_objects : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut shrinker , arg2 : * mut shrink_control) -> :: cty :: c_ulong > , pub batch : :: cty :: c_long , pub seeks : :: cty :: c_int , pub flags : :: cty :: c_uint , pub list : list_head , pub id : :: cty :: c_int , pub nr_deferred : * mut atomic_long_t , } # [test] fn bindgen_test_layout_shrinker () { assert_eq ! (:: core :: mem :: size_of :: < shrinker > () , 64usize , concat ! ("Size of: " , stringify ! (shrinker))) ; assert_eq ! (:: core :: mem :: align_of :: < shrinker > () , 8usize , concat ! ("Alignment of " , stringify ! (shrinker))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . count_objects as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (count_objects))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . scan_objects as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (scan_objects))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . batch as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . seeks as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (seeks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . flags as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . id as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker > ())) . nr_deferred as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (shrinker) , "::" , stringify ! (nr_deferred))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rlimit { pub rlim_cur : __kernel_ulong_t , pub rlim_max : __kernel_ulong_t , } # [test] fn bindgen_test_layout_rlimit () { assert_eq ! (:: core :: mem :: size_of :: < rlimit > () , 16usize , concat ! ("Size of: " , stringify ! (rlimit))) ; assert_eq ! (:: core :: mem :: align_of :: < rlimit > () , 8usize , concat ! ("Alignment of " , stringify ! (rlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rlimit > ())) . rlim_cur as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rlimit) , "::" , stringify ! (rlim_cur))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rlimit > ())) . rlim_max as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rlimit) , "::" , stringify ! (rlim_max))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dev_pagemap_ops { pub page_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page) > , pub kill : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dev_pagemap) > , pub cleanup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dev_pagemap) > , pub migrate_to_ram : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut vm_fault) -> vm_fault_t > , } # [test] fn bindgen_test_layout_dev_pagemap_ops () { assert_eq ! (:: core :: mem :: size_of :: < dev_pagemap_ops > () , 32usize , concat ! ("Size of: " , stringify ! (dev_pagemap_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pagemap_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pagemap_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap_ops > ())) . page_free as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap_ops) , "::" , stringify ! (page_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap_ops > ())) . kill as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap_ops) , "::" , stringify ! (kill))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap_ops > ())) . cleanup as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap_ops) , "::" , stringify ! (cleanup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pagemap_ops > ())) . migrate_to_ram as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dev_pagemap_ops) , "::" , stringify ! (migrate_to_ram))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct upid { pub nr : :: cty :: c_int , pub ns : * mut pid_namespace , } # [test] fn bindgen_test_layout_upid () { assert_eq ! (:: core :: mem :: size_of :: < upid > () , 16usize , concat ! ("Size of: " , stringify ! (upid))) ; assert_eq ! (:: core :: mem :: align_of :: < upid > () , 8usize , concat ! ("Alignment of " , stringify ! (upid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < upid > ())) . nr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (upid) , "::" , stringify ! (nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < upid > ())) . ns as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (upid) , "::" , stringify ! (ns))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct pid { pub count : refcount_t , pub level : :: cty :: c_uint , pub lock : spinlock_t , pub tasks : [hlist_head ; 4usize] , pub inodes : hlist_head , pub wait_pidfd : wait_queue_head_t , pub rcu : callback_head , pub numbers : [upid ; 1usize] , } # [test] fn bindgen_test_layout_pid () { assert_eq ! (:: core :: mem :: size_of :: < pid > () , 112usize , concat ! ("Size of: " , stringify ! (pid))) ; assert_eq ! (:: core :: mem :: align_of :: < pid > () , 8usize , concat ! ("Alignment of " , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . level as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . tasks as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . inodes as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (inodes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . wait_pidfd as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (wait_pidfd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . rcu as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid > ())) . numbers as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (pid) , "::" , stringify ! (numbers))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kgid_t { pub val : gid_t , } # [test] fn bindgen_test_layout_kgid_t () { assert_eq ! (:: core :: mem :: size_of :: < kgid_t > () , 4usize , concat ! ("Size of: " , stringify ! (kgid_t))) ; assert_eq ! (:: core :: mem :: align_of :: < kgid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (kgid_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kgid_t > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kgid_t) , "::" , stringify ! (val))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hrtimer_clock_base { pub cpu_base : * mut hrtimer_cpu_base , pub index : :: cty :: c_uint , pub clockid : clockid_t , pub seq : seqcount_raw_spinlock_t , pub running : * mut hrtimer , pub active : timerqueue_head , pub get_time : :: core :: option :: Option < unsafe extern "C" fn () -> ktime_t > , pub offset : ktime_t , } # [test] fn bindgen_test_layout_hrtimer_clock_base () { assert_eq ! (:: core :: mem :: size_of :: < hrtimer_clock_base > () , 64usize , concat ! ("Size of: " , stringify ! (hrtimer_clock_base))) ; assert_eq ! (:: core :: mem :: align_of :: < hrtimer_clock_base > () , 8usize , concat ! ("Alignment of " , stringify ! (hrtimer_clock_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . cpu_base as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (cpu_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . index as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . clockid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (clockid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . seq as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . running as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . active as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . get_time as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (get_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_clock_base > ())) . offset as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (hrtimer_clock_base) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct hrtimer_cpu_base { pub lock : raw_spinlock_t , pub cpu : :: cty :: c_uint , pub active_bases : :: cty :: c_uint , pub clock_was_set_seq : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub nr_events : :: cty :: c_uint , pub nr_retries : :: cty :: c_ushort , pub nr_hangs : :: cty :: c_ushort , pub max_hang_time : :: cty :: c_uint , pub expires_next : ktime_t , pub next_timer : * mut hrtimer , pub softirq_expires_next : ktime_t , pub softirq_next_timer : * mut hrtimer , pub clock_base : [hrtimer_clock_base ; 8usize] , } # [test] fn bindgen_test_layout_hrtimer_cpu_base () { assert_eq ! (:: core :: mem :: size_of :: < hrtimer_cpu_base > () , 576usize , concat ! ("Size of: " , stringify ! (hrtimer_cpu_base))) ; assert_eq ! (:: core :: mem :: align_of :: < hrtimer_cpu_base > () , 8usize , concat ! ("Alignment of " , stringify ! (hrtimer_cpu_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . cpu as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . active_bases as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (active_bases))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . clock_was_set_seq as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (clock_was_set_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . nr_events as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (nr_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . nr_retries as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (nr_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . nr_hangs as * const _ as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (nr_hangs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . max_hang_time as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (max_hang_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . expires_next as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (expires_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . next_timer as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (next_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . softirq_expires_next as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (softirq_expires_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . softirq_next_timer as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (softirq_next_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hrtimer_cpu_base > ())) . clock_base as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (hrtimer_cpu_base) , "::" , stringify ! (clock_base))) ; } impl hrtimer_cpu_base { # [inline] pub fn hres_active (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_hres_active (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn in_hrtirq (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_in_hrtirq (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn hang_detected (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_hang_detected (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn softirq_activated (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_softirq_activated (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (hres_active : :: cty :: c_uint , in_hrtirq : :: cty :: c_uint , hang_detected : :: cty :: c_uint , softirq_activated : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let hres_active : u32 = unsafe { :: core :: mem :: transmute (hres_active) } ; hres_active as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let in_hrtirq : u32 = unsafe { :: core :: mem :: transmute (in_hrtirq) } ; in_hrtirq as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let hang_detected : u32 = unsafe { :: core :: mem :: transmute (hang_detected) } ; hang_detected as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let softirq_activated : u32 = unsafe { :: core :: mem :: transmute (softirq_activated) } ; softirq_activated as u64 }) ; __bindgen_bitfield_unit } } pub type __signalfn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int) > ; pub type __sighandler_t = __signalfn_t ; pub type __restorefn_t = :: core :: option :: Option < unsafe extern "C" fn () > ; pub type __sigrestore_t = __restorefn_t ; # [repr (C)] # [derive (Copy , Clone)] pub union sigval { pub sival_int : :: cty :: c_int , pub sival_ptr : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_sigval () { assert_eq ! (:: core :: mem :: size_of :: < sigval > () , 8usize , concat ! ("Size of: " , stringify ! (sigval))) ; assert_eq ! (:: core :: mem :: align_of :: < sigval > () , 8usize , concat ! ("Alignment of " , stringify ! (sigval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigval > ())) . sival_int as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sigval) , "::" , stringify ! (sival_int))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigval > ())) . sival_ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sigval) , "::" , stringify ! (sival_ptr))) ; } pub type sigval_t = sigval ; # [repr (C)] # [derive (Copy , Clone)] pub union __sifields { pub _kill : __sifields__bindgen_ty_1 , pub _timer : __sifields__bindgen_ty_2 , pub _rt : __sifields__bindgen_ty_3 , pub _sigchld : __sifields__bindgen_ty_4 , pub _sigfault : __sifields__bindgen_ty_5 , pub _sigpoll : __sifields__bindgen_ty_6 , pub _sigsys : __sifields__bindgen_ty_7 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_1 { pub _pid : __kernel_pid_t , pub _uid : __kernel_uid32_t , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_1 > ())) . _pid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_1) , "::" , stringify ! (_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_1 > ())) . _uid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_1) , "::" , stringify ! (_uid))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __sifields__bindgen_ty_2 { pub _tid : __kernel_timer_t , pub _overrun : :: cty :: c_int , pub _sigval : sigval_t , pub _sys_private : :: cty :: c_int , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_2 > ())) . _tid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_2) , "::" , stringify ! (_tid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_2 > ())) . _overrun as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_2) , "::" , stringify ! (_overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_2 > ())) . _sigval as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_2) , "::" , stringify ! (_sigval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_2 > ())) . _sys_private as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_2) , "::" , stringify ! (_sys_private))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __sifields__bindgen_ty_3 { pub _pid : __kernel_pid_t , pub _uid : __kernel_uid32_t , pub _sigval : sigval_t , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_3 > ())) . _pid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_3) , "::" , stringify ! (_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_3 > ())) . _uid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_3) , "::" , stringify ! (_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_3 > ())) . _sigval as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_3) , "::" , stringify ! (_sigval))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_4 { pub _pid : __kernel_pid_t , pub _uid : __kernel_uid32_t , pub _status : :: cty :: c_int , pub _utime : __kernel_clock_t , pub _stime : __kernel_clock_t , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_4 > () , 32usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_4 > ())) . _pid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_4) , "::" , stringify ! (_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_4 > ())) . _uid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_4) , "::" , stringify ! (_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_4 > ())) . _status as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_4) , "::" , stringify ! (_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_4 > ())) . _utime as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_4) , "::" , stringify ! (_utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_4 > ())) . _stime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_4) , "::" , stringify ! (_stime))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct __sifields__bindgen_ty_5 { pub _addr : * mut :: cty :: c_void , pub __bindgen_anon_1 : __sifields__bindgen_ty_5__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __sifields__bindgen_ty_5__bindgen_ty_1 { pub _trapno : :: cty :: c_int , pub _addr_lsb : :: cty :: c_short , pub _addr_bnd : __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 , pub _addr_pkey : __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 , pub _perf : __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 { pub _dummy_bnd : [:: cty :: c_char ; 8usize] , pub _lower : * mut :: cty :: c_void , pub _upper : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 > ())) . _dummy_bnd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (_dummy_bnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 > ())) . _lower as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (_lower))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 > ())) . _upper as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (_upper))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 { pub _dummy_pkey : [:: cty :: c_char ; 8usize] , pub _pkey : __u32 , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 > () , 12usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 > ())) . _dummy_pkey as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (_dummy_pkey))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 > ())) . _pkey as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (_pkey))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 { pub _data : :: cty :: c_ulong , pub _type : __u32 , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 > ())) . _data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 > ())) . _type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (_type))) ; } # [test] fn bindgen_test_layout___sifields__bindgen_ty_5__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_5__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_5__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1 > ())) . _trapno as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (_trapno))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1 > ())) . _addr_lsb as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (_addr_lsb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1 > ())) . _addr_bnd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (_addr_bnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1 > ())) . _addr_pkey as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (_addr_pkey))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5__bindgen_ty_1 > ())) . _perf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (_perf))) ; } # [test] fn bindgen_test_layout___sifields__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_5 > () , 32usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_5 > ())) . _addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_5) , "::" , stringify ! (_addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_6 { pub _band : :: cty :: c_long , pub _fd : :: cty :: c_int , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_6 > ())) . _band as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_6) , "::" , stringify ! (_band))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_6 > ())) . _fd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_6) , "::" , stringify ! (_fd))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __sifields__bindgen_ty_7 { pub _call_addr : * mut :: cty :: c_void , pub _syscall : :: cty :: c_int , pub _arch : :: cty :: c_uint , } # [test] fn bindgen_test_layout___sifields__bindgen_ty_7 () { assert_eq ! (:: core :: mem :: size_of :: < __sifields__bindgen_ty_7 > () , 16usize , concat ! ("Size of: " , stringify ! (__sifields__bindgen_ty_7))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields__bindgen_ty_7 > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields__bindgen_ty_7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_7 > ())) . _call_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_7) , "::" , stringify ! (_call_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_7 > ())) . _syscall as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_7) , "::" , stringify ! (_syscall))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields__bindgen_ty_7 > ())) . _arch as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__sifields__bindgen_ty_7) , "::" , stringify ! (_arch))) ; } # [test] fn bindgen_test_layout___sifields () { assert_eq ! (:: core :: mem :: size_of :: < __sifields > () , 32usize , concat ! ("Size of: " , stringify ! (__sifields))) ; assert_eq ! (:: core :: mem :: align_of :: < __sifields > () , 8usize , concat ! ("Alignment of " , stringify ! (__sifields))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _kill as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_kill))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _timer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _rt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_rt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _sigchld as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_sigchld))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _sigfault as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_sigfault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _sigpoll as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_sigpoll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __sifields > ())) . _sigsys as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sifields) , "::" , stringify ! (_sigsys))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kernel_siginfo { pub __bindgen_anon_1 : kernel_siginfo__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub struct kernel_siginfo__bindgen_ty_1 { pub si_signo : :: cty :: c_int , pub si_errno : :: cty :: c_int , pub si_code : :: cty :: c_int , pub _sifields : __sifields , } # [test] fn bindgen_test_layout_kernel_siginfo__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < kernel_siginfo__bindgen_ty_1 > () , 48usize , concat ! ("Size of: " , stringify ! (kernel_siginfo__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_siginfo__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (kernel_siginfo__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_siginfo__bindgen_ty_1 > ())) . si_signo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_siginfo__bindgen_ty_1) , "::" , stringify ! (si_signo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_siginfo__bindgen_ty_1 > ())) . si_errno as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kernel_siginfo__bindgen_ty_1) , "::" , stringify ! (si_errno))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_siginfo__bindgen_ty_1 > ())) . si_code as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernel_siginfo__bindgen_ty_1) , "::" , stringify ! (si_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_siginfo__bindgen_ty_1 > ())) . _sifields as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernel_siginfo__bindgen_ty_1) , "::" , stringify ! (_sifields))) ; } # [test] fn bindgen_test_layout_kernel_siginfo () { assert_eq ! (:: core :: mem :: size_of :: < kernel_siginfo > () , 48usize , concat ! ("Size of: " , stringify ! (kernel_siginfo))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_siginfo > () , 8usize , concat ! ("Alignment of " , stringify ! (kernel_siginfo))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct user_struct { pub __count : refcount_t , pub processes : atomic_t , pub sigpending : atomic_t , pub epoll_watches : atomic_long_t , pub mq_bytes : :: cty :: c_ulong , pub locked_shm : :: cty :: c_ulong , pub unix_inflight : :: cty :: c_ulong , pub pipe_bufs : atomic_long_t , pub uidhash_node : hlist_node , pub uid : kuid_t , pub locked_vm : atomic_long_t , pub nr_watches : atomic_t , pub ratelimit : ratelimit_state , } # [test] fn bindgen_test_layout_user_struct () { assert_eq ! (:: core :: mem :: size_of :: < user_struct > () , 136usize , concat ! ("Size of: " , stringify ! (user_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < user_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (user_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . __count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . processes as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (processes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . sigpending as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (sigpending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . epoll_watches as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (epoll_watches))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . mq_bytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (mq_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . locked_shm as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (locked_shm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . unix_inflight as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (unix_inflight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . pipe_bufs as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (pipe_bufs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . uidhash_node as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (uidhash_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . uid as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . locked_vm as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (locked_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . nr_watches as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (nr_watches))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_struct > ())) . ratelimit as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (user_struct) , "::" , stringify ! (ratelimit))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sigaction { pub sa_handler : __sighandler_t , pub sa_flags : :: cty :: c_ulong , pub sa_restorer : __sigrestore_t , pub sa_mask : sigset_t , } # [test] fn bindgen_test_layout_sigaction () { assert_eq ! (:: core :: mem :: size_of :: < sigaction > () , 32usize , concat ! ("Size of: " , stringify ! (sigaction))) ; assert_eq ! (:: core :: mem :: align_of :: < sigaction > () , 8usize , concat ! ("Alignment of " , stringify ! (sigaction))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigaction > ())) . sa_handler as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sigaction) , "::" , stringify ! (sa_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigaction > ())) . sa_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sigaction) , "::" , stringify ! (sa_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigaction > ())) . sa_restorer as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sigaction) , "::" , stringify ! (sa_restorer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sigaction > ())) . sa_mask as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sigaction) , "::" , stringify ! (sa_mask))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct k_sigaction { pub sa : sigaction , } # [test] fn bindgen_test_layout_k_sigaction () { assert_eq ! (:: core :: mem :: size_of :: < k_sigaction > () , 32usize , concat ! ("Size of: " , stringify ! (k_sigaction))) ; assert_eq ! (:: core :: mem :: align_of :: < k_sigaction > () , 8usize , concat ! ("Alignment of " , stringify ! (k_sigaction))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < k_sigaction > ())) . sa as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (k_sigaction) , "::" , stringify ! (sa))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpu_itimer { pub expires : _cargo_bpf_u64 , pub incr : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_cpu_itimer () { assert_eq ! (:: core :: mem :: size_of :: < cpu_itimer > () , 16usize , concat ! ("Size of: " , stringify ! (cpu_itimer))) ; assert_eq ! (:: core :: mem :: align_of :: < cpu_itimer > () , 8usize , concat ! ("Alignment of " , stringify ! (cpu_itimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_itimer > ())) . expires as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpu_itimer) , "::" , stringify ! (expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_itimer > ())) . incr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpu_itimer) , "::" , stringify ! (incr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct task_cputime_atomic { pub utime : atomic64_t , pub stime : atomic64_t , pub sum_exec_runtime : atomic64_t , } # [test] fn bindgen_test_layout_task_cputime_atomic () { assert_eq ! (:: core :: mem :: size_of :: < task_cputime_atomic > () , 24usize , concat ! ("Size of: " , stringify ! (task_cputime_atomic))) ; assert_eq ! (:: core :: mem :: align_of :: < task_cputime_atomic > () , 8usize , concat ! ("Alignment of " , stringify ! (task_cputime_atomic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_cputime_atomic > ())) . utime as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_cputime_atomic) , "::" , stringify ! (utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_cputime_atomic > ())) . stime as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (task_cputime_atomic) , "::" , stringify ! (stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_cputime_atomic > ())) . sum_exec_runtime as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (task_cputime_atomic) , "::" , stringify ! (sum_exec_runtime))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct thread_group_cputimer { pub cputime_atomic : task_cputime_atomic , } # [test] fn bindgen_test_layout_thread_group_cputimer () { assert_eq ! (:: core :: mem :: size_of :: < thread_group_cputimer > () , 24usize , concat ! ("Size of: " , stringify ! (thread_group_cputimer))) ; assert_eq ! (:: core :: mem :: align_of :: < thread_group_cputimer > () , 8usize , concat ! ("Alignment of " , stringify ! (thread_group_cputimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < thread_group_cputimer > ())) . cputime_atomic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (thread_group_cputimer) , "::" , stringify ! (cputime_atomic))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pacct_struct { pub ac_flag : :: cty :: c_int , pub ac_exitcode : :: cty :: c_long , pub ac_mem : :: cty :: c_ulong , pub ac_utime : _cargo_bpf_u64 , pub ac_stime : _cargo_bpf_u64 , pub ac_minflt : :: cty :: c_ulong , pub ac_majflt : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_pacct_struct () { assert_eq ! (:: core :: mem :: size_of :: < pacct_struct > () , 56usize , concat ! ("Size of: " , stringify ! (pacct_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < pacct_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (pacct_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_flag as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_flag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_exitcode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_exitcode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_mem as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_mem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_utime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_stime as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_minflt as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_minflt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pacct_struct > ())) . ac_majflt as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (pacct_struct) , "::" , stringify ! (ac_majflt))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct signal_struct { pub sigcnt : refcount_t , pub live : atomic_t , pub nr_threads : :: cty :: c_int , pub thread_head : list_head , pub wait_chldexit : wait_queue_head_t , pub curr_target : * mut task_struct , pub shared_pending : sigpending , pub multiprocess : hlist_head , pub group_exit_code : :: cty :: c_int , pub notify_count : :: cty :: c_int , pub group_exit_task : * mut task_struct , pub group_stop_count : :: cty :: c_int , pub flags : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub posix_timer_id : :: cty :: c_int , pub posix_timers : list_head , pub real_timer : hrtimer , pub it_real_incr : ktime_t , pub it : [cpu_itimer ; 2usize] , pub cputimer : thread_group_cputimer , pub posix_cputimers : posix_cputimers , pub pids : [* mut pid ; 4usize] , pub tty_old_pgrp : * mut pid , pub leader : :: cty :: c_int , pub tty : * mut tty_struct , pub autogroup : * mut autogroup , pub stats_lock : seqlock_t , pub utime : _cargo_bpf_u64 , pub stime : _cargo_bpf_u64 , pub cutime : _cargo_bpf_u64 , pub cstime : _cargo_bpf_u64 , pub gtime : _cargo_bpf_u64 , pub cgtime : _cargo_bpf_u64 , pub prev_cputime : prev_cputime , pub nvcsw : :: cty :: c_ulong , pub nivcsw : :: cty :: c_ulong , pub cnvcsw : :: cty :: c_ulong , pub cnivcsw : :: cty :: c_ulong , pub min_flt : :: cty :: c_ulong , pub maj_flt : :: cty :: c_ulong , pub cmin_flt : :: cty :: c_ulong , pub cmaj_flt : :: cty :: c_ulong , pub inblock : :: cty :: c_ulong , pub oublock : :: cty :: c_ulong , pub cinblock : :: cty :: c_ulong , pub coublock : :: cty :: c_ulong , pub maxrss : :: cty :: c_ulong , pub cmaxrss : :: cty :: c_ulong , pub ioac : task_io_accounting , pub sum_sched_runtime : :: cty :: c_ulonglong , pub rlim : [rlimit ; 16usize] , pub pacct : pacct_struct , pub stats : * mut taskstats , pub audit_tty : :: cty :: c_uint , pub tty_audit_buf : * mut tty_audit_buf , pub oom_flag_origin : bool_ , pub oom_score_adj : :: cty :: c_short , pub oom_score_adj_min : :: cty :: c_short , pub oom_mm : * mut mm_struct , pub cred_guard_mutex : mutex , pub exec_update_lock : rw_semaphore , } # [test] fn bindgen_test_layout_signal_struct () { assert_eq ! (:: core :: mem :: size_of :: < signal_struct > () , 1096usize , concat ! ("Size of: " , stringify ! (signal_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < signal_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (signal_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . sigcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (sigcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . live as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (live))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . nr_threads as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (nr_threads))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . thread_head as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (thread_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . wait_chldexit as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (wait_chldexit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . curr_target as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (curr_target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . shared_pending as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (shared_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . multiprocess as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (multiprocess))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . group_exit_code as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (group_exit_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . notify_count as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (notify_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . group_exit_task as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (group_exit_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . group_stop_count as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (group_stop_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . flags as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . posix_timer_id as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (posix_timer_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . posix_timers as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (posix_timers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . real_timer as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (real_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . it_real_incr as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (it_real_incr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . it as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (it))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cputimer as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cputimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . posix_cputimers as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (posix_cputimers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . pids as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (pids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . tty_old_pgrp as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (tty_old_pgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . leader as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (leader))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . tty as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (tty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . autogroup as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (autogroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . stats_lock as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (stats_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . utime as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . stime as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cutime as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cutime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cstime as * const _ as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cstime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . gtime as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (gtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cgtime as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cgtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . prev_cputime as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (prev_cputime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . nvcsw as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (nvcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . nivcsw as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (nivcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cnvcsw as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cnvcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cnivcsw as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cnivcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . min_flt as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (min_flt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . maj_flt as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (maj_flt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cmin_flt as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cmin_flt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cmaj_flt as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cmaj_flt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . inblock as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (inblock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . oublock as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (oublock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cinblock as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cinblock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . coublock as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (coublock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . maxrss as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (maxrss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cmaxrss as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cmaxrss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . ioac as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (ioac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . sum_sched_runtime as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (sum_sched_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . rlim as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (rlim))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . pacct as * const _ as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (pacct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . stats as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . audit_tty as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (audit_tty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . tty_audit_buf as * const _ as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (tty_audit_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . oom_flag_origin as * const _ as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (oom_flag_origin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . oom_score_adj as * const _ as usize } , 1010usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (oom_score_adj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . oom_score_adj_min as * const _ as usize } , 1012usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (oom_score_adj_min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . oom_mm as * const _ as usize } , 1016usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (oom_mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . cred_guard_mutex as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (cred_guard_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < signal_struct > ())) . exec_update_lock as * const _ as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (signal_struct) , "::" , stringify ! (exec_update_lock))) ; } impl signal_struct { # [inline] pub fn is_child_subreaper (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_is_child_subreaper (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn has_child_subreaper (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_has_child_subreaper (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_child_subreaper : :: cty :: c_uint , has_child_subreaper : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_child_subreaper : u32 = unsafe { :: core :: mem :: transmute (is_child_subreaper) } ; is_child_subreaper as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let has_child_subreaper : u32 = unsafe { :: core :: mem :: transmute (has_child_subreaper) } ; has_child_subreaper as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct rseq { pub cpu_id_start : __u32 , pub cpu_id : __u32 , pub rseq_cs : rseq__bindgen_ty_1 , pub flags : __u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 16usize] > , } # [repr (C)] # [derive (Copy , Clone)] pub union rseq__bindgen_ty_1 { pub ptr64 : __u64 , pub ptr : __u64 , } # [test] fn bindgen_test_layout_rseq__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rseq__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (rseq__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rseq__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (rseq__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rseq__bindgen_ty_1 > ())) . ptr64 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rseq__bindgen_ty_1) , "::" , stringify ! (ptr64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rseq__bindgen_ty_1 > ())) . ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rseq__bindgen_ty_1) , "::" , stringify ! (ptr))) ; } # [test] fn bindgen_test_layout_rseq () { assert_eq ! (:: core :: mem :: size_of :: < rseq > () , 32usize , concat ! ("Size of: " , stringify ! (rseq))) ; assert_eq ! (:: core :: mem :: align_of :: < rseq > () , 8usize , concat ! ("Alignment of " , stringify ! (rseq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rseq > ())) . cpu_id_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rseq) , "::" , stringify ! (cpu_id_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rseq > ())) . cpu_id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rseq) , "::" , stringify ! (cpu_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rseq > ())) . rseq_cs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rseq) , "::" , stringify ! (rseq_cs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rseq > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rseq) , "::" , stringify ! (flags))) ; } impl rseq { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_class { pub enqueue_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : :: cty :: c_int) > , pub dequeue_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : :: cty :: c_int) > , pub yield_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq) > , pub yield_to_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct) -> bool_ > , pub check_preempt_curr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : :: cty :: c_int) > , pub pick_next_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq) -> * mut task_struct > , pub put_prev_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct) > , pub set_next_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : bool_) > , pub balance : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : * mut rq_flags) -> :: cty :: c_int > , pub select_task_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub migrate_task_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : :: cty :: c_int) > , pub task_woken : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct) > , pub set_cpus_allowed : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : * const cpumask , arg3 : _cargo_bpf_u32) > , pub rq_online : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq) > , pub rq_offline : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq) > , pub find_lock_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : * mut rq) -> * mut rq > , pub task_tick : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : :: cty :: c_int) > , pub task_fork : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct) > , pub task_dead : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct) > , pub switched_from : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct) > , pub switched_to : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct) > , pub prio_changed : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct , arg3 : :: cty :: c_int) > , pub get_rr_interval : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq , arg2 : * mut task_struct) -> :: cty :: c_uint > , pub update_curr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rq) > , pub task_change_group : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : :: cty :: c_int) > , } # [test] fn bindgen_test_layout_sched_class () { assert_eq ! (:: core :: mem :: size_of :: < sched_class > () , 200usize , concat ! ("Size of: " , stringify ! (sched_class))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_class > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . enqueue_task as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (enqueue_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . dequeue_task as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (dequeue_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . yield_task as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (yield_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . yield_to_task as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (yield_to_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . check_preempt_curr as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (check_preempt_curr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . pick_next_task as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (pick_next_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . put_prev_task as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (put_prev_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . set_next_task as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (set_next_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . balance as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . select_task_rq as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (select_task_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . migrate_task_rq as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (migrate_task_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . task_woken as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (task_woken))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . set_cpus_allowed as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (set_cpus_allowed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . rq_online as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (rq_online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . rq_offline as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (rq_offline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . find_lock_rq as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (find_lock_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . task_tick as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (task_tick))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . task_fork as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (task_fork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . task_dead as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (task_dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . switched_from as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (switched_from))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . switched_to as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (switched_to))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . prio_changed as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (prio_changed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . get_rr_interval as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (get_rr_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . update_curr as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (update_curr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_class > ())) . task_change_group as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (sched_class) , "::" , stringify ! (task_change_group))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernel_cap_struct { pub cap : [__u32 ; 2usize] , } # [test] fn bindgen_test_layout_kernel_cap_struct () { assert_eq ! (:: core :: mem :: size_of :: < kernel_cap_struct > () , 8usize , concat ! ("Size of: " , stringify ! (kernel_cap_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_cap_struct > () , 4usize , concat ! ("Alignment of " , stringify ! (kernel_cap_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_cap_struct > ())) . cap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_cap_struct) , "::" , stringify ! (cap))) ; } pub type kernel_cap_t = kernel_cap_struct ; # [repr (C)] # [derive (Copy , Clone)] pub struct cred { pub usage : atomic_t , pub uid : kuid_t , pub gid : kgid_t , pub suid : kuid_t , pub sgid : kgid_t , pub euid : kuid_t , pub egid : kgid_t , pub fsuid : kuid_t , pub fsgid : kgid_t , pub securebits : :: cty :: c_uint , pub cap_inheritable : kernel_cap_t , pub cap_permitted : kernel_cap_t , pub cap_effective : kernel_cap_t , pub cap_bset : kernel_cap_t , pub cap_ambient : kernel_cap_t , pub jit_keyring : :: cty :: c_uchar , pub session_keyring : * mut key , pub process_keyring : * mut key , pub thread_keyring : * mut key , pub request_key_auth : * mut key , pub security : * mut :: cty :: c_void , pub user : * mut user_struct , pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub group_info : * mut group_info , pub __bindgen_anon_1 : cred__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union cred__bindgen_ty_1 { pub non_rcu : :: cty :: c_int , pub rcu : callback_head , } # [test] fn bindgen_test_layout_cred__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < cred__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (cred__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < cred__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (cred__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred__bindgen_ty_1 > ())) . non_rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cred__bindgen_ty_1) , "::" , stringify ! (non_rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cred__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_cred () { assert_eq ! (:: core :: mem :: size_of :: < cred > () , 176usize , concat ! ("Size of: " , stringify ! (cred))) ; assert_eq ! (:: core :: mem :: align_of :: < cred > () , 8usize , concat ! ("Alignment of " , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . usage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . uid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . gid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . suid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (suid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . sgid as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (sgid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . euid as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (euid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . egid as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (egid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . fsuid as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (fsuid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . fsgid as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (fsgid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . securebits as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (securebits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . cap_inheritable as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (cap_inheritable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . cap_permitted as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (cap_permitted))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . cap_effective as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (cap_effective))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . cap_bset as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (cap_bset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . cap_ambient as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (cap_ambient))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . jit_keyring as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (jit_keyring))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . session_keyring as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (session_keyring))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . process_keyring as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (process_keyring))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . thread_keyring as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (thread_keyring))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . request_key_auth as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (request_key_auth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . security as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . user as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . user_ns as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . ucounts as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cred > ())) . group_info as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (cred) , "::" , stringify ! (group_info))) ; } pub type key_serial_t = i32 ; pub type key_perm_t = u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct keyring_index_key { pub hash : :: cty :: c_ulong , pub __bindgen_anon_1 : keyring_index_key__bindgen_ty_1 , pub type_ : * mut key_type , pub domain_tag : * mut key_tag , pub description : * const :: cty :: c_char , } # [repr (C)] # [derive (Copy , Clone)] pub union keyring_index_key__bindgen_ty_1 { pub __bindgen_anon_1 : keyring_index_key__bindgen_ty_1__bindgen_ty_1 , pub x : :: cty :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct keyring_index_key__bindgen_ty_1__bindgen_ty_1 { pub desc_len : _cargo_bpf_u16 , pub desc : [:: cty :: c_char ; 6usize] , } # [test] fn bindgen_test_layout_keyring_index_key__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < keyring_index_key__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (keyring_index_key__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < keyring_index_key__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (keyring_index_key__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key__bindgen_ty_1__bindgen_ty_1 > ())) . desc_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (desc_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key__bindgen_ty_1__bindgen_ty_1 > ())) . desc as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (desc))) ; } # [test] fn bindgen_test_layout_keyring_index_key__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < keyring_index_key__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (keyring_index_key__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < keyring_index_key__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (keyring_index_key__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key__bindgen_ty_1 > ())) . x as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key__bindgen_ty_1) , "::" , stringify ! (x))) ; } # [test] fn bindgen_test_layout_keyring_index_key () { assert_eq ! (:: core :: mem :: size_of :: < keyring_index_key > () , 40usize , concat ! ("Size of: " , stringify ! (keyring_index_key))) ; assert_eq ! (:: core :: mem :: align_of :: < keyring_index_key > () , 8usize , concat ! ("Alignment of " , stringify ! (keyring_index_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key > ())) . hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key > ())) . type_ as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key > ())) . domain_tag as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key) , "::" , stringify ! (domain_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < keyring_index_key > ())) . description as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (keyring_index_key) , "::" , stringify ! (description))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union key_payload { pub rcu_data0 : * mut :: cty :: c_void , pub data : [* mut :: cty :: c_void ; 4usize] , } # [test] fn bindgen_test_layout_key_payload () { assert_eq ! (:: core :: mem :: size_of :: < key_payload > () , 32usize , concat ! ("Size of: " , stringify ! (key_payload))) ; assert_eq ! (:: core :: mem :: align_of :: < key_payload > () , 8usize , concat ! ("Alignment of " , stringify ! (key_payload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_payload > ())) . rcu_data0 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_payload) , "::" , stringify ! (rcu_data0))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_payload > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_payload) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct assoc_array_ptr { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct assoc_array { pub root : * mut assoc_array_ptr , pub nr_leaves_on_tree : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_assoc_array () { assert_eq ! (:: core :: mem :: size_of :: < assoc_array > () , 16usize , concat ! ("Size of: " , stringify ! (assoc_array))) ; assert_eq ! (:: core :: mem :: align_of :: < assoc_array > () , 8usize , concat ! ("Alignment of " , stringify ! (assoc_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < assoc_array > ())) . root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (assoc_array) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < assoc_array > ())) . nr_leaves_on_tree as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (assoc_array) , "::" , stringify ! (nr_leaves_on_tree))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct key { pub usage : refcount_t , pub serial : key_serial_t , pub __bindgen_anon_1 : key__bindgen_ty_1 , pub watchers : * mut watch_list , pub sem : rw_semaphore , pub user : * mut key_user , pub security : * mut :: cty :: c_void , pub __bindgen_anon_2 : key__bindgen_ty_2 , pub last_used_at : time64_t , pub uid : kuid_t , pub gid : kgid_t , pub perm : key_perm_t , pub quotalen : :: cty :: c_ushort , pub datalen : :: cty :: c_ushort , pub state : :: cty :: c_short , pub flags : :: cty :: c_ulong , pub __bindgen_anon_3 : key__bindgen_ty_3 , pub __bindgen_anon_4 : key__bindgen_ty_4 , pub restrict_link : * mut key_restriction , } # [repr (C)] # [derive (Copy , Clone)] pub union key__bindgen_ty_1 { pub graveyard_link : list_head , pub serial_node : rb_node , } # [test] fn bindgen_test_layout_key__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < key__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (key__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < key__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (key__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_1 > ())) . graveyard_link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_1) , "::" , stringify ! (graveyard_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_1 > ())) . serial_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_1) , "::" , stringify ! (serial_node))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union key__bindgen_ty_2 { pub expiry : time64_t , pub revoked_at : time64_t , } # [test] fn bindgen_test_layout_key__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < key__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (key__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < key__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (key__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_2 > ())) . expiry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_2) , "::" , stringify ! (expiry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_2 > ())) . revoked_at as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_2) , "::" , stringify ! (revoked_at))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union key__bindgen_ty_3 { pub index_key : keyring_index_key , pub __bindgen_anon_1 : key__bindgen_ty_3__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct key__bindgen_ty_3__bindgen_ty_1 { pub hash : :: cty :: c_ulong , pub len_desc : :: cty :: c_ulong , pub type_ : * mut key_type , pub domain_tag : * mut key_tag , pub description : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_key__bindgen_ty_3__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < key__bindgen_ty_3__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (key__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < key__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (key__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_3__bindgen_ty_1 > ())) . hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_3__bindgen_ty_1 > ())) . len_desc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (len_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_3__bindgen_ty_1 > ())) . type_ as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_3__bindgen_ty_1 > ())) . domain_tag as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (domain_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_3__bindgen_ty_1 > ())) . description as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (description))) ; } # [test] fn bindgen_test_layout_key__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < key__bindgen_ty_3 > () , 40usize , concat ! ("Size of: " , stringify ! (key__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < key__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (key__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_3 > ())) . index_key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_3) , "::" , stringify ! (index_key))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union key__bindgen_ty_4 { pub payload : key_payload , pub __bindgen_anon_1 : key__bindgen_ty_4__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct key__bindgen_ty_4__bindgen_ty_1 { pub name_link : list_head , pub keys : assoc_array , } # [test] fn bindgen_test_layout_key__bindgen_ty_4__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < key__bindgen_ty_4__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (key__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < key__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (key__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_4__bindgen_ty_1 > ())) . name_link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (name_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_4__bindgen_ty_1 > ())) . keys as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (keys))) ; } # [test] fn bindgen_test_layout_key__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < key__bindgen_ty_4 > () , 32usize , concat ! ("Size of: " , stringify ! (key__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < key__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (key__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key__bindgen_ty_4 > ())) . payload as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key__bindgen_ty_4) , "::" , stringify ! (payload))) ; } # [test] fn bindgen_test_layout_key () { assert_eq ! (:: core :: mem :: size_of :: < key > () , 224usize , concat ! ("Size of: " , stringify ! (key))) ; assert_eq ! (:: core :: mem :: align_of :: < key > () , 8usize , concat ! ("Alignment of " , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . usage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . serial as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . watchers as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (watchers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . sem as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (sem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . user as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . security as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . last_used_at as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (last_used_at))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . uid as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . gid as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . perm as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . quotalen as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (quotalen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . datalen as * const _ as usize } , 126usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (datalen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . state as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . flags as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key > ())) . restrict_link as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (key) , "::" , stringify ! (restrict_link))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct sighand_struct { pub siglock : spinlock_t , pub count : refcount_t , pub signalfd_wqh : wait_queue_head_t , pub action : [k_sigaction ; 64usize] , } # [test] fn bindgen_test_layout_sighand_struct () { assert_eq ! (:: core :: mem :: size_of :: < sighand_struct > () , 2080usize , concat ! ("Size of: " , stringify ! (sighand_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < sighand_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (sighand_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sighand_struct > ())) . siglock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sighand_struct) , "::" , stringify ! (siglock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sighand_struct > ())) . count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sighand_struct) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sighand_struct > ())) . signalfd_wqh as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sighand_struct) , "::" , stringify ! (signalfd_wqh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sighand_struct > ())) . action as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sighand_struct) , "::" , stringify ! (action))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct io_context { pub refcount : atomic_long_t , pub active_ref : atomic_t , pub nr_tasks : atomic_t , pub lock : spinlock_t , pub ioprio : :: cty :: c_ushort , pub icq_tree : xarray , pub icq_hint : * mut io_cq , pub icq_list : hlist_head , pub release_work : work_struct , } # [test] fn bindgen_test_layout_io_context () { assert_eq ! (:: core :: mem :: size_of :: < io_context > () , 88usize , concat ! ("Size of: " , stringify ! (io_context))) ; assert_eq ! (:: core :: mem :: align_of :: < io_context > () , 8usize , concat ! ("Alignment of " , stringify ! (io_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . refcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . active_ref as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (active_ref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . nr_tasks as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (nr_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . lock as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . ioprio as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (ioprio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . icq_tree as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (icq_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . icq_hint as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (icq_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . icq_list as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (icq_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_context > ())) . release_work as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (io_context) , "::" , stringify ! (release_work))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hlist_bl_head { pub first : * mut hlist_bl_node , } # [test] fn bindgen_test_layout_hlist_bl_head () { assert_eq ! (:: core :: mem :: size_of :: < hlist_bl_head > () , 8usize , concat ! ("Size of: " , stringify ! (hlist_bl_head))) ; assert_eq ! (:: core :: mem :: align_of :: < hlist_bl_head > () , 8usize , concat ! ("Alignment of " , stringify ! (hlist_bl_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_bl_head > ())) . first as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hlist_bl_head) , "::" , stringify ! (first))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hlist_bl_node { pub next : * mut hlist_bl_node , pub pprev : * mut * mut hlist_bl_node , } # [test] fn bindgen_test_layout_hlist_bl_node () { assert_eq ! (:: core :: mem :: size_of :: < hlist_bl_node > () , 16usize , concat ! ("Size of: " , stringify ! (hlist_bl_node))) ; assert_eq ! (:: core :: mem :: align_of :: < hlist_bl_node > () , 8usize , concat ! ("Alignment of " , stringify ! (hlist_bl_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_bl_node > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hlist_bl_node) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_bl_node > ())) . pprev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hlist_bl_node) , "::" , stringify ! (pprev))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct lockref { pub __bindgen_anon_1 : lockref__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union lockref__bindgen_ty_1 { pub lock_count : __u64 , pub __bindgen_anon_1 : lockref__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub struct lockref__bindgen_ty_1__bindgen_ty_1 { pub lock : spinlock_t , pub count : :: cty :: c_int , } # [test] fn bindgen_test_layout_lockref__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < lockref__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (lockref__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < lockref__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (lockref__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lockref__bindgen_ty_1__bindgen_ty_1 > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (lockref__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lockref__bindgen_ty_1__bindgen_ty_1 > ())) . count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (lockref__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (count))) ; } # [test] fn bindgen_test_layout_lockref__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < lockref__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (lockref__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < lockref__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (lockref__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lockref__bindgen_ty_1 > ())) . lock_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (lockref__bindgen_ty_1) , "::" , stringify ! (lock_count))) ; } # [test] fn bindgen_test_layout_lockref () { assert_eq ! (:: core :: mem :: size_of :: < lockref > () , 8usize , concat ! ("Size of: " , stringify ! (lockref))) ; assert_eq ! (:: core :: mem :: align_of :: < lockref > () , 8usize , concat ! ("Alignment of " , stringify ! (lockref))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct qstr { pub __bindgen_anon_1 : qstr__bindgen_ty_1 , pub name : * const :: cty :: c_uchar , } # [repr (C)] # [derive (Copy , Clone)] pub union qstr__bindgen_ty_1 { pub __bindgen_anon_1 : qstr__bindgen_ty_1__bindgen_ty_1 , pub hash_len : _cargo_bpf_u64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qstr__bindgen_ty_1__bindgen_ty_1 { pub hash : _cargo_bpf_u32 , pub len : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_qstr__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < qstr__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (qstr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < qstr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (qstr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qstr__bindgen_ty_1__bindgen_ty_1 > ())) . hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qstr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qstr__bindgen_ty_1__bindgen_ty_1 > ())) . len as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (qstr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (len))) ; } # [test] fn bindgen_test_layout_qstr__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < qstr__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (qstr__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < qstr__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (qstr__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qstr__bindgen_ty_1 > ())) . hash_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qstr__bindgen_ty_1) , "::" , stringify ! (hash_len))) ; } # [test] fn bindgen_test_layout_qstr () { assert_eq ! (:: core :: mem :: size_of :: < qstr > () , 16usize , concat ! ("Size of: " , stringify ! (qstr))) ; assert_eq ! (:: core :: mem :: align_of :: < qstr > () , 8usize , concat ! ("Alignment of " , stringify ! (qstr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qstr > ())) . name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (qstr) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct dentry { pub d_flags : :: cty :: c_uint , pub d_seq : seqcount_spinlock_t , pub d_hash : hlist_bl_node , pub d_parent : * mut dentry , pub d_name : qstr , pub d_inode : * mut inode , pub d_iname : [:: cty :: c_uchar ; 32usize] , pub d_lockref : lockref , pub d_op : * const dentry_operations , pub d_sb : * mut super_block , pub d_time : :: cty :: c_ulong , pub d_fsdata : * mut :: cty :: c_void , pub __bindgen_anon_1 : dentry__bindgen_ty_1 , pub d_child : list_head , pub d_subdirs : list_head , pub d_u : dentry__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union dentry__bindgen_ty_1 { pub d_lru : list_head , pub d_wait : * mut wait_queue_head_t , } # [test] fn bindgen_test_layout_dentry__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < dentry__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dentry__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < dentry__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dentry__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry__bindgen_ty_1 > ())) . d_lru as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry__bindgen_ty_1) , "::" , stringify ! (d_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry__bindgen_ty_1 > ())) . d_wait as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry__bindgen_ty_1) , "::" , stringify ! (d_wait))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union dentry__bindgen_ty_2 { pub d_alias : hlist_node , pub d_in_lookup_hash : hlist_bl_node , pub d_rcu : callback_head , } # [test] fn bindgen_test_layout_dentry__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < dentry__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (dentry__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < dentry__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (dentry__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry__bindgen_ty_2 > ())) . d_alias as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry__bindgen_ty_2) , "::" , stringify ! (d_alias))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry__bindgen_ty_2 > ())) . d_in_lookup_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry__bindgen_ty_2) , "::" , stringify ! (d_in_lookup_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry__bindgen_ty_2 > ())) . d_rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry__bindgen_ty_2) , "::" , stringify ! (d_rcu))) ; } # [test] fn bindgen_test_layout_dentry () { assert_eq ! (:: core :: mem :: size_of :: < dentry > () , 192usize , concat ! ("Size of: " , stringify ! (dentry))) ; assert_eq ! (:: core :: mem :: align_of :: < dentry > () , 8usize , concat ! ("Alignment of " , stringify ! (dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_seq as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_hash as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_parent as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_name as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_inode as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_iname as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_iname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_lockref as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_lockref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_op as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_sb as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_time as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_fsdata as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_fsdata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_child as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_child))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_subdirs as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_subdirs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry > ())) . d_u as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (dentry) , "::" , stringify ! (d_u))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct inode { pub i_mode : umode_t , pub i_opflags : :: cty :: c_ushort , pub i_uid : kuid_t , pub i_gid : kgid_t , pub i_flags : :: cty :: c_uint , pub i_acl : * mut posix_acl , pub i_default_acl : * mut posix_acl , pub i_op : * const inode_operations , pub i_sb : * mut super_block , pub i_mapping : * mut address_space , pub i_security : * mut :: cty :: c_void , pub i_ino : :: cty :: c_ulong , pub __bindgen_anon_1 : inode__bindgen_ty_1 , pub i_rdev : dev_t , pub i_size : loff_t , pub i_atime : timespec64 , pub i_mtime : timespec64 , pub i_ctime : timespec64 , pub i_lock : spinlock_t , pub i_bytes : :: cty :: c_ushort , pub i_blkbits : _cargo_bpf_u8 , pub i_write_hint : _cargo_bpf_u8 , pub i_blocks : blkcnt_t , pub i_state : :: cty :: c_ulong , pub i_rwsem : rw_semaphore , pub dirtied_when : :: cty :: c_ulong , pub dirtied_time_when : :: cty :: c_ulong , pub i_hash : hlist_node , pub i_io_list : list_head , pub i_wb : * mut bdi_writeback , pub i_wb_frn_winner : :: cty :: c_int , pub i_wb_frn_avg_time : _cargo_bpf_u16 , pub i_wb_frn_history : _cargo_bpf_u16 , pub i_lru : list_head , pub i_sb_list : list_head , pub i_wb_list : list_head , pub __bindgen_anon_2 : inode__bindgen_ty_2 , pub i_version : atomic64_t , pub i_sequence : atomic64_t , pub i_count : atomic_t , pub i_dio_count : atomic_t , pub i_writecount : atomic_t , pub i_readcount : atomic_t , pub __bindgen_anon_3 : inode__bindgen_ty_3 , pub i_flctx : * mut file_lock_context , pub i_data : address_space , pub i_devices : list_head , pub __bindgen_anon_4 : inode__bindgen_ty_4 , pub i_generation : __u32 , pub i_fsnotify_mask : __u32 , pub i_fsnotify_marks : * mut fsnotify_mark_connector , pub i_crypt_info : * mut fscrypt_info , pub i_verity_info : * mut fsverity_info , pub i_private : * mut :: cty :: c_void , } # [repr (C)] # [derive (Copy , Clone)] pub union inode__bindgen_ty_1 { pub i_nlink : :: cty :: c_uint , pub __i_nlink : :: cty :: c_uint , } # [test] fn bindgen_test_layout_inode__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < inode__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (inode__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < inode__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (inode__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_1 > ())) . i_nlink as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_1) , "::" , stringify ! (i_nlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_1 > ())) . __i_nlink as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_1) , "::" , stringify ! (__i_nlink))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union inode__bindgen_ty_2 { pub i_dentry : hlist_head , pub i_rcu : callback_head , } # [test] fn bindgen_test_layout_inode__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < inode__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (inode__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < inode__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (inode__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_2 > ())) . i_dentry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_2) , "::" , stringify ! (i_dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_2 > ())) . i_rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_2) , "::" , stringify ! (i_rcu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union inode__bindgen_ty_3 { pub i_fop : * const file_operations , pub free_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) > , } # [test] fn bindgen_test_layout_inode__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < inode__bindgen_ty_3 > () , 8usize , concat ! ("Size of: " , stringify ! (inode__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < inode__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (inode__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_3 > ())) . i_fop as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_3) , "::" , stringify ! (i_fop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_3 > ())) . free_inode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_3) , "::" , stringify ! (free_inode))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union inode__bindgen_ty_4 { pub i_pipe : * mut pipe_inode_info , pub i_cdev : * mut cdev , pub i_link : * mut :: cty :: c_char , pub i_dir_seq : :: cty :: c_uint , } # [test] fn bindgen_test_layout_inode__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < inode__bindgen_ty_4 > () , 8usize , concat ! ("Size of: " , stringify ! (inode__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < inode__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (inode__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_4 > ())) . i_pipe as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_4) , "::" , stringify ! (i_pipe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_4 > ())) . i_cdev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_4) , "::" , stringify ! (i_cdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_4 > ())) . i_link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_4) , "::" , stringify ! (i_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode__bindgen_ty_4 > ())) . i_dir_seq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode__bindgen_ty_4) , "::" , stringify ! (i_dir_seq))) ; } # [test] fn bindgen_test_layout_inode () { assert_eq ! (:: core :: mem :: size_of :: < inode > () , 592usize , concat ! ("Size of: " , stringify ! (inode))) ; assert_eq ! (:: core :: mem :: align_of :: < inode > () , 8usize , concat ! ("Alignment of " , stringify ! (inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_mode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_opflags as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_opflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_uid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_gid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_acl as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_acl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_default_acl as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_default_acl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_op as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_sb as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_mapping as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_security as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_ino as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_ino))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_rdev as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_rdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_size as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_atime as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_atime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_mtime as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_mtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_ctime as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_ctime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_lock as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_bytes as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_blkbits as * const _ as usize } , 142usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_blkbits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_write_hint as * const _ as usize } , 143usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_write_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_blocks as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_blocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_state as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_rwsem as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . dirtied_when as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (dirtied_when))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . dirtied_time_when as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (dirtied_time_when))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_hash as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_io_list as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_io_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_wb as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_wb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_wb_frn_winner as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_wb_frn_winner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_wb_frn_avg_time as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_wb_frn_avg_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_wb_frn_history as * const _ as usize } , 262usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_wb_frn_history))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_lru as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_sb_list as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_sb_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_wb_list as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_wb_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_version as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_sequence as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_sequence))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_count as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_dio_count as * const _ as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_dio_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_writecount as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_writecount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_readcount as * const _ as usize } , 356usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_readcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_flctx as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_flctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_data as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_devices as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_devices))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_generation as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_generation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_fsnotify_mask as * const _ as usize } , 556usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_fsnotify_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_fsnotify_marks as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_fsnotify_marks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_crypt_info as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_crypt_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_verity_info as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_verity_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode > ())) . i_private as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (inode) , "::" , stringify ! (i_private))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dentry_operations { pub d_revalidate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub d_weak_revalidate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub d_hash : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dentry , arg2 : * mut qstr) -> :: cty :: c_int > , pub d_compare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dentry , arg2 : :: cty :: c_uint , arg3 : * const :: cty :: c_char , arg4 : * const qstr) -> :: cty :: c_int > , pub d_delete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dentry) -> :: cty :: c_int > , pub d_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry) -> :: cty :: c_int > , pub d_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry) > , pub d_prune : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry) > , pub d_iput : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut inode) > , pub d_dname : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut :: cty :: c_char , arg3 : :: cty :: c_int) -> * mut :: cty :: c_char > , pub d_automount : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut path) -> * mut vfsmount > , pub d_manage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const path , arg2 : bool_) -> :: cty :: c_int > , pub d_real : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * const inode) -> * mut dentry > , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [test] fn bindgen_test_layout_dentry_operations () { assert_eq ! (:: core :: mem :: size_of :: < dentry_operations > () , 128usize , concat ! ("Size of: " , stringify ! (dentry_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < dentry_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (dentry_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_revalidate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_revalidate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_weak_revalidate as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_weak_revalidate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_hash as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_compare as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_compare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_delete as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_delete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_init as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_release as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_prune as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_prune))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_iput as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_iput))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_dname as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_dname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_automount as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_automount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_manage as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_manage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dentry_operations > ())) . d_real as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dentry_operations) , "::" , stringify ! (d_real))) ; } impl dentry_operations { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mtd_info { _unused : [u8 ; 0] , } pub type qsize_t = :: cty :: c_longlong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mem_dqinfo { pub dqi_format : * mut quota_format_type , pub dqi_fmt_id : :: cty :: c_int , pub dqi_dirty_list : list_head , pub dqi_flags : :: cty :: c_ulong , pub dqi_bgrace : :: cty :: c_uint , pub dqi_igrace : :: cty :: c_uint , pub dqi_max_spc_limit : qsize_t , pub dqi_max_ino_limit : qsize_t , pub dqi_priv : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_mem_dqinfo () { assert_eq ! (:: core :: mem :: size_of :: < mem_dqinfo > () , 72usize , concat ! ("Size of: " , stringify ! (mem_dqinfo))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_dqinfo > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_dqinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_format as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_format))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_fmt_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_fmt_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_dirty_list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_dirty_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_bgrace as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_bgrace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_igrace as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_igrace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_max_spc_limit as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_max_spc_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_max_ino_limit as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_max_ino_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqinfo > ())) . dqi_priv as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (mem_dqinfo) , "::" , stringify ! (dqi_priv))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct quota_info { pub flags : :: cty :: c_uint , pub dqio_sem : rw_semaphore , pub files : [* mut inode ; 3usize] , pub info : [mem_dqinfo ; 3usize] , pub ops : [* const quota_format_ops ; 3usize] , } # [test] fn bindgen_test_layout_quota_info () { assert_eq ! (:: core :: mem :: size_of :: < quota_info > () , 312usize , concat ! ("Size of: " , stringify ! (quota_info))) ; assert_eq ! (:: core :: mem :: align_of :: < quota_info > () , 8usize , concat ! ("Alignment of " , stringify ! (quota_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_info > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (quota_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_info > ())) . dqio_sem as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (quota_info) , "::" , stringify ! (dqio_sem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_info > ())) . files as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (quota_info) , "::" , stringify ! (files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_info > ())) . info as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (quota_info) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_info > ())) . ops as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (quota_info) , "::" , stringify ! (ops))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rcu_sync { pub gp_state : :: cty :: c_int , pub gp_count : :: cty :: c_int , pub gp_wait : wait_queue_head_t , pub cb_head : callback_head , } # [test] fn bindgen_test_layout_rcu_sync () { assert_eq ! (:: core :: mem :: size_of :: < rcu_sync > () , 48usize , concat ! ("Size of: " , stringify ! (rcu_sync))) ; assert_eq ! (:: core :: mem :: align_of :: < rcu_sync > () , 8usize , concat ! ("Alignment of " , stringify ! (rcu_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_sync > ())) . gp_state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcu_sync) , "::" , stringify ! (gp_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_sync > ())) . gp_count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rcu_sync) , "::" , stringify ! (gp_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_sync > ())) . gp_wait as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rcu_sync) , "::" , stringify ! (gp_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_sync > ())) . cb_head as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rcu_sync) , "::" , stringify ! (cb_head))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rcuwait { pub task : * mut task_struct , } # [test] fn bindgen_test_layout_rcuwait () { assert_eq ! (:: core :: mem :: size_of :: < rcuwait > () , 8usize , concat ! ("Size of: " , stringify ! (rcuwait))) ; assert_eq ! (:: core :: mem :: align_of :: < rcuwait > () , 8usize , concat ! ("Alignment of " , stringify ! (rcuwait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcuwait > ())) . task as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcuwait) , "::" , stringify ! (task))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct percpu_rw_semaphore { pub rss : rcu_sync , pub read_count : * mut :: cty :: c_uint , pub writer : rcuwait , pub waiters : wait_queue_head_t , pub block : atomic_t , } # [test] fn bindgen_test_layout_percpu_rw_semaphore () { assert_eq ! (:: core :: mem :: size_of :: < percpu_rw_semaphore > () , 96usize , concat ! ("Size of: " , stringify ! (percpu_rw_semaphore))) ; assert_eq ! (:: core :: mem :: align_of :: < percpu_rw_semaphore > () , 8usize , concat ! ("Alignment of " , stringify ! (percpu_rw_semaphore))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_rw_semaphore > ())) . rss as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (percpu_rw_semaphore) , "::" , stringify ! (rss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_rw_semaphore > ())) . read_count as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (percpu_rw_semaphore) , "::" , stringify ! (read_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_rw_semaphore > ())) . writer as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (percpu_rw_semaphore) , "::" , stringify ! (writer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_rw_semaphore > ())) . waiters as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (percpu_rw_semaphore) , "::" , stringify ! (waiters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_rw_semaphore > ())) . block as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (percpu_rw_semaphore) , "::" , stringify ! (block))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct sb_writers { pub frozen : :: cty :: c_int , pub wait_unfrozen : wait_queue_head_t , pub rw_sem : [percpu_rw_semaphore ; 3usize] , } # [test] fn bindgen_test_layout_sb_writers () { assert_eq ! (:: core :: mem :: size_of :: < sb_writers > () , 320usize , concat ! ("Size of: " , stringify ! (sb_writers))) ; assert_eq ! (:: core :: mem :: align_of :: < sb_writers > () , 8usize , concat ! ("Alignment of " , stringify ! (sb_writers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sb_writers > ())) . frozen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sb_writers) , "::" , stringify ! (frozen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sb_writers > ())) . wait_unfrozen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sb_writers) , "::" , stringify ! (wait_unfrozen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sb_writers > ())) . rw_sem as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sb_writers) , "::" , stringify ! (rw_sem))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uuid_t { pub b : [__u8 ; 16usize] , } # [test] fn bindgen_test_layout_uuid_t () { assert_eq ! (:: core :: mem :: size_of :: < uuid_t > () , 16usize , concat ! ("Size of: " , stringify ! (uuid_t))) ; assert_eq ! (:: core :: mem :: align_of :: < uuid_t > () , 1usize , concat ! ("Alignment of " , stringify ! (uuid_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uuid_t > ())) . b as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uuid_t) , "::" , stringify ! (b))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct list_lru { pub node : * mut list_lru_node , pub list : list_head , pub shrinker_id : :: cty :: c_int , pub memcg_aware : bool_ , } # [test] fn bindgen_test_layout_list_lru () { assert_eq ! (:: core :: mem :: size_of :: < list_lru > () , 32usize , concat ! ("Size of: " , stringify ! (list_lru))) ; assert_eq ! (:: core :: mem :: align_of :: < list_lru > () , 8usize , concat ! ("Alignment of " , stringify ! (list_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (list_lru) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (list_lru) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru > ())) . shrinker_id as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (list_lru) , "::" , stringify ! (shrinker_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru > ())) . memcg_aware as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (list_lru) , "::" , stringify ! (memcg_aware))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct super_block { pub s_list : list_head , pub s_dev : dev_t , pub s_blocksize_bits : :: cty :: c_uchar , pub s_blocksize : :: cty :: c_ulong , pub s_maxbytes : loff_t , pub s_type : * mut file_system_type , pub s_op : * const super_operations , pub dq_op : * const dquot_operations , pub s_qcop : * const quotactl_ops , pub s_export_op : * const export_operations , pub s_flags : :: cty :: c_ulong , pub s_iflags : :: cty :: c_ulong , pub s_magic : :: cty :: c_ulong , pub s_root : * mut dentry , pub s_umount : rw_semaphore , pub s_count : :: cty :: c_int , pub s_active : atomic_t , pub s_security : * mut :: cty :: c_void , pub s_xattr : * mut * const xattr_handler , pub s_cop : * const fscrypt_operations , pub s_master_keys : * mut key , pub s_vop : * const fsverity_operations , pub s_roots : hlist_bl_head , pub s_mounts : list_head , pub s_bdev : * mut block_device , pub s_bdi : * mut backing_dev_info , pub s_mtd : * mut mtd_info , pub s_instances : hlist_node , pub s_quota_types : :: cty :: c_uint , pub s_dquot : quota_info , pub s_writers : sb_writers , pub s_fs_info : * mut :: cty :: c_void , pub s_time_gran : _cargo_bpf_u32 , pub s_time_min : time64_t , pub s_time_max : time64_t , pub s_fsnotify_mask : __u32 , pub s_fsnotify_marks : * mut fsnotify_mark_connector , pub s_id : [:: cty :: c_char ; 32usize] , pub s_uuid : uuid_t , pub s_max_links : :: cty :: c_uint , pub s_mode : fmode_t , pub s_vfs_rename_mutex : mutex , pub s_subtype : * const :: cty :: c_char , pub s_d_op : * const dentry_operations , pub cleancache_poolid : :: cty :: c_int , pub s_shrink : shrinker , pub s_remove_count : atomic_long_t , pub s_fsnotify_inode_refs : atomic_long_t , pub s_readonly_remount : :: cty :: c_int , pub s_wb_err : errseq_t , pub s_dio_done_wq : * mut workqueue_struct , pub s_pins : hlist_head , pub s_user_ns : * mut user_namespace , pub s_dentry_lru : list_lru , pub s_inode_lru : list_lru , pub rcu : callback_head , pub destroy_work : work_struct , pub s_sync_lock : mutex , pub s_stack_depth : :: cty :: c_int , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub s_inode_list_lock : spinlock_t , pub s_inodes : list_head , pub s_inode_wblist_lock : spinlock_t , pub s_inodes_wb : list_head , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 16usize] > , } # [test] fn bindgen_test_layout_super_block () { assert_eq ! (:: core :: mem :: size_of :: < super_block > () , 1408usize , concat ! ("Size of: " , stringify ! (super_block))) ; assert_eq ! (:: core :: mem :: align_of :: < super_block > () , 8usize , concat ! ("Alignment of " , stringify ! (super_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_dev as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_blocksize_bits as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_blocksize_bits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_blocksize as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_blocksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_maxbytes as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_maxbytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_type as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_op as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . dq_op as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (dq_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_qcop as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_qcop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_export_op as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_export_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_iflags as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_iflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_magic as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_magic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_root as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_umount as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_umount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_count as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_active as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_security as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_xattr as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_xattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_cop as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_cop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_master_keys as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_master_keys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_vop as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_vop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_roots as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_roots))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_mounts as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_mounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_bdev as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_bdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_bdi as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_bdi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_mtd as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_mtd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_instances as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_instances))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_quota_types as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_quota_types))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_dquot as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_writers as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_writers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_fs_info as * const _ as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_fs_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_time_gran as * const _ as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_time_gran))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_time_min as * const _ as usize } , 920usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_time_min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_time_max as * const _ as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_time_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_fsnotify_mask as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_fsnotify_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_fsnotify_marks as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_fsnotify_marks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_id as * const _ as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_uuid as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_uuid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_max_links as * const _ as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_max_links))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_mode as * const _ as usize } , 1004usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_vfs_rename_mutex as * const _ as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_vfs_rename_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_subtype as * const _ as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_subtype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_d_op as * const _ as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_d_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . cleancache_poolid as * const _ as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (cleancache_poolid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_shrink as * const _ as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_shrink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_remove_count as * const _ as usize } , 1128usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_remove_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_fsnotify_inode_refs as * const _ as usize } , 1136usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_fsnotify_inode_refs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_readonly_remount as * const _ as usize } , 1144usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_readonly_remount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_wb_err as * const _ as usize } , 1148usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_wb_err))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_dio_done_wq as * const _ as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_dio_done_wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_pins as * const _ as usize } , 1160usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_pins))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_user_ns as * const _ as usize } , 1168usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_dentry_lru as * const _ as usize } , 1176usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_dentry_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_inode_lru as * const _ as usize } , 1208usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_inode_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . rcu as * const _ as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . destroy_work as * const _ as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (destroy_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_sync_lock as * const _ as usize } , 1288usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_sync_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_stack_depth as * const _ as usize } , 1320usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_stack_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_inode_list_lock as * const _ as usize } , 1344usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_inode_list_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_inodes as * const _ as usize } , 1352usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_inodes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_inode_wblist_lock as * const _ as usize } , 1368usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_inode_wblist_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_block > ())) . s_inodes_wb as * const _ as usize } , 1376usize , concat ! ("Offset of field: " , stringify ! (super_block) , "::" , stringify ! (s_inodes_wb))) ; } impl super_block { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vfsmount { pub mnt_root : * mut dentry , pub mnt_sb : * mut super_block , pub mnt_flags : :: cty :: c_int , pub mnt_userns : * mut user_namespace , } # [test] fn bindgen_test_layout_vfsmount () { assert_eq ! (:: core :: mem :: size_of :: < vfsmount > () , 32usize , concat ! ("Size of: " , stringify ! (vfsmount))) ; assert_eq ! (:: core :: mem :: align_of :: < vfsmount > () , 8usize , concat ! ("Alignment of " , stringify ! (vfsmount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vfsmount > ())) . mnt_root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vfsmount) , "::" , stringify ! (mnt_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vfsmount > ())) . mnt_sb as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vfsmount) , "::" , stringify ! (mnt_sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vfsmount > ())) . mnt_flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vfsmount) , "::" , stringify ! (mnt_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vfsmount > ())) . mnt_userns as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vfsmount) , "::" , stringify ! (mnt_userns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kstat { pub result_mask : _cargo_bpf_u32 , pub mode : umode_t , pub nlink : :: cty :: c_uint , pub blksize : u32 , pub attributes : _cargo_bpf_u64 , pub attributes_mask : _cargo_bpf_u64 , pub ino : _cargo_bpf_u64 , pub dev : dev_t , pub rdev : dev_t , pub uid : kuid_t , pub gid : kgid_t , pub size : loff_t , pub atime : timespec64 , pub mtime : timespec64 , pub ctime : timespec64 , pub btime : timespec64 , pub blocks : _cargo_bpf_u64 , pub mnt_id : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_kstat () { assert_eq ! (:: core :: mem :: size_of :: < kstat > () , 144usize , concat ! ("Size of: " , stringify ! (kstat))) ; assert_eq ! (:: core :: mem :: align_of :: < kstat > () , 8usize , concat ! ("Alignment of " , stringify ! (kstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . result_mask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (result_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . mode as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . nlink as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (nlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . blksize as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (blksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . attributes as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (attributes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . attributes_mask as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (attributes_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . ino as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (ino))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . dev as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . rdev as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (rdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . uid as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . gid as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . size as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . atime as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (atime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . mtime as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (mtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . ctime as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (ctime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . btime as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (btime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . blocks as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (blocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstat > ())) . mnt_id as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (kstat) , "::" , stringify ! (mnt_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct list_lru_one { pub list : list_head , pub nr_items : :: cty :: c_long , } # [test] fn bindgen_test_layout_list_lru_one () { assert_eq ! (:: core :: mem :: size_of :: < list_lru_one > () , 24usize , concat ! ("Size of: " , stringify ! (list_lru_one))) ; assert_eq ! (:: core :: mem :: align_of :: < list_lru_one > () , 8usize , concat ! ("Alignment of " , stringify ! (list_lru_one))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_one > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (list_lru_one) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_one > ())) . nr_items as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (list_lru_one) , "::" , stringify ! (nr_items))) ; } # [repr (C)] # [derive (Debug)] pub struct list_lru_memcg { pub rcu : callback_head , pub lru : __IncompleteArrayField < * mut list_lru_one > , } # [test] fn bindgen_test_layout_list_lru_memcg () { assert_eq ! (:: core :: mem :: size_of :: < list_lru_memcg > () , 16usize , concat ! ("Size of: " , stringify ! (list_lru_memcg))) ; assert_eq ! (:: core :: mem :: align_of :: < list_lru_memcg > () , 8usize , concat ! ("Alignment of " , stringify ! (list_lru_memcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_memcg > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (list_lru_memcg) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_memcg > ())) . lru as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (list_lru_memcg) , "::" , stringify ! (lru))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct list_lru_node { pub lock : spinlock_t , pub lru : list_lru_one , pub memcg_lrus : * mut list_lru_memcg , pub nr_items : :: cty :: c_long , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 16usize] > , } # [test] fn bindgen_test_layout_list_lru_node () { assert_eq ! (:: core :: mem :: size_of :: < list_lru_node > () , 64usize , concat ! ("Size of: " , stringify ! (list_lru_node))) ; assert_eq ! (:: core :: mem :: align_of :: < list_lru_node > () , 8usize , concat ! ("Alignment of " , stringify ! (list_lru_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_node > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (list_lru_node) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_node > ())) . lru as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (list_lru_node) , "::" , stringify ! (lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_node > ())) . memcg_lrus as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (list_lru_node) , "::" , stringify ! (memcg_lrus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < list_lru_node > ())) . nr_items as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (list_lru_node) , "::" , stringify ! (nr_items))) ; } impl list_lru_node { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit } } pub const migrate_mode_MIGRATE_ASYNC : migrate_mode = 0 ; pub const migrate_mode_MIGRATE_SYNC_LIGHT : migrate_mode = 1 ; pub const migrate_mode_MIGRATE_SYNC : migrate_mode = 2 ; pub const migrate_mode_MIGRATE_SYNC_NO_COPY : migrate_mode = 3 ; pub type migrate_mode = :: cty :: c_uint ; pub type proc_handler = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ctl_table , arg2 : :: cty :: c_int , arg3 : * mut :: cty :: c_void , arg4 : * mut size_t , arg5 : * mut loff_t) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ctl_table { pub procname : * const :: cty :: c_char , pub data : * mut :: cty :: c_void , pub maxlen : :: cty :: c_int , pub mode : umode_t , pub child : * mut ctl_table , pub proc_handler : proc_handler , pub poll : * mut ctl_table_poll , pub extra1 : * mut :: cty :: c_void , pub extra2 : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_ctl_table () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table > () , 64usize , concat ! ("Size of: " , stringify ! (ctl_table))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . procname as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (procname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . maxlen as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (maxlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . mode as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . child as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (child))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . proc_handler as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (proc_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . poll as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . extra1 as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (extra1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table > ())) . extra2 as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ctl_table) , "::" , stringify ! (extra2))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ctl_table_poll { pub event : atomic_t , pub wait : wait_queue_head_t , } # [test] fn bindgen_test_layout_ctl_table_poll () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table_poll > () , 32usize , concat ! ("Size of: " , stringify ! (ctl_table_poll))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table_poll > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table_poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_poll > ())) . event as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_table_poll) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_poll > ())) . wait as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ctl_table_poll) , "::" , stringify ! (wait))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct key_tag { pub rcu : callback_head , pub usage : refcount_t , pub removed : bool_ , } # [test] fn bindgen_test_layout_key_tag () { assert_eq ! (:: core :: mem :: size_of :: < key_tag > () , 24usize , concat ! ("Size of: " , stringify ! (key_tag))) ; assert_eq ! (:: core :: mem :: align_of :: < key_tag > () , 8usize , concat ! ("Alignment of " , stringify ! (key_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_tag > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_tag) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_tag > ())) . usage as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key_tag) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_tag > ())) . removed as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (key_tag) , "::" , stringify ! (removed))) ; } pub type request_key_actor_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct key_type { pub name : * const :: cty :: c_char , pub def_datalen : size_t , pub flags : :: cty :: c_uint , pub vet_description : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_char) -> :: cty :: c_int > , pub preparse : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key_preparsed_payload) -> :: cty :: c_int > , pub free_preparse : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key_preparsed_payload) > , pub instantiate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key , arg2 : * mut key_preparsed_payload) -> :: cty :: c_int > , pub update : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key , arg2 : * mut key_preparsed_payload) -> :: cty :: c_int > , pub match_preparse : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key_match_data) -> :: cty :: c_int > , pub match_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key_match_data) > , pub revoke : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key) > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key) > , pub describe : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const key , arg2 : * mut seq_file) > , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const key , arg2 : * mut :: cty :: c_char , arg3 : size_t) -> :: cty :: c_long > , pub request_key : request_key_actor_t , pub lookup_restriction : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_char) -> * mut key_restriction > , pub asym_query : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const kernel_pkey_params , arg2 : * mut kernel_pkey_query) -> :: cty :: c_int > , pub asym_eds_op : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernel_pkey_params , arg2 : * const :: cty :: c_void , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub asym_verify_signature : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernel_pkey_params , arg2 : * const :: cty :: c_void , arg3 : * const :: cty :: c_void) -> :: cty :: c_int > , pub link : list_head , pub lock_class : lock_class_key , } # [test] fn bindgen_test_layout_key_type () { assert_eq ! (:: core :: mem :: size_of :: < key_type > () , 168usize , concat ! ("Size of: " , stringify ! (key_type))) ; assert_eq ! (:: core :: mem :: align_of :: < key_type > () , 8usize , concat ! ("Alignment of " , stringify ! (key_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . def_datalen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (def_datalen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . vet_description as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (vet_description))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . preparse as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (preparse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . free_preparse as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (free_preparse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . instantiate as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (instantiate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . update as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . match_preparse as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (match_preparse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . match_free as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (match_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . revoke as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (revoke))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . destroy as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . describe as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (describe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . read as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . request_key as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (request_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . lookup_restriction as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (lookup_restriction))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . asym_query as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (asym_query))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . asym_eds_op as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (asym_eds_op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . asym_verify_signature as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (asym_verify_signature))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . link as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_type > ())) . lock_class as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (key_type) , "::" , stringify ! (lock_class))) ; } pub type key_restrict_link_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut key , arg2 : * const key_type , arg3 : * const key_payload , arg4 : * mut key) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct key_restriction { pub check : key_restrict_link_func_t , pub key : * mut key , pub keytype : * mut key_type , } # [test] fn bindgen_test_layout_key_restriction () { assert_eq ! (:: core :: mem :: size_of :: < key_restriction > () , 24usize , concat ! ("Size of: " , stringify ! (key_restriction))) ; assert_eq ! (:: core :: mem :: align_of :: < key_restriction > () , 8usize , concat ! ("Alignment of " , stringify ! (key_restriction))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_restriction > ())) . check as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_restriction) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_restriction > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (key_restriction) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_restriction > ())) . keytype as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key_restriction) , "::" , stringify ! (keytype))) ; } # [repr (C)] # [derive (Debug)] pub struct group_info { pub usage : atomic_t , pub ngroups : :: cty :: c_int , pub gid : __IncompleteArrayField < kgid_t > , } # [test] fn bindgen_test_layout_group_info () { assert_eq ! (:: core :: mem :: size_of :: < group_info > () , 8usize , concat ! ("Size of: " , stringify ! (group_info))) ; assert_eq ! (:: core :: mem :: align_of :: < group_info > () , 4usize , concat ! ("Alignment of " , stringify ! (group_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < group_info > ())) . usage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (group_info) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < group_info > ())) . ngroups as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (group_info) , "::" , stringify ! (ngroups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < group_info > ())) . gid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (group_info) , "::" , stringify ! (gid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct delayed_call { pub fn_ : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , pub arg : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_delayed_call () { assert_eq ! (:: core :: mem :: size_of :: < delayed_call > () , 16usize , concat ! ("Size of: " , stringify ! (delayed_call))) ; assert_eq ! (:: core :: mem :: align_of :: < delayed_call > () , 8usize , concat ! ("Alignment of " , stringify ! (delayed_call))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < delayed_call > ())) . fn_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (delayed_call) , "::" , stringify ! (fn_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < delayed_call > ())) . arg as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (delayed_call) , "::" , stringify ! (arg))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct io_cq { pub q : * mut request_queue , pub ioc : * mut io_context , pub __bindgen_anon_1 : io_cq__bindgen_ty_1 , pub __bindgen_anon_2 : io_cq__bindgen_ty_2 , pub flags : :: cty :: c_uint , } # [repr (C)] # [derive (Copy , Clone)] pub union io_cq__bindgen_ty_1 { pub q_node : list_head , pub __rcu_icq_cache : * mut kmem_cache , } # [test] fn bindgen_test_layout_io_cq__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < io_cq__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (io_cq__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < io_cq__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (io_cq__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq__bindgen_ty_1 > ())) . q_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_cq__bindgen_ty_1) , "::" , stringify ! (q_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq__bindgen_ty_1 > ())) . __rcu_icq_cache as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_cq__bindgen_ty_1) , "::" , stringify ! (__rcu_icq_cache))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union io_cq__bindgen_ty_2 { pub ioc_node : hlist_node , pub __rcu_head : callback_head , } # [test] fn bindgen_test_layout_io_cq__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < io_cq__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (io_cq__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < io_cq__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (io_cq__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq__bindgen_ty_2 > ())) . ioc_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_cq__bindgen_ty_2) , "::" , stringify ! (ioc_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq__bindgen_ty_2 > ())) . __rcu_head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_cq__bindgen_ty_2) , "::" , stringify ! (__rcu_head))) ; } # [test] fn bindgen_test_layout_io_cq () { assert_eq ! (:: core :: mem :: size_of :: < io_cq > () , 56usize , concat ! ("Size of: " , stringify ! (io_cq))) ; assert_eq ! (:: core :: mem :: align_of :: < io_cq > () , 8usize , concat ! ("Alignment of " , stringify ! (io_cq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq > ())) . q as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_cq) , "::" , stringify ! (q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq > ())) . ioc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (io_cq) , "::" , stringify ! (ioc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_cq > ())) . flags as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (io_cq) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kiocb { pub ki_filp : * mut file , pub ki_pos : loff_t , pub ki_complete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kiocb , arg2 : :: cty :: c_long , arg3 : :: cty :: c_long) > , pub private : * mut :: cty :: c_void , pub ki_flags : :: cty :: c_int , pub ki_hint : _cargo_bpf_u16 , pub ki_ioprio : _cargo_bpf_u16 , pub __bindgen_anon_1 : kiocb__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union kiocb__bindgen_ty_1 { pub ki_cookie : :: cty :: c_uint , pub ki_waitq : * mut wait_page_queue , } # [test] fn bindgen_test_layout_kiocb__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < kiocb__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (kiocb__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < kiocb__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (kiocb__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb__bindgen_ty_1 > ())) . ki_cookie as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kiocb__bindgen_ty_1) , "::" , stringify ! (ki_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb__bindgen_ty_1 > ())) . ki_waitq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kiocb__bindgen_ty_1) , "::" , stringify ! (ki_waitq))) ; } # [test] fn bindgen_test_layout_kiocb () { assert_eq ! (:: core :: mem :: size_of :: < kiocb > () , 48usize , concat ! ("Size of: " , stringify ! (kiocb))) ; assert_eq ! (:: core :: mem :: align_of :: < kiocb > () , 8usize , concat ! ("Alignment of " , stringify ! (kiocb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . ki_filp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (ki_filp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . ki_pos as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (ki_pos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . ki_complete as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (ki_complete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . private as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . ki_flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (ki_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . ki_hint as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (ki_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kiocb > ())) . ki_ioprio as * const _ as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (kiocb) , "::" , stringify ! (ki_ioprio))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iattr { pub ia_valid : :: cty :: c_uint , pub ia_mode : umode_t , pub ia_uid : kuid_t , pub ia_gid : kgid_t , pub ia_size : loff_t , pub ia_atime : timespec64 , pub ia_mtime : timespec64 , pub ia_ctime : timespec64 , pub ia_file : * mut file , } # [test] fn bindgen_test_layout_iattr () { assert_eq ! (:: core :: mem :: size_of :: < iattr > () , 80usize , concat ! ("Size of: " , stringify ! (iattr))) ; assert_eq ! (:: core :: mem :: align_of :: < iattr > () , 8usize , concat ! ("Alignment of " , stringify ! (iattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_valid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_valid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_mode as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_uid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_gid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_atime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_atime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_mtime as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_mtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_ctime as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_ctime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iattr > ())) . ia_file as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (iattr) , "::" , stringify ! (ia_file))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct percpu_counter { pub lock : raw_spinlock_t , pub count : s64 , pub list : list_head , pub counters : * mut s32 , } # [test] fn bindgen_test_layout_percpu_counter () { assert_eq ! (:: core :: mem :: size_of :: < percpu_counter > () , 40usize , concat ! ("Size of: " , stringify ! (percpu_counter))) ; assert_eq ! (:: core :: mem :: align_of :: < percpu_counter > () , 8usize , concat ! ("Alignment of " , stringify ! (percpu_counter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_counter > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (percpu_counter) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_counter > ())) . count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (percpu_counter) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_counter > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (percpu_counter) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_counter > ())) . counters as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (percpu_counter) , "::" , stringify ! (counters))) ; } pub type projid_t = __kernel_uid32_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kprojid_t { pub val : projid_t , } # [test] fn bindgen_test_layout_kprojid_t () { assert_eq ! (:: core :: mem :: size_of :: < kprojid_t > () , 4usize , concat ! ("Size of: " , stringify ! (kprojid_t))) ; assert_eq ! (:: core :: mem :: align_of :: < kprojid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (kprojid_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kprojid_t > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kprojid_t) , "::" , stringify ! (val))) ; } pub const quota_type_USRQUOTA : quota_type = 0 ; pub const quota_type_GRPQUOTA : quota_type = 1 ; pub const quota_type_PRJQUOTA : quota_type = 2 ; pub type quota_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct kqid { pub __bindgen_anon_1 : kqid__bindgen_ty_1 , pub type_ : quota_type , } # [repr (C)] # [derive (Copy , Clone)] pub union kqid__bindgen_ty_1 { pub uid : kuid_t , pub gid : kgid_t , pub projid : kprojid_t , } # [test] fn bindgen_test_layout_kqid__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < kqid__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (kqid__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < kqid__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (kqid__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kqid__bindgen_ty_1 > ())) . uid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kqid__bindgen_ty_1) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kqid__bindgen_ty_1 > ())) . gid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kqid__bindgen_ty_1) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kqid__bindgen_ty_1 > ())) . projid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kqid__bindgen_ty_1) , "::" , stringify ! (projid))) ; } # [test] fn bindgen_test_layout_kqid () { assert_eq ! (:: core :: mem :: size_of :: < kqid > () , 8usize , concat ! ("Size of: " , stringify ! (kqid))) ; assert_eq ! (:: core :: mem :: align_of :: < kqid > () , 4usize , concat ! ("Alignment of " , stringify ! (kqid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kqid > ())) . type_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kqid) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mem_dqblk { pub dqb_bhardlimit : qsize_t , pub dqb_bsoftlimit : qsize_t , pub dqb_curspace : qsize_t , pub dqb_rsvspace : qsize_t , pub dqb_ihardlimit : qsize_t , pub dqb_isoftlimit : qsize_t , pub dqb_curinodes : qsize_t , pub dqb_btime : time64_t , pub dqb_itime : time64_t , } # [test] fn bindgen_test_layout_mem_dqblk () { assert_eq ! (:: core :: mem :: size_of :: < mem_dqblk > () , 72usize , concat ! ("Size of: " , stringify ! (mem_dqblk))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_dqblk > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_bhardlimit as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_bhardlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_bsoftlimit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_bsoftlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_curspace as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_curspace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_rsvspace as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_rsvspace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_ihardlimit as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_ihardlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_isoftlimit as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_isoftlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_curinodes as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_curinodes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_btime as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_btime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_dqblk > ())) . dqb_itime as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (mem_dqblk) , "::" , stringify ! (dqb_itime))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct dquot { pub dq_hash : hlist_node , pub dq_inuse : list_head , pub dq_free : list_head , pub dq_dirty : list_head , pub dq_lock : mutex , pub dq_dqb_lock : spinlock_t , pub dq_count : atomic_t , pub dq_sb : * mut super_block , pub dq_id : kqid , pub dq_off : loff_t , pub dq_flags : :: cty :: c_ulong , pub dq_dqb : mem_dqblk , } # [test] fn bindgen_test_layout_dquot () { assert_eq ! (:: core :: mem :: size_of :: < dquot > () , 208usize , concat ! ("Size of: " , stringify ! (dquot))) ; assert_eq ! (:: core :: mem :: align_of :: < dquot > () , 8usize , concat ! ("Alignment of " , stringify ! (dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_inuse as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_inuse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_free as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_dirty as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_dirty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_lock as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_dqb_lock as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_dqb_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_count as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_sb as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_id as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_off as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_flags as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot > ())) . dq_dqb as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (dquot) , "::" , stringify ! (dq_dqb))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct quota_format_type { pub qf_fmt_id : :: cty :: c_int , pub qf_ops : * const quota_format_ops , pub qf_owner : * mut module , pub qf_next : * mut quota_format_type , } # [test] fn bindgen_test_layout_quota_format_type () { assert_eq ! (:: core :: mem :: size_of :: < quota_format_type > () , 32usize , concat ! ("Size of: " , stringify ! (quota_format_type))) ; assert_eq ! (:: core :: mem :: align_of :: < quota_format_type > () , 8usize , concat ! ("Alignment of " , stringify ! (quota_format_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_type > ())) . qf_fmt_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (quota_format_type) , "::" , stringify ! (qf_fmt_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_type > ())) . qf_ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (quota_format_type) , "::" , stringify ! (qf_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_type > ())) . qf_owner as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (quota_format_type) , "::" , stringify ! (qf_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_type > ())) . qf_next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (quota_format_type) , "::" , stringify ! (qf_next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct quota_format_ops { pub check_quota_file : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub read_file_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub write_file_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub free_file_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub read_dqblk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub commit_dqblk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub release_dqblk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub get_next_id : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut kqid) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_quota_format_ops () { assert_eq ! (:: core :: mem :: size_of :: < quota_format_ops > () , 64usize , concat ! ("Size of: " , stringify ! (quota_format_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < quota_format_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (quota_format_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . check_quota_file as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (check_quota_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . read_file_info as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (read_file_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . write_file_info as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (write_file_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . free_file_info as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (free_file_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . read_dqblk as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (read_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . commit_dqblk as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (commit_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . release_dqblk as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (release_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quota_format_ops > ())) . get_next_id as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (quota_format_ops) , "::" , stringify ! (get_next_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dquot_operations { pub write_dquot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub alloc_dquot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> * mut dquot > , pub destroy_dquot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) > , pub acquire_dquot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub release_dquot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub mark_dirty : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dquot) -> :: cty :: c_int > , pub write_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub get_reserved_space : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) -> * mut qsize_t > , pub get_projid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut kprojid_t) -> :: cty :: c_int > , pub get_inode_usage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut qsize_t) -> :: cty :: c_int > , pub get_next_id : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut kqid) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_dquot_operations () { assert_eq ! (:: core :: mem :: size_of :: < dquot_operations > () , 88usize , concat ! ("Size of: " , stringify ! (dquot_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < dquot_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (dquot_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . write_dquot as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (write_dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . alloc_dquot as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (alloc_dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . destroy_dquot as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (destroy_dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . acquire_dquot as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (acquire_dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . release_dquot as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (release_dquot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . mark_dirty as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (mark_dirty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . write_info as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (write_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . get_reserved_space as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (get_reserved_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . get_projid as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (get_projid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . get_inode_usage as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (get_inode_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dquot_operations > ())) . get_next_id as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dquot_operations) , "::" , stringify ! (get_next_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qc_dqblk { pub d_fieldmask : :: cty :: c_int , pub d_spc_hardlimit : _cargo_bpf_u64 , pub d_spc_softlimit : _cargo_bpf_u64 , pub d_ino_hardlimit : _cargo_bpf_u64 , pub d_ino_softlimit : _cargo_bpf_u64 , pub d_space : _cargo_bpf_u64 , pub d_ino_count : _cargo_bpf_u64 , pub d_ino_timer : s64 , pub d_spc_timer : s64 , pub d_ino_warns : :: cty :: c_int , pub d_spc_warns : :: cty :: c_int , pub d_rt_spc_hardlimit : _cargo_bpf_u64 , pub d_rt_spc_softlimit : _cargo_bpf_u64 , pub d_rt_space : _cargo_bpf_u64 , pub d_rt_spc_timer : s64 , pub d_rt_spc_warns : :: cty :: c_int , } # [test] fn bindgen_test_layout_qc_dqblk () { assert_eq ! (:: core :: mem :: size_of :: < qc_dqblk > () , 120usize , concat ! ("Size of: " , stringify ! (qc_dqblk))) ; assert_eq ! (:: core :: mem :: align_of :: < qc_dqblk > () , 8usize , concat ! ("Alignment of " , stringify ! (qc_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_fieldmask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_fieldmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_spc_hardlimit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_spc_hardlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_spc_softlimit as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_spc_softlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_ino_hardlimit as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_ino_hardlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_ino_softlimit as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_ino_softlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_space as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_ino_count as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_ino_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_ino_timer as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_ino_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_spc_timer as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_spc_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_ino_warns as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_ino_warns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_spc_warns as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_spc_warns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_rt_spc_hardlimit as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_rt_spc_hardlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_rt_spc_softlimit as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_rt_spc_softlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_rt_space as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_rt_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_rt_spc_timer as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_rt_spc_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_dqblk > ())) . d_rt_spc_warns as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (qc_dqblk) , "::" , stringify ! (d_rt_spc_warns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qc_type_state { pub flags : :: cty :: c_uint , pub spc_timelimit : :: cty :: c_uint , pub ino_timelimit : :: cty :: c_uint , pub rt_spc_timelimit : :: cty :: c_uint , pub spc_warnlimit : :: cty :: c_uint , pub ino_warnlimit : :: cty :: c_uint , pub rt_spc_warnlimit : :: cty :: c_uint , pub ino : :: cty :: c_ulonglong , pub blocks : blkcnt_t , pub nextents : blkcnt_t , } # [test] fn bindgen_test_layout_qc_type_state () { assert_eq ! (:: core :: mem :: size_of :: < qc_type_state > () , 56usize , concat ! ("Size of: " , stringify ! (qc_type_state))) ; assert_eq ! (:: core :: mem :: align_of :: < qc_type_state > () , 8usize , concat ! ("Alignment of " , stringify ! (qc_type_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . spc_timelimit as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (spc_timelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . ino_timelimit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (ino_timelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . rt_spc_timelimit as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (rt_spc_timelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . spc_warnlimit as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (spc_warnlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . ino_warnlimit as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (ino_warnlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . rt_spc_warnlimit as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (rt_spc_warnlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . ino as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (ino))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . blocks as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (blocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_type_state > ())) . nextents as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (qc_type_state) , "::" , stringify ! (nextents))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qc_state { pub s_incoredqs : :: cty :: c_uint , pub s_state : [qc_type_state ; 3usize] , } # [test] fn bindgen_test_layout_qc_state () { assert_eq ! (:: core :: mem :: size_of :: < qc_state > () , 176usize , concat ! ("Size of: " , stringify ! (qc_state))) ; assert_eq ! (:: core :: mem :: align_of :: < qc_state > () , 8usize , concat ! ("Alignment of " , stringify ! (qc_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_state > ())) . s_incoredqs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qc_state) , "::" , stringify ! (s_incoredqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_state > ())) . s_state as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (qc_state) , "::" , stringify ! (s_state))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct qc_info { pub i_fieldmask : :: cty :: c_int , pub i_flags : :: cty :: c_uint , pub i_spc_timelimit : :: cty :: c_uint , pub i_ino_timelimit : :: cty :: c_uint , pub i_rt_spc_timelimit : :: cty :: c_uint , pub i_spc_warnlimit : :: cty :: c_uint , pub i_ino_warnlimit : :: cty :: c_uint , pub i_rt_spc_warnlimit : :: cty :: c_uint , } # [test] fn bindgen_test_layout_qc_info () { assert_eq ! (:: core :: mem :: size_of :: < qc_info > () , 32usize , concat ! ("Size of: " , stringify ! (qc_info))) ; assert_eq ! (:: core :: mem :: align_of :: < qc_info > () , 4usize , concat ! ("Alignment of " , stringify ! (qc_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_fieldmask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_fieldmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_spc_timelimit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_spc_timelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_ino_timelimit as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_ino_timelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_rt_spc_timelimit as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_rt_spc_timelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_spc_warnlimit as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_spc_warnlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_ino_warnlimit as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_ino_warnlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qc_info > ())) . i_rt_spc_warnlimit as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (qc_info) , "::" , stringify ! (i_rt_spc_warnlimit))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct quotactl_ops { pub quota_on : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int , arg4 : * const path) -> :: cty :: c_int > , pub quota_off : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub quota_enable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub quota_disable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub quota_sync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub set_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int , arg3 : * mut qc_info) -> :: cty :: c_int > , pub get_dqblk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : kqid , arg3 : * mut qc_dqblk) -> :: cty :: c_int > , pub get_nextdqblk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut kqid , arg3 : * mut qc_dqblk) -> :: cty :: c_int > , pub set_dqblk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : kqid , arg3 : * mut qc_dqblk) -> :: cty :: c_int > , pub get_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut qc_state) -> :: cty :: c_int > , pub rm_xquota : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_quotactl_ops () { assert_eq ! (:: core :: mem :: size_of :: < quotactl_ops > () , 88usize , concat ! ("Size of: " , stringify ! (quotactl_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < quotactl_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (quotactl_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . quota_on as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (quota_on))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . quota_off as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (quota_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . quota_enable as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (quota_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . quota_disable as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (quota_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . quota_sync as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (quota_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . set_info as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (set_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . get_dqblk as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (get_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . get_nextdqblk as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (get_nextdqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . set_dqblk as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (set_dqblk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . get_state as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (get_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < quotactl_ops > ())) . rm_xquota as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (quotactl_ops) , "::" , stringify ! (rm_xquota))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct address_space_operations { pub writepage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page , arg2 : * mut writeback_control) -> :: cty :: c_int > , pub readpage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut page) -> :: cty :: c_int > , pub writepages : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut address_space , arg2 : * mut writeback_control) -> :: cty :: c_int > , pub set_page_dirty : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page) -> :: cty :: c_int > , pub readpages : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut address_space , arg3 : * mut list_head , arg4 : :: cty :: c_uint) -> :: cty :: c_int > , pub readahead : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut readahead_control) > , pub write_begin : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut address_space , arg3 : loff_t , arg4 : :: cty :: c_uint , arg5 : :: cty :: c_uint , arg6 : * mut * mut page , arg7 : * mut * mut :: cty :: c_void) -> :: cty :: c_int > , pub write_end : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut address_space , arg3 : loff_t , arg4 : :: cty :: c_uint , arg5 : :: cty :: c_uint , arg6 : * mut page , arg7 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub bmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut address_space , arg2 : sector_t) -> sector_t > , pub invalidatepage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_uint) > , pub releasepage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page , arg2 : gfp_t) -> :: cty :: c_int > , pub freepage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page) > , pub direct_IO : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kiocb , arg2 : * mut iov_iter) -> ssize_t > , pub migratepage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut address_space , arg2 : * mut page , arg3 : * mut page , arg4 : migrate_mode) -> :: cty :: c_int > , pub isolate_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page , arg2 : isolate_mode_t) -> bool_ > , pub putback_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page) > , pub launder_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page) -> :: cty :: c_int > , pub is_partially_uptodate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong) -> :: cty :: c_int > , pub is_dirty_writeback : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut page , arg2 : * mut bool_ , arg3 : * mut bool_) > , pub error_remove_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut address_space , arg2 : * mut page) -> :: cty :: c_int > , pub swap_activate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut swap_info_struct , arg2 : * mut file , arg3 : * mut sector_t) -> :: cty :: c_int > , pub swap_deactivate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file) > , } # [test] fn bindgen_test_layout_address_space_operations () { assert_eq ! (:: core :: mem :: size_of :: < address_space_operations > () , 176usize , concat ! ("Size of: " , stringify ! (address_space_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < address_space_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (address_space_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . writepage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (writepage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . readpage as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (readpage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . writepages as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (writepages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . set_page_dirty as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (set_page_dirty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . readpages as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (readpages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . readahead as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (readahead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . write_begin as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (write_begin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . write_end as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (write_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . bmap as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (bmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . invalidatepage as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (invalidatepage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . releasepage as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (releasepage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . freepage as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (freepage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . direct_IO as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (direct_IO))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . migratepage as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (migratepage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . isolate_page as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (isolate_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . putback_page as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (putback_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . launder_page as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (launder_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . is_partially_uptodate as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (is_partially_uptodate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . is_dirty_writeback as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (is_dirty_writeback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . error_remove_page as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (error_remove_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . swap_activate as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (swap_activate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < address_space_operations > ())) . swap_deactivate as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (address_space_operations) , "::" , stringify ! (swap_deactivate))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct inode_operations { pub lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : :: cty :: c_uint) -> * mut dentry > , pub get_link : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut inode , arg3 : * mut delayed_call) -> * const :: cty :: c_char > , pub permission : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub get_acl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : :: cty :: c_int) -> * mut posix_acl > , pub readlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut :: cty :: c_char , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub create : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut dentry , arg4 : umode_t , arg5 : bool_) -> :: cty :: c_int > , pub link : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut inode , arg3 : * mut dentry) -> :: cty :: c_int > , pub unlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry) -> :: cty :: c_int > , pub symlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut dentry , arg4 : * const :: cty :: c_char) -> :: cty :: c_int > , pub mkdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut dentry , arg4 : umode_t) -> :: cty :: c_int > , pub rmdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry) -> :: cty :: c_int > , pub mknod : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut dentry , arg4 : umode_t , arg5 : dev_t) -> :: cty :: c_int > , pub rename : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut dentry , arg4 : * mut inode , arg5 : * mut dentry , arg6 : :: cty :: c_uint) -> :: cty :: c_int > , pub setattr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut dentry , arg3 : * mut iattr) -> :: cty :: c_int > , pub getattr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * const path , arg3 : * mut kstat , arg4 : _cargo_bpf_u32 , arg5 : :: cty :: c_uint) -> :: cty :: c_int > , pub listxattr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut :: cty :: c_char , arg3 : size_t) -> ssize_t > , pub fiemap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut fiemap_extent_info , arg3 : _cargo_bpf_u64 , arg4 : _cargo_bpf_u64) -> :: cty :: c_int > , pub update_time : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut timespec64 , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub atomic_open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : * mut file , arg4 : :: cty :: c_uint , arg5 : umode_t) -> :: cty :: c_int > , pub tmpfile : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut dentry , arg4 : umode_t) -> :: cty :: c_int > , pub set_acl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut inode , arg3 : * mut posix_acl , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub fileattr_set : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut user_namespace , arg2 : * mut dentry , arg3 : * mut fileattr) -> :: cty :: c_int > , pub fileattr_get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut fileattr) -> :: cty :: c_int > , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_inode_operations () { assert_eq ! (:: core :: mem :: size_of :: < inode_operations > () , 192usize , concat ! ("Size of: " , stringify ! (inode_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < inode_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (inode_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . lookup as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (lookup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . get_link as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (get_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . permission as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (permission))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . get_acl as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (get_acl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . readlink as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (readlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . create as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . link as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . unlink as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (unlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . symlink as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (symlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . mkdir as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (mkdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . rmdir as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (rmdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . mknod as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (mknod))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . rename as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (rename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . setattr as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (setattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . getattr as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (getattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . listxattr as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (listxattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . fiemap as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (fiemap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . update_time as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (update_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . atomic_open as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (atomic_open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . tmpfile as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (tmpfile))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . set_acl as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (set_acl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . fileattr_set as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (fileattr_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inode_operations > ())) . fileattr_get as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (inode_operations) , "::" , stringify ! (fileattr_get))) ; } impl inode_operations { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct file_lock_context { pub flc_lock : spinlock_t , pub flc_flock : list_head , pub flc_posix : list_head , pub flc_lease : list_head , } # [test] fn bindgen_test_layout_file_lock_context () { assert_eq ! (:: core :: mem :: size_of :: < file_lock_context > () , 56usize , concat ! ("Size of: " , stringify ! (file_lock_context))) ; assert_eq ! (:: core :: mem :: align_of :: < file_lock_context > () , 8usize , concat ! ("Alignment of " , stringify ! (file_lock_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock_context > ())) . flc_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock_context) , "::" , stringify ! (flc_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock_context > ())) . flc_flock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (file_lock_context) , "::" , stringify ! (flc_flock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock_context > ())) . flc_posix as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (file_lock_context) , "::" , stringify ! (flc_posix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock_context > ())) . flc_lease as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (file_lock_context) , "::" , stringify ! (flc_lease))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct file_lock_operations { pub fl_copy_lock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock , arg2 : * mut file_lock) > , pub fl_release_private : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock) > , } # [test] fn bindgen_test_layout_file_lock_operations () { assert_eq ! (:: core :: mem :: size_of :: < file_lock_operations > () , 16usize , concat ! ("Size of: " , stringify ! (file_lock_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < file_lock_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (file_lock_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock_operations > ())) . fl_copy_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock_operations) , "::" , stringify ! (fl_copy_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock_operations > ())) . fl_release_private as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (file_lock_operations) , "::" , stringify ! (fl_release_private))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nlm_lockowner { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_lock_info { pub state : _cargo_bpf_u32 , pub owner : * mut nlm_lockowner , pub list : list_head , } # [test] fn bindgen_test_layout_nfs_lock_info () { assert_eq ! (:: core :: mem :: size_of :: < nfs_lock_info > () , 32usize , concat ! ("Size of: " , stringify ! (nfs_lock_info))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_lock_info > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_lock_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_info > ())) . state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_info) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_info > ())) . owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_info) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_info > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_info) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_lock_info { pub owner : * mut nfs4_lock_state , } # [test] fn bindgen_test_layout_nfs4_lock_info () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_lock_info > () , 8usize , concat ! ("Size of: " , stringify ! (nfs4_lock_info))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_lock_info > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_lock_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_lock_info > ())) . owner as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_lock_info) , "::" , stringify ! (owner))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct file_lock { pub fl_blocker : * mut file_lock , pub fl_list : list_head , pub fl_link : hlist_node , pub fl_blocked_requests : list_head , pub fl_blocked_member : list_head , pub fl_owner : fl_owner_t , pub fl_flags : :: cty :: c_uint , pub fl_type : :: cty :: c_uchar , pub fl_pid : :: cty :: c_uint , pub fl_link_cpu : :: cty :: c_int , pub fl_wait : wait_queue_head_t , pub fl_file : * mut file , pub fl_start : loff_t , pub fl_end : loff_t , pub fl_fasync : * mut fasync_struct , pub fl_break_time : :: cty :: c_ulong , pub fl_downgrade_time : :: cty :: c_ulong , pub fl_ops : * const file_lock_operations , pub fl_lmops : * const lock_manager_operations , pub fl_u : file_lock__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union file_lock__bindgen_ty_1 { pub nfs_fl : nfs_lock_info , pub nfs4_fl : nfs4_lock_info , pub afs : file_lock__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct file_lock__bindgen_ty_1__bindgen_ty_1 { pub link : list_head , pub state : :: cty :: c_int , pub debug_id : :: cty :: c_uint , } # [test] fn bindgen_test_layout_file_lock__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < file_lock__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (file_lock__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < file_lock__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (file_lock__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock__bindgen_ty_1__bindgen_ty_1 > ())) . link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock__bindgen_ty_1__bindgen_ty_1 > ())) . state as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (file_lock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock__bindgen_ty_1__bindgen_ty_1 > ())) . debug_id as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (file_lock__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (debug_id))) ; } # [test] fn bindgen_test_layout_file_lock__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < file_lock__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (file_lock__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < file_lock__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (file_lock__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock__bindgen_ty_1 > ())) . nfs_fl as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock__bindgen_ty_1) , "::" , stringify ! (nfs_fl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock__bindgen_ty_1 > ())) . nfs4_fl as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock__bindgen_ty_1) , "::" , stringify ! (nfs4_fl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock__bindgen_ty_1 > ())) . afs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock__bindgen_ty_1) , "::" , stringify ! (afs))) ; } # [test] fn bindgen_test_layout_file_lock () { assert_eq ! (:: core :: mem :: size_of :: < file_lock > () , 216usize , concat ! ("Size of: " , stringify ! (file_lock))) ; assert_eq ! (:: core :: mem :: align_of :: < file_lock > () , 8usize , concat ! ("Alignment of " , stringify ! (file_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_blocker as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_blocker))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_link as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_blocked_requests as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_blocked_requests))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_blocked_member as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_blocked_member))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_owner as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_type as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_pid as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_link_cpu as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_link_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_wait as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_file as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_start as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_end as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_fasync as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_fasync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_break_time as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_break_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_downgrade_time as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_downgrade_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_ops as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_lmops as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_lmops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < file_lock > ())) . fl_u as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (file_lock) , "::" , stringify ! (fl_u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct lock_manager_operations { pub lm_get_owner : :: core :: option :: Option < unsafe extern "C" fn (arg1 : fl_owner_t) -> fl_owner_t > , pub lm_put_owner : :: core :: option :: Option < unsafe extern "C" fn (arg1 : fl_owner_t) > , pub lm_notify : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock) > , pub lm_grant : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub lm_break : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock) -> bool_ > , pub lm_change : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock , arg2 : :: cty :: c_int , arg3 : * mut list_head) -> :: cty :: c_int > , pub lm_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock , arg2 : * mut * mut :: cty :: c_void) > , pub lm_breaker_owns_lease : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file_lock) -> bool_ > , } # [test] fn bindgen_test_layout_lock_manager_operations () { assert_eq ! (:: core :: mem :: size_of :: < lock_manager_operations > () , 64usize , concat ! ("Size of: " , stringify ! (lock_manager_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < lock_manager_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (lock_manager_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_get_owner as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_get_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_put_owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_put_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_notify as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_grant as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_grant))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_break as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_break))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_change as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_setup as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lock_manager_operations > ())) . lm_breaker_owns_lease as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (lock_manager_operations) , "::" , stringify ! (lm_breaker_owns_lease))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fasync_struct { pub fa_lock : rwlock_t , pub magic : :: cty :: c_int , pub fa_fd : :: cty :: c_int , pub fa_next : * mut fasync_struct , pub fa_file : * mut file , pub fa_rcu : callback_head , } # [test] fn bindgen_test_layout_fasync_struct () { assert_eq ! (:: core :: mem :: size_of :: < fasync_struct > () , 48usize , concat ! ("Size of: " , stringify ! (fasync_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < fasync_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (fasync_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fasync_struct > ())) . fa_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fasync_struct) , "::" , stringify ! (fa_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fasync_struct > ())) . magic as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fasync_struct) , "::" , stringify ! (magic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fasync_struct > ())) . fa_fd as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fasync_struct) , "::" , stringify ! (fa_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fasync_struct > ())) . fa_next as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fasync_struct) , "::" , stringify ! (fa_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fasync_struct > ())) . fa_file as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fasync_struct) , "::" , stringify ! (fa_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fasync_struct > ())) . fa_rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fasync_struct) , "::" , stringify ! (fa_rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct super_operations { pub alloc_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> * mut inode > , pub destroy_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) > , pub free_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) > , pub dirty_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : :: cty :: c_int) > , pub write_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut writeback_control) -> :: cty :: c_int > , pub drop_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) -> :: cty :: c_int > , pub evict_inode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) > , pub put_super : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) > , pub sync_fs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub freeze_super : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> :: cty :: c_int > , pub freeze_fs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> :: cty :: c_int > , pub thaw_super : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> :: cty :: c_int > , pub unfreeze_fs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> :: cty :: c_int > , pub statfs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut kstatfs) -> :: cty :: c_int > , pub remount_fs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut :: cty :: c_int , arg3 : * mut :: cty :: c_char) -> :: cty :: c_int > , pub umount_begin : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) > , pub show_options : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut dentry) -> :: cty :: c_int > , pub show_devname : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut dentry) -> :: cty :: c_int > , pub show_path : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut dentry) -> :: cty :: c_int > , pub show_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut dentry) -> :: cty :: c_int > , pub quota_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int , arg3 : * mut :: cty :: c_char , arg4 : size_t , arg5 : loff_t) -> ssize_t > , pub quota_write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : :: cty :: c_int , arg3 : * const :: cty :: c_char , arg4 : size_t , arg5 : loff_t) -> ssize_t > , pub get_dquots : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) -> * mut * mut dquot > , pub bdev_try_to_free_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut page , arg3 : gfp_t) -> :: cty :: c_int > , pub nr_cached_objects : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut shrink_control) -> :: cty :: c_long > , pub free_cached_objects : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut shrink_control) -> :: cty :: c_long > , pub real_loop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file) -> * mut file > , } # [test] fn bindgen_test_layout_super_operations () { assert_eq ! (:: core :: mem :: size_of :: < super_operations > () , 216usize , concat ! ("Size of: " , stringify ! (super_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < super_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (super_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . alloc_inode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (alloc_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . destroy_inode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (destroy_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . free_inode as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (free_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . dirty_inode as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (dirty_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . write_inode as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (write_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . drop_inode as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (drop_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . evict_inode as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (evict_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . put_super as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (put_super))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . sync_fs as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (sync_fs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . freeze_super as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (freeze_super))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . freeze_fs as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (freeze_fs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . thaw_super as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (thaw_super))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . unfreeze_fs as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (unfreeze_fs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . statfs as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (statfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . remount_fs as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (remount_fs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . umount_begin as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (umount_begin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . show_options as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (show_options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . show_devname as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (show_devname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . show_path as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (show_path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . show_stats as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (show_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . quota_read as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (quota_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . quota_write as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (quota_write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . get_dquots as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (get_dquots))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . bdev_try_to_free_page as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (bdev_try_to_free_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . nr_cached_objects as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (nr_cached_objects))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . free_cached_objects as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (free_cached_objects))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < super_operations > ())) . real_loop as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (super_operations) , "::" , stringify ! (real_loop))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iomap { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct export_operations { pub encode_fh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut __u32 , arg3 : * mut :: cty :: c_int , arg4 : * mut inode) -> :: cty :: c_int > , pub fh_to_dentry : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut fid , arg3 : :: cty :: c_int , arg4 : :: cty :: c_int) -> * mut dentry > , pub fh_to_parent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut fid , arg3 : :: cty :: c_int , arg4 : :: cty :: c_int) -> * mut dentry > , pub get_name : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut :: cty :: c_char , arg3 : * mut dentry) -> :: cty :: c_int > , pub get_parent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry) -> * mut dentry > , pub commit_metadata : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) -> :: cty :: c_int > , pub get_uuid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut _cargo_bpf_u8 , arg3 : * mut _cargo_bpf_u32 , arg4 : * mut _cargo_bpf_u64) -> :: cty :: c_int > , pub map_blocks : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : loff_t , arg3 : _cargo_bpf_u64 , arg4 : * mut iomap , arg5 : bool_ , arg6 : * mut _cargo_bpf_u32) -> :: cty :: c_int > , pub commit_blocks : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut iomap , arg3 : :: cty :: c_int , arg4 : * mut iattr) -> :: cty :: c_int > , pub fetch_iversion : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) -> _cargo_bpf_u64 > , pub flags : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_export_operations () { assert_eq ! (:: core :: mem :: size_of :: < export_operations > () , 88usize , concat ! ("Size of: " , stringify ! (export_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < export_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (export_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . encode_fh as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (encode_fh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . fh_to_dentry as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (fh_to_dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . fh_to_parent as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (fh_to_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . get_name as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (get_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . get_parent as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (get_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . commit_metadata as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (commit_metadata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . get_uuid as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (get_uuid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . map_blocks as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (map_blocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . commit_blocks as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (commit_blocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . fetch_iversion as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (fetch_iversion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < export_operations > ())) . flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (export_operations) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xattr_handler { pub name : * const :: cty :: c_char , pub prefix : * const :: cty :: c_char , pub flags : :: cty :: c_int , pub list : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry) -> bool_ > , pub get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const xattr_handler , arg2 : * mut dentry , arg3 : * mut inode , arg4 : * const :: cty :: c_char , arg5 : * mut :: cty :: c_void , arg6 : size_t) -> :: cty :: c_int > , pub set : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const xattr_handler , arg2 : * mut user_namespace , arg3 : * mut dentry , arg4 : * mut inode , arg5 : * const :: cty :: c_char , arg6 : * const :: cty :: c_void , arg7 : size_t , arg8 : :: cty :: c_int) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_xattr_handler () { assert_eq ! (:: core :: mem :: size_of :: < xattr_handler > () , 48usize , concat ! ("Size of: " , stringify ! (xattr_handler))) ; assert_eq ! (:: core :: mem :: align_of :: < xattr_handler > () , 8usize , concat ! ("Alignment of " , stringify ! (xattr_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xattr_handler > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xattr_handler) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xattr_handler > ())) . prefix as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xattr_handler) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xattr_handler > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xattr_handler) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xattr_handler > ())) . list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xattr_handler) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xattr_handler > ())) . get as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (xattr_handler) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xattr_handler > ())) . set as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (xattr_handler) , "::" , stringify ! (set))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fscrypt_operations { pub flags : :: cty :: c_uint , pub key_prefix : * const :: cty :: c_char , pub get_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut :: cty :: c_void , arg3 : size_t) -> :: cty :: c_int > , pub set_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * const :: cty :: c_void , arg3 : size_t , arg4 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub get_dummy_policy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> * const fscrypt_policy > , pub empty_dir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) -> bool_ > , pub max_namelen : :: cty :: c_uint , pub has_stable_inodes : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> bool_ > , pub get_ino_and_lblk_bits : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut :: cty :: c_int , arg3 : * mut :: cty :: c_int) > , pub get_num_devices : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block) -> :: cty :: c_int > , pub get_devices : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut super_block , arg2 : * mut * mut request_queue) > , } # [test] fn bindgen_test_layout_fscrypt_operations () { assert_eq ! (:: core :: mem :: size_of :: < fscrypt_operations > () , 88usize , concat ! ("Size of: " , stringify ! (fscrypt_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < fscrypt_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (fscrypt_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . key_prefix as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (key_prefix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . get_context as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (get_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . set_context as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (set_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . get_dummy_policy as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (get_dummy_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . empty_dir as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (empty_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . max_namelen as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (max_namelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . has_stable_inodes as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (has_stable_inodes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . get_ino_and_lblk_bits as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (get_ino_and_lblk_bits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . get_num_devices as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (get_num_devices))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fscrypt_operations > ())) . get_devices as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (fscrypt_operations) , "::" , stringify ! (get_devices))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fsverity_operations { pub begin_enable_verity : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file) -> :: cty :: c_int > , pub end_enable_verity : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * const :: cty :: c_void , arg3 : size_t , arg4 : _cargo_bpf_u64) -> :: cty :: c_int > , pub get_verity_descriptor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut :: cty :: c_void , arg3 : size_t) -> :: cty :: c_int > , pub read_merkle_tree_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong) -> * mut page > , pub write_merkle_tree_block : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * const :: cty :: c_void , arg3 : _cargo_bpf_u64 , arg4 : :: cty :: c_int) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_fsverity_operations () { assert_eq ! (:: core :: mem :: size_of :: < fsverity_operations > () , 40usize , concat ! ("Size of: " , stringify ! (fsverity_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < fsverity_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (fsverity_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsverity_operations > ())) . begin_enable_verity as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fsverity_operations) , "::" , stringify ! (begin_enable_verity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsverity_operations > ())) . end_enable_verity as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fsverity_operations) , "::" , stringify ! (end_enable_verity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsverity_operations > ())) . get_verity_descriptor as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fsverity_operations) , "::" , stringify ! (get_verity_descriptor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsverity_operations > ())) . read_merkle_tree_page as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fsverity_operations) , "::" , stringify ! (read_merkle_tree_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsverity_operations > ())) . write_merkle_tree_block as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fsverity_operations) , "::" , stringify ! (write_merkle_tree_block))) ; } pub type filldir_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dir_context , arg2 : * const :: cty :: c_char , arg3 : :: cty :: c_int , arg4 : loff_t , arg5 : _cargo_bpf_u64 , arg6 : :: cty :: c_uint) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dir_context { pub actor : filldir_t , pub pos : loff_t , } # [test] fn bindgen_test_layout_dir_context () { assert_eq ! (:: core :: mem :: size_of :: < dir_context > () , 16usize , concat ! ("Size of: " , stringify ! (dir_context))) ; assert_eq ! (:: core :: mem :: align_of :: < dir_context > () , 8usize , concat ! ("Alignment of " , stringify ! (dir_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dir_context > ())) . actor as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dir_context) , "::" , stringify ! (actor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dir_context > ())) . pos as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dir_context) , "::" , stringify ! (pos))) ; } pub type fs_param_type = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut p_log , arg2 : * const fs_parameter_spec , arg3 : * mut fs_parameter , arg4 : * mut fs_parse_result) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fs_parameter_spec { pub name : * const :: cty :: c_char , pub type_ : fs_param_type , pub opt : _cargo_bpf_u8 , pub flags : :: cty :: c_ushort , pub data : * const :: cty :: c_void , } # [test] fn bindgen_test_layout_fs_parameter_spec () { assert_eq ! (:: core :: mem :: size_of :: < fs_parameter_spec > () , 32usize , concat ! ("Size of: " , stringify ! (fs_parameter_spec))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_parameter_spec > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_parameter_spec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter_spec > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parameter_spec) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter_spec > ())) . type_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fs_parameter_spec) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter_spec > ())) . opt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fs_parameter_spec) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter_spec > ())) . flags as * const _ as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (fs_parameter_spec) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter_spec > ())) . data as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fs_parameter_spec) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct attribute { pub name : * const :: cty :: c_char , pub mode : umode_t , } # [test] fn bindgen_test_layout_attribute () { assert_eq ! (:: core :: mem :: size_of :: < attribute > () , 16usize , concat ! ("Size of: " , stringify ! (attribute))) ; assert_eq ! (:: core :: mem :: align_of :: < attribute > () , 8usize , concat ! ("Alignment of " , stringify ! (attribute))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (attribute) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute > ())) . mode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (attribute) , "::" , stringify ! (mode))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct idr { pub idr_rt : xarray , pub idr_base : :: cty :: c_uint , pub idr_next : :: cty :: c_uint , } # [test] fn bindgen_test_layout_idr () { assert_eq ! (:: core :: mem :: size_of :: < idr > () , 24usize , concat ! ("Size of: " , stringify ! (idr))) ; assert_eq ! (:: core :: mem :: align_of :: < idr > () , 8usize , concat ! ("Alignment of " , stringify ! (idr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < idr > ())) . idr_rt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (idr) , "::" , stringify ! (idr_rt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < idr > ())) . idr_base as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (idr) , "::" , stringify ! (idr_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < idr > ())) . idr_next as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (idr) , "::" , stringify ! (idr_next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernfs_elem_dir { pub subdirs : :: cty :: c_ulong , pub children : rb_root , pub root : * mut kernfs_root , } # [test] fn bindgen_test_layout_kernfs_elem_dir () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_elem_dir > () , 24usize , concat ! ("Size of: " , stringify ! (kernfs_elem_dir))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_elem_dir > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_elem_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_dir > ())) . subdirs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_dir) , "::" , stringify ! (subdirs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_dir > ())) . children as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_dir) , "::" , stringify ! (children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_dir > ())) . root as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_dir) , "::" , stringify ! (root))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kernfs_root { pub kn : * mut kernfs_node , pub flags : :: cty :: c_uint , pub ino_idr : idr , pub last_id_lowbits : _cargo_bpf_u32 , pub id_highbits : _cargo_bpf_u32 , pub syscall_ops : * mut kernfs_syscall_ops , pub supers : list_head , pub deactivate_waitq : wait_queue_head_t , } # [test] fn bindgen_test_layout_kernfs_root () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_root > () , 96usize , concat ! ("Size of: " , stringify ! (kernfs_root))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_root > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . kn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (kn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . ino_idr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (ino_idr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . last_id_lowbits as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (last_id_lowbits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . id_highbits as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (id_highbits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . syscall_ops as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (syscall_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . supers as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (supers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_root > ())) . deactivate_waitq as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (kernfs_root) , "::" , stringify ! (deactivate_waitq))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernfs_elem_symlink { pub target_kn : * mut kernfs_node , } # [test] fn bindgen_test_layout_kernfs_elem_symlink () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_elem_symlink > () , 8usize , concat ! ("Size of: " , stringify ! (kernfs_elem_symlink))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_elem_symlink > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_elem_symlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_symlink > ())) . target_kn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_symlink) , "::" , stringify ! (target_kn))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernfs_elem_attr { pub ops : * const kernfs_ops , pub open : * mut kernfs_open_node , pub size : loff_t , pub notify_next : * mut kernfs_node , } # [test] fn bindgen_test_layout_kernfs_elem_attr () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_elem_attr > () , 32usize , concat ! ("Size of: " , stringify ! (kernfs_elem_attr))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_elem_attr > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_elem_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_attr > ())) . ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_attr) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_attr > ())) . open as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_attr) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_attr > ())) . size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_attr) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_elem_attr > ())) . notify_next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernfs_elem_attr) , "::" , stringify ! (notify_next))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kernfs_node { pub count : atomic_t , pub active : atomic_t , pub parent : * mut kernfs_node , pub name : * const :: cty :: c_char , pub rb : rb_node , pub ns : * const :: cty :: c_void , pub hash : :: cty :: c_uint , pub __bindgen_anon_1 : kernfs_node__bindgen_ty_1 , pub priv_ : * mut :: cty :: c_void , pub id : _cargo_bpf_u64 , pub flags : :: cty :: c_ushort , pub mode : umode_t , pub iattr : * mut kernfs_iattrs , } # [repr (C)] # [derive (Copy , Clone)] pub union kernfs_node__bindgen_ty_1 { pub dir : kernfs_elem_dir , pub symlink : kernfs_elem_symlink , pub attr : kernfs_elem_attr , } # [test] fn bindgen_test_layout_kernfs_node__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_node__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (kernfs_node__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_node__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_node__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node__bindgen_ty_1 > ())) . dir as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_node__bindgen_ty_1) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node__bindgen_ty_1 > ())) . symlink as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_node__bindgen_ty_1) , "::" , stringify ! (symlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node__bindgen_ty_1 > ())) . attr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_node__bindgen_ty_1) , "::" , stringify ! (attr))) ; } # [test] fn bindgen_test_layout_kernfs_node () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_node > () , 128usize , concat ! ("Size of: " , stringify ! (kernfs_node))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_node > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . active as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . parent as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . rb as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (rb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . ns as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . hash as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . priv_ as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (priv_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . id as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . flags as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . mode as * const _ as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_node > ())) . iattr as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (kernfs_node) , "::" , stringify ! (iattr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernfs_ops { pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file) -> :: cty :: c_int > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file) > , pub seq_show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub seq_start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut loff_t) -> * mut :: cty :: c_void > , pub seq_next : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void , arg3 : * mut loff_t) -> * mut :: cty :: c_void > , pub seq_stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) > , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file , arg2 : * mut :: cty :: c_char , arg3 : size_t , arg4 : loff_t) -> ssize_t > , pub atomic_write_len : size_t , pub prealloc : bool_ , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file , arg2 : * mut :: cty :: c_char , arg3 : size_t , arg4 : loff_t) -> ssize_t > , pub poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file , arg2 : * mut poll_table_struct) -> __poll_t > , pub mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file , arg2 : * mut vm_area_struct) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_kernfs_ops () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_ops > () , 96usize , concat ! ("Size of: " , stringify ! (kernfs_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . open as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . release as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . seq_show as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (seq_show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . seq_start as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (seq_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . seq_next as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (seq_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . seq_stop as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (seq_stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . read as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . atomic_write_len as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (atomic_write_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . prealloc as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (prealloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . write as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . poll as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_ops > ())) . mmap as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (kernfs_ops) , "::" , stringify ! (mmap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernfs_syscall_ops { pub show_options : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut kernfs_root) -> :: cty :: c_int > , pub mkdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_node , arg2 : * const :: cty :: c_char , arg3 : umode_t) -> :: cty :: c_int > , pub rmdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_node) -> :: cty :: c_int > , pub rename : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_node , arg2 : * mut kernfs_node , arg3 : * const :: cty :: c_char) -> :: cty :: c_int > , pub show_path : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut kernfs_node , arg3 : * mut kernfs_root) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_kernfs_syscall_ops () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_syscall_ops > () , 40usize , concat ! ("Size of: " , stringify ! (kernfs_syscall_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_syscall_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_syscall_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_syscall_ops > ())) . show_options as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_syscall_ops) , "::" , stringify ! (show_options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_syscall_ops > ())) . mkdir as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_syscall_ops) , "::" , stringify ! (mkdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_syscall_ops > ())) . rmdir as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_syscall_ops) , "::" , stringify ! (rmdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_syscall_ops > ())) . rename as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernfs_syscall_ops) , "::" , stringify ! (rename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_syscall_ops > ())) . show_path as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kernfs_syscall_ops) , "::" , stringify ! (show_path))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kernfs_open_file { pub kn : * mut kernfs_node , pub file : * mut file , pub seq_file : * mut seq_file , pub priv_ : * mut :: cty :: c_void , pub mutex : mutex , pub prealloc_mutex : mutex , pub event : :: cty :: c_int , pub list : list_head , pub prealloc_buf : * mut :: cty :: c_char , pub atomic_write_len : size_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub vm_ops : * const vm_operations_struct , } # [test] fn bindgen_test_layout_kernfs_open_file () { assert_eq ! (:: core :: mem :: size_of :: < kernfs_open_file > () , 152usize , concat ! ("Size of: " , stringify ! (kernfs_open_file))) ; assert_eq ! (:: core :: mem :: align_of :: < kernfs_open_file > () , 8usize , concat ! ("Alignment of " , stringify ! (kernfs_open_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . kn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (kn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . file as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . seq_file as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (seq_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . priv_ as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (priv_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . mutex as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . prealloc_mutex as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (prealloc_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . event as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . list as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . prealloc_buf as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (prealloc_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . atomic_write_len as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (atomic_write_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernfs_open_file > ())) . vm_ops as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (kernfs_open_file) , "::" , stringify ! (vm_ops))) ; } impl kernfs_open_file { # [inline] pub fn mmapped (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_mmapped (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn released (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_released (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (mmapped : bool_ , released : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let mmapped : u8 = unsafe { :: core :: mem :: transmute (mmapped) } ; mmapped as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let released : u8 = unsafe { :: core :: mem :: transmute (released) } ; released as u64 }) ; __bindgen_bitfield_unit } } pub const kobj_ns_type_KOBJ_NS_TYPE_NONE : kobj_ns_type = 0 ; pub const kobj_ns_type_KOBJ_NS_TYPE_NET : kobj_ns_type = 1 ; pub const kobj_ns_type_KOBJ_NS_TYPES : kobj_ns_type = 2 ; pub type kobj_ns_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kobj_ns_type_operations { pub type_ : kobj_ns_type , pub current_may_mount : :: core :: option :: Option < unsafe extern "C" fn () -> bool_ > , pub grab_current_ns : :: core :: option :: Option < unsafe extern "C" fn () -> * mut :: cty :: c_void > , pub netlink_ns : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> * const :: cty :: c_void > , pub initial_ns : :: core :: option :: Option < unsafe extern "C" fn () -> * const :: cty :: c_void > , pub drop_ns : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , } # [test] fn bindgen_test_layout_kobj_ns_type_operations () { assert_eq ! (:: core :: mem :: size_of :: < kobj_ns_type_operations > () , 48usize , concat ! ("Size of: " , stringify ! (kobj_ns_type_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < kobj_ns_type_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (kobj_ns_type_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_ns_type_operations > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kobj_ns_type_operations) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_ns_type_operations > ())) . current_may_mount as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kobj_ns_type_operations) , "::" , stringify ! (current_may_mount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_ns_type_operations > ())) . grab_current_ns as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kobj_ns_type_operations) , "::" , stringify ! (grab_current_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_ns_type_operations > ())) . netlink_ns as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kobj_ns_type_operations) , "::" , stringify ! (netlink_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_ns_type_operations > ())) . initial_ns as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kobj_ns_type_operations) , "::" , stringify ! (initial_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_ns_type_operations > ())) . drop_ns as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kobj_ns_type_operations) , "::" , stringify ! (drop_ns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct attribute_group { pub name : * const :: cty :: c_char , pub is_visible : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject , arg2 : * mut attribute , arg3 : :: cty :: c_int) -> umode_t > , pub is_bin_visible : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject , arg2 : * mut bin_attribute , arg3 : :: cty :: c_int) -> umode_t > , pub attrs : * mut * mut attribute , pub bin_attrs : * mut * mut bin_attribute , } # [test] fn bindgen_test_layout_attribute_group () { assert_eq ! (:: core :: mem :: size_of :: < attribute_group > () , 40usize , concat ! ("Size of: " , stringify ! (attribute_group))) ; assert_eq ! (:: core :: mem :: align_of :: < attribute_group > () , 8usize , concat ! ("Alignment of " , stringify ! (attribute_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute_group > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (attribute_group) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute_group > ())) . is_visible as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (attribute_group) , "::" , stringify ! (is_visible))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute_group > ())) . is_bin_visible as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (attribute_group) , "::" , stringify ! (is_bin_visible))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute_group > ())) . attrs as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (attribute_group) , "::" , stringify ! (attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < attribute_group > ())) . bin_attrs as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (attribute_group) , "::" , stringify ! (bin_attrs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bin_attribute { pub attr : attribute , pub size : size_t , pub private : * mut :: cty :: c_void , pub mapping : * mut address_space , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut kobject , arg3 : * mut bin_attribute , arg4 : * mut :: cty :: c_char , arg5 : loff_t , arg6 : size_t) -> ssize_t > , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut kobject , arg3 : * mut bin_attribute , arg4 : * mut :: cty :: c_char , arg5 : loff_t , arg6 : size_t) -> ssize_t > , pub mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut kobject , arg3 : * mut bin_attribute , arg4 : * mut vm_area_struct) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_bin_attribute () { assert_eq ! (:: core :: mem :: size_of :: < bin_attribute > () , 64usize , concat ! ("Size of: " , stringify ! (bin_attribute))) ; assert_eq ! (:: core :: mem :: align_of :: < bin_attribute > () , 8usize , concat ! ("Alignment of " , stringify ! (bin_attribute))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . attr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . private as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . mapping as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . read as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . write as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bin_attribute > ())) . mmap as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bin_attribute) , "::" , stringify ! (mmap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sysfs_ops { pub show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject , arg2 : * mut attribute , arg3 : * mut :: cty :: c_char) -> ssize_t > , pub store : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject , arg2 : * mut attribute , arg3 : * const :: cty :: c_char , arg4 : size_t) -> ssize_t > , } # [test] fn bindgen_test_layout_sysfs_ops () { assert_eq ! (:: core :: mem :: size_of :: < sysfs_ops > () , 16usize , concat ! ("Size of: " , stringify ! (sysfs_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < sysfs_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (sysfs_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sysfs_ops > ())) . show as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sysfs_ops) , "::" , stringify ! (show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sysfs_ops > ())) . store as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sysfs_ops) , "::" , stringify ! (store))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kset { pub list : list_head , pub list_lock : spinlock_t , pub kobj : kobject , pub uevent_ops : * const kset_uevent_ops , } # [test] fn bindgen_test_layout_kset () { assert_eq ! (:: core :: mem :: size_of :: < kset > () , 96usize , concat ! ("Size of: " , stringify ! (kset))) ; assert_eq ! (:: core :: mem :: align_of :: < kset > () , 8usize , concat ! ("Alignment of " , stringify ! (kset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kset) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset > ())) . list_lock as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kset) , "::" , stringify ! (list_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset > ())) . kobj as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kset) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset > ())) . uevent_ops as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (kset) , "::" , stringify ! (uevent_ops))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kobj_type { pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject) > , pub sysfs_ops : * const sysfs_ops , pub default_attrs : * mut * mut attribute , pub default_groups : * mut * const attribute_group , pub child_ns_type : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject) -> * const kobj_ns_type_operations > , pub namespace : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject) -> * const :: cty :: c_void > , pub get_ownership : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kobject , arg2 : * mut kuid_t , arg3 : * mut kgid_t) > , } # [test] fn bindgen_test_layout_kobj_type () { assert_eq ! (:: core :: mem :: size_of :: < kobj_type > () , 56usize , concat ! ("Size of: " , stringify ! (kobj_type))) ; assert_eq ! (:: core :: mem :: align_of :: < kobj_type > () , 8usize , concat ! ("Alignment of " , stringify ! (kobj_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . release as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . sysfs_ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (sysfs_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . default_attrs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (default_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . default_groups as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (default_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . child_ns_type as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (child_ns_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . namespace as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_type > ())) . get_ownership as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kobj_type) , "::" , stringify ! (get_ownership))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kobj_uevent_env { pub argv : [* mut :: cty :: c_char ; 3usize] , pub envp : [* mut :: cty :: c_char ; 64usize] , pub envp_idx : :: cty :: c_int , pub buf : [:: cty :: c_char ; 2048usize] , pub buflen : :: cty :: c_int , } # [test] fn bindgen_test_layout_kobj_uevent_env () { assert_eq ! (:: core :: mem :: size_of :: < kobj_uevent_env > () , 2592usize , concat ! ("Size of: " , stringify ! (kobj_uevent_env))) ; assert_eq ! (:: core :: mem :: align_of :: < kobj_uevent_env > () , 8usize , concat ! ("Alignment of " , stringify ! (kobj_uevent_env))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_uevent_env > ())) . argv as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kobj_uevent_env) , "::" , stringify ! (argv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_uevent_env > ())) . envp as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kobj_uevent_env) , "::" , stringify ! (envp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_uevent_env > ())) . envp_idx as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (kobj_uevent_env) , "::" , stringify ! (envp_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_uevent_env > ())) . buf as * const _ as usize } , 540usize , concat ! ("Offset of field: " , stringify ! (kobj_uevent_env) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kobj_uevent_env > ())) . buflen as * const _ as usize } , 2588usize , concat ! ("Offset of field: " , stringify ! (kobj_uevent_env) , "::" , stringify ! (buflen))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kset_uevent_ops { pub filter : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kset , arg2 : * mut kobject) -> :: cty :: c_int > , pub name : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kset , arg2 : * mut kobject) -> * const :: cty :: c_char > , pub uevent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kset , arg2 : * mut kobject , arg3 : * mut kobj_uevent_env) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_kset_uevent_ops () { assert_eq ! (:: core :: mem :: size_of :: < kset_uevent_ops > () , 24usize , concat ! ("Size of: " , stringify ! (kset_uevent_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < kset_uevent_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (kset_uevent_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset_uevent_ops > ())) . filter as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kset_uevent_ops) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset_uevent_ops > ())) . name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kset_uevent_ops) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kset_uevent_ops > ())) . uevent as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kset_uevent_ops) , "::" , stringify ! (uevent))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dev_pm_ops { pub prepare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub complete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub suspend : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub resume : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub freeze : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub thaw : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub poweroff : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub restore : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub suspend_late : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub resume_early : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub freeze_late : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub thaw_early : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub poweroff_late : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub restore_early : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub suspend_noirq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub resume_noirq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub freeze_noirq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub thaw_noirq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub poweroff_noirq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub restore_noirq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub runtime_suspend : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub runtime_resume : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub runtime_idle : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_dev_pm_ops () { assert_eq ! (:: core :: mem :: size_of :: < dev_pm_ops > () , 184usize , concat ! ("Size of: " , stringify ! (dev_pm_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pm_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pm_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . prepare as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (prepare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . complete as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (complete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . suspend as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (suspend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . resume as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (resume))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . freeze as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (freeze))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . thaw as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (thaw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . poweroff as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (poweroff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . restore as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (restore))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . suspend_late as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (suspend_late))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . resume_early as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (resume_early))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . freeze_late as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (freeze_late))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . thaw_early as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (thaw_early))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . poweroff_late as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (poweroff_late))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . restore_early as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (restore_early))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . suspend_noirq as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (suspend_noirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . resume_noirq as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (resume_noirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . freeze_noirq as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (freeze_noirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . thaw_noirq as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (thaw_noirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . poweroff_noirq as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (poweroff_noirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . restore_noirq as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (restore_noirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . runtime_suspend as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (runtime_suspend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . runtime_resume as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (runtime_resume))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_ops > ())) . runtime_idle as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (dev_pm_ops) , "::" , stringify ! (runtime_idle))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct pm_subsys_data { pub lock : spinlock_t , pub refcount : :: cty :: c_uint , pub clock_op_might_sleep : :: cty :: c_uint , pub clock_mutex : mutex , pub clock_list : list_head , pub domain_data : * mut pm_domain_data , } # [test] fn bindgen_test_layout_pm_subsys_data () { assert_eq ! (:: core :: mem :: size_of :: < pm_subsys_data > () , 72usize , concat ! ("Size of: " , stringify ! (pm_subsys_data))) ; assert_eq ! (:: core :: mem :: align_of :: < pm_subsys_data > () , 8usize , concat ! ("Alignment of " , stringify ! (pm_subsys_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_subsys_data > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pm_subsys_data) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_subsys_data > ())) . refcount as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pm_subsys_data) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_subsys_data > ())) . clock_op_might_sleep as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pm_subsys_data) , "::" , stringify ! (clock_op_might_sleep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_subsys_data > ())) . clock_mutex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pm_subsys_data) , "::" , stringify ! (clock_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_subsys_data > ())) . clock_list as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (pm_subsys_data) , "::" , stringify ! (clock_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_subsys_data > ())) . domain_data as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (pm_subsys_data) , "::" , stringify ! (domain_data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct wakeup_source { pub name : * const :: cty :: c_char , pub id : :: cty :: c_int , pub entry : list_head , pub lock : spinlock_t , pub wakeirq : * mut wake_irq , pub timer : timer_list , pub timer_expires : :: cty :: c_ulong , pub total_time : ktime_t , pub max_time : ktime_t , pub last_time : ktime_t , pub start_prevent_time : ktime_t , pub prevent_sleep_time : ktime_t , pub event_count : :: cty :: c_ulong , pub active_count : :: cty :: c_ulong , pub relax_count : :: cty :: c_ulong , pub expire_count : :: cty :: c_ulong , pub wakeup_count : :: cty :: c_ulong , pub dev : * mut device , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_wakeup_source () { assert_eq ! (:: core :: mem :: size_of :: < wakeup_source > () , 192usize , concat ! ("Size of: " , stringify ! (wakeup_source))) ; assert_eq ! (:: core :: mem :: align_of :: < wakeup_source > () , 8usize , concat ! ("Alignment of " , stringify ! (wakeup_source))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . entry as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . lock as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . wakeirq as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (wakeirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . timer as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . timer_expires as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (timer_expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . total_time as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (total_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . max_time as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (max_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . last_time as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (last_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . start_prevent_time as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (start_prevent_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . prevent_sleep_time as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (prevent_sleep_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . event_count as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (event_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . active_count as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (active_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . relax_count as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (relax_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . expire_count as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (expire_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . wakeup_count as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (wakeup_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wakeup_source > ())) . dev as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (wakeup_source) , "::" , stringify ! (dev))) ; } impl wakeup_source { # [inline] pub fn active (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_active (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn autosleep_enabled (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_autosleep_enabled (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (active : bool_ , autosleep_enabled : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let active : u8 = unsafe { :: core :: mem :: transmute (active) } ; active as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let autosleep_enabled : u8 = unsafe { :: core :: mem :: transmute (autosleep_enabled) } ; autosleep_enabled as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dev_pm_domain { pub ops : dev_pm_ops , pub start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub detach : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : bool_) > , pub activate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub sync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub dismiss : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , } # [test] fn bindgen_test_layout_dev_pm_domain () { assert_eq ! (:: core :: mem :: size_of :: < dev_pm_domain > () , 224usize , concat ! ("Size of: " , stringify ! (dev_pm_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pm_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pm_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_domain > ())) . ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_domain) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_domain > ())) . start as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (dev_pm_domain) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_domain > ())) . detach as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (dev_pm_domain) , "::" , stringify ! (detach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_domain > ())) . activate as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (dev_pm_domain) , "::" , stringify ! (activate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_domain > ())) . sync as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (dev_pm_domain) , "::" , stringify ! (sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_domain > ())) . dismiss as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (dev_pm_domain) , "::" , stringify ! (dismiss))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bus_type { pub name : * const :: cty :: c_char , pub dev_name : * const :: cty :: c_char , pub dev_root : * mut device , pub bus_groups : * mut * const attribute_group , pub dev_groups : * mut * const attribute_group , pub drv_groups : * mut * const attribute_group , pub match_ : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut device_driver) -> :: cty :: c_int > , pub uevent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut kobj_uevent_env) -> :: cty :: c_int > , pub probe : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub sync_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub remove : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub online : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub offline : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub suspend : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : pm_message_t) -> :: cty :: c_int > , pub resume : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub num_vf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub dma_configure : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub pm : * const dev_pm_ops , pub iommu_ops : * const iommu_ops , pub p : * mut subsys_private , pub lock_key : lock_class_key , pub need_parent_lock : bool_ , } # [test] fn bindgen_test_layout_bus_type () { assert_eq ! (:: core :: mem :: size_of :: < bus_type > () , 176usize , concat ! ("Size of: " , stringify ! (bus_type))) ; assert_eq ! (:: core :: mem :: align_of :: < bus_type > () , 8usize , concat ! ("Alignment of " , stringify ! (bus_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . dev_name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (dev_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . dev_root as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (dev_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . bus_groups as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (bus_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . dev_groups as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (dev_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . drv_groups as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (drv_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . match_ as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (match_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . uevent as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (uevent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . probe as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (probe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . sync_state as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (sync_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . remove as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (remove))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . shutdown as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . online as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . offline as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (offline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . suspend as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (suspend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . resume as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (resume))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . num_vf as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (num_vf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . dma_configure as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (dma_configure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . pm as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (pm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . iommu_ops as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (iommu_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . p as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . lock_key as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (lock_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_type > ())) . need_parent_lock as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (bus_type) , "::" , stringify ! (need_parent_lock))) ; } pub const probe_type_PROBE_DEFAULT_STRATEGY : probe_type = 0 ; pub const probe_type_PROBE_PREFER_ASYNCHRONOUS : probe_type = 1 ; pub const probe_type_PROBE_FORCE_SYNCHRONOUS : probe_type = 2 ; pub type probe_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct device_driver { pub name : * const :: cty :: c_char , pub bus : * mut bus_type , pub owner : * mut module , pub mod_name : * const :: cty :: c_char , pub suppress_bind_attrs : bool_ , pub probe_type : probe_type , pub of_match_table : * const of_device_id , pub acpi_match_table : * const acpi_device_id , pub probe : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub sync_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub remove : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub suspend : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : pm_message_t) -> :: cty :: c_int > , pub resume : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub groups : * mut * const attribute_group , pub dev_groups : * mut * const attribute_group , pub pm : * const dev_pm_ops , pub coredump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub p : * mut driver_private , } # [test] fn bindgen_test_layout_device_driver () { assert_eq ! (:: core :: mem :: size_of :: < device_driver > () , 144usize , concat ! ("Size of: " , stringify ! (device_driver))) ; assert_eq ! (:: core :: mem :: align_of :: < device_driver > () , 8usize , concat ! ("Alignment of " , stringify ! (device_driver))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . bus as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (bus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . owner as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . mod_name as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (mod_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . suppress_bind_attrs as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (suppress_bind_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . probe_type as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (probe_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . of_match_table as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (of_match_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . acpi_match_table as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (acpi_match_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . probe as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (probe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . sync_state as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (sync_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . remove as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (remove))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . shutdown as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . suspend as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (suspend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . resume as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (resume))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . groups as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . dev_groups as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (dev_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . pm as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (pm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . coredump as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (coredump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_driver > ())) . p as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (device_driver) , "::" , stringify ! (p))) ; } pub const iommu_cap_IOMMU_CAP_CACHE_COHERENCY : iommu_cap = 0 ; pub const iommu_cap_IOMMU_CAP_INTR_REMAP : iommu_cap = 1 ; pub const iommu_cap_IOMMU_CAP_NOEXEC : iommu_cap = 2 ; pub type iommu_cap = :: cty :: c_uint ; pub type dma_addr_t = _cargo_bpf_u64 ; pub const iommu_dev_features_IOMMU_DEV_FEAT_AUX : iommu_dev_features = 0 ; pub const iommu_dev_features_IOMMU_DEV_FEAT_SVA : iommu_dev_features = 1 ; pub const iommu_dev_features_IOMMU_DEV_FEAT_IOPF : iommu_dev_features = 2 ; pub type iommu_dev_features = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_ops { pub capable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : iommu_cap) -> bool_ > , pub domain_alloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_uint) -> * mut iommu_domain > , pub domain_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain) > , pub attach_dev : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device) -> :: cty :: c_int > , pub detach_dev : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device) > , pub map : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : :: cty :: c_ulong , arg3 : phys_addr_t , arg4 : size_t , arg5 : :: cty :: c_int , arg6 : gfp_t) -> :: cty :: c_int > , pub unmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : :: cty :: c_ulong , arg3 : size_t , arg4 : * mut iommu_iotlb_gather) -> size_t > , pub flush_iotlb_all : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain) > , pub iotlb_sync_map : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : :: cty :: c_ulong , arg3 : size_t) > , pub iotlb_sync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut iommu_iotlb_gather) > , pub iova_to_phys : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : dma_addr_t) -> phys_addr_t > , pub probe_device : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> * mut iommu_device > , pub release_device : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub probe_finalize : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub device_group : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> * mut iommu_group > , pub enable_nesting : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain) -> :: cty :: c_int > , pub set_pgtable_quirks : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : :: cty :: c_ulong) -> :: cty :: c_int > , pub get_resv_regions : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut list_head) > , pub put_resv_regions : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut list_head) > , pub apply_resv_region : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut iommu_domain , arg3 : * mut iommu_resv_region) > , pub of_xlate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut of_phandle_args) -> :: cty :: c_int > , pub is_attach_deferred : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device) -> bool_ > , pub dev_has_feat : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : iommu_dev_features) -> bool_ > , pub dev_feat_enabled : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : iommu_dev_features) -> bool_ > , pub dev_enable_feat : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : iommu_dev_features) -> :: cty :: c_int > , pub dev_disable_feat : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : iommu_dev_features) -> :: cty :: c_int > , pub aux_attach_dev : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device) -> :: cty :: c_int > , pub aux_detach_dev : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device) > , pub aux_get_pasid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device) -> :: cty :: c_int > , pub sva_bind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut mm_struct , arg3 : * mut :: cty :: c_void) -> * mut iommu_sva > , pub sva_unbind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_sva) > , pub sva_get_pasid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_sva) -> _cargo_bpf_u32 > , pub page_response : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut iommu_fault_event , arg3 : * mut iommu_page_response) -> :: cty :: c_int > , pub cache_invalidate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device , arg3 : * mut iommu_cache_invalidate_info) -> :: cty :: c_int > , pub sva_bind_gpasid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device , arg3 : * mut iommu_gpasid_bind_data) -> :: cty :: c_int > , pub sva_unbind_gpasid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : _cargo_bpf_u32) -> :: cty :: c_int > , pub def_domain_type : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub pgsize_bitmap : :: cty :: c_ulong , pub owner : * mut module , } # [test] fn bindgen_test_layout_iommu_ops () { assert_eq ! (:: core :: mem :: size_of :: < iommu_ops > () , 312usize , concat ! ("Size of: " , stringify ! (iommu_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . capable as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (capable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . domain_alloc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (domain_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . domain_free as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (domain_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . attach_dev as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (attach_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . detach_dev as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (detach_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . map as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . unmap as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (unmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . flush_iotlb_all as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (flush_iotlb_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . iotlb_sync_map as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (iotlb_sync_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . iotlb_sync as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (iotlb_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . iova_to_phys as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (iova_to_phys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . probe_device as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (probe_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . release_device as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (release_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . probe_finalize as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (probe_finalize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . device_group as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (device_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . enable_nesting as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (enable_nesting))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . set_pgtable_quirks as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (set_pgtable_quirks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . get_resv_regions as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (get_resv_regions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . put_resv_regions as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (put_resv_regions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . apply_resv_region as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (apply_resv_region))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . of_xlate as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (of_xlate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . is_attach_deferred as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (is_attach_deferred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . dev_has_feat as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (dev_has_feat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . dev_feat_enabled as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (dev_feat_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . dev_enable_feat as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (dev_enable_feat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . dev_disable_feat as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (dev_disable_feat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . aux_attach_dev as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (aux_attach_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . aux_detach_dev as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (aux_detach_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . aux_get_pasid as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (aux_get_pasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . sva_bind as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (sva_bind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . sva_unbind as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (sva_unbind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . sva_get_pasid as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (sva_get_pasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . page_response as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (page_response))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . cache_invalidate as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (cache_invalidate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . sva_bind_gpasid as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (sva_bind_gpasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . sva_unbind_gpasid as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (sva_unbind_gpasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . def_domain_type as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (def_domain_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . pgsize_bitmap as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (pgsize_bitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_ops > ())) . owner as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (iommu_ops) , "::" , stringify ! (owner))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct device_type { pub name : * const :: cty :: c_char , pub groups : * mut * const attribute_group , pub uevent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut kobj_uevent_env) -> :: cty :: c_int > , pub devnode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut umode_t , arg3 : * mut kuid_t , arg4 : * mut kgid_t) -> * mut :: cty :: c_char > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub pm : * const dev_pm_ops , } # [test] fn bindgen_test_layout_device_type () { assert_eq ! (:: core :: mem :: size_of :: < device_type > () , 48usize , concat ! ("Size of: " , stringify ! (device_type))) ; assert_eq ! (:: core :: mem :: align_of :: < device_type > () , 8usize , concat ! ("Alignment of " , stringify ! (device_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_type > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (device_type) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_type > ())) . groups as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (device_type) , "::" , stringify ! (groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_type > ())) . uevent as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (device_type) , "::" , stringify ! (uevent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_type > ())) . devnode as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (device_type) , "::" , stringify ! (devnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_type > ())) . release as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (device_type) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_type > ())) . pm as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (device_type) , "::" , stringify ! (pm))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct class { pub name : * const :: cty :: c_char , pub owner : * mut module , pub class_groups : * mut * const attribute_group , pub dev_groups : * mut * const attribute_group , pub dev_kobj : * mut kobject , pub dev_uevent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut kobj_uevent_env) -> :: cty :: c_int > , pub devnode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut umode_t) -> * mut :: cty :: c_char > , pub class_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut class) > , pub dev_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) > , pub shutdown_pre : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_int > , pub ns_type : * const kobj_ns_type_operations , pub namespace : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> * const :: cty :: c_void > , pub get_ownership : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut kuid_t , arg3 : * mut kgid_t) > , pub pm : * const dev_pm_ops , pub p : * mut subsys_private , } # [test] fn bindgen_test_layout_class () { assert_eq ! (:: core :: mem :: size_of :: < class > () , 120usize , concat ! ("Size of: " , stringify ! (class))) ; assert_eq ! (:: core :: mem :: align_of :: < class > () , 8usize , concat ! ("Alignment of " , stringify ! (class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . class_groups as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (class_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . dev_groups as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (dev_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . dev_kobj as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (dev_kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . dev_uevent as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (dev_uevent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . devnode as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (devnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . class_release as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (class_release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . dev_release as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (dev_release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . shutdown_pre as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (shutdown_pre))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . ns_type as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (ns_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . namespace as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . get_ownership as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (get_ownership))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . pm as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (pm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < class > ())) . p as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (class) , "::" , stringify ! (p))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct of_device_id { pub name : [:: cty :: c_char ; 32usize] , pub type_ : [:: cty :: c_char ; 32usize] , pub compatible : [:: cty :: c_char ; 128usize] , pub data : * const :: cty :: c_void , } # [test] fn bindgen_test_layout_of_device_id () { assert_eq ! (:: core :: mem :: size_of :: < of_device_id > () , 200usize , concat ! ("Size of: " , stringify ! (of_device_id))) ; assert_eq ! (:: core :: mem :: align_of :: < of_device_id > () , 8usize , concat ! ("Alignment of " , stringify ! (of_device_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_device_id > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (of_device_id) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_device_id > ())) . type_ as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (of_device_id) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_device_id > ())) . compatible as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (of_device_id) , "::" , stringify ! (compatible))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_device_id > ())) . data as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (of_device_id) , "::" , stringify ! (data))) ; } pub type kernel_ulong_t = :: cty :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct acpi_device_id { pub id : [__u8 ; 9usize] , pub driver_data : kernel_ulong_t , pub cls : __u32 , pub cls_msk : __u32 , } # [test] fn bindgen_test_layout_acpi_device_id () { assert_eq ! (:: core :: mem :: size_of :: < acpi_device_id > () , 32usize , concat ! ("Size of: " , stringify ! (acpi_device_id))) ; assert_eq ! (:: core :: mem :: align_of :: < acpi_device_id > () , 8usize , concat ! ("Alignment of " , stringify ! (acpi_device_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < acpi_device_id > ())) . id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (acpi_device_id) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < acpi_device_id > ())) . driver_data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (acpi_device_id) , "::" , stringify ! (driver_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < acpi_device_id > ())) . cls as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (acpi_device_id) , "::" , stringify ! (cls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < acpi_device_id > ())) . cls_msk as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (acpi_device_id) , "::" , stringify ! (cls_msk))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct device_dma_parameters { pub max_segment_size : :: cty :: c_uint , pub min_align_mask : :: cty :: c_uint , pub segment_boundary_mask : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_device_dma_parameters () { assert_eq ! (:: core :: mem :: size_of :: < device_dma_parameters > () , 16usize , concat ! ("Size of: " , stringify ! (device_dma_parameters))) ; assert_eq ! (:: core :: mem :: align_of :: < device_dma_parameters > () , 8usize , concat ! ("Alignment of " , stringify ! (device_dma_parameters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_dma_parameters > ())) . max_segment_size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (device_dma_parameters) , "::" , stringify ! (max_segment_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_dma_parameters > ())) . min_align_mask as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (device_dma_parameters) , "::" , stringify ! (min_align_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_dma_parameters > ())) . segment_boundary_mask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (device_dma_parameters) , "::" , stringify ! (segment_boundary_mask))) ; } pub const dma_data_direction_DMA_BIDIRECTIONAL : dma_data_direction = 0 ; pub const dma_data_direction_DMA_TO_DEVICE : dma_data_direction = 1 ; pub const dma_data_direction_DMA_FROM_DEVICE : dma_data_direction = 2 ; pub const dma_data_direction_DMA_NONE : dma_data_direction = 3 ; pub type dma_data_direction = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dma_map_ops { pub alloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : size_t , arg3 : * mut dma_addr_t , arg4 : gfp_t , arg5 : :: cty :: c_ulong) -> * mut :: cty :: c_void > , pub free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : size_t , arg3 : * mut :: cty :: c_void , arg4 : dma_addr_t , arg5 : :: cty :: c_ulong) > , pub alloc_pages : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : size_t , arg3 : * mut dma_addr_t , arg4 : dma_data_direction , arg5 : gfp_t) -> * mut page > , pub free_pages : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : size_t , arg3 : * mut page , arg4 : dma_addr_t , arg5 : dma_data_direction) > , pub alloc_noncontiguous : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : size_t , arg3 : dma_data_direction , arg4 : gfp_t , arg5 : :: cty :: c_ulong) -> * mut sg_table > , pub free_noncontiguous : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : size_t , arg3 : * mut sg_table , arg4 : dma_data_direction) > , pub mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut vm_area_struct , arg3 : * mut :: cty :: c_void , arg4 : dma_addr_t , arg5 : size_t , arg6 : :: cty :: c_ulong) -> :: cty :: c_int > , pub get_sgtable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut sg_table , arg3 : * mut :: cty :: c_void , arg4 : dma_addr_t , arg5 : size_t , arg6 : :: cty :: c_ulong) -> :: cty :: c_int > , pub map_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut page , arg3 : :: cty :: c_ulong , arg4 : size_t , arg5 : dma_data_direction , arg6 : :: cty :: c_ulong) -> dma_addr_t > , pub unmap_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : dma_addr_t , arg3 : size_t , arg4 : dma_data_direction , arg5 : :: cty :: c_ulong) > , pub map_sg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut scatterlist , arg3 : :: cty :: c_int , arg4 : dma_data_direction , arg5 : :: cty :: c_ulong) -> :: cty :: c_int > , pub unmap_sg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut scatterlist , arg3 : :: cty :: c_int , arg4 : dma_data_direction , arg5 : :: cty :: c_ulong) > , pub map_resource : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : phys_addr_t , arg3 : size_t , arg4 : dma_data_direction , arg5 : :: cty :: c_ulong) -> dma_addr_t > , pub unmap_resource : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : dma_addr_t , arg3 : size_t , arg4 : dma_data_direction , arg5 : :: cty :: c_ulong) > , pub sync_single_for_cpu : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : dma_addr_t , arg3 : size_t , arg4 : dma_data_direction) > , pub sync_single_for_device : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : dma_addr_t , arg3 : size_t , arg4 : dma_data_direction) > , pub sync_sg_for_cpu : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut scatterlist , arg3 : :: cty :: c_int , arg4 : dma_data_direction) > , pub sync_sg_for_device : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut scatterlist , arg3 : :: cty :: c_int , arg4 : dma_data_direction) > , pub cache_sync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : * mut :: cty :: c_void , arg3 : size_t , arg4 : dma_data_direction) > , pub dma_supported : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device , arg2 : _cargo_bpf_u64) -> :: cty :: c_int > , pub get_required_mask : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> _cargo_bpf_u64 > , pub max_mapping_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> size_t > , pub get_merge_boundary : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut device) -> :: cty :: c_ulong > , } # [test] fn bindgen_test_layout_dma_map_ops () { assert_eq ! (:: core :: mem :: size_of :: < dma_map_ops > () , 184usize , concat ! ("Size of: " , stringify ! (dma_map_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < dma_map_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (dma_map_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . alloc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . free as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . alloc_pages as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (alloc_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . free_pages as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (free_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . alloc_noncontiguous as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (alloc_noncontiguous))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . free_noncontiguous as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (free_noncontiguous))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . mmap as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . get_sgtable as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (get_sgtable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . map_page as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (map_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . unmap_page as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (unmap_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . map_sg as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (map_sg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . unmap_sg as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (unmap_sg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . map_resource as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (map_resource))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . unmap_resource as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (unmap_resource))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . sync_single_for_cpu as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (sync_single_for_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . sync_single_for_device as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (sync_single_for_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . sync_sg_for_cpu as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (sync_sg_for_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . sync_sg_for_device as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (sync_sg_for_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . cache_sync as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (cache_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . dma_supported as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (dma_supported))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . get_required_mask as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (get_required_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . max_mapping_size as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (max_mapping_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dma_map_ops > ())) . get_merge_boundary as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (dma_map_ops) , "::" , stringify ! (get_merge_boundary))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bus_dma_region { pub cpu_start : phys_addr_t , pub dma_start : dma_addr_t , pub size : _cargo_bpf_u64 , pub offset : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_bus_dma_region () { assert_eq ! (:: core :: mem :: size_of :: < bus_dma_region > () , 32usize , concat ! ("Size of: " , stringify ! (bus_dma_region))) ; assert_eq ! (:: core :: mem :: align_of :: < bus_dma_region > () , 8usize , concat ! ("Alignment of " , stringify ! (bus_dma_region))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_dma_region > ())) . cpu_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bus_dma_region) , "::" , stringify ! (cpu_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_dma_region > ())) . dma_start as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bus_dma_region) , "::" , stringify ! (dma_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_dma_region > ())) . size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bus_dma_region) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bus_dma_region > ())) . offset as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bus_dma_region) , "::" , stringify ! (offset))) ; } pub type __le32 = __u32 ; pub type irq_hw_number_t = :: cty :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernel_symbol { pub value_offset : :: cty :: c_int , pub name_offset : :: cty :: c_int , pub namespace_offset : :: cty :: c_int , } # [test] fn bindgen_test_layout_kernel_symbol () { assert_eq ! (:: core :: mem :: size_of :: < kernel_symbol > () , 12usize , concat ! ("Size of: " , stringify ! (kernel_symbol))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_symbol > () , 4usize , concat ! ("Alignment of " , stringify ! (kernel_symbol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_symbol > ())) . value_offset as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_symbol) , "::" , stringify ! (value_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_symbol > ())) . name_offset as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kernel_symbol) , "::" , stringify ! (name_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_symbol > ())) . namespace_offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernel_symbol) , "::" , stringify ! (namespace_offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct static_call_mod { pub next : * mut static_call_mod , pub mod_ : * mut module , pub sites : * mut static_call_site , } # [test] fn bindgen_test_layout_static_call_mod () { assert_eq ! (:: core :: mem :: size_of :: < static_call_mod > () , 24usize , concat ! ("Size of: " , stringify ! (static_call_mod))) ; assert_eq ! (:: core :: mem :: align_of :: < static_call_mod > () , 8usize , concat ! ("Alignment of " , stringify ! (static_call_mod))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_mod > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (static_call_mod) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_mod > ())) . mod_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (static_call_mod) , "::" , stringify ! (mod_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < static_call_mod > ())) . sites as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (static_call_mod) , "::" , stringify ! (sites))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bug_entry { pub bug_addr_disp : :: cty :: c_int , pub file_disp : :: cty :: c_int , pub line : :: cty :: c_ushort , pub flags : :: cty :: c_ushort , } # [test] fn bindgen_test_layout_bug_entry () { assert_eq ! (:: core :: mem :: size_of :: < bug_entry > () , 12usize , concat ! ("Size of: " , stringify ! (bug_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < bug_entry > () , 4usize , concat ! ("Alignment of " , stringify ! (bug_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bug_entry > ())) . bug_addr_disp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bug_entry) , "::" , stringify ! (bug_addr_disp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bug_entry > ())) . file_disp as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bug_entry) , "::" , stringify ! (file_disp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bug_entry > ())) . line as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bug_entry) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bug_entry > ())) . flags as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (bug_entry) , "::" , stringify ! (flags))) ; } pub type tracepoint_ptr_t = :: cty :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_raw_event_map { pub tp : * mut tracepoint , pub bpf_func : * mut :: cty :: c_void , pub num_args : _cargo_bpf_u32 , pub writable_size : _cargo_bpf_u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_bpf_raw_event_map () { assert_eq ! (:: core :: mem :: size_of :: < bpf_raw_event_map > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_raw_event_map))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_raw_event_map > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_raw_event_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_raw_event_map > ())) . tp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_raw_event_map) , "::" , stringify ! (tp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_raw_event_map > ())) . bpf_func as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_raw_event_map) , "::" , stringify ! (bpf_func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_raw_event_map > ())) . num_args as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_raw_event_map) , "::" , stringify ! (num_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_raw_event_map > ())) . writable_size as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bpf_raw_event_map) , "::" , stringify ! (writable_size))) ; } impl bpf_raw_event_map { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } pub const perf_event_state_PERF_EVENT_STATE_DEAD : perf_event_state = 4294967292 ; pub const perf_event_state_PERF_EVENT_STATE_EXIT : perf_event_state = 4294967293 ; pub const perf_event_state_PERF_EVENT_STATE_ERROR : perf_event_state = 4294967294 ; pub const perf_event_state_PERF_EVENT_STATE_OFF : perf_event_state = 4294967295 ; pub const perf_event_state_PERF_EVENT_STATE_INACTIVE : perf_event_state = 0 ; pub const perf_event_state_PERF_EVENT_STATE_ACTIVE : perf_event_state = 1 ; pub type perf_event_state = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct local_t { pub a : atomic_long_t , } # [test] fn bindgen_test_layout_local_t () { assert_eq ! (:: core :: mem :: size_of :: < local_t > () , 8usize , concat ! ("Size of: " , stringify ! (local_t))) ; assert_eq ! (:: core :: mem :: align_of :: < local_t > () , 8usize , concat ! ("Alignment of " , stringify ! (local_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < local_t > ())) . a as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (local_t) , "::" , stringify ! (a))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct local64_t { pub a : local_t , } # [test] fn bindgen_test_layout_local64_t () { assert_eq ! (:: core :: mem :: size_of :: < local64_t > () , 8usize , concat ! ("Size of: " , stringify ! (local64_t))) ; assert_eq ! (:: core :: mem :: align_of :: < local64_t > () , 8usize , concat ! ("Alignment of " , stringify ! (local64_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < local64_t > ())) . a as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (local64_t) , "::" , stringify ! (a))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_event_attr { pub type_ : __u32 , pub size : __u32 , pub config : __u64 , pub __bindgen_anon_1 : perf_event_attr__bindgen_ty_1 , pub sample_type : __u64 , pub read_format : __u64 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub __bindgen_anon_2 : perf_event_attr__bindgen_ty_2 , pub bp_type : __u32 , pub __bindgen_anon_3 : perf_event_attr__bindgen_ty_3 , pub __bindgen_anon_4 : perf_event_attr__bindgen_ty_4 , pub branch_sample_type : __u64 , pub sample_regs_user : __u64 , pub sample_stack_user : __u32 , pub clockid : __s32 , pub sample_regs_intr : __u64 , pub aux_watermark : __u32 , pub sample_max_stack : __u16 , pub __reserved_2 : __u16 , pub aux_sample_size : __u32 , pub __reserved_3 : __u32 , pub sig_data : __u64 , } # [repr (C)] # [derive (Copy , Clone)] pub union perf_event_attr__bindgen_ty_1 { pub sample_period : __u64 , pub sample_freq : __u64 , } # [test] fn bindgen_test_layout_perf_event_attr__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_attr__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_event_attr__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_attr__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_attr__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_1 > ())) . sample_period as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_1) , "::" , stringify ! (sample_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_1 > ())) . sample_freq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_1) , "::" , stringify ! (sample_freq))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union perf_event_attr__bindgen_ty_2 { pub wakeup_events : __u32 , pub wakeup_watermark : __u32 , } # [test] fn bindgen_test_layout_perf_event_attr__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_attr__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (perf_event_attr__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_attr__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (perf_event_attr__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_2 > ())) . wakeup_events as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_2) , "::" , stringify ! (wakeup_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_2 > ())) . wakeup_watermark as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_2) , "::" , stringify ! (wakeup_watermark))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union perf_event_attr__bindgen_ty_3 { pub bp_addr : __u64 , pub kprobe_func : __u64 , pub uprobe_path : __u64 , pub config1 : __u64 , } # [test] fn bindgen_test_layout_perf_event_attr__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_attr__bindgen_ty_3 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_event_attr__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_attr__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_attr__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_3 > ())) . bp_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_3) , "::" , stringify ! (bp_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_3 > ())) . kprobe_func as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_3) , "::" , stringify ! (kprobe_func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_3 > ())) . uprobe_path as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_3) , "::" , stringify ! (uprobe_path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_3 > ())) . config1 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_3) , "::" , stringify ! (config1))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union perf_event_attr__bindgen_ty_4 { pub bp_len : __u64 , pub kprobe_addr : __u64 , pub probe_offset : __u64 , pub config2 : __u64 , } # [test] fn bindgen_test_layout_perf_event_attr__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_attr__bindgen_ty_4 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_event_attr__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_attr__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_attr__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_4 > ())) . bp_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_4) , "::" , stringify ! (bp_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_4 > ())) . kprobe_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_4) , "::" , stringify ! (kprobe_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_4 > ())) . probe_offset as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_4) , "::" , stringify ! (probe_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr__bindgen_ty_4 > ())) . config2 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr__bindgen_ty_4) , "::" , stringify ! (config2))) ; } # [test] fn bindgen_test_layout_perf_event_attr () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_attr > () , 128usize , concat ! ("Size of: " , stringify ! (perf_event_attr))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_attr > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . config as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . sample_type as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (sample_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . read_format as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (read_format))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . bp_type as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (bp_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . branch_sample_type as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (branch_sample_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . sample_regs_user as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (sample_regs_user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . sample_stack_user as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (sample_stack_user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . clockid as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (clockid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . sample_regs_intr as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (sample_regs_intr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . aux_watermark as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (aux_watermark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . sample_max_stack as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (sample_max_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . __reserved_2 as * const _ as usize } , 110usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (__reserved_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . aux_sample_size as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (aux_sample_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . __reserved_3 as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (__reserved_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_attr > ())) . sig_data as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (perf_event_attr) , "::" , stringify ! (sig_data))) ; } impl perf_event_attr { # [inline] pub fn disabled (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u64) } } # [inline] pub fn set_disabled (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn inherit (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u64) } } # [inline] pub fn set_inherit (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn pinned (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u64) } } # [inline] pub fn set_pinned (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn exclusive (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u64) } } # [inline] pub fn set_exclusive (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn exclude_user (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u64) } } # [inline] pub fn set_exclude_user (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn exclude_kernel (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u64) } } # [inline] pub fn set_exclude_kernel (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn exclude_hv (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u64) } } # [inline] pub fn set_exclude_hv (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn exclude_idle (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (7usize , 1u8) as u64) } } # [inline] pub fn set_exclude_idle (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn mmap (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_mmap (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn comm (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u64) } } # [inline] pub fn set_comm (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn freq (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u64) } } # [inline] pub fn set_freq (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn inherit_stat (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u64) } } # [inline] pub fn set_inherit_stat (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn enable_on_exec (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (12usize , 1u8) as u64) } } # [inline] pub fn set_enable_on_exec (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn task (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (13usize , 1u8) as u64) } } # [inline] pub fn set_task (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn watermark (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (14usize , 1u8) as u64) } } # [inline] pub fn set_watermark (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 1u8 , val as u64) } } # [inline] pub fn precise_ip (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (15usize , 2u8) as u64) } } # [inline] pub fn set_precise_ip (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 2u8 , val as u64) } } # [inline] pub fn mmap_data (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (17usize , 1u8) as u64) } } # [inline] pub fn set_mmap_data (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (17usize , 1u8 , val as u64) } } # [inline] pub fn sample_id_all (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (18usize , 1u8) as u64) } } # [inline] pub fn set_sample_id_all (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (18usize , 1u8 , val as u64) } } # [inline] pub fn exclude_host (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (19usize , 1u8) as u64) } } # [inline] pub fn set_exclude_host (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 1u8 , val as u64) } } # [inline] pub fn exclude_guest (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (20usize , 1u8) as u64) } } # [inline] pub fn set_exclude_guest (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (20usize , 1u8 , val as u64) } } # [inline] pub fn exclude_callchain_kernel (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (21usize , 1u8) as u64) } } # [inline] pub fn set_exclude_callchain_kernel (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (21usize , 1u8 , val as u64) } } # [inline] pub fn exclude_callchain_user (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (22usize , 1u8) as u64) } } # [inline] pub fn set_exclude_callchain_user (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (22usize , 1u8 , val as u64) } } # [inline] pub fn mmap2 (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (23usize , 1u8) as u64) } } # [inline] pub fn set_mmap2 (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (23usize , 1u8 , val as u64) } } # [inline] pub fn comm_exec (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (24usize , 1u8) as u64) } } # [inline] pub fn set_comm_exec (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 1u8 , val as u64) } } # [inline] pub fn use_clockid (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (25usize , 1u8) as u64) } } # [inline] pub fn set_use_clockid (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (25usize , 1u8 , val as u64) } } # [inline] pub fn context_switch (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (26usize , 1u8) as u64) } } # [inline] pub fn set_context_switch (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (26usize , 1u8 , val as u64) } } # [inline] pub fn write_backward (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (27usize , 1u8) as u64) } } # [inline] pub fn set_write_backward (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (27usize , 1u8 , val as u64) } } # [inline] pub fn namespaces (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (28usize , 1u8) as u64) } } # [inline] pub fn set_namespaces (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (28usize , 1u8 , val as u64) } } # [inline] pub fn ksymbol (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (29usize , 1u8) as u64) } } # [inline] pub fn set_ksymbol (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (29usize , 1u8 , val as u64) } } # [inline] pub fn bpf_event (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (30usize , 1u8) as u64) } } # [inline] pub fn set_bpf_event (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (30usize , 1u8 , val as u64) } } # [inline] pub fn aux_output (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (31usize , 1u8) as u64) } } # [inline] pub fn set_aux_output (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (31usize , 1u8 , val as u64) } } # [inline] pub fn cgroup (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (32usize , 1u8) as u64) } } # [inline] pub fn set_cgroup (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (32usize , 1u8 , val as u64) } } # [inline] pub fn text_poke (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (33usize , 1u8) as u64) } } # [inline] pub fn set_text_poke (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (33usize , 1u8 , val as u64) } } # [inline] pub fn build_id (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (34usize , 1u8) as u64) } } # [inline] pub fn set_build_id (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (34usize , 1u8 , val as u64) } } # [inline] pub fn inherit_thread (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (35usize , 1u8) as u64) } } # [inline] pub fn set_inherit_thread (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (35usize , 1u8 , val as u64) } } # [inline] pub fn remove_on_exec (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (36usize , 1u8) as u64) } } # [inline] pub fn set_remove_on_exec (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (36usize , 1u8 , val as u64) } } # [inline] pub fn sigtrap (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (37usize , 1u8) as u64) } } # [inline] pub fn set_sigtrap (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (37usize , 1u8 , val as u64) } } # [inline] pub fn __reserved_1 (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (38usize , 26u8) as u64) } } # [inline] pub fn set___reserved_1 (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (38usize , 26u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (disabled : __u64 , inherit : __u64 , pinned : __u64 , exclusive : __u64 , exclude_user : __u64 , exclude_kernel : __u64 , exclude_hv : __u64 , exclude_idle : __u64 , mmap : __u64 , comm : __u64 , freq : __u64 , inherit_stat : __u64 , enable_on_exec : __u64 , task : __u64 , watermark : __u64 , precise_ip : __u64 , mmap_data : __u64 , sample_id_all : __u64 , exclude_host : __u64 , exclude_guest : __u64 , exclude_callchain_kernel : __u64 , exclude_callchain_user : __u64 , mmap2 : __u64 , comm_exec : __u64 , use_clockid : __u64 , context_switch : __u64 , write_backward : __u64 , namespaces : __u64 , ksymbol : __u64 , bpf_event : __u64 , aux_output : __u64 , cgroup : __u64 , text_poke : __u64 , build_id : __u64 , inherit_thread : __u64 , remove_on_exec : __u64 , sigtrap : __u64 , __reserved_1 : __u64) -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let disabled : u64 = unsafe { :: core :: mem :: transmute (disabled) } ; disabled as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let inherit : u64 = unsafe { :: core :: mem :: transmute (inherit) } ; inherit as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let pinned : u64 = unsafe { :: core :: mem :: transmute (pinned) } ; pinned as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let exclusive : u64 = unsafe { :: core :: mem :: transmute (exclusive) } ; exclusive as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let exclude_user : u64 = unsafe { :: core :: mem :: transmute (exclude_user) } ; exclude_user as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let exclude_kernel : u64 = unsafe { :: core :: mem :: transmute (exclude_kernel) } ; exclude_kernel as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let exclude_hv : u64 = unsafe { :: core :: mem :: transmute (exclude_hv) } ; exclude_hv as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let exclude_idle : u64 = unsafe { :: core :: mem :: transmute (exclude_idle) } ; exclude_idle as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let mmap : u64 = unsafe { :: core :: mem :: transmute (mmap) } ; mmap as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let comm : u64 = unsafe { :: core :: mem :: transmute (comm) } ; comm as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let freq : u64 = unsafe { :: core :: mem :: transmute (freq) } ; freq as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let inherit_stat : u64 = unsafe { :: core :: mem :: transmute (inherit_stat) } ; inherit_stat as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let enable_on_exec : u64 = unsafe { :: core :: mem :: transmute (enable_on_exec) } ; enable_on_exec as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let task : u64 = unsafe { :: core :: mem :: transmute (task) } ; task as u64 }) ; __bindgen_bitfield_unit . set (14usize , 1u8 , { let watermark : u64 = unsafe { :: core :: mem :: transmute (watermark) } ; watermark as u64 }) ; __bindgen_bitfield_unit . set (15usize , 2u8 , { let precise_ip : u64 = unsafe { :: core :: mem :: transmute (precise_ip) } ; precise_ip as u64 }) ; __bindgen_bitfield_unit . set (17usize , 1u8 , { let mmap_data : u64 = unsafe { :: core :: mem :: transmute (mmap_data) } ; mmap_data as u64 }) ; __bindgen_bitfield_unit . set (18usize , 1u8 , { let sample_id_all : u64 = unsafe { :: core :: mem :: transmute (sample_id_all) } ; sample_id_all as u64 }) ; __bindgen_bitfield_unit . set (19usize , 1u8 , { let exclude_host : u64 = unsafe { :: core :: mem :: transmute (exclude_host) } ; exclude_host as u64 }) ; __bindgen_bitfield_unit . set (20usize , 1u8 , { let exclude_guest : u64 = unsafe { :: core :: mem :: transmute (exclude_guest) } ; exclude_guest as u64 }) ; __bindgen_bitfield_unit . set (21usize , 1u8 , { let exclude_callchain_kernel : u64 = unsafe { :: core :: mem :: transmute (exclude_callchain_kernel) } ; exclude_callchain_kernel as u64 }) ; __bindgen_bitfield_unit . set (22usize , 1u8 , { let exclude_callchain_user : u64 = unsafe { :: core :: mem :: transmute (exclude_callchain_user) } ; exclude_callchain_user as u64 }) ; __bindgen_bitfield_unit . set (23usize , 1u8 , { let mmap2 : u64 = unsafe { :: core :: mem :: transmute (mmap2) } ; mmap2 as u64 }) ; __bindgen_bitfield_unit . set (24usize , 1u8 , { let comm_exec : u64 = unsafe { :: core :: mem :: transmute (comm_exec) } ; comm_exec as u64 }) ; __bindgen_bitfield_unit . set (25usize , 1u8 , { let use_clockid : u64 = unsafe { :: core :: mem :: transmute (use_clockid) } ; use_clockid as u64 }) ; __bindgen_bitfield_unit . set (26usize , 1u8 , { let context_switch : u64 = unsafe { :: core :: mem :: transmute (context_switch) } ; context_switch as u64 }) ; __bindgen_bitfield_unit . set (27usize , 1u8 , { let write_backward : u64 = unsafe { :: core :: mem :: transmute (write_backward) } ; write_backward as u64 }) ; __bindgen_bitfield_unit . set (28usize , 1u8 , { let namespaces : u64 = unsafe { :: core :: mem :: transmute (namespaces) } ; namespaces as u64 }) ; __bindgen_bitfield_unit . set (29usize , 1u8 , { let ksymbol : u64 = unsafe { :: core :: mem :: transmute (ksymbol) } ; ksymbol as u64 }) ; __bindgen_bitfield_unit . set (30usize , 1u8 , { let bpf_event : u64 = unsafe { :: core :: mem :: transmute (bpf_event) } ; bpf_event as u64 }) ; __bindgen_bitfield_unit . set (31usize , 1u8 , { let aux_output : u64 = unsafe { :: core :: mem :: transmute (aux_output) } ; aux_output as u64 }) ; __bindgen_bitfield_unit . set (32usize , 1u8 , { let cgroup : u64 = unsafe { :: core :: mem :: transmute (cgroup) } ; cgroup as u64 }) ; __bindgen_bitfield_unit . set (33usize , 1u8 , { let text_poke : u64 = unsafe { :: core :: mem :: transmute (text_poke) } ; text_poke as u64 }) ; __bindgen_bitfield_unit . set (34usize , 1u8 , { let build_id : u64 = unsafe { :: core :: mem :: transmute (build_id) } ; build_id as u64 }) ; __bindgen_bitfield_unit . set (35usize , 1u8 , { let inherit_thread : u64 = unsafe { :: core :: mem :: transmute (inherit_thread) } ; inherit_thread as u64 }) ; __bindgen_bitfield_unit . set (36usize , 1u8 , { let remove_on_exec : u64 = unsafe { :: core :: mem :: transmute (remove_on_exec) } ; remove_on_exec as u64 }) ; __bindgen_bitfield_unit . set (37usize , 1u8 , { let sigtrap : u64 = unsafe { :: core :: mem :: transmute (sigtrap) } ; sigtrap as u64 }) ; __bindgen_bitfield_unit . set (38usize , 26u8 , { let __reserved_1 : u64 = unsafe { :: core :: mem :: transmute (__reserved_1) } ; __reserved_1 as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event_extra { pub config : _cargo_bpf_u64 , pub reg : :: cty :: c_uint , pub alloc : :: cty :: c_int , pub idx : :: cty :: c_int , } # [test] fn bindgen_test_layout_hw_perf_event_extra () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event_extra > () , 24usize , concat ! ("Size of: " , stringify ! (hw_perf_event_extra))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event_extra > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event_extra))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event_extra > ())) . config as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event_extra) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event_extra > ())) . reg as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event_extra) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event_extra > ())) . alloc as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event_extra) , "::" , stringify ! (alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event_extra > ())) . idx as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event_extra) , "::" , stringify ! (idx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct arch_hw_breakpoint { pub address : :: cty :: c_ulong , pub mask : :: cty :: c_ulong , pub len : _cargo_bpf_u8 , pub type_ : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_arch_hw_breakpoint () { assert_eq ! (:: core :: mem :: size_of :: < arch_hw_breakpoint > () , 24usize , concat ! ("Size of: " , stringify ! (arch_hw_breakpoint))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_hw_breakpoint > () , 8usize , concat ! ("Alignment of " , stringify ! (arch_hw_breakpoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_hw_breakpoint > ())) . address as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_hw_breakpoint) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_hw_breakpoint > ())) . mask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (arch_hw_breakpoint) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_hw_breakpoint > ())) . len as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (arch_hw_breakpoint) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_hw_breakpoint > ())) . type_ as * const _ as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (arch_hw_breakpoint) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct hw_perf_event { pub __bindgen_anon_1 : hw_perf_event__bindgen_ty_1 , pub target : * mut task_struct , pub addr_filters : * mut :: cty :: c_void , pub addr_filters_gen : :: cty :: c_ulong , pub state : :: cty :: c_int , pub prev_count : local64_t , pub sample_period : _cargo_bpf_u64 , pub __bindgen_anon_2 : hw_perf_event__bindgen_ty_2 , pub interrupts_seq : _cargo_bpf_u64 , pub interrupts : _cargo_bpf_u64 , pub freq_time_stamp : _cargo_bpf_u64 , pub freq_count_stamp : _cargo_bpf_u64 , } # [repr (C)] # [derive (Copy , Clone)] pub union hw_perf_event__bindgen_ty_1 { pub __bindgen_anon_1 : hw_perf_event__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : hw_perf_event__bindgen_ty_1__bindgen_ty_2 , pub __bindgen_anon_3 : hw_perf_event__bindgen_ty_1__bindgen_ty_3 , pub __bindgen_anon_4 : hw_perf_event__bindgen_ty_1__bindgen_ty_4 , pub __bindgen_anon_5 : hw_perf_event__bindgen_ty_1__bindgen_ty_5 , pub __bindgen_anon_6 : hw_perf_event__bindgen_ty_1__bindgen_ty_6 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_1__bindgen_ty_1 { pub config : _cargo_bpf_u64 , pub last_tag : _cargo_bpf_u64 , pub config_base : :: cty :: c_ulong , pub event_base : :: cty :: c_ulong , pub event_base_rdpmc : :: cty :: c_int , pub idx : :: cty :: c_int , pub last_cpu : :: cty :: c_int , pub flags : :: cty :: c_int , pub extra_reg : hw_perf_event_extra , pub branch_reg : hw_perf_event_extra , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > () , 96usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . config as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . last_tag as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (last_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . config_base as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (config_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . event_base as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (event_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . event_base_rdpmc as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (event_base_rdpmc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . idx as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . last_cpu as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (last_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . flags as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . extra_reg as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (extra_reg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_1 > ())) . branch_reg as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (branch_reg))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_1__bindgen_ty_2 { pub hrtimer : hrtimer , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_2 > () , 64usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_2 > ())) . hrtimer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (hrtimer))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_1__bindgen_ty_3 { pub tp_list : list_head , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_3 > ())) . tp_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (tp_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_1__bindgen_ty_4 { pub pwr_acc : _cargo_bpf_u64 , pub ptsc : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_4 > () , 16usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_4 > ())) . pwr_acc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (pwr_acc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_4 > ())) . ptsc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (ptsc))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_1__bindgen_ty_5 { pub info : arch_hw_breakpoint , pub bp_list : list_head , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_5 > () , 40usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_5 > ())) . info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_5 > ())) . bp_list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (bp_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_1__bindgen_ty_6 { pub iommu_bank : _cargo_bpf_u8 , pub iommu_cntr : _cargo_bpf_u8 , pub padding : _cargo_bpf_u16 , pub conf : _cargo_bpf_u64 , pub conf1 : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > () , 24usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > ())) . iommu_bank as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (iommu_bank))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > ())) . iommu_cntr as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (iommu_cntr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > ())) . padding as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > ())) . conf as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (conf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_1__bindgen_ty_6 > ())) . conf1 as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (conf1))) ; } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_1 > () , 96usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_1))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union hw_perf_event__bindgen_ty_2 { pub __bindgen_anon_1 : hw_perf_event__bindgen_ty_2__bindgen_ty_1 , pub __bindgen_anon_2 : hw_perf_event__bindgen_ty_2__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_2__bindgen_ty_1 { pub last_period : _cargo_bpf_u64 , pub period_left : local64_t , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_2__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_2__bindgen_ty_1 > ())) . last_period as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (last_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_2__bindgen_ty_1 > ())) . period_left as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (period_left))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hw_perf_event__bindgen_ty_2__bindgen_ty_2 { pub saved_metric : _cargo_bpf_u64 , pub saved_slots : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_2__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_2__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_2__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_2__bindgen_ty_2 > ())) . saved_metric as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_2) , "::" , stringify ! (saved_metric))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event__bindgen_ty_2__bindgen_ty_2 > ())) . saved_slots as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event__bindgen_ty_2__bindgen_ty_2) , "::" , stringify ! (saved_slots))) ; } # [test] fn bindgen_test_layout_hw_perf_event__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (hw_perf_event__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event__bindgen_ty_2))) ; } # [test] fn bindgen_test_layout_hw_perf_event () { assert_eq ! (:: core :: mem :: size_of :: < hw_perf_event > () , 192usize , concat ! ("Size of: " , stringify ! (hw_perf_event))) ; assert_eq ! (:: core :: mem :: align_of :: < hw_perf_event > () , 8usize , concat ! ("Alignment of " , stringify ! (hw_perf_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . target as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . addr_filters as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (addr_filters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . addr_filters_gen as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (addr_filters_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . state as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . prev_count as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (prev_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . sample_period as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (sample_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . interrupts_seq as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (interrupts_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . interrupts as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . freq_time_stamp as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (freq_time_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hw_perf_event > ())) . freq_count_stamp as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (hw_perf_event) , "::" , stringify ! (freq_count_stamp))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct irq_work { pub node : __call_single_node , pub func : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_work) > , } # [test] fn bindgen_test_layout_irq_work () { assert_eq ! (:: core :: mem :: size_of :: < irq_work > () , 24usize , concat ! ("Size of: " , stringify ! (irq_work))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_work > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_work > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_work) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_work > ())) . func as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_work) , "::" , stringify ! (func))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_addr_filters_head { pub list : list_head , pub lock : raw_spinlock_t , pub nr_file_filters : :: cty :: c_uint , } # [test] fn bindgen_test_layout_perf_addr_filters_head () { assert_eq ! (:: core :: mem :: size_of :: < perf_addr_filters_head > () , 24usize , concat ! ("Size of: " , stringify ! (perf_addr_filters_head))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_addr_filters_head > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_addr_filters_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_addr_filters_head > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_addr_filters_head) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_addr_filters_head > ())) . lock as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_addr_filters_head) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_addr_filters_head > ())) . nr_file_filters as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (perf_addr_filters_head) , "::" , stringify ! (nr_file_filters))) ; } pub type perf_overflow_handler_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : * mut perf_sample_data , arg3 : * mut pt_regs) > ; pub type ftrace_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_ulong , arg2 : :: cty :: c_ulong , arg3 : * mut ftrace_ops , arg4 : * mut ftrace_regs) > ; # [repr (C)] # [derive (Copy , Clone)] pub struct ftrace_ops_hash { pub notrace_hash : * mut ftrace_hash , pub filter_hash : * mut ftrace_hash , pub regex_lock : mutex , } # [test] fn bindgen_test_layout_ftrace_ops_hash () { assert_eq ! (:: core :: mem :: size_of :: < ftrace_ops_hash > () , 48usize , concat ! ("Size of: " , stringify ! (ftrace_ops_hash))) ; assert_eq ! (:: core :: mem :: align_of :: < ftrace_ops_hash > () , 8usize , concat ! ("Alignment of " , stringify ! (ftrace_ops_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops_hash > ())) . notrace_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops_hash) , "::" , stringify ! (notrace_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops_hash > ())) . filter_hash as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops_hash) , "::" , stringify ! (filter_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops_hash > ())) . regex_lock as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops_hash) , "::" , stringify ! (regex_lock))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ftrace_ops { pub func : ftrace_func_t , pub next : * mut ftrace_ops , pub flags : :: cty :: c_ulong , pub private : * mut :: cty :: c_void , pub saved_func : ftrace_func_t , pub local_hash : ftrace_ops_hash , pub func_hash : * mut ftrace_ops_hash , pub old_hash : ftrace_ops_hash , pub trampoline : :: cty :: c_ulong , pub trampoline_size : :: cty :: c_ulong , pub list : list_head , } # [test] fn bindgen_test_layout_ftrace_ops () { assert_eq ! (:: core :: mem :: size_of :: < ftrace_ops > () , 176usize , concat ! ("Size of: " , stringify ! (ftrace_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < ftrace_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (ftrace_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . func as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . next as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . private as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . saved_func as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (saved_func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . local_hash as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (local_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . func_hash as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (func_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . old_hash as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (old_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . trampoline as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (trampoline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . trampoline_size as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (trampoline_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ops > ())) . list as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (ftrace_ops) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_event { pub event_entry : list_head , pub sibling_list : list_head , pub active_list : list_head , pub group_node : rb_node , pub group_index : _cargo_bpf_u64 , pub migrate_entry : list_head , pub hlist_entry : hlist_node , pub active_entry : list_head , pub nr_siblings : :: cty :: c_int , pub event_caps : :: cty :: c_int , pub group_caps : :: cty :: c_int , pub group_leader : * mut perf_event , pub pmu : * mut pmu , pub pmu_private : * mut :: cty :: c_void , pub state : perf_event_state , pub attach_state : :: cty :: c_uint , pub count : local64_t , pub child_count : atomic64_t , pub total_time_enabled : _cargo_bpf_u64 , pub total_time_running : _cargo_bpf_u64 , pub tstamp : _cargo_bpf_u64 , pub shadow_ctx_time : _cargo_bpf_u64 , pub attr : perf_event_attr , pub header_size : _cargo_bpf_u16 , pub id_header_size : _cargo_bpf_u16 , pub read_size : _cargo_bpf_u16 , pub hw : hw_perf_event , pub ctx : * mut perf_event_context , pub refcount : atomic_long_t , pub child_total_time_enabled : atomic64_t , pub child_total_time_running : atomic64_t , pub child_mutex : mutex , pub child_list : list_head , pub parent : * mut perf_event , pub oncpu : :: cty :: c_int , pub cpu : :: cty :: c_int , pub owner_entry : list_head , pub owner : * mut task_struct , pub mmap_mutex : mutex , pub mmap_count : atomic_t , pub rb : * mut perf_buffer , pub rb_entry : list_head , pub rcu_batches : :: cty :: c_ulong , pub rcu_pending : :: cty :: c_int , pub waitq : wait_queue_head_t , pub fasync : * mut fasync_struct , pub pending_wakeup : :: cty :: c_int , pub pending_kill : :: cty :: c_int , pub pending_disable : :: cty :: c_int , pub pending_addr : :: cty :: c_ulong , pub pending : irq_work , pub event_limit : atomic_t , pub addr_filters : perf_addr_filters_head , pub addr_filter_ranges : * mut perf_addr_filter_range , pub addr_filters_gen : :: cty :: c_ulong , pub aux_event : * mut perf_event , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) > , pub callback_head : callback_head , pub ns : * mut pid_namespace , pub id : _cargo_bpf_u64 , pub clock : :: core :: option :: Option < unsafe extern "C" fn () -> _cargo_bpf_u64 > , pub overflow_handler : perf_overflow_handler_t , pub overflow_handler_context : * mut :: cty :: c_void , pub orig_overflow_handler : perf_overflow_handler_t , pub prog : * mut bpf_prog , pub tp_event : * mut trace_event_call , pub filter : * mut event_filter , pub ftrace_ops : ftrace_ops , pub cgrp : * mut perf_cgroup , pub security : * mut :: cty :: c_void , pub sb_list : list_head , } # [test] fn bindgen_test_layout_perf_event () { assert_eq ! (:: core :: mem :: size_of :: < perf_event > () , 1192usize , concat ! ("Size of: " , stringify ! (perf_event))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . event_entry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (event_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . sibling_list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (sibling_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . active_list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (active_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . group_node as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (group_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . group_index as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (group_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . migrate_entry as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (migrate_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . hlist_entry as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (hlist_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . active_entry as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (active_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . nr_siblings as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (nr_siblings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . event_caps as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (event_caps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . group_caps as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (group_caps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . group_leader as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (group_leader))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pmu as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pmu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pmu_private as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pmu_private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . state as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . attach_state as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (attach_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . count as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . child_count as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (child_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . total_time_enabled as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (total_time_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . total_time_running as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (total_time_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . tstamp as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . shadow_ctx_time as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (shadow_ctx_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . attr as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . header_size as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (header_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . id_header_size as * const _ as usize } , 354usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (id_header_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . read_size as * const _ as usize } , 356usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (read_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . hw as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (hw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . ctx as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . refcount as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . child_total_time_enabled as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (child_total_time_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . child_total_time_running as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (child_total_time_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . child_mutex as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (child_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . child_list as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (child_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . parent as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . oncpu as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (oncpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . cpu as * const _ as usize } , 644usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . owner_entry as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (owner_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . owner as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . mmap_mutex as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (mmap_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . mmap_count as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (mmap_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . rb as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (rb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . rb_entry as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (rb_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . rcu_batches as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (rcu_batches))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . rcu_pending as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (rcu_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . waitq as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (waitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . fasync as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (fasync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pending_wakeup as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pending_wakeup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pending_kill as * const _ as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pending_kill))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pending_disable as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pending_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pending_addr as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pending_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . pending as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . event_limit as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (event_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . addr_filters as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (addr_filters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . addr_filter_ranges as * const _ as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (addr_filter_ranges))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . addr_filters_gen as * const _ as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (addr_filters_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . aux_event as * const _ as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (aux_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . destroy as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . callback_head as * const _ as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (callback_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . ns as * const _ as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . id as * const _ as usize } , 920usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . clock as * const _ as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (clock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . overflow_handler as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (overflow_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . overflow_handler_context as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (overflow_handler_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . orig_overflow_handler as * const _ as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (orig_overflow_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . prog as * const _ as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . tp_event as * const _ as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (tp_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . filter as * const _ as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . ftrace_ops as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (ftrace_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . cgrp as * const _ as usize } , 1160usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . security as * const _ as usize } , 1168usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event > ())) . sb_list as * const _ as usize } , 1176usize , concat ! ("Offset of field: " , stringify ! (perf_event) , "::" , stringify ! (sb_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uid_gid_extent { pub first : _cargo_bpf_u32 , pub lower_first : _cargo_bpf_u32 , pub count : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_uid_gid_extent () { assert_eq ! (:: core :: mem :: size_of :: < uid_gid_extent > () , 12usize , concat ! ("Size of: " , stringify ! (uid_gid_extent))) ; assert_eq ! (:: core :: mem :: align_of :: < uid_gid_extent > () , 4usize , concat ! ("Alignment of " , stringify ! (uid_gid_extent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_extent > ())) . first as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uid_gid_extent) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_extent > ())) . lower_first as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (uid_gid_extent) , "::" , stringify ! (lower_first))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_extent > ())) . count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (uid_gid_extent) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct uid_gid_map { pub nr_extents : _cargo_bpf_u32 , pub __bindgen_anon_1 : uid_gid_map__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union uid_gid_map__bindgen_ty_1 { pub extent : [uid_gid_extent ; 5usize] , pub __bindgen_anon_1 : uid_gid_map__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uid_gid_map__bindgen_ty_1__bindgen_ty_1 { pub forward : * mut uid_gid_extent , pub reverse : * mut uid_gid_extent , } # [test] fn bindgen_test_layout_uid_gid_map__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < uid_gid_map__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (uid_gid_map__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < uid_gid_map__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (uid_gid_map__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_map__bindgen_ty_1__bindgen_ty_1 > ())) . forward as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uid_gid_map__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (forward))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_map__bindgen_ty_1__bindgen_ty_1 > ())) . reverse as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (uid_gid_map__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (reverse))) ; } # [test] fn bindgen_test_layout_uid_gid_map__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < uid_gid_map__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (uid_gid_map__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < uid_gid_map__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (uid_gid_map__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_map__bindgen_ty_1 > ())) . extent as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uid_gid_map__bindgen_ty_1) , "::" , stringify ! (extent))) ; } # [test] fn bindgen_test_layout_uid_gid_map () { assert_eq ! (:: core :: mem :: size_of :: < uid_gid_map > () , 72usize , concat ! ("Size of: " , stringify ! (uid_gid_map))) ; assert_eq ! (:: core :: mem :: align_of :: < uid_gid_map > () , 8usize , concat ! ("Alignment of " , stringify ! (uid_gid_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uid_gid_map > ())) . nr_extents as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uid_gid_map) , "::" , stringify ! (nr_extents))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ns_common { pub stashed : atomic_long_t , pub ops : * const proc_ns_operations , pub inum : :: cty :: c_uint , pub count : refcount_t , } # [test] fn bindgen_test_layout_ns_common () { assert_eq ! (:: core :: mem :: size_of :: < ns_common > () , 24usize , concat ! ("Size of: " , stringify ! (ns_common))) ; assert_eq ! (:: core :: mem :: align_of :: < ns_common > () , 8usize , concat ! ("Alignment of " , stringify ! (ns_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ns_common > ())) . stashed as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ns_common) , "::" , stringify ! (stashed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ns_common > ())) . ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ns_common) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ns_common > ())) . inum as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ns_common) , "::" , stringify ! (inum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ns_common > ())) . count as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (ns_common) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ctl_table_header { pub __bindgen_anon_1 : ctl_table_header__bindgen_ty_1 , pub unregistering : * mut completion , pub ctl_table_arg : * mut ctl_table , pub root : * mut ctl_table_root , pub set : * mut ctl_table_set , pub parent : * mut ctl_dir , pub node : * mut ctl_node , pub inodes : hlist_head , } # [repr (C)] # [derive (Copy , Clone)] pub union ctl_table_header__bindgen_ty_1 { pub __bindgen_anon_1 : ctl_table_header__bindgen_ty_1__bindgen_ty_1 , pub rcu : callback_head , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ctl_table_header__bindgen_ty_1__bindgen_ty_1 { pub ctl_table : * mut ctl_table , pub used : :: cty :: c_int , pub count : :: cty :: c_int , pub nreg : :: cty :: c_int , } # [test] fn bindgen_test_layout_ctl_table_header__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table_header__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (ctl_table_header__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table_header__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table_header__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header__bindgen_ty_1__bindgen_ty_1 > ())) . ctl_table as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (ctl_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header__bindgen_ty_1__bindgen_ty_1 > ())) . used as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header__bindgen_ty_1__bindgen_ty_1 > ())) . count as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header__bindgen_ty_1__bindgen_ty_1 > ())) . nreg as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (nreg))) ; } # [test] fn bindgen_test_layout_ctl_table_header__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table_header__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (ctl_table_header__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table_header__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table_header__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_ctl_table_header () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table_header > () , 80usize , concat ! ("Size of: " , stringify ! (ctl_table_header))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table_header > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . unregistering as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (unregistering))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . ctl_table_arg as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (ctl_table_arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . root as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . set as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . parent as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . node as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_header > ())) . inodes as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ctl_table_header) , "::" , stringify ! (inodes))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ctl_dir { pub header : ctl_table_header , pub root : rb_root , } # [test] fn bindgen_test_layout_ctl_dir () { assert_eq ! (:: core :: mem :: size_of :: < ctl_dir > () , 88usize , concat ! ("Size of: " , stringify ! (ctl_dir))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_dir > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_dir > ())) . header as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_dir) , "::" , stringify ! (header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_dir > ())) . root as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (ctl_dir) , "::" , stringify ! (root))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ctl_table_set { pub is_seen : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ctl_table_set) -> :: cty :: c_int > , pub dir : ctl_dir , } # [test] fn bindgen_test_layout_ctl_table_set () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table_set > () , 96usize , concat ! ("Size of: " , stringify ! (ctl_table_set))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table_set > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_set > ())) . is_seen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_table_set) , "::" , stringify ! (is_seen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_set > ())) . dir as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ctl_table_set) , "::" , stringify ! (dir))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct user_namespace { pub uid_map : uid_gid_map , pub gid_map : uid_gid_map , pub projid_map : uid_gid_map , pub parent : * mut user_namespace , pub level : :: cty :: c_int , pub owner : kuid_t , pub group : kgid_t , pub ns : ns_common , pub flags : :: cty :: c_ulong , pub parent_could_setfcap : bool_ , pub keyring_name_list : list_head , pub user_keyring_register : * mut key , pub keyring_sem : rw_semaphore , pub persistent_keyring_register : * mut key , pub work : work_struct , pub set : ctl_table_set , pub sysctls : * mut ctl_table_header , pub ucounts : * mut ucounts , pub ucount_max : [:: cty :: c_int ; 12usize] , } # [test] fn bindgen_test_layout_user_namespace () { assert_eq ! (:: core :: mem :: size_of :: < user_namespace > () , 544usize , concat ! ("Size of: " , stringify ! (user_namespace))) ; assert_eq ! (:: core :: mem :: align_of :: < user_namespace > () , 8usize , concat ! ("Alignment of " , stringify ! (user_namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . uid_map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (uid_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . gid_map as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (gid_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . projid_map as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (projid_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . parent as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . level as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . owner as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . group as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . ns as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . flags as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . parent_could_setfcap as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (parent_could_setfcap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . keyring_name_list as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (keyring_name_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . user_keyring_register as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (user_keyring_register))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . keyring_sem as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (keyring_sem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . persistent_keyring_register as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (persistent_keyring_register))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . work as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . set as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . sysctls as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (sysctls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . ucounts as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < user_namespace > ())) . ucount_max as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (user_namespace) , "::" , stringify ! (ucount_max))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pollfd { pub fd : :: cty :: c_int , pub events : :: cty :: c_short , pub revents : :: cty :: c_short , } # [test] fn bindgen_test_layout_pollfd () { assert_eq ! (:: core :: mem :: size_of :: < pollfd > () , 8usize , concat ! ("Size of: " , stringify ! (pollfd))) ; assert_eq ! (:: core :: mem :: align_of :: < pollfd > () , 4usize , concat ! ("Alignment of " , stringify ! (pollfd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pollfd > ())) . fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pollfd > ())) . events as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pollfd > ())) . revents as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (pollfd) , "::" , stringify ! (revents))) ; } pub type smp_call_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > ; # [repr (C)] # [derive (Copy , Clone)] pub struct __call_single_data { pub node : __call_single_node , pub func : smp_call_func_t , pub info : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout___call_single_data () { assert_eq ! (:: core :: mem :: size_of :: < __call_single_data > () , 32usize , concat ! ("Size of: " , stringify ! (__call_single_data))) ; assert_eq ! (:: core :: mem :: align_of :: < __call_single_data > () , 8usize , concat ! ("Alignment of " , stringify ! (__call_single_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_data > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__call_single_data) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_data > ())) . func as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__call_single_data) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __call_single_data > ())) . info as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__call_single_data) , "::" , stringify ! (info))) ; } pub type wait_queue_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut wait_queue_entry , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_int , arg4 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct wait_queue_entry { pub flags : :: cty :: c_uint , pub private : * mut :: cty :: c_void , pub func : wait_queue_func_t , pub entry : list_head , } # [test] fn bindgen_test_layout_wait_queue_entry () { assert_eq ! (:: core :: mem :: size_of :: < wait_queue_entry > () , 40usize , concat ! ("Size of: " , stringify ! (wait_queue_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < wait_queue_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (wait_queue_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_queue_entry > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wait_queue_entry) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_queue_entry > ())) . private as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wait_queue_entry) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_queue_entry > ())) . func as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (wait_queue_entry) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_queue_entry > ())) . entry as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (wait_queue_entry) , "::" , stringify ! (entry))) ; } pub type wait_queue_entry_t = wait_queue_entry ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct delayed_work { pub work : work_struct , pub timer : timer_list , pub wq : * mut workqueue_struct , pub cpu : :: cty :: c_int , } # [test] fn bindgen_test_layout_delayed_work () { assert_eq ! (:: core :: mem :: size_of :: < delayed_work > () , 88usize , concat ! ("Size of: " , stringify ! (delayed_work))) ; assert_eq ! (:: core :: mem :: align_of :: < delayed_work > () , 8usize , concat ! ("Alignment of " , stringify ! (delayed_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < delayed_work > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (delayed_work) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < delayed_work > ())) . timer as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (delayed_work) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < delayed_work > ())) . wq as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (delayed_work) , "::" , stringify ! (wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < delayed_work > ())) . cpu as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (delayed_work) , "::" , stringify ! (cpu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rcu_work { pub work : work_struct , pub rcu : callback_head , pub wq : * mut workqueue_struct , } # [test] fn bindgen_test_layout_rcu_work () { assert_eq ! (:: core :: mem :: size_of :: < rcu_work > () , 56usize , concat ! ("Size of: " , stringify ! (rcu_work))) ; assert_eq ! (:: core :: mem :: align_of :: < rcu_work > () , 8usize , concat ! ("Alignment of " , stringify ! (rcu_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_work > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcu_work) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_work > ())) . rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rcu_work) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_work > ())) . wq as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rcu_work) , "::" , stringify ! (wq))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rcu_segcblist { pub head : * mut callback_head , pub tails : [* mut * mut callback_head ; 4usize] , pub gp_seq : [:: cty :: c_ulong ; 4usize] , pub len : :: cty :: c_long , pub seglen : [:: cty :: c_long ; 4usize] , pub flags : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_rcu_segcblist () { assert_eq ! (:: core :: mem :: size_of :: < rcu_segcblist > () , 120usize , concat ! ("Size of: " , stringify ! (rcu_segcblist))) ; assert_eq ! (:: core :: mem :: align_of :: < rcu_segcblist > () , 8usize , concat ! ("Alignment of " , stringify ! (rcu_segcblist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_segcblist > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcu_segcblist) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_segcblist > ())) . tails as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rcu_segcblist) , "::" , stringify ! (tails))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_segcblist > ())) . gp_seq as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rcu_segcblist) , "::" , stringify ! (gp_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_segcblist > ())) . len as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rcu_segcblist) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_segcblist > ())) . seglen as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rcu_segcblist) , "::" , stringify ! (seglen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rcu_segcblist > ())) . flags as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rcu_segcblist) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct srcu_data { pub srcu_lock_count : [:: cty :: c_ulong ; 2usize] , pub srcu_unlock_count : [:: cty :: c_ulong ; 2usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub lock : spinlock_t , pub srcu_cblist : rcu_segcblist , pub srcu_gp_seq_needed : :: cty :: c_ulong , pub srcu_gp_seq_needed_exp : :: cty :: c_ulong , pub srcu_cblist_invoking : bool_ , pub delay_work : timer_list , pub work : work_struct , pub srcu_barrier_head : callback_head , pub mynode : * mut srcu_node , pub grpmask : :: cty :: c_ulong , pub cpu : :: cty :: c_int , pub ssp : * mut srcu_struct , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 48usize] > , } # [test] fn bindgen_test_layout_srcu_data () { assert_eq ! (:: core :: mem :: size_of :: < srcu_data > () , 384usize , concat ! ("Size of: " , stringify ! (srcu_data))) ; assert_eq ! (:: core :: mem :: align_of :: < srcu_data > () , 8usize , concat ! ("Alignment of " , stringify ! (srcu_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_lock_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_lock_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_unlock_count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_unlock_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . lock as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_cblist as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_cblist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_gp_seq_needed as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_gp_seq_needed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_gp_seq_needed_exp as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_gp_seq_needed_exp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_cblist_invoking as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_cblist_invoking))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . delay_work as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (delay_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . work as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . srcu_barrier_head as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (srcu_barrier_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . mynode as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (mynode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . grpmask as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (grpmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . cpu as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_data > ())) . ssp as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (srcu_data) , "::" , stringify ! (ssp))) ; } impl srcu_data { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct srcu_node { pub lock : spinlock_t , pub srcu_have_cbs : [:: cty :: c_ulong ; 4usize] , pub srcu_data_have_cbs : [:: cty :: c_ulong ; 4usize] , pub srcu_gp_seq_needed_exp : :: cty :: c_ulong , pub srcu_parent : * mut srcu_node , pub grplo : :: cty :: c_int , pub grphi : :: cty :: c_int , } # [test] fn bindgen_test_layout_srcu_node () { assert_eq ! (:: core :: mem :: size_of :: < srcu_node > () , 96usize , concat ! ("Size of: " , stringify ! (srcu_node))) ; assert_eq ! (:: core :: mem :: align_of :: < srcu_node > () , 8usize , concat ! ("Alignment of " , stringify ! (srcu_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . srcu_have_cbs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (srcu_have_cbs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . srcu_data_have_cbs as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (srcu_data_have_cbs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . srcu_gp_seq_needed_exp as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (srcu_gp_seq_needed_exp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . srcu_parent as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (srcu_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . grplo as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (grplo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_node > ())) . grphi as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (srcu_node) , "::" , stringify ! (grphi))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct srcu_struct { pub node : [srcu_node ; 521usize] , pub level : [* mut srcu_node ; 4usize] , pub srcu_cb_mutex : mutex , pub lock : spinlock_t , pub srcu_gp_mutex : mutex , pub srcu_idx : :: cty :: c_uint , pub srcu_gp_seq : :: cty :: c_ulong , pub srcu_gp_seq_needed : :: cty :: c_ulong , pub srcu_gp_seq_needed_exp : :: cty :: c_ulong , pub srcu_last_gp_end : :: cty :: c_ulong , pub sda : * mut srcu_data , pub srcu_barrier_seq : :: cty :: c_ulong , pub srcu_barrier_mutex : mutex , pub srcu_barrier_completion : completion , pub srcu_barrier_cpu_cnt : atomic_t , pub work : delayed_work , } # [test] fn bindgen_test_layout_srcu_struct () { assert_eq ! (:: core :: mem :: size_of :: < srcu_struct > () , 50336usize , concat ! ("Size of: " , stringify ! (srcu_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < srcu_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (srcu_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . level as * const _ as usize } , 50016usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_cb_mutex as * const _ as usize } , 50048usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_cb_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . lock as * const _ as usize } , 50080usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_gp_mutex as * const _ as usize } , 50088usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_gp_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_idx as * const _ as usize } , 50120usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_gp_seq as * const _ as usize } , 50128usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_gp_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_gp_seq_needed as * const _ as usize } , 50136usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_gp_seq_needed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_gp_seq_needed_exp as * const _ as usize } , 50144usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_gp_seq_needed_exp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_last_gp_end as * const _ as usize } , 50152usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_last_gp_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . sda as * const _ as usize } , 50160usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (sda))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_barrier_seq as * const _ as usize } , 50168usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_barrier_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_barrier_mutex as * const _ as usize } , 50176usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_barrier_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_barrier_completion as * const _ as usize } , 50208usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_barrier_completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . srcu_barrier_cpu_cnt as * const _ as usize } , 50240usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (srcu_barrier_cpu_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < srcu_struct > ())) . work as * const _ as usize } , 50248usize , concat ! ("Offset of field: " , stringify ! (srcu_struct) , "::" , stringify ! (work))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct anon_vma { pub root : * mut anon_vma , pub rwsem : rw_semaphore , pub refcount : atomic_t , pub degree : :: cty :: c_uint , pub parent : * mut anon_vma , pub rb_root : rb_root_cached , } # [test] fn bindgen_test_layout_anon_vma () { assert_eq ! (:: core :: mem :: size_of :: < anon_vma > () , 80usize , concat ! ("Size of: " , stringify ! (anon_vma))) ; assert_eq ! (:: core :: mem :: align_of :: < anon_vma > () , 8usize , concat ! ("Alignment of " , stringify ! (anon_vma))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < anon_vma > ())) . root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (anon_vma) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < anon_vma > ())) . rwsem as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (anon_vma) , "::" , stringify ! (rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < anon_vma > ())) . refcount as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (anon_vma) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < anon_vma > ())) . degree as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (anon_vma) , "::" , stringify ! (degree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < anon_vma > ())) . parent as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (anon_vma) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < anon_vma > ())) . rb_root as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (anon_vma) , "::" , stringify ! (rb_root))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct mempolicy { pub refcnt : atomic_t , pub mode : :: cty :: c_ushort , pub flags : :: cty :: c_ushort , pub v : mempolicy__bindgen_ty_1 , pub w : mempolicy__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union mempolicy__bindgen_ty_1 { pub preferred_node : :: cty :: c_short , pub nodes : nodemask_t , } # [test] fn bindgen_test_layout_mempolicy__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < mempolicy__bindgen_ty_1 > () , 128usize , concat ! ("Size of: " , stringify ! (mempolicy__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < mempolicy__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (mempolicy__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy__bindgen_ty_1 > ())) . preferred_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mempolicy__bindgen_ty_1) , "::" , stringify ! (preferred_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy__bindgen_ty_1 > ())) . nodes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mempolicy__bindgen_ty_1) , "::" , stringify ! (nodes))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union mempolicy__bindgen_ty_2 { pub cpuset_mems_allowed : nodemask_t , pub user_nodemask : nodemask_t , } # [test] fn bindgen_test_layout_mempolicy__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < mempolicy__bindgen_ty_2 > () , 128usize , concat ! ("Size of: " , stringify ! (mempolicy__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < mempolicy__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (mempolicy__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy__bindgen_ty_2 > ())) . cpuset_mems_allowed as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mempolicy__bindgen_ty_2) , "::" , stringify ! (cpuset_mems_allowed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy__bindgen_ty_2 > ())) . user_nodemask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mempolicy__bindgen_ty_2) , "::" , stringify ! (user_nodemask))) ; } # [test] fn bindgen_test_layout_mempolicy () { assert_eq ! (:: core :: mem :: size_of :: < mempolicy > () , 264usize , concat ! ("Size of: " , stringify ! (mempolicy))) ; assert_eq ! (:: core :: mem :: align_of :: < mempolicy > () , 8usize , concat ! ("Alignment of " , stringify ! (mempolicy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy > ())) . refcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mempolicy) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy > ())) . mode as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (mempolicy) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy > ())) . flags as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (mempolicy) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy > ())) . v as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mempolicy) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempolicy > ())) . w as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (mempolicy) , "::" , stringify ! (w))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linux_binfmt { pub lh : list_head , pub module : * mut module , pub load_binary : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut linux_binprm) -> :: cty :: c_int > , pub load_shlib : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file) -> :: cty :: c_int > , pub core_dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut coredump_params) -> :: cty :: c_int > , pub min_coredump : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_linux_binfmt () { assert_eq ! (:: core :: mem :: size_of :: < linux_binfmt > () , 56usize , concat ! ("Size of: " , stringify ! (linux_binfmt))) ; assert_eq ! (:: core :: mem :: align_of :: < linux_binfmt > () , 8usize , concat ! ("Alignment of " , stringify ! (linux_binfmt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binfmt > ())) . lh as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linux_binfmt) , "::" , stringify ! (lh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binfmt > ())) . module as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (linux_binfmt) , "::" , stringify ! (module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binfmt > ())) . load_binary as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (linux_binfmt) , "::" , stringify ! (load_binary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binfmt > ())) . load_shlib as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (linux_binfmt) , "::" , stringify ! (load_shlib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binfmt > ())) . core_dump as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (linux_binfmt) , "::" , stringify ! (core_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binfmt > ())) . min_coredump as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (linux_binfmt) , "::" , stringify ! (min_coredump))) ; } pub const irq_domain_bus_token_DOMAIN_BUS_ANY : irq_domain_bus_token = 0 ; pub const irq_domain_bus_token_DOMAIN_BUS_WIRED : irq_domain_bus_token = 1 ; pub const irq_domain_bus_token_DOMAIN_BUS_GENERIC_MSI : irq_domain_bus_token = 2 ; pub const irq_domain_bus_token_DOMAIN_BUS_PCI_MSI : irq_domain_bus_token = 3 ; pub const irq_domain_bus_token_DOMAIN_BUS_PLATFORM_MSI : irq_domain_bus_token = 4 ; pub const irq_domain_bus_token_DOMAIN_BUS_NEXUS : irq_domain_bus_token = 5 ; pub const irq_domain_bus_token_DOMAIN_BUS_IPI : irq_domain_bus_token = 6 ; pub const irq_domain_bus_token_DOMAIN_BUS_FSL_MC_MSI : irq_domain_bus_token = 7 ; pub const irq_domain_bus_token_DOMAIN_BUS_TI_SCI_INTA_MSI : irq_domain_bus_token = 8 ; pub const irq_domain_bus_token_DOMAIN_BUS_WAKEUP : irq_domain_bus_token = 9 ; pub const irq_domain_bus_token_DOMAIN_BUS_VMD_MSI : irq_domain_bus_token = 10 ; pub type irq_domain_bus_token = :: cty :: c_uint ; # [repr (C)] pub struct irq_domain { pub link : list_head , pub name : * const :: cty :: c_char , pub ops : * const irq_domain_ops , pub host_data : * mut :: cty :: c_void , pub flags : :: cty :: c_uint , pub mapcount : :: cty :: c_uint , pub fwnode : * mut fwnode_handle , pub bus_token : irq_domain_bus_token , pub gc : * mut irq_domain_chip_generic , pub parent : * mut irq_domain , pub hwirq_max : irq_hw_number_t , pub revmap_direct_max_irq : :: cty :: c_uint , pub revmap_size : :: cty :: c_uint , pub revmap_tree : xarray , pub revmap_tree_mutex : mutex , pub linear_revmap : __IncompleteArrayField < :: cty :: c_uint > , } # [test] fn bindgen_test_layout_irq_domain () { assert_eq ! (:: core :: mem :: size_of :: < irq_domain > () , 144usize , concat ! ("Size of: " , stringify ! (irq_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . host_data as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (host_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . flags as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . mapcount as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (mapcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . fwnode as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . bus_token as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (bus_token))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . gc as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (gc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . parent as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . hwirq_max as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (hwirq_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . revmap_direct_max_irq as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (revmap_direct_max_irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . revmap_size as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (revmap_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . revmap_tree as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (revmap_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . revmap_tree_mutex as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (revmap_tree_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain > ())) . linear_revmap as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (irq_domain) , "::" , stringify ! (linear_revmap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ctl_node { pub node : rb_node , pub header : * mut ctl_table_header , } # [test] fn bindgen_test_layout_ctl_node () { assert_eq ! (:: core :: mem :: size_of :: < ctl_node > () , 32usize , concat ! ("Size of: " , stringify ! (ctl_node))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_node > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_node > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_node) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_node > ())) . header as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ctl_node) , "::" , stringify ! (header))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ctl_table_root { pub default_set : ctl_table_set , pub lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ctl_table_root) -> * mut ctl_table_set > , pub set_ownership : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ctl_table_header , arg2 : * mut ctl_table , arg3 : * mut kuid_t , arg4 : * mut kgid_t) > , pub permissions : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ctl_table_header , arg2 : * mut ctl_table) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_ctl_table_root () { assert_eq ! (:: core :: mem :: size_of :: < ctl_table_root > () , 120usize , concat ! ("Size of: " , stringify ! (ctl_table_root))) ; assert_eq ! (:: core :: mem :: align_of :: < ctl_table_root > () , 8usize , concat ! ("Alignment of " , stringify ! (ctl_table_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_root > ())) . default_set as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ctl_table_root) , "::" , stringify ! (default_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_root > ())) . lookup as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (ctl_table_root) , "::" , stringify ! (lookup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_root > ())) . set_ownership as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (ctl_table_root) , "::" , stringify ! (set_ownership))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ctl_table_root > ())) . permissions as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (ctl_table_root) , "::" , stringify ! (permissions))) ; } pub type Elf64_Addr = __u64 ; pub type Elf64_Half = __u16 ; pub type Elf64_Off = __u64 ; pub type Elf64_Word = __u32 ; pub type Elf64_Xword = __u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf64_sym { pub st_name : Elf64_Word , pub st_info : :: cty :: c_uchar , pub st_other : :: cty :: c_uchar , pub st_shndx : Elf64_Half , pub st_value : Elf64_Addr , pub st_size : Elf64_Xword , } # [test] fn bindgen_test_layout_elf64_sym () { assert_eq ! (:: core :: mem :: size_of :: < elf64_sym > () , 24usize , concat ! ("Size of: " , stringify ! (elf64_sym))) ; assert_eq ! (:: core :: mem :: align_of :: < elf64_sym > () , 8usize , concat ! ("Alignment of " , stringify ! (elf64_sym))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_sym > ())) . st_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf64_sym) , "::" , stringify ! (st_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_sym > ())) . st_info as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf64_sym) , "::" , stringify ! (st_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_sym > ())) . st_other as * const _ as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (elf64_sym) , "::" , stringify ! (st_other))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_sym > ())) . st_shndx as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (elf64_sym) , "::" , stringify ! (st_shndx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_sym > ())) . st_value as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf64_sym) , "::" , stringify ! (st_value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_sym > ())) . st_size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (elf64_sym) , "::" , stringify ! (st_size))) ; } pub type Elf64_Sym = elf64_sym ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf64_hdr { pub e_ident : [:: cty :: c_uchar ; 16usize] , pub e_type : Elf64_Half , pub e_machine : Elf64_Half , pub e_version : Elf64_Word , pub e_entry : Elf64_Addr , pub e_phoff : Elf64_Off , pub e_shoff : Elf64_Off , pub e_flags : Elf64_Word , pub e_ehsize : Elf64_Half , pub e_phentsize : Elf64_Half , pub e_phnum : Elf64_Half , pub e_shentsize : Elf64_Half , pub e_shnum : Elf64_Half , pub e_shstrndx : Elf64_Half , } # [test] fn bindgen_test_layout_elf64_hdr () { assert_eq ! (:: core :: mem :: size_of :: < elf64_hdr > () , 64usize , concat ! ("Size of: " , stringify ! (elf64_hdr))) ; assert_eq ! (:: core :: mem :: align_of :: < elf64_hdr > () , 8usize , concat ! ("Alignment of " , stringify ! (elf64_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_ident as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_ident))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_type as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_machine as * const _ as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_machine))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_version as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_entry as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_phoff as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_phoff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_shoff as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_shoff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_flags as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_ehsize as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_ehsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_phentsize as * const _ as usize } , 54usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_phentsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_phnum as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_phnum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_shentsize as * const _ as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_shentsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_shnum as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_shnum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_hdr > ())) . e_shstrndx as * const _ as usize } , 62usize , concat ! ("Offset of field: " , stringify ! (elf64_hdr) , "::" , stringify ! (e_shstrndx))) ; } pub type Elf64_Ehdr = elf64_hdr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elf64_shdr { pub sh_name : Elf64_Word , pub sh_type : Elf64_Word , pub sh_flags : Elf64_Xword , pub sh_addr : Elf64_Addr , pub sh_offset : Elf64_Off , pub sh_size : Elf64_Xword , pub sh_link : Elf64_Word , pub sh_info : Elf64_Word , pub sh_addralign : Elf64_Xword , pub sh_entsize : Elf64_Xword , } # [test] fn bindgen_test_layout_elf64_shdr () { assert_eq ! (:: core :: mem :: size_of :: < elf64_shdr > () , 64usize , concat ! ("Size of: " , stringify ! (elf64_shdr))) ; assert_eq ! (:: core :: mem :: align_of :: < elf64_shdr > () , 8usize , concat ! ("Alignment of " , stringify ! (elf64_shdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_offset as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_size as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_link as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_info as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_addralign as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_addralign))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elf64_shdr > ())) . sh_entsize as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (elf64_shdr) , "::" , stringify ! (sh_entsize))) ; } pub type Elf64_Shdr = elf64_shdr ; # [repr (C)] # [derive (Copy , Clone)] pub struct seq_file { pub buf : * mut :: cty :: c_char , pub size : size_t , pub from : size_t , pub count : size_t , pub pad_until : size_t , pub index : loff_t , pub read_pos : loff_t , pub lock : mutex , pub op : * const seq_operations , pub poll_event : :: cty :: c_int , pub file : * const file , pub private : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_seq_file () { assert_eq ! (:: core :: mem :: size_of :: < seq_file > () , 120usize , concat ! ("Size of: " , stringify ! (seq_file))) ; assert_eq ! (:: core :: mem :: align_of :: < seq_file > () , 8usize , concat ! ("Alignment of " , stringify ! (seq_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . from as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . count as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . pad_until as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (pad_until))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . index as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . read_pos as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (read_pos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . lock as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . op as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (op))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . poll_event as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (poll_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . file as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_file > ())) . private as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (seq_file) , "::" , stringify ! (private))) ; } pub type poll_queue_proc = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut wait_queue_head_t , arg3 : * mut poll_table_struct) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct poll_table_struct { pub _qproc : poll_queue_proc , pub _key : __poll_t , } # [test] fn bindgen_test_layout_poll_table_struct () { assert_eq ! (:: core :: mem :: size_of :: < poll_table_struct > () , 16usize , concat ! ("Size of: " , stringify ! (poll_table_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < poll_table_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (poll_table_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < poll_table_struct > ())) . _qproc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (poll_table_struct) , "::" , stringify ! (_qproc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < poll_table_struct > ())) . _key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (poll_table_struct) , "::" , stringify ! (_key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernel_param_ops { pub flags : :: cty :: c_uint , pub set : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_char , arg2 : * const kernel_param) -> :: cty :: c_int > , pub get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_char , arg2 : * const kernel_param) -> :: cty :: c_int > , pub free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , } # [test] fn bindgen_test_layout_kernel_param_ops () { assert_eq ! (:: core :: mem :: size_of :: < kernel_param_ops > () , 32usize , concat ! ("Size of: " , stringify ! (kernel_param_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_param_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (kernel_param_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param_ops > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_param_ops) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param_ops > ())) . set as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernel_param_ops) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param_ops > ())) . get as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernel_param_ops) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param_ops > ())) . free as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernel_param_ops) , "::" , stringify ! (free))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct kernel_param { pub name : * const :: cty :: c_char , pub mod_ : * mut module , pub ops : * const kernel_param_ops , pub perm : _cargo_bpf_u16 , pub level : s8 , pub flags : _cargo_bpf_u8 , pub __bindgen_anon_1 : kernel_param__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union kernel_param__bindgen_ty_1 { pub arg : * mut :: cty :: c_void , pub str_ : * const kparam_string , pub arr : * const kparam_array , } # [test] fn bindgen_test_layout_kernel_param__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < kernel_param__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (kernel_param__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_param__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (kernel_param__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param__bindgen_ty_1 > ())) . arg as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_param__bindgen_ty_1) , "::" , stringify ! (arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param__bindgen_ty_1 > ())) . str_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_param__bindgen_ty_1) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param__bindgen_ty_1 > ())) . arr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_param__bindgen_ty_1) , "::" , stringify ! (arr))) ; } # [test] fn bindgen_test_layout_kernel_param () { assert_eq ! (:: core :: mem :: size_of :: < kernel_param > () , 40usize , concat ! ("Size of: " , stringify ! (kernel_param))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_param > () , 8usize , concat ! ("Alignment of " , stringify ! (kernel_param))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_param) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param > ())) . mod_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernel_param) , "::" , stringify ! (mod_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param > ())) . ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernel_param) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param > ())) . perm as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernel_param) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param > ())) . level as * const _ as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (kernel_param) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_param > ())) . flags as * const _ as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (kernel_param) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kparam_string { pub maxlen : :: cty :: c_uint , pub string : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_kparam_string () { assert_eq ! (:: core :: mem :: size_of :: < kparam_string > () , 16usize , concat ! ("Size of: " , stringify ! (kparam_string))) ; assert_eq ! (:: core :: mem :: align_of :: < kparam_string > () , 8usize , concat ! ("Alignment of " , stringify ! (kparam_string))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_string > ())) . maxlen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kparam_string) , "::" , stringify ! (maxlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_string > ())) . string as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kparam_string) , "::" , stringify ! (string))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kparam_array { pub max : :: cty :: c_uint , pub elemsize : :: cty :: c_uint , pub num : * mut :: cty :: c_uint , pub ops : * const kernel_param_ops , pub elem : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_kparam_array () { assert_eq ! (:: core :: mem :: size_of :: < kparam_array > () , 32usize , concat ! ("Size of: " , stringify ! (kparam_array))) ; assert_eq ! (:: core :: mem :: align_of :: < kparam_array > () , 8usize , concat ! ("Alignment of " , stringify ! (kparam_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_array > ())) . max as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kparam_array) , "::" , stringify ! (max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_array > ())) . elemsize as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kparam_array) , "::" , stringify ! (elemsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_array > ())) . num as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kparam_array) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_array > ())) . ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kparam_array) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kparam_array > ())) . elem as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kparam_array) , "::" , stringify ! (elem))) ; } pub const module_state_MODULE_STATE_LIVE : module_state = 0 ; pub const module_state_MODULE_STATE_COMING : module_state = 1 ; pub const module_state_MODULE_STATE_GOING : module_state = 2 ; pub const module_state_MODULE_STATE_UNFORMED : module_state = 3 ; pub type module_state = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct module_kobject { pub kobj : kobject , pub mod_ : * mut module , pub drivers_dir : * mut kobject , pub mp : * mut module_param_attrs , pub kobj_completion : * mut completion , } # [test] fn bindgen_test_layout_module_kobject () { assert_eq ! (:: core :: mem :: size_of :: < module_kobject > () , 96usize , concat ! ("Size of: " , stringify ! (module_kobject))) ; assert_eq ! (:: core :: mem :: align_of :: < module_kobject > () , 8usize , concat ! ("Alignment of " , stringify ! (module_kobject))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_kobject > ())) . kobj as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_kobject) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_kobject > ())) . mod_ as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (module_kobject) , "::" , stringify ! (mod_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_kobject > ())) . drivers_dir as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (module_kobject) , "::" , stringify ! (drivers_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_kobject > ())) . mp as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (module_kobject) , "::" , stringify ! (mp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_kobject > ())) . kobj_completion as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (module_kobject) , "::" , stringify ! (kobj_completion))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct latch_tree_node { pub node : [rb_node ; 2usize] , } # [test] fn bindgen_test_layout_latch_tree_node () { assert_eq ! (:: core :: mem :: size_of :: < latch_tree_node > () , 48usize , concat ! ("Size of: " , stringify ! (latch_tree_node))) ; assert_eq ! (:: core :: mem :: align_of :: < latch_tree_node > () , 8usize , concat ! ("Alignment of " , stringify ! (latch_tree_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < latch_tree_node > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (latch_tree_node) , "::" , stringify ! (node))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mod_tree_node { pub mod_ : * mut module , pub node : latch_tree_node , } # [test] fn bindgen_test_layout_mod_tree_node () { assert_eq ! (:: core :: mem :: size_of :: < mod_tree_node > () , 56usize , concat ! ("Size of: " , stringify ! (mod_tree_node))) ; assert_eq ! (:: core :: mem :: align_of :: < mod_tree_node > () , 8usize , concat ! ("Alignment of " , stringify ! (mod_tree_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mod_tree_node > ())) . mod_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mod_tree_node) , "::" , stringify ! (mod_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mod_tree_node > ())) . node as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mod_tree_node) , "::" , stringify ! (node))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct module_layout { pub base : * mut :: cty :: c_void , pub size : :: cty :: c_uint , pub text_size : :: cty :: c_uint , pub ro_size : :: cty :: c_uint , pub ro_after_init_size : :: cty :: c_uint , pub mtn : mod_tree_node , } # [test] fn bindgen_test_layout_module_layout () { assert_eq ! (:: core :: mem :: size_of :: < module_layout > () , 80usize , concat ! ("Size of: " , stringify ! (module_layout))) ; assert_eq ! (:: core :: mem :: align_of :: < module_layout > () , 8usize , concat ! ("Alignment of " , stringify ! (module_layout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_layout > ())) . base as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_layout) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_layout > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (module_layout) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_layout > ())) . text_size as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (module_layout) , "::" , stringify ! (text_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_layout > ())) . ro_size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (module_layout) , "::" , stringify ! (ro_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_layout > ())) . ro_after_init_size as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (module_layout) , "::" , stringify ! (ro_after_init_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_layout > ())) . mtn as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (module_layout) , "::" , stringify ! (mtn))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mod_arch_specific { } # [test] fn bindgen_test_layout_mod_arch_specific () { assert_eq ! (:: core :: mem :: size_of :: < mod_arch_specific > () , 0usize , concat ! ("Size of: " , stringify ! (mod_arch_specific))) ; assert_eq ! (:: core :: mem :: align_of :: < mod_arch_specific > () , 1usize , concat ! ("Alignment of " , stringify ! (mod_arch_specific))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mod_kallsyms { pub symtab : * mut Elf64_Sym , pub num_symtab : :: cty :: c_uint , pub strtab : * mut :: cty :: c_char , pub typetab : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_mod_kallsyms () { assert_eq ! (:: core :: mem :: size_of :: < mod_kallsyms > () , 32usize , concat ! ("Size of: " , stringify ! (mod_kallsyms))) ; assert_eq ! (:: core :: mem :: align_of :: < mod_kallsyms > () , 8usize , concat ! ("Alignment of " , stringify ! (mod_kallsyms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mod_kallsyms > ())) . symtab as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mod_kallsyms) , "::" , stringify ! (symtab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mod_kallsyms > ())) . num_symtab as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mod_kallsyms) , "::" , stringify ! (num_symtab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mod_kallsyms > ())) . strtab as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mod_kallsyms) , "::" , stringify ! (strtab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mod_kallsyms > ())) . typetab as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (mod_kallsyms) , "::" , stringify ! (typetab))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct module { pub state : module_state , pub list : list_head , pub name : [:: cty :: c_char ; 56usize] , pub mkobj : module_kobject , pub modinfo_attrs : * mut module_attribute , pub version : * const :: cty :: c_char , pub srcversion : * const :: cty :: c_char , pub holders_dir : * mut kobject , pub syms : * const kernel_symbol , pub crcs : * const s32 , pub num_syms : :: cty :: c_uint , pub param_lock : mutex , pub kp : * mut kernel_param , pub num_kp : :: cty :: c_uint , pub num_gpl_syms : :: cty :: c_uint , pub gpl_syms : * const kernel_symbol , pub gpl_crcs : * const s32 , pub using_gplonly_symbols : bool_ , pub sig_ok : bool_ , pub async_probe_requested : bool_ , pub num_exentries : :: cty :: c_uint , pub extable : * mut exception_table_entry , pub init : :: core :: option :: Option < unsafe extern "C" fn () -> :: cty :: c_int > , pub core_layout : module_layout , pub init_layout : module_layout , pub arch : mod_arch_specific , pub taints : :: cty :: c_ulong , pub num_bugs : :: cty :: c_uint , pub bug_list : list_head , pub bug_table : * mut bug_entry , pub kallsyms : * mut mod_kallsyms , pub core_kallsyms : mod_kallsyms , pub sect_attrs : * mut module_sect_attrs , pub notes_attrs : * mut module_notes_attrs , pub args : * mut :: cty :: c_char , pub percpu : * mut :: cty :: c_void , pub percpu_size : :: cty :: c_uint , pub noinstr_text_start : * mut :: cty :: c_void , pub noinstr_text_size : :: cty :: c_uint , pub num_tracepoints : :: cty :: c_uint , pub tracepoints_ptrs : * mut tracepoint_ptr_t , pub num_srcu_structs : :: cty :: c_uint , pub srcu_struct_ptrs : * mut * mut srcu_struct , pub num_bpf_raw_events : :: cty :: c_uint , pub bpf_raw_events : * mut bpf_raw_event_map , pub btf_data_size : :: cty :: c_uint , pub btf_data : * mut :: cty :: c_void , pub jump_entries : * mut jump_entry , pub num_jump_entries : :: cty :: c_uint , pub num_trace_bprintk_fmt : :: cty :: c_uint , pub trace_bprintk_fmt_start : * mut * const :: cty :: c_char , pub trace_events : * mut * mut trace_event_call , pub num_trace_events : :: cty :: c_uint , pub trace_evals : * mut * mut trace_eval_map , pub num_trace_evals : :: cty :: c_uint , pub num_ftrace_callsites : :: cty :: c_uint , pub ftrace_callsites : * mut :: cty :: c_ulong , pub kprobes_text_start : * mut :: cty :: c_void , pub kprobes_text_size : :: cty :: c_uint , pub kprobe_blacklist : * mut :: cty :: c_ulong , pub num_kprobe_blacklist : :: cty :: c_uint , pub num_static_call_sites : :: cty :: c_int , pub static_call_sites : * mut static_call_site , pub klp : bool_ , pub klp_alive : bool_ , pub klp_info : * mut klp_modinfo , pub source_list : list_head , pub target_list : list_head , pub exit : :: core :: option :: Option < unsafe extern "C" fn () > , pub refcnt : atomic_t , pub ei_funcs : * mut error_injection_entry , pub num_ei_funcs : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , } # [test] fn bindgen_test_layout_module () { assert_eq ! (:: core :: mem :: size_of :: < module > () , 896usize , concat ! ("Size of: " , stringify ! (module))) ; assert_eq ! (:: core :: mem :: align_of :: < module > () , 8usize , concat ! ("Alignment of " , stringify ! (module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . name as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . mkobj as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (mkobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . modinfo_attrs as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (modinfo_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . version as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . srcversion as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (srcversion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . holders_dir as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (holders_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . syms as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (syms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . crcs as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (crcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_syms as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_syms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . param_lock as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (param_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . kp as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (kp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_kp as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_kp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_gpl_syms as * const _ as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_gpl_syms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . gpl_syms as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (gpl_syms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . gpl_crcs as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (gpl_crcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . using_gplonly_symbols as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (using_gplonly_symbols))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . sig_ok as * const _ as usize } , 297usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (sig_ok))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . async_probe_requested as * const _ as usize } , 298usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (async_probe_requested))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_exentries as * const _ as usize } , 300usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_exentries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . extable as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (extable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . init as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . core_layout as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (core_layout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . init_layout as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (init_layout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . arch as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . taints as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (taints))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_bugs as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_bugs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . bug_list as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (bug_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . bug_table as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (bug_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . kallsyms as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (kallsyms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . core_kallsyms as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (core_kallsyms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . sect_attrs as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (sect_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . notes_attrs as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (notes_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . args as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . percpu as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (percpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . percpu_size as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (percpu_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . noinstr_text_start as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (noinstr_text_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . noinstr_text_size as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (noinstr_text_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_tracepoints as * const _ as usize } , 612usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_tracepoints))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . tracepoints_ptrs as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (tracepoints_ptrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_srcu_structs as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_srcu_structs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . srcu_struct_ptrs as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (srcu_struct_ptrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_bpf_raw_events as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_bpf_raw_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . bpf_raw_events as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (bpf_raw_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . btf_data_size as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (btf_data_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . btf_data as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (btf_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . jump_entries as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (jump_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_jump_entries as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_jump_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_trace_bprintk_fmt as * const _ as usize } , 684usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_trace_bprintk_fmt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . trace_bprintk_fmt_start as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (trace_bprintk_fmt_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . trace_events as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (trace_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_trace_events as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_trace_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . trace_evals as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (trace_evals))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_trace_evals as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_trace_evals))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_ftrace_callsites as * const _ as usize } , 724usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_ftrace_callsites))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . ftrace_callsites as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (ftrace_callsites))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . kprobes_text_start as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (kprobes_text_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . kprobes_text_size as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (kprobes_text_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . kprobe_blacklist as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (kprobe_blacklist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_kprobe_blacklist as * const _ as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_kprobe_blacklist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_static_call_sites as * const _ as usize } , 764usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_static_call_sites))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . static_call_sites as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (static_call_sites))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . klp as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (klp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . klp_alive as * const _ as usize } , 777usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (klp_alive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . klp_info as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (klp_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . source_list as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (source_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . target_list as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (target_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . exit as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (exit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . refcnt as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . ei_funcs as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (ei_funcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module > ())) . num_ei_funcs as * const _ as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (module) , "::" , stringify ! (num_ei_funcs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct error_injection_entry { pub addr : :: cty :: c_ulong , pub etype : :: cty :: c_int , } # [test] fn bindgen_test_layout_error_injection_entry () { assert_eq ! (:: core :: mem :: size_of :: < error_injection_entry > () , 16usize , concat ! ("Size of: " , stringify ! (error_injection_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < error_injection_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (error_injection_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < error_injection_entry > ())) . addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (error_injection_entry) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < error_injection_entry > ())) . etype as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (error_injection_entry) , "::" , stringify ! (etype))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct module_attribute { pub attr : attribute , pub show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut module_attribute , arg2 : * mut module_kobject , arg3 : * mut :: cty :: c_char) -> ssize_t > , pub store : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut module_attribute , arg2 : * mut module_kobject , arg3 : * const :: cty :: c_char , arg4 : size_t) -> ssize_t > , pub setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut module , arg2 : * const :: cty :: c_char) > , pub test : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut module) -> :: cty :: c_int > , pub free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut module) > , } # [test] fn bindgen_test_layout_module_attribute () { assert_eq ! (:: core :: mem :: size_of :: < module_attribute > () , 56usize , concat ! ("Size of: " , stringify ! (module_attribute))) ; assert_eq ! (:: core :: mem :: align_of :: < module_attribute > () , 8usize , concat ! ("Alignment of " , stringify ! (module_attribute))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_attribute > ())) . attr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_attribute) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_attribute > ())) . show as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (module_attribute) , "::" , stringify ! (show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_attribute > ())) . store as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (module_attribute) , "::" , stringify ! (store))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_attribute > ())) . setup as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (module_attribute) , "::" , stringify ! (setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_attribute > ())) . test as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (module_attribute) , "::" , stringify ! (test))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_attribute > ())) . free as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (module_attribute) , "::" , stringify ! (free))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct klp_modinfo { pub hdr : Elf64_Ehdr , pub sechdrs : * mut Elf64_Shdr , pub secstrings : * mut :: cty :: c_char , pub symndx : :: cty :: c_uint , } # [test] fn bindgen_test_layout_klp_modinfo () { assert_eq ! (:: core :: mem :: size_of :: < klp_modinfo > () , 88usize , concat ! ("Size of: " , stringify ! (klp_modinfo))) ; assert_eq ! (:: core :: mem :: align_of :: < klp_modinfo > () , 8usize , concat ! ("Alignment of " , stringify ! (klp_modinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < klp_modinfo > ())) . hdr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (klp_modinfo) , "::" , stringify ! (hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < klp_modinfo > ())) . sechdrs as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (klp_modinfo) , "::" , stringify ! (sechdrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < klp_modinfo > ())) . secstrings as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (klp_modinfo) , "::" , stringify ! (secstrings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < klp_modinfo > ())) . symndx as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (klp_modinfo) , "::" , stringify ! (symndx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct exception_table_entry { pub insn : :: cty :: c_int , pub fixup : :: cty :: c_int , pub handler : :: cty :: c_int , } # [test] fn bindgen_test_layout_exception_table_entry () { assert_eq ! (:: core :: mem :: size_of :: < exception_table_entry > () , 12usize , concat ! ("Size of: " , stringify ! (exception_table_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < exception_table_entry > () , 4usize , concat ! ("Alignment of " , stringify ! (exception_table_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < exception_table_entry > ())) . insn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (exception_table_entry) , "::" , stringify ! (insn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < exception_table_entry > ())) . fixup as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (exception_table_entry) , "::" , stringify ! (fixup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < exception_table_entry > ())) . handler as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (exception_table_entry) , "::" , stringify ! (handler))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_event { pub node : hlist_node , pub list : list_head , pub type_ : :: cty :: c_int , pub funcs : * mut trace_event_functions , } # [test] fn bindgen_test_layout_trace_event () { assert_eq ! (:: core :: mem :: size_of :: < trace_event > () , 48usize , concat ! ("Size of: " , stringify ! (trace_event))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_event) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event > ())) . type_ as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_event) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event > ())) . funcs as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (trace_event) , "::" , stringify ! (funcs))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct trace_event_call { pub list : list_head , pub class : * mut trace_event_class , pub __bindgen_anon_1 : trace_event_call__bindgen_ty_1 , pub event : trace_event , pub print_fmt : * mut :: cty :: c_char , pub filter : * mut event_filter , pub mod_ : * mut :: cty :: c_void , pub data : * mut :: cty :: c_void , pub flags : :: cty :: c_int , pub perf_refcount : :: cty :: c_int , pub perf_events : * mut hlist_head , pub prog_array : * mut bpf_prog_array , pub perf_perm : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_event_call , arg2 : * mut perf_event) -> :: cty :: c_int > , } # [repr (C)] # [derive (Copy , Clone)] pub union trace_event_call__bindgen_ty_1 { pub name : * mut :: cty :: c_char , pub tp : * mut tracepoint , } # [test] fn bindgen_test_layout_trace_event_call__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_call__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (trace_event_call__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_call__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_call__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call__bindgen_ty_1 > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_call__bindgen_ty_1) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call__bindgen_ty_1 > ())) . tp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_call__bindgen_ty_1) , "::" , stringify ! (tp))) ; } # [test] fn bindgen_test_layout_trace_event_call () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_call > () , 144usize , concat ! ("Size of: " , stringify ! (trace_event_call))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_call > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_call))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . class as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . event as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . print_fmt as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (print_fmt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . filter as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . mod_ as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (mod_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . data as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . flags as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . perf_refcount as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (perf_refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . perf_events as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (perf_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . prog_array as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (prog_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_call > ())) . perf_perm as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (trace_event_call) , "::" , stringify ! (perf_perm))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_eval_map { pub system : * const :: cty :: c_char , pub eval_string : * const :: cty :: c_char , pub eval_value : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_trace_eval_map () { assert_eq ! (:: core :: mem :: size_of :: < trace_eval_map > () , 24usize , concat ! ("Size of: " , stringify ! (trace_eval_map))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_eval_map > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_eval_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_eval_map > ())) . system as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_eval_map) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_eval_map > ())) . eval_string as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_eval_map) , "::" , stringify ! (eval_string))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_eval_map > ())) . eval_value as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_eval_map) , "::" , stringify ! (eval_value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_subsys_state { pub cgroup : * mut cgroup , pub ss : * mut cgroup_subsys , pub refcnt : percpu_ref , pub sibling : list_head , pub children : list_head , pub rstat_css_node : list_head , pub id : :: cty :: c_int , pub flags : :: cty :: c_uint , pub serial_nr : _cargo_bpf_u64 , pub online_cnt : atomic_t , pub destroy_work : work_struct , pub destroy_rwork : rcu_work , pub parent : * mut cgroup_subsys_state , } # [test] fn bindgen_test_layout_cgroup_subsys_state () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_subsys_state > () , 200usize , concat ! ("Size of: " , stringify ! (cgroup_subsys_state))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_subsys_state > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_subsys_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . cgroup as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . ss as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (ss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . refcnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . sibling as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (sibling))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . children as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . rstat_css_node as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (rstat_css_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . id as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . flags as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . serial_nr as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (serial_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . online_cnt as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (online_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . destroy_work as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (destroy_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . destroy_rwork as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (destroy_rwork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys_state > ())) . parent as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys_state) , "::" , stringify ! (parent))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mem_cgroup_id { pub id : :: cty :: c_int , pub ref_ : refcount_t , } # [test] fn bindgen_test_layout_mem_cgroup_id () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup_id > () , 8usize , concat ! ("Size of: " , stringify ! (mem_cgroup_id))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup_id > () , 4usize , concat ! ("Alignment of " , stringify ! (mem_cgroup_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_id > ())) . id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_id) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_id > ())) . ref_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_id) , "::" , stringify ! (ref_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct page_counter { pub usage : atomic_long_t , pub min : :: cty :: c_ulong , pub low : :: cty :: c_ulong , pub high : :: cty :: c_ulong , pub max : :: cty :: c_ulong , pub emin : :: cty :: c_ulong , pub min_usage : atomic_long_t , pub children_min_usage : atomic_long_t , pub elow : :: cty :: c_ulong , pub low_usage : atomic_long_t , pub children_low_usage : atomic_long_t , pub watermark : :: cty :: c_ulong , pub failcnt : :: cty :: c_ulong , pub parent : * mut page_counter , } # [test] fn bindgen_test_layout_page_counter () { assert_eq ! (:: core :: mem :: size_of :: < page_counter > () , 112usize , concat ! ("Size of: " , stringify ! (page_counter))) ; assert_eq ! (:: core :: mem :: align_of :: < page_counter > () , 8usize , concat ! ("Alignment of " , stringify ! (page_counter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . usage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . min as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . low as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (low))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . high as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (high))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . max as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . emin as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (emin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . min_usage as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (min_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . children_min_usage as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (children_min_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . elow as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (elow))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . low_usage as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (low_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . children_low_usage as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (children_low_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . watermark as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (watermark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . failcnt as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (failcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < page_counter > ())) . parent as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (page_counter) , "::" , stringify ! (parent))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct vmpressure { pub scanned : :: cty :: c_ulong , pub reclaimed : :: cty :: c_ulong , pub tree_scanned : :: cty :: c_ulong , pub tree_reclaimed : :: cty :: c_ulong , pub sr_lock : spinlock_t , pub events : list_head , pub events_lock : mutex , pub work : work_struct , } # [test] fn bindgen_test_layout_vmpressure () { assert_eq ! (:: core :: mem :: size_of :: < vmpressure > () , 120usize , concat ! ("Size of: " , stringify ! (vmpressure))) ; assert_eq ! (:: core :: mem :: align_of :: < vmpressure > () , 8usize , concat ! ("Alignment of " , stringify ! (vmpressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . scanned as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (scanned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . reclaimed as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (reclaimed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . tree_scanned as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (tree_scanned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . tree_reclaimed as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (tree_reclaimed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . sr_lock as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (sr_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . events as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . events_lock as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (events_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vmpressure > ())) . work as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (vmpressure) , "::" , stringify ! (work))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_file { pub kn : * mut kernfs_node , pub notified_at : :: cty :: c_ulong , pub notify_timer : timer_list , } # [test] fn bindgen_test_layout_cgroup_file () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_file > () , 56usize , concat ! ("Size of: " , stringify ! (cgroup_file))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_file > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_file > ())) . kn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_file) , "::" , stringify ! (kn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_file > ())) . notified_at as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cgroup_file) , "::" , stringify ! (notified_at))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_file > ())) . notify_timer as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cgroup_file) , "::" , stringify ! (notify_timer))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mem_cgroup_thresholds { pub primary : * mut mem_cgroup_threshold_ary , pub spare : * mut mem_cgroup_threshold_ary , } # [test] fn bindgen_test_layout_mem_cgroup_thresholds () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup_thresholds > () , 16usize , concat ! ("Size of: " , stringify ! (mem_cgroup_thresholds))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup_thresholds > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup_thresholds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_thresholds > ())) . primary as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_thresholds) , "::" , stringify ! (primary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_thresholds > ())) . spare as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_thresholds) , "::" , stringify ! (spare))) ; } # [repr (C)] # [derive (Debug)] pub struct memcg_padding { pub x : __IncompleteArrayField < :: cty :: c_char > , } # [test] fn bindgen_test_layout_memcg_padding () { assert_eq ! (:: core :: mem :: size_of :: < memcg_padding > () , 0usize , concat ! ("Size of: " , stringify ! (memcg_padding))) ; assert_eq ! (:: core :: mem :: align_of :: < memcg_padding > () , 1usize , concat ! ("Alignment of " , stringify ! (memcg_padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_padding > ())) . x as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (memcg_padding) , "::" , stringify ! (x))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct memcg_vmstats { pub state : [:: cty :: c_long ; 42usize] , pub events : [:: cty :: c_ulong ; 98usize] , pub state_pending : [:: cty :: c_long ; 42usize] , pub events_pending : [:: cty :: c_ulong ; 98usize] , } # [test] fn bindgen_test_layout_memcg_vmstats () { assert_eq ! (:: core :: mem :: size_of :: < memcg_vmstats > () , 2240usize , concat ! ("Size of: " , stringify ! (memcg_vmstats))) ; assert_eq ! (:: core :: mem :: align_of :: < memcg_vmstats > () , 8usize , concat ! ("Alignment of " , stringify ! (memcg_vmstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats > ())) . state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats > ())) . events as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats > ())) . state_pending as * const _ as usize } , 1120usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats) , "::" , stringify ! (state_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats > ())) . events_pending as * const _ as usize } , 1456usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats) , "::" , stringify ! (events_pending))) ; } pub const memcg_kmem_state_KMEM_NONE : memcg_kmem_state = 0 ; pub const memcg_kmem_state_KMEM_ALLOCATED : memcg_kmem_state = 1 ; pub const memcg_kmem_state_KMEM_ONLINE : memcg_kmem_state = 2 ; pub type memcg_kmem_state = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct fprop_global { pub events : percpu_counter , pub period : :: cty :: c_uint , pub sequence : seqcount_t , } # [test] fn bindgen_test_layout_fprop_global () { assert_eq ! (:: core :: mem :: size_of :: < fprop_global > () , 48usize , concat ! ("Size of: " , stringify ! (fprop_global))) ; assert_eq ! (:: core :: mem :: align_of :: < fprop_global > () , 8usize , concat ! ("Alignment of " , stringify ! (fprop_global))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fprop_global > ())) . events as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fprop_global) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fprop_global > ())) . period as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fprop_global) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fprop_global > ())) . sequence as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (fprop_global) , "::" , stringify ! (sequence))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct wb_domain { pub lock : spinlock_t , pub completions : fprop_global , pub period_timer : timer_list , pub period_time : :: cty :: c_ulong , pub dirty_limit_tstamp : :: cty :: c_ulong , pub dirty_limit : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_wb_domain () { assert_eq ! (:: core :: mem :: size_of :: < wb_domain > () , 120usize , concat ! ("Size of: " , stringify ! (wb_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < wb_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (wb_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_domain > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wb_domain) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_domain > ())) . completions as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wb_domain) , "::" , stringify ! (completions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_domain > ())) . period_timer as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (wb_domain) , "::" , stringify ! (period_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_domain > ())) . period_time as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (wb_domain) , "::" , stringify ! (period_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_domain > ())) . dirty_limit_tstamp as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (wb_domain) , "::" , stringify ! (dirty_limit_tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_domain > ())) . dirty_limit as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (wb_domain) , "::" , stringify ! (dirty_limit))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct wb_completion { pub cnt : atomic_t , pub waitq : * mut wait_queue_head_t , } # [test] fn bindgen_test_layout_wb_completion () { assert_eq ! (:: core :: mem :: size_of :: < wb_completion > () , 16usize , concat ! ("Size of: " , stringify ! (wb_completion))) ; assert_eq ! (:: core :: mem :: align_of :: < wb_completion > () , 8usize , concat ! ("Alignment of " , stringify ! (wb_completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_completion > ())) . cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wb_completion) , "::" , stringify ! (cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wb_completion > ())) . waitq as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wb_completion) , "::" , stringify ! (waitq))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct memcg_cgwb_frn { pub bdi_id : _cargo_bpf_u64 , pub memcg_id : :: cty :: c_int , pub at : _cargo_bpf_u64 , pub done : wb_completion , } # [test] fn bindgen_test_layout_memcg_cgwb_frn () { assert_eq ! (:: core :: mem :: size_of :: < memcg_cgwb_frn > () , 40usize , concat ! ("Size of: " , stringify ! (memcg_cgwb_frn))) ; assert_eq ! (:: core :: mem :: align_of :: < memcg_cgwb_frn > () , 8usize , concat ! ("Alignment of " , stringify ! (memcg_cgwb_frn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_cgwb_frn > ())) . bdi_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (memcg_cgwb_frn) , "::" , stringify ! (bdi_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_cgwb_frn > ())) . memcg_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (memcg_cgwb_frn) , "::" , stringify ! (memcg_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_cgwb_frn > ())) . at as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (memcg_cgwb_frn) , "::" , stringify ! (at))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_cgwb_frn > ())) . done as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (memcg_cgwb_frn) , "::" , stringify ! (done))) ; } # [repr (C)] pub struct mem_cgroup { pub css : cgroup_subsys_state , pub id : mem_cgroup_id , pub memory : page_counter , pub __bindgen_anon_1 : mem_cgroup__bindgen_ty_1 , pub kmem : page_counter , pub tcpmem : page_counter , pub high_work : work_struct , pub soft_limit : :: cty :: c_ulong , pub vmpressure : vmpressure , pub oom_group : bool_ , pub oom_lock : bool_ , pub under_oom : :: cty :: c_int , pub swappiness : :: cty :: c_int , pub oom_kill_disable : :: cty :: c_int , pub events_file : cgroup_file , pub events_local_file : cgroup_file , pub swap_events_file : cgroup_file , pub thresholds_lock : mutex , pub thresholds : mem_cgroup_thresholds , pub memsw_thresholds : mem_cgroup_thresholds , pub oom_notify : list_head , pub move_charge_at_immigrate : :: cty :: c_ulong , pub move_lock : spinlock_t , pub move_lock_flags : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , pub _pad1_ : memcg_padding , pub vmstats : memcg_vmstats , pub memory_events : [atomic_long_t ; 8usize] , pub memory_events_local : [atomic_long_t ; 8usize] , pub socket_pressure : :: cty :: c_ulong , pub tcpmem_active : bool_ , pub tcpmem_pressure : :: cty :: c_int , pub kmemcg_id : :: cty :: c_int , pub kmem_state : memcg_kmem_state , pub objcg : * mut obj_cgroup , pub objcg_list : list_head , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 16usize] > , pub _pad2_ : memcg_padding , pub moving_account : atomic_t , pub move_lock_task : * mut task_struct , pub vmstats_percpu : * mut memcg_vmstats_percpu , pub cgwb_list : list_head , pub cgwb_domain : wb_domain , pub cgwb_frn : [memcg_cgwb_frn ; 4usize] , pub event_list : list_head , pub event_list_lock : spinlock_t , pub deferred_split_queue : deferred_split , pub nodeinfo : __IncompleteArrayField < * mut mem_cgroup_per_node > , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [repr (C)] # [derive (Copy , Clone)] pub union mem_cgroup__bindgen_ty_1 { pub swap : page_counter , pub memsw : page_counter , } # [test] fn bindgen_test_layout_mem_cgroup__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup__bindgen_ty_1 > () , 112usize , concat ! ("Size of: " , stringify ! (mem_cgroup__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup__bindgen_ty_1 > ())) . swap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup__bindgen_ty_1) , "::" , stringify ! (swap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup__bindgen_ty_1 > ())) . memsw as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup__bindgen_ty_1) , "::" , stringify ! (memsw))) ; } # [test] fn bindgen_test_layout_mem_cgroup () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup > () , 3968usize , concat ! ("Size of: " , stringify ! (mem_cgroup))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . css as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (css))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . id as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . memory as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (memory))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . kmem as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (kmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . tcpmem as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (tcpmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . high_work as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (high_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . soft_limit as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (soft_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . vmpressure as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (vmpressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . oom_group as * const _ as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (oom_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . oom_lock as * const _ as usize } , 817usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (oom_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . under_oom as * const _ as usize } , 820usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (under_oom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . swappiness as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (swappiness))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . oom_kill_disable as * const _ as usize } , 828usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (oom_kill_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . events_file as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (events_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . events_local_file as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (events_local_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . swap_events_file as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (swap_events_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . thresholds_lock as * const _ as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (thresholds_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . thresholds as * const _ as usize } , 1032usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (thresholds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . memsw_thresholds as * const _ as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (memsw_thresholds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . oom_notify as * const _ as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (oom_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . move_charge_at_immigrate as * const _ as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (move_charge_at_immigrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . move_lock as * const _ as usize } , 1088usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (move_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . move_lock_flags as * const _ as usize } , 1096usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (move_lock_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . _pad1_ as * const _ as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (_pad1_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . vmstats as * const _ as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (vmstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . memory_events as * const _ as usize } , 3392usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (memory_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . memory_events_local as * const _ as usize } , 3456usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (memory_events_local))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . socket_pressure as * const _ as usize } , 3520usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (socket_pressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . tcpmem_active as * const _ as usize } , 3528usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (tcpmem_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . tcpmem_pressure as * const _ as usize } , 3532usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (tcpmem_pressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . kmemcg_id as * const _ as usize } , 3536usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (kmemcg_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . kmem_state as * const _ as usize } , 3540usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (kmem_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . objcg as * const _ as usize } , 3544usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (objcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . objcg_list as * const _ as usize } , 3552usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (objcg_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . _pad2_ as * const _ as usize } , 3584usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (_pad2_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . moving_account as * const _ as usize } , 3584usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (moving_account))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . move_lock_task as * const _ as usize } , 3592usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (move_lock_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . vmstats_percpu as * const _ as usize } , 3600usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (vmstats_percpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . cgwb_list as * const _ as usize } , 3608usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (cgwb_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . cgwb_domain as * const _ as usize } , 3624usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (cgwb_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . cgwb_frn as * const _ as usize } , 3744usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (cgwb_frn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . event_list as * const _ as usize } , 3904usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (event_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . event_list_lock as * const _ as usize } , 3920usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (event_list_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . deferred_split_queue as * const _ as usize } , 3928usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (deferred_split_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup > ())) . nodeinfo as * const _ as usize } , 3960usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup) , "::" , stringify ! (nodeinfo))) ; } impl mem_cgroup { # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_3 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct pid_namespace { pub idr : idr , pub rcu : callback_head , pub pid_allocated : :: cty :: c_uint , pub child_reaper : * mut task_struct , pub pid_cachep : * mut kmem_cache , pub level : :: cty :: c_uint , pub parent : * mut pid_namespace , pub bacct : * mut fs_pin , pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub reboot : :: cty :: c_int , pub ns : ns_common , } # [test] fn bindgen_test_layout_pid_namespace () { assert_eq ! (:: core :: mem :: size_of :: < pid_namespace > () , 136usize , concat ! ("Size of: " , stringify ! (pid_namespace))) ; assert_eq ! (:: core :: mem :: align_of :: < pid_namespace > () , 8usize , concat ! ("Alignment of " , stringify ! (pid_namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . idr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (idr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . rcu as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . pid_allocated as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (pid_allocated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . child_reaper as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (child_reaper))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . pid_cachep as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (pid_cachep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . level as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . parent as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . bacct as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (bacct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . user_ns as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . ucounts as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . reboot as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (reboot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pid_namespace > ())) . ns as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (pid_namespace) , "::" , stringify ! (ns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct task_cputime { pub stime : _cargo_bpf_u64 , pub utime : _cargo_bpf_u64 , pub sum_exec_runtime : :: cty :: c_ulonglong , } # [test] fn bindgen_test_layout_task_cputime () { assert_eq ! (:: core :: mem :: size_of :: < task_cputime > () , 24usize , concat ! ("Size of: " , stringify ! (task_cputime))) ; assert_eq ! (:: core :: mem :: align_of :: < task_cputime > () , 8usize , concat ! ("Alignment of " , stringify ! (task_cputime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_cputime > ())) . stime as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_cputime) , "::" , stringify ! (stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_cputime > ())) . utime as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (task_cputime) , "::" , stringify ! (utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_cputime > ())) . sum_exec_runtime as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (task_cputime) , "::" , stringify ! (sum_exec_runtime))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nsproxy { pub count : atomic_t , pub uts_ns : * mut uts_namespace , pub ipc_ns : * mut ipc_namespace , pub mnt_ns : * mut mnt_namespace , pub pid_ns_for_children : * mut pid_namespace , pub net_ns : * mut net , pub time_ns : * mut time_namespace , pub time_ns_for_children : * mut time_namespace , pub cgroup_ns : * mut cgroup_namespace , } # [test] fn bindgen_test_layout_nsproxy () { assert_eq ! (:: core :: mem :: size_of :: < nsproxy > () , 72usize , concat ! ("Size of: " , stringify ! (nsproxy))) ; assert_eq ! (:: core :: mem :: align_of :: < nsproxy > () , 8usize , concat ! ("Alignment of " , stringify ! (nsproxy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . uts_ns as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (uts_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . ipc_ns as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (ipc_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . mnt_ns as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (mnt_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . pid_ns_for_children as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (pid_ns_for_children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . net_ns as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (net_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . time_ns as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (time_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . time_ns_for_children as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (time_ns_for_children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsproxy > ())) . cgroup_ns as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nsproxy) , "::" , stringify ! (cgroup_ns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bio_list { pub head : * mut bio , pub tail : * mut bio , } # [test] fn bindgen_test_layout_bio_list () { assert_eq ! (:: core :: mem :: size_of :: < bio_list > () , 16usize , concat ! ("Size of: " , stringify ! (bio_list))) ; assert_eq ! (:: core :: mem :: align_of :: < bio_list > () , 8usize , concat ! ("Alignment of " , stringify ! (bio_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_list > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio_list) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_list > ())) . tail as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bio_list) , "::" , stringify ! (tail))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_plug { pub mq_list : list_head , pub cb_list : list_head , pub rq_count : :: cty :: c_ushort , pub multiple_queues : bool_ , pub nowait : bool_ , } # [test] fn bindgen_test_layout_blk_plug () { assert_eq ! (:: core :: mem :: size_of :: < blk_plug > () , 40usize , concat ! ("Size of: " , stringify ! (blk_plug))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_plug > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_plug))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_plug > ())) . mq_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_plug) , "::" , stringify ! (mq_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_plug > ())) . cb_list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_plug) , "::" , stringify ! (cb_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_plug > ())) . rq_count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_plug) , "::" , stringify ! (rq_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_plug > ())) . multiple_queues as * const _ as usize } , 34usize , concat ! ("Offset of field: " , stringify ! (blk_plug) , "::" , stringify ! (multiple_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_plug > ())) . nowait as * const _ as usize } , 35usize , concat ! ("Offset of field: " , stringify ! (blk_plug) , "::" , stringify ! (nowait))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct reclaim_state { pub reclaimed_slab : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_reclaim_state () { assert_eq ! (:: core :: mem :: size_of :: < reclaim_state > () , 8usize , concat ! ("Size of: " , stringify ! (reclaim_state))) ; assert_eq ! (:: core :: mem :: align_of :: < reclaim_state > () , 8usize , concat ! ("Alignment of " , stringify ! (reclaim_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < reclaim_state > ())) . reclaimed_slab as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (reclaim_state) , "::" , stringify ! (reclaimed_slab))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fprop_local_percpu { pub events : percpu_counter , pub period : :: cty :: c_uint , pub lock : raw_spinlock_t , } # [test] fn bindgen_test_layout_fprop_local_percpu () { assert_eq ! (:: core :: mem :: size_of :: < fprop_local_percpu > () , 48usize , concat ! ("Size of: " , stringify ! (fprop_local_percpu))) ; assert_eq ! (:: core :: mem :: align_of :: < fprop_local_percpu > () , 8usize , concat ! ("Alignment of " , stringify ! (fprop_local_percpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fprop_local_percpu > ())) . events as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fprop_local_percpu) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fprop_local_percpu > ())) . period as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fprop_local_percpu) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fprop_local_percpu > ())) . lock as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (fprop_local_percpu) , "::" , stringify ! (lock))) ; } pub const wb_reason_WB_REASON_BACKGROUND : wb_reason = 0 ; pub const wb_reason_WB_REASON_VMSCAN : wb_reason = 1 ; pub const wb_reason_WB_REASON_SYNC : wb_reason = 2 ; pub const wb_reason_WB_REASON_PERIODIC : wb_reason = 3 ; pub const wb_reason_WB_REASON_LAPTOP_TIMER : wb_reason = 4 ; pub const wb_reason_WB_REASON_FS_FREE_SPACE : wb_reason = 5 ; pub const wb_reason_WB_REASON_FORKER_THREAD : wb_reason = 6 ; pub const wb_reason_WB_REASON_FOREIGN_FLUSH : wb_reason = 7 ; pub const wb_reason_WB_REASON_MAX : wb_reason = 8 ; pub type wb_reason = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct bdi_writeback { pub bdi : * mut backing_dev_info , pub state : :: cty :: c_ulong , pub last_old_flush : :: cty :: c_ulong , pub b_dirty : list_head , pub b_io : list_head , pub b_more_io : list_head , pub b_dirty_time : list_head , pub list_lock : spinlock_t , pub stat : [percpu_counter ; 4usize] , pub congested : :: cty :: c_ulong , pub bw_time_stamp : :: cty :: c_ulong , pub dirtied_stamp : :: cty :: c_ulong , pub written_stamp : :: cty :: c_ulong , pub write_bandwidth : :: cty :: c_ulong , pub avg_write_bandwidth : :: cty :: c_ulong , pub dirty_ratelimit : :: cty :: c_ulong , pub balanced_dirty_ratelimit : :: cty :: c_ulong , pub completions : fprop_local_percpu , pub dirty_exceeded : :: cty :: c_int , pub start_all_reason : wb_reason , pub work_lock : spinlock_t , pub work_list : list_head , pub dwork : delayed_work , pub dirty_sleep : :: cty :: c_ulong , pub bdi_node : list_head , pub refcnt : percpu_ref , pub memcg_completions : fprop_local_percpu , pub memcg_css : * mut cgroup_subsys_state , pub blkcg_css : * mut cgroup_subsys_state , pub memcg_node : list_head , pub blkcg_node : list_head , pub __bindgen_anon_1 : bdi_writeback__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bdi_writeback__bindgen_ty_1 { pub release_work : work_struct , pub rcu : callback_head , } # [test] fn bindgen_test_layout_bdi_writeback__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bdi_writeback__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (bdi_writeback__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bdi_writeback__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bdi_writeback__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback__bindgen_ty_1 > ())) . release_work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback__bindgen_ty_1) , "::" , stringify ! (release_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_bdi_writeback () { assert_eq ! (:: core :: mem :: size_of :: < bdi_writeback > () , 656usize , concat ! ("Size of: " , stringify ! (bdi_writeback))) ; assert_eq ! (:: core :: mem :: align_of :: < bdi_writeback > () , 8usize , concat ! ("Alignment of " , stringify ! (bdi_writeback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . bdi as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (bdi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . state as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . last_old_flush as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (last_old_flush))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . b_dirty as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (b_dirty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . b_io as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (b_io))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . b_more_io as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (b_more_io))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . b_dirty_time as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (b_dirty_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . list_lock as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (list_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . stat as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . congested as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (congested))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . bw_time_stamp as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (bw_time_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . dirtied_stamp as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (dirtied_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . written_stamp as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (written_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . write_bandwidth as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (write_bandwidth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . avg_write_bandwidth as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (avg_write_bandwidth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . dirty_ratelimit as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (dirty_ratelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . balanced_dirty_ratelimit as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (balanced_dirty_ratelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . completions as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (completions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . dirty_exceeded as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (dirty_exceeded))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . start_all_reason as * const _ as usize } , 372usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (start_all_reason))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . work_lock as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (work_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . work_list as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (work_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . dwork as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (dwork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . dirty_sleep as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (dirty_sleep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . bdi_node as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (bdi_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . refcnt as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . memcg_completions as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (memcg_completions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . memcg_css as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (memcg_css))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . blkcg_css as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (blkcg_css))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . memcg_node as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (memcg_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bdi_writeback > ())) . blkcg_node as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (bdi_writeback) , "::" , stringify ! (blkcg_node))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct backing_dev_info { pub id : _cargo_bpf_u64 , pub rb_node : rb_node , pub bdi_list : list_head , pub ra_pages : :: cty :: c_ulong , pub io_pages : :: cty :: c_ulong , pub refcnt : kref , pub capabilities : :: cty :: c_uint , pub min_ratio : :: cty :: c_uint , pub max_ratio : :: cty :: c_uint , pub max_prop_frac : :: cty :: c_uint , pub tot_write_bandwidth : atomic_long_t , pub wb : bdi_writeback , pub wb_list : list_head , pub cgwb_tree : xarray , pub cgwb_release_mutex : mutex , pub wb_switch_rwsem : rw_semaphore , pub wb_waitq : wait_queue_head_t , pub dev : * mut device , pub dev_name : [:: cty :: c_char ; 64usize] , pub owner : * mut device , pub laptop_mode_wb_timer : timer_list , pub debug_dir : * mut dentry , } # [test] fn bindgen_test_layout_backing_dev_info () { assert_eq ! (:: core :: mem :: size_of :: < backing_dev_info > () , 1008usize , concat ! ("Size of: " , stringify ! (backing_dev_info))) ; assert_eq ! (:: core :: mem :: align_of :: < backing_dev_info > () , 8usize , concat ! ("Alignment of " , stringify ! (backing_dev_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . rb_node as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (rb_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . bdi_list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (bdi_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . ra_pages as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (ra_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . io_pages as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (io_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . refcnt as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . capabilities as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (capabilities))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . min_ratio as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (min_ratio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . max_ratio as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (max_ratio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . max_prop_frac as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (max_prop_frac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . tot_write_bandwidth as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (tot_write_bandwidth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . wb as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (wb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . wb_list as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (wb_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . cgwb_tree as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (cgwb_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . cgwb_release_mutex as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (cgwb_release_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . wb_switch_rwsem as * const _ as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (wb_switch_rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . wb_waitq as * const _ as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (wb_waitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . dev as * const _ as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . dev_name as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (dev_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . owner as * const _ as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . laptop_mode_wb_timer as * const _ as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (laptop_mode_wb_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < backing_dev_info > ())) . debug_dir as * const _ as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (backing_dev_info) , "::" , stringify ! (debug_dir))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct css_set { pub subsys : [* mut cgroup_subsys_state ; 13usize] , pub refcount : refcount_t , pub dom_cset : * mut css_set , pub dfl_cgrp : * mut cgroup , pub nr_tasks : :: cty :: c_int , pub tasks : list_head , pub mg_tasks : list_head , pub dying_tasks : list_head , pub task_iters : list_head , pub e_cset_node : [list_head ; 13usize] , pub threaded_csets : list_head , pub threaded_csets_node : list_head , pub hlist : hlist_node , pub cgrp_links : list_head , pub mg_preload_node : list_head , pub mg_node : list_head , pub mg_src_cgrp : * mut cgroup , pub mg_dst_cgrp : * mut cgroup , pub mg_dst_cset : * mut css_set , pub dead : bool_ , pub callback_head : callback_head , } # [test] fn bindgen_test_layout_css_set () { assert_eq ! (:: core :: mem :: size_of :: < css_set > () , 552usize , concat ! ("Size of: " , stringify ! (css_set))) ; assert_eq ! (:: core :: mem :: align_of :: < css_set > () , 8usize , concat ! ("Alignment of " , stringify ! (css_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . subsys as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (subsys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . refcount as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . dom_cset as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (dom_cset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . dfl_cgrp as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (dfl_cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . nr_tasks as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (nr_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . tasks as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . mg_tasks as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (mg_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . dying_tasks as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (dying_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . task_iters as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (task_iters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . e_cset_node as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (e_cset_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . threaded_csets as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (threaded_csets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . threaded_csets_node as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (threaded_csets_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . hlist as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (hlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . cgrp_links as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (cgrp_links))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . mg_preload_node as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (mg_preload_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . mg_node as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (mg_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . mg_src_cgrp as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (mg_src_cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . mg_dst_cgrp as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (mg_dst_cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . mg_dst_cset as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (mg_dst_cset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . dead as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < css_set > ())) . callback_head as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (css_set) , "::" , stringify ! (callback_head))) ; } pub type compat_uptr_t = _cargo_bpf_u32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct compat_robust_list { pub next : compat_uptr_t , } # [test] fn bindgen_test_layout_compat_robust_list () { assert_eq ! (:: core :: mem :: size_of :: < compat_robust_list > () , 4usize , concat ! ("Size of: " , stringify ! (compat_robust_list))) ; assert_eq ! (:: core :: mem :: align_of :: < compat_robust_list > () , 4usize , concat ! ("Alignment of " , stringify ! (compat_robust_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < compat_robust_list > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (compat_robust_list) , "::" , stringify ! (next))) ; } pub type compat_long_t = s32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct compat_robust_list_head { pub list : compat_robust_list , pub futex_offset : compat_long_t , pub list_op_pending : compat_uptr_t , } # [test] fn bindgen_test_layout_compat_robust_list_head () { assert_eq ! (:: core :: mem :: size_of :: < compat_robust_list_head > () , 12usize , concat ! ("Size of: " , stringify ! (compat_robust_list_head))) ; assert_eq ! (:: core :: mem :: align_of :: < compat_robust_list_head > () , 4usize , concat ! ("Alignment of " , stringify ! (compat_robust_list_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < compat_robust_list_head > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (compat_robust_list_head) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < compat_robust_list_head > ())) . futex_offset as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (compat_robust_list_head) , "::" , stringify ! (futex_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < compat_robust_list_head > ())) . list_op_pending as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (compat_robust_list_head) , "::" , stringify ! (list_op_pending))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_event_groups { pub tree : rb_root , pub index : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_perf_event_groups () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_groups > () , 16usize , concat ! ("Size of: " , stringify ! (perf_event_groups))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_groups > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_groups > ())) . tree as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_groups) , "::" , stringify ! (tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_groups > ())) . index as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_event_groups) , "::" , stringify ! (index))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_event_context { pub pmu : * mut pmu , pub lock : raw_spinlock_t , pub mutex : mutex , pub active_ctx_list : list_head , pub pinned_groups : perf_event_groups , pub flexible_groups : perf_event_groups , pub event_list : list_head , pub pinned_active : list_head , pub flexible_active : list_head , pub nr_events : :: cty :: c_int , pub nr_active : :: cty :: c_int , pub is_active : :: cty :: c_int , pub nr_stat : :: cty :: c_int , pub nr_freq : :: cty :: c_int , pub rotate_disable : :: cty :: c_int , pub rotate_necessary : :: cty :: c_int , pub refcount : refcount_t , pub task : * mut task_struct , pub time : _cargo_bpf_u64 , pub timestamp : _cargo_bpf_u64 , pub parent_ctx : * mut perf_event_context , pub parent_gen : _cargo_bpf_u64 , pub generation : _cargo_bpf_u64 , pub pin_count : :: cty :: c_int , pub nr_cgroups : :: cty :: c_int , pub task_ctx_data : * mut :: cty :: c_void , pub callback_head : callback_head , } # [test] fn bindgen_test_layout_perf_event_context () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_context > () , 256usize , concat ! ("Size of: " , stringify ! (perf_event_context))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_context > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . pmu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (pmu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . mutex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . active_ctx_list as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (active_ctx_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . pinned_groups as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (pinned_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . flexible_groups as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (flexible_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . event_list as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (event_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . pinned_active as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (pinned_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . flexible_active as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (flexible_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . nr_events as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (nr_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . nr_active as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (nr_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . is_active as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (is_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . nr_stat as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (nr_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . nr_freq as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (nr_freq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . rotate_disable as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (rotate_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . rotate_necessary as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (rotate_necessary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . refcount as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . task as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . time as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . timestamp as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . parent_ctx as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (parent_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . parent_gen as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (parent_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . generation as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (generation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . pin_count as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (pin_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . nr_cgroups as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (nr_cgroups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . task_ctx_data as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (task_ctx_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_context > ())) . callback_head as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (perf_event_context) , "::" , stringify ! (callback_head))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct task_delay_info { pub lock : raw_spinlock_t , pub flags : :: cty :: c_uint , pub blkio_start : _cargo_bpf_u64 , pub blkio_delay : _cargo_bpf_u64 , pub swapin_delay : _cargo_bpf_u64 , pub blkio_count : _cargo_bpf_u32 , pub swapin_count : _cargo_bpf_u32 , pub freepages_start : _cargo_bpf_u64 , pub freepages_delay : _cargo_bpf_u64 , pub thrashing_start : _cargo_bpf_u64 , pub thrashing_delay : _cargo_bpf_u64 , pub freepages_count : _cargo_bpf_u32 , pub thrashing_count : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_task_delay_info () { assert_eq ! (:: core :: mem :: size_of :: < task_delay_info > () , 80usize , concat ! ("Size of: " , stringify ! (task_delay_info))) ; assert_eq ! (:: core :: mem :: align_of :: < task_delay_info > () , 8usize , concat ! ("Alignment of " , stringify ! (task_delay_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . blkio_start as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (blkio_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . blkio_delay as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (blkio_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . swapin_delay as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (swapin_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . blkio_count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (blkio_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . swapin_count as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (swapin_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . freepages_start as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (freepages_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . freepages_delay as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (freepages_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . thrashing_start as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (thrashing_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . thrashing_delay as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (thrashing_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . freepages_count as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (freepages_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_delay_info > ())) . thrashing_count as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (task_delay_info) , "::" , stringify ! (thrashing_count))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ftrace_ret_stack { pub ret : :: cty :: c_ulong , pub func : :: cty :: c_ulong , pub calltime : :: cty :: c_ulonglong , pub subtime : :: cty :: c_ulonglong , pub retp : * mut :: cty :: c_ulong , } # [test] fn bindgen_test_layout_ftrace_ret_stack () { assert_eq ! (:: core :: mem :: size_of :: < ftrace_ret_stack > () , 40usize , concat ! ("Size of: " , stringify ! (ftrace_ret_stack))) ; assert_eq ! (:: core :: mem :: align_of :: < ftrace_ret_stack > () , 8usize , concat ! ("Alignment of " , stringify ! (ftrace_ret_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ret_stack > ())) . ret as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ftrace_ret_stack) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ret_stack > ())) . func as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ftrace_ret_stack) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ret_stack > ())) . calltime as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ftrace_ret_stack) , "::" , stringify ! (calltime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ret_stack > ())) . subtime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ftrace_ret_stack) , "::" , stringify ! (subtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_ret_stack > ())) . retp as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ftrace_ret_stack) , "::" , stringify ! (retp))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_integrity { pub profile : * const blk_integrity_profile , pub flags : :: cty :: c_uchar , pub tuple_size : :: cty :: c_uchar , pub interval_exp : :: cty :: c_uchar , pub tag_size : :: cty :: c_uchar , } # [test] fn bindgen_test_layout_blk_integrity () { assert_eq ! (:: core :: mem :: size_of :: < blk_integrity > () , 16usize , concat ! ("Size of: " , stringify ! (blk_integrity))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_integrity > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_integrity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity > ())) . profile as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_integrity) , "::" , stringify ! (profile))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_integrity) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity > ())) . tuple_size as * const _ as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (blk_integrity) , "::" , stringify ! (tuple_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity > ())) . interval_exp as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (blk_integrity) , "::" , stringify ! (interval_exp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity > ())) . tag_size as * const _ as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (blk_integrity) , "::" , stringify ! (tag_size))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_rq_stat { pub mean : _cargo_bpf_u64 , pub min : _cargo_bpf_u64 , pub max : _cargo_bpf_u64 , pub nr_samples : _cargo_bpf_u32 , pub batch : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_blk_rq_stat () { assert_eq ! (:: core :: mem :: size_of :: < blk_rq_stat > () , 40usize , concat ! ("Size of: " , stringify ! (blk_rq_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_rq_stat > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_rq_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_rq_stat > ())) . mean as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_rq_stat) , "::" , stringify ! (mean))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_rq_stat > ())) . min as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_rq_stat) , "::" , stringify ! (min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_rq_stat > ())) . max as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_rq_stat) , "::" , stringify ! (max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_rq_stat > ())) . nr_samples as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_rq_stat) , "::" , stringify ! (nr_samples))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_rq_stat > ())) . batch as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_rq_stat) , "::" , stringify ! (batch))) ; } pub const blk_bounce_BLK_BOUNCE_NONE : blk_bounce = 0 ; pub const blk_bounce_BLK_BOUNCE_HIGH : blk_bounce = 1 ; pub type blk_bounce = :: cty :: c_uint ; pub const blk_zoned_model_BLK_ZONED_NONE : blk_zoned_model = 0 ; pub const blk_zoned_model_BLK_ZONED_HA : blk_zoned_model = 1 ; pub const blk_zoned_model_BLK_ZONED_HM : blk_zoned_model = 2 ; pub type blk_zoned_model = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct queue_limits { pub bounce : blk_bounce , pub seg_boundary_mask : :: cty :: c_ulong , pub virt_boundary_mask : :: cty :: c_ulong , pub max_hw_sectors : :: cty :: c_uint , pub max_dev_sectors : :: cty :: c_uint , pub chunk_sectors : :: cty :: c_uint , pub max_sectors : :: cty :: c_uint , pub max_segment_size : :: cty :: c_uint , pub physical_block_size : :: cty :: c_uint , pub logical_block_size : :: cty :: c_uint , pub alignment_offset : :: cty :: c_uint , pub io_min : :: cty :: c_uint , pub io_opt : :: cty :: c_uint , pub max_discard_sectors : :: cty :: c_uint , pub max_hw_discard_sectors : :: cty :: c_uint , pub max_write_same_sectors : :: cty :: c_uint , pub max_write_zeroes_sectors : :: cty :: c_uint , pub max_zone_append_sectors : :: cty :: c_uint , pub discard_granularity : :: cty :: c_uint , pub discard_alignment : :: cty :: c_uint , pub zone_write_granularity : :: cty :: c_uint , pub max_segments : :: cty :: c_ushort , pub max_integrity_segments : :: cty :: c_ushort , pub max_discard_segments : :: cty :: c_ushort , pub misaligned : :: cty :: c_uchar , pub discard_misaligned : :: cty :: c_uchar , pub raid_partial_stripes_expensive : :: cty :: c_uchar , pub zoned : blk_zoned_model , } # [test] fn bindgen_test_layout_queue_limits () { assert_eq ! (:: core :: mem :: size_of :: < queue_limits > () , 112usize , concat ! ("Size of: " , stringify ! (queue_limits))) ; assert_eq ! (:: core :: mem :: align_of :: < queue_limits > () , 8usize , concat ! ("Alignment of " , stringify ! (queue_limits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . bounce as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (bounce))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . seg_boundary_mask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (seg_boundary_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . virt_boundary_mask as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (virt_boundary_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_hw_sectors as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_hw_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_dev_sectors as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_dev_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . chunk_sectors as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (chunk_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_sectors as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_segment_size as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_segment_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . physical_block_size as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (physical_block_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . logical_block_size as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (logical_block_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . alignment_offset as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (alignment_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . io_min as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (io_min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . io_opt as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (io_opt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_discard_sectors as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_discard_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_hw_discard_sectors as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_hw_discard_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_write_same_sectors as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_write_same_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_write_zeroes_sectors as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_write_zeroes_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_zone_append_sectors as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_zone_append_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . discard_granularity as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (discard_granularity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . discard_alignment as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (discard_alignment))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . zone_write_granularity as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (zone_write_granularity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_segments as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_segments))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_integrity_segments as * const _ as usize } , 98usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_integrity_segments))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . max_discard_segments as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (max_discard_segments))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . misaligned as * const _ as usize } , 102usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (misaligned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . discard_misaligned as * const _ as usize } , 103usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (discard_misaligned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . raid_partial_stripes_expensive as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (raid_partial_stripes_expensive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < queue_limits > ())) . zoned as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (queue_limits) , "::" , stringify ! (zoned))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bsg_class_device { pub class_dev : * mut device , pub minor : :: cty :: c_int , pub queue : * mut request_queue , pub ops : * const bsg_ops , } # [test] fn bindgen_test_layout_bsg_class_device () { assert_eq ! (:: core :: mem :: size_of :: < bsg_class_device > () , 32usize , concat ! ("Size of: " , stringify ! (bsg_class_device))) ; assert_eq ! (:: core :: mem :: align_of :: < bsg_class_device > () , 8usize , concat ! ("Alignment of " , stringify ! (bsg_class_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_class_device > ())) . class_dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bsg_class_device) , "::" , stringify ! (class_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_class_device > ())) . minor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bsg_class_device) , "::" , stringify ! (minor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_class_device > ())) . queue as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bsg_class_device) , "::" , stringify ! (queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_class_device > ())) . ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bsg_class_device) , "::" , stringify ! (ops))) ; } pub type mempool_alloc_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : gfp_t , arg2 : * mut :: cty :: c_void) -> * mut :: cty :: c_void > ; pub type mempool_free_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : * mut :: cty :: c_void) > ; # [repr (C)] # [derive (Copy , Clone)] pub struct mempool_s { pub lock : spinlock_t , pub min_nr : :: cty :: c_int , pub curr_nr : :: cty :: c_int , pub elements : * mut * mut :: cty :: c_void , pub pool_data : * mut :: cty :: c_void , pub alloc : mempool_alloc_t , pub free : mempool_free_t , pub wait : wait_queue_head_t , } # [test] fn bindgen_test_layout_mempool_s () { assert_eq ! (:: core :: mem :: size_of :: < mempool_s > () , 72usize , concat ! ("Size of: " , stringify ! (mempool_s))) ; assert_eq ! (:: core :: mem :: align_of :: < mempool_s > () , 8usize , concat ! ("Alignment of " , stringify ! (mempool_s))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . min_nr as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (min_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . curr_nr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (curr_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . elements as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (elements))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . pool_data as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (pool_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . alloc as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . free as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mempool_s > ())) . wait as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (mempool_s) , "::" , stringify ! (wait))) ; } pub type mempool_t = mempool_s ; # [repr (C)] # [derive (Copy , Clone)] pub struct bio_set { pub bio_slab : * mut kmem_cache , pub front_pad : :: cty :: c_uint , pub bio_pool : mempool_t , pub bvec_pool : mempool_t , pub bio_integrity_pool : mempool_t , pub bvec_integrity_pool : mempool_t , pub back_pad : :: cty :: c_uint , pub rescue_lock : spinlock_t , pub rescue_list : bio_list , pub rescue_work : work_struct , pub rescue_workqueue : * mut workqueue_struct , } # [test] fn bindgen_test_layout_bio_set () { assert_eq ! (:: core :: mem :: size_of :: < bio_set > () , 368usize , concat ! ("Size of: " , stringify ! (bio_set))) ; assert_eq ! (:: core :: mem :: align_of :: < bio_set > () , 8usize , concat ! ("Alignment of " , stringify ! (bio_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . bio_slab as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (bio_slab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . front_pad as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (front_pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . bio_pool as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (bio_pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . bvec_pool as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (bvec_pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . bio_integrity_pool as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (bio_integrity_pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . bvec_integrity_pool as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (bvec_integrity_pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . back_pad as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (back_pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . rescue_lock as * const _ as usize } , 308usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (rescue_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . rescue_list as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (rescue_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . rescue_work as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (rescue_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_set > ())) . rescue_workqueue as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (bio_set) , "::" , stringify ! (rescue_workqueue))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct request_queue { pub last_merge : * mut request , pub elevator : * mut elevator_queue , pub q_usage_counter : percpu_ref , pub stats : * mut blk_queue_stats , pub rq_qos : * mut rq_qos , pub mq_ops : * const blk_mq_ops , pub queue_ctx : * mut blk_mq_ctx , pub queue_depth : :: cty :: c_uint , pub queue_hw_ctx : * mut * mut blk_mq_hw_ctx , pub nr_hw_queues : :: cty :: c_uint , pub backing_dev_info : * mut backing_dev_info , pub queuedata : * mut :: cty :: c_void , pub queue_flags : :: cty :: c_ulong , pub pm_only : atomic_t , pub id : :: cty :: c_int , pub queue_lock : spinlock_t , pub kobj : kobject , pub mq_kobj : * mut kobject , pub integrity : blk_integrity , pub dev : * mut device , pub rpm_status : rpm_status , pub nr_requests : :: cty :: c_ulong , pub dma_pad_mask : :: cty :: c_uint , pub dma_alignment : :: cty :: c_uint , pub ksm : * mut blk_keyslot_manager , pub rq_timeout : :: cty :: c_uint , pub poll_nsec : :: cty :: c_int , pub poll_cb : * mut blk_stat_callback , pub poll_stat : [blk_rq_stat ; 16usize] , pub timeout : timer_list , pub timeout_work : work_struct , pub nr_active_requests_shared_sbitmap : atomic_t , pub icq_list : list_head , pub blkcg_pols : [:: cty :: c_ulong ; 1usize] , pub root_blkg : * mut blkcg_gq , pub blkg_list : list_head , pub limits : queue_limits , pub required_elevator_features : :: cty :: c_uint , pub nr_zones : :: cty :: c_uint , pub conv_zones_bitmap : * mut :: cty :: c_ulong , pub seq_zones_wlock : * mut :: cty :: c_ulong , pub max_open_zones : :: cty :: c_uint , pub max_active_zones : :: cty :: c_uint , pub sg_timeout : :: cty :: c_uint , pub sg_reserved_size : :: cty :: c_uint , pub node : :: cty :: c_int , pub debugfs_mutex : mutex , pub blk_trace : * mut blk_trace , pub fq : * mut blk_flush_queue , pub requeue_list : list_head , pub requeue_lock : spinlock_t , pub requeue_work : delayed_work , pub sysfs_lock : mutex , pub sysfs_dir_lock : mutex , pub unused_hctx_list : list_head , pub unused_hctx_lock : spinlock_t , pub mq_freeze_depth : :: cty :: c_int , pub bsg_dev : bsg_class_device , pub td : * mut throtl_data , pub callback_head : callback_head , pub mq_freeze_wq : wait_queue_head_t , pub mq_freeze_lock : mutex , pub tag_set : * mut blk_mq_tag_set , pub tag_set_list : list_head , pub bio_split : bio_set , pub debugfs_dir : * mut dentry , pub sched_debugfs_dir : * mut dentry , pub rqos_debugfs_dir : * mut dentry , pub mq_sysfs_init_done : bool_ , pub cmd_size : size_t , pub write_hints : [_cargo_bpf_u64 ; 5usize] , } # [test] fn bindgen_test_layout_request_queue () { assert_eq ! (:: core :: mem :: size_of :: < request_queue > () , 2032usize , concat ! ("Size of: " , stringify ! (request_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < request_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (request_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . last_merge as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (last_merge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . elevator as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (elevator))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . q_usage_counter as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (q_usage_counter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . stats as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . rq_qos as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (rq_qos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . mq_ops as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (mq_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . queue_ctx as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (queue_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . queue_depth as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (queue_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . queue_hw_ctx as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (queue_hw_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . nr_hw_queues as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (nr_hw_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . backing_dev_info as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (backing_dev_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . queuedata as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (queuedata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . queue_flags as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (queue_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . pm_only as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (pm_only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . id as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . queue_lock as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (queue_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . kobj as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . mq_kobj as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (mq_kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . integrity as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (integrity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . dev as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . rpm_status as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (rpm_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . nr_requests as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (nr_requests))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . dma_pad_mask as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (dma_pad_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . dma_alignment as * const _ as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (dma_alignment))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . ksm as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (ksm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . rq_timeout as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (rq_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . poll_nsec as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (poll_nsec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . poll_cb as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (poll_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . poll_stat as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (poll_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . timeout as * const _ as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . timeout_work as * const _ as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (timeout_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . nr_active_requests_shared_sbitmap as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (nr_active_requests_shared_sbitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . icq_list as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (icq_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . blkcg_pols as * const _ as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (blkcg_pols))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . root_blkg as * const _ as usize } , 1016usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (root_blkg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . blkg_list as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (blkg_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . limits as * const _ as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (limits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . required_elevator_features as * const _ as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (required_elevator_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . nr_zones as * const _ as usize } , 1156usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (nr_zones))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . conv_zones_bitmap as * const _ as usize } , 1160usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (conv_zones_bitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . seq_zones_wlock as * const _ as usize } , 1168usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (seq_zones_wlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . max_open_zones as * const _ as usize } , 1176usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (max_open_zones))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . max_active_zones as * const _ as usize } , 1180usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (max_active_zones))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . sg_timeout as * const _ as usize } , 1184usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (sg_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . sg_reserved_size as * const _ as usize } , 1188usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (sg_reserved_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . node as * const _ as usize } , 1192usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . debugfs_mutex as * const _ as usize } , 1200usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (debugfs_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . blk_trace as * const _ as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (blk_trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . fq as * const _ as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (fq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . requeue_list as * const _ as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (requeue_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . requeue_lock as * const _ as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (requeue_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . requeue_work as * const _ as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (requeue_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . sysfs_lock as * const _ as usize } , 1360usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (sysfs_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . sysfs_dir_lock as * const _ as usize } , 1392usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (sysfs_dir_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . unused_hctx_list as * const _ as usize } , 1424usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (unused_hctx_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . unused_hctx_lock as * const _ as usize } , 1440usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (unused_hctx_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . mq_freeze_depth as * const _ as usize } , 1444usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (mq_freeze_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . bsg_dev as * const _ as usize } , 1448usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (bsg_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . td as * const _ as usize } , 1480usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (td))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . callback_head as * const _ as usize } , 1488usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (callback_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . mq_freeze_wq as * const _ as usize } , 1504usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (mq_freeze_wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . mq_freeze_lock as * const _ as usize } , 1528usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (mq_freeze_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . tag_set as * const _ as usize } , 1560usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (tag_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . tag_set_list as * const _ as usize } , 1568usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (tag_set_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . bio_split as * const _ as usize } , 1584usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (bio_split))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . debugfs_dir as * const _ as usize } , 1952usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (debugfs_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . sched_debugfs_dir as * const _ as usize } , 1960usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (sched_debugfs_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . rqos_debugfs_dir as * const _ as usize } , 1968usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (rqos_debugfs_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . mq_sysfs_init_done as * const _ as usize } , 1976usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (mq_sysfs_init_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . cmd_size as * const _ as usize } , 1984usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (cmd_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_queue > ())) . write_hints as * const _ as usize } , 1992usize , concat ! ("Offset of field: " , stringify ! (request_queue) , "::" , stringify ! (write_hints))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_base_stat { pub cputime : task_cputime , } # [test] fn bindgen_test_layout_cgroup_base_stat () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_base_stat > () , 24usize , concat ! ("Size of: " , stringify ! (cgroup_base_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_base_stat > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_base_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_base_stat > ())) . cputime as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_base_stat) , "::" , stringify ! (cputime))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct psi_group { pub avgs_lock : mutex , pub pcpu : * mut psi_group_cpu , pub avg_total : [_cargo_bpf_u64 ; 6usize] , pub avg_last_update : _cargo_bpf_u64 , pub avg_next_update : _cargo_bpf_u64 , pub avgs_work : delayed_work , pub total : [_cargo_bpf_u64 ; 12usize] , pub avg : [:: cty :: c_ulong ; 18usize] , pub poll_task : * mut task_struct , pub poll_timer : timer_list , pub poll_wait : wait_queue_head_t , pub poll_wakeup : atomic_t , pub trigger_lock : mutex , pub triggers : list_head , pub nr_triggers : [_cargo_bpf_u32 ; 6usize] , pub poll_states : _cargo_bpf_u32 , pub poll_min_period : _cargo_bpf_u64 , pub polling_total : [_cargo_bpf_u64 ; 6usize] , pub polling_next_update : _cargo_bpf_u64 , pub polling_until : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_psi_group () { assert_eq ! (:: core :: mem :: size_of :: < psi_group > () , 664usize , concat ! ("Size of: " , stringify ! (psi_group))) ; assert_eq ! (:: core :: mem :: align_of :: < psi_group > () , 8usize , concat ! ("Alignment of " , stringify ! (psi_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . avgs_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (avgs_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . pcpu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (pcpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . avg_total as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (avg_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . avg_last_update as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (avg_last_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . avg_next_update as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (avg_next_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . avgs_work as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (avgs_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . total as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . avg as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . poll_task as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (poll_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . poll_timer as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (poll_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . poll_wait as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (poll_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . poll_wakeup as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (poll_wakeup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . trigger_lock as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (trigger_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . triggers as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (triggers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . nr_triggers as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (nr_triggers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . poll_states as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (poll_states))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . poll_min_period as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (poll_min_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . polling_total as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (polling_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . polling_next_update as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (polling_next_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group > ())) . polling_until as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (psi_group) , "::" , stringify ! (polling_until))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_bpf { pub effective : [* mut bpf_prog_array ; 39usize] , pub progs : [list_head ; 39usize] , pub flags : [_cargo_bpf_u32 ; 39usize] , pub storages : list_head , pub inactive : * mut bpf_prog_array , pub refcnt : percpu_ref , pub release_work : work_struct , } # [test] fn bindgen_test_layout_cgroup_bpf () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_bpf > () , 1168usize , concat ! ("Size of: " , stringify ! (cgroup_bpf))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_bpf > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_bpf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . effective as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (effective))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . progs as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . flags as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . storages as * const _ as usize } , 1096usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (storages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . inactive as * const _ as usize } , 1112usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (inactive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . refcnt as * const _ as usize } , 1120usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_bpf > ())) . release_work as * const _ as usize } , 1136usize , concat ! ("Offset of field: " , stringify ! (cgroup_bpf) , "::" , stringify ! (release_work))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_freezer_state { pub freeze : bool_ , pub e_freeze : :: cty :: c_int , pub nr_frozen_descendants : :: cty :: c_int , pub nr_frozen_tasks : :: cty :: c_int , } # [test] fn bindgen_test_layout_cgroup_freezer_state () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_freezer_state > () , 16usize , concat ! ("Size of: " , stringify ! (cgroup_freezer_state))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_freezer_state > () , 4usize , concat ! ("Alignment of " , stringify ! (cgroup_freezer_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_freezer_state > ())) . freeze as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_freezer_state) , "::" , stringify ! (freeze))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_freezer_state > ())) . e_freeze as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cgroup_freezer_state) , "::" , stringify ! (e_freeze))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_freezer_state > ())) . nr_frozen_descendants as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cgroup_freezer_state) , "::" , stringify ! (nr_frozen_descendants))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_freezer_state > ())) . nr_frozen_tasks as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cgroup_freezer_state) , "::" , stringify ! (nr_frozen_tasks))) ; } # [repr (C)] pub struct cgroup { pub self_ : cgroup_subsys_state , pub flags : :: cty :: c_ulong , pub level : :: cty :: c_int , pub max_depth : :: cty :: c_int , pub nr_descendants : :: cty :: c_int , pub nr_dying_descendants : :: cty :: c_int , pub max_descendants : :: cty :: c_int , pub nr_populated_csets : :: cty :: c_int , pub nr_populated_domain_children : :: cty :: c_int , pub nr_populated_threaded_children : :: cty :: c_int , pub nr_threaded_children : :: cty :: c_int , pub kn : * mut kernfs_node , pub procs_file : cgroup_file , pub events_file : cgroup_file , pub subtree_control : _cargo_bpf_u16 , pub subtree_ss_mask : _cargo_bpf_u16 , pub old_subtree_control : _cargo_bpf_u16 , pub old_subtree_ss_mask : _cargo_bpf_u16 , pub subsys : [* mut cgroup_subsys_state ; 13usize] , pub root : * mut cgroup_root , pub cset_links : list_head , pub e_csets : [list_head ; 13usize] , pub dom_cgrp : * mut cgroup , pub old_dom_cgrp : * mut cgroup , pub rstat_cpu : * mut cgroup_rstat_cpu , pub rstat_css_list : list_head , pub last_bstat : cgroup_base_stat , pub bstat : cgroup_base_stat , pub prev_cputime : prev_cputime , pub pidlists : list_head , pub pidlist_mutex : mutex , pub offline_waitq : wait_queue_head_t , pub release_agent_work : work_struct , pub psi : psi_group , pub bpf : cgroup_bpf , pub congestion_count : atomic_t , pub freezer : cgroup_freezer_state , pub ancestor_ids : __IncompleteArrayField < _cargo_bpf_u64 > , } # [test] fn bindgen_test_layout_cgroup () { assert_eq ! (:: core :: mem :: size_of :: < cgroup > () , 2784usize , concat ! ("Size of: " , stringify ! (cgroup))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . self_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (self_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . flags as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . level as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . max_depth as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (max_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . nr_descendants as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (nr_descendants))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . nr_dying_descendants as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (nr_dying_descendants))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . max_descendants as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (max_descendants))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . nr_populated_csets as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (nr_populated_csets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . nr_populated_domain_children as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (nr_populated_domain_children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . nr_populated_threaded_children as * const _ as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (nr_populated_threaded_children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . nr_threaded_children as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (nr_threaded_children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . kn as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (kn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . procs_file as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (procs_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . events_file as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (events_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . subtree_control as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (subtree_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . subtree_ss_mask as * const _ as usize } , 370usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (subtree_ss_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . old_subtree_control as * const _ as usize } , 372usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (old_subtree_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . old_subtree_ss_mask as * const _ as usize } , 374usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (old_subtree_ss_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . subsys as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (subsys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . root as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . cset_links as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (cset_links))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . e_csets as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (e_csets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . dom_cgrp as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (dom_cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . old_dom_cgrp as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (old_dom_cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . rstat_cpu as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (rstat_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . rstat_css_list as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (rstat_css_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . last_bstat as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (last_bstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . bstat as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (bstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . prev_cputime as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (prev_cputime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . pidlists as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (pidlists))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . pidlist_mutex as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (pidlist_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . offline_waitq as * const _ as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (offline_waitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . release_agent_work as * const _ as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (release_agent_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . psi as * const _ as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (psi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . bpf as * const _ as usize } , 1592usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (bpf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . congestion_count as * const _ as usize } , 2760usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (congestion_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . freezer as * const _ as usize } , 2764usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (freezer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup > ())) . ancestor_ids as * const _ as usize } , 2784usize , concat ! ("Offset of field: " , stringify ! (cgroup) , "::" , stringify ! (ancestor_ids))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucounts { pub node : hlist_node , pub ns : * mut user_namespace , pub uid : kuid_t , pub count : :: cty :: c_int , pub ucount : [atomic_t ; 12usize] , } # [test] fn bindgen_test_layout_ucounts () { assert_eq ! (:: core :: mem :: size_of :: < ucounts > () , 80usize , concat ! ("Size of: " , stringify ! (ucounts))) ; assert_eq ! (:: core :: mem :: align_of :: < ucounts > () , 8usize , concat ! ("Alignment of " , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ucounts > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ucounts) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ucounts > ())) . ns as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ucounts) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ucounts > ())) . uid as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ucounts) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ucounts > ())) . count as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (ucounts) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ucounts > ())) . ucount as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ucounts) , "::" , stringify ! (ucount))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct taskstats { pub version : __u16 , pub ac_exitcode : __u32 , pub ac_flag : __u8 , pub ac_nice : __u8 , pub cpu_count : __u64 , pub cpu_delay_total : __u64 , pub blkio_count : __u64 , pub blkio_delay_total : __u64 , pub swapin_count : __u64 , pub swapin_delay_total : __u64 , pub cpu_run_real_total : __u64 , pub cpu_run_virtual_total : __u64 , pub ac_comm : [:: cty :: c_char ; 32usize] , pub ac_sched : __u8 , pub ac_pad : [__u8 ; 3usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub ac_uid : __u32 , pub ac_gid : __u32 , pub ac_pid : __u32 , pub ac_ppid : __u32 , pub ac_btime : __u32 , pub ac_etime : __u64 , pub ac_utime : __u64 , pub ac_stime : __u64 , pub ac_minflt : __u64 , pub ac_majflt : __u64 , pub coremem : __u64 , pub virtmem : __u64 , pub hiwater_rss : __u64 , pub hiwater_vm : __u64 , pub read_char : __u64 , pub write_char : __u64 , pub read_syscalls : __u64 , pub write_syscalls : __u64 , pub read_bytes : __u64 , pub write_bytes : __u64 , pub cancelled_write_bytes : __u64 , pub nvcsw : __u64 , pub nivcsw : __u64 , pub ac_utimescaled : __u64 , pub ac_stimescaled : __u64 , pub cpu_scaled_run_real_total : __u64 , pub freepages_count : __u64 , pub freepages_delay_total : __u64 , pub thrashing_count : __u64 , pub thrashing_delay_total : __u64 , pub ac_btime64 : __u64 , } # [test] fn bindgen_test_layout_taskstats () { assert_eq ! (:: core :: mem :: size_of :: < taskstats > () , 352usize , concat ! ("Size of: " , stringify ! (taskstats))) ; assert_eq ! (:: core :: mem :: align_of :: < taskstats > () , 8usize , concat ! ("Alignment of " , stringify ! (taskstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . version as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_exitcode as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_exitcode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_flag as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_flag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_nice as * const _ as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_nice))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . cpu_count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (cpu_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . cpu_delay_total as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (cpu_delay_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . blkio_count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (blkio_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . blkio_delay_total as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (blkio_delay_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . swapin_count as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (swapin_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . swapin_delay_total as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (swapin_delay_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . cpu_run_real_total as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (cpu_run_real_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . cpu_run_virtual_total as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (cpu_run_virtual_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_comm as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_comm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_sched as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_sched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_pad as * const _ as usize } , 113usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_uid as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_gid as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_pid as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_ppid as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_ppid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_btime as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_btime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_etime as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_etime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_utime as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_utime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_stime as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_stime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_minflt as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_minflt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_majflt as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_majflt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . coremem as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (coremem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . virtmem as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (virtmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . hiwater_rss as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (hiwater_rss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . hiwater_vm as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (hiwater_vm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . read_char as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (read_char))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . write_char as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (write_char))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . read_syscalls as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (read_syscalls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . write_syscalls as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (write_syscalls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . read_bytes as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (read_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . write_bytes as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (write_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . cancelled_write_bytes as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (cancelled_write_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . nvcsw as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (nvcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . nivcsw as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (nivcsw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_utimescaled as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_utimescaled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_stimescaled as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_stimescaled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . cpu_scaled_run_real_total as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (cpu_scaled_run_real_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . freepages_count as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (freepages_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . freepages_delay_total as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (freepages_delay_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . thrashing_count as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (thrashing_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . thrashing_delay_total as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (thrashing_delay_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < taskstats > ())) . ac_btime64 as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (taskstats) , "::" , stringify ! (ac_btime64))) ; } impl taskstats { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct wait_page_queue { pub page : * mut page , pub bit_nr : :: cty :: c_int , pub wait : wait_queue_entry_t , } # [test] fn bindgen_test_layout_wait_page_queue () { assert_eq ! (:: core :: mem :: size_of :: < wait_page_queue > () , 56usize , concat ! ("Size of: " , stringify ! (wait_page_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < wait_page_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (wait_page_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_page_queue > ())) . page as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wait_page_queue) , "::" , stringify ! (page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_page_queue > ())) . bit_nr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wait_page_queue) , "::" , stringify ! (bit_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wait_page_queue > ())) . wait as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (wait_page_queue) , "::" , stringify ! (wait))) ; } pub const writeback_sync_modes_WB_SYNC_NONE : writeback_sync_modes = 0 ; pub const writeback_sync_modes_WB_SYNC_ALL : writeback_sync_modes = 1 ; pub type writeback_sync_modes = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct writeback_control { pub nr_to_write : :: cty :: c_long , pub pages_skipped : :: cty :: c_long , pub range_start : loff_t , pub range_end : loff_t , pub sync_mode : writeback_sync_modes , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub wb : * mut bdi_writeback , pub inode : * mut inode , pub wb_id : :: cty :: c_int , pub wb_lcand_id : :: cty :: c_int , pub wb_tcand_id : :: cty :: c_int , pub wb_bytes : size_t , pub wb_lcand_bytes : size_t , pub wb_tcand_bytes : size_t , } # [test] fn bindgen_test_layout_writeback_control () { assert_eq ! (:: core :: mem :: size_of :: < writeback_control > () , 96usize , concat ! ("Size of: " , stringify ! (writeback_control))) ; assert_eq ! (:: core :: mem :: align_of :: < writeback_control > () , 8usize , concat ! ("Alignment of " , stringify ! (writeback_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . nr_to_write as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (nr_to_write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . pages_skipped as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (pages_skipped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . range_start as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (range_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . range_end as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (range_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . sync_mode as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (sync_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . inode as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb_id as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb_lcand_id as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb_lcand_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb_tcand_id as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb_tcand_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb_bytes as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb_lcand_bytes as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb_lcand_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < writeback_control > ())) . wb_tcand_bytes as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (writeback_control) , "::" , stringify ! (wb_tcand_bytes))) ; } impl writeback_control { # [inline] pub fn for_kupdate (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_for_kupdate (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn for_background (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_for_background (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn tagged_writepages (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_tagged_writepages (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn for_reclaim (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_for_reclaim (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn range_cyclic (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_range_cyclic (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn for_sync (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u32) } } # [inline] pub fn set_for_sync (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn no_cgroup_owner (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u32) } } # [inline] pub fn set_no_cgroup_owner (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn punt_to_cgroup (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (7usize , 1u8) as u32) } } # [inline] pub fn set_punt_to_cgroup (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (for_kupdate : :: cty :: c_uint , for_background : :: cty :: c_uint , tagged_writepages : :: cty :: c_uint , for_reclaim : :: cty :: c_uint , range_cyclic : :: cty :: c_uint , for_sync : :: cty :: c_uint , no_cgroup_owner : :: cty :: c_uint , punt_to_cgroup : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let for_kupdate : u32 = unsafe { :: core :: mem :: transmute (for_kupdate) } ; for_kupdate as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let for_background : u32 = unsafe { :: core :: mem :: transmute (for_background) } ; for_background as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let tagged_writepages : u32 = unsafe { :: core :: mem :: transmute (tagged_writepages) } ; tagged_writepages as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let for_reclaim : u32 = unsafe { :: core :: mem :: transmute (for_reclaim) } ; for_reclaim as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let range_cyclic : u32 = unsafe { :: core :: mem :: transmute (range_cyclic) } ; range_cyclic as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let for_sync : u32 = unsafe { :: core :: mem :: transmute (for_sync) } ; for_sync as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let no_cgroup_owner : u32 = unsafe { :: core :: mem :: transmute (no_cgroup_owner) } ; no_cgroup_owner as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let punt_to_cgroup : u32 = unsafe { :: core :: mem :: transmute (punt_to_cgroup) } ; punt_to_cgroup as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct readahead_control { pub file : * mut file , pub mapping : * mut address_space , pub ra : * mut file_ra_state , pub _index : :: cty :: c_ulong , pub _nr_pages : :: cty :: c_uint , pub _batch_count : :: cty :: c_uint , } # [test] fn bindgen_test_layout_readahead_control () { assert_eq ! (:: core :: mem :: size_of :: < readahead_control > () , 40usize , concat ! ("Size of: " , stringify ! (readahead_control))) ; assert_eq ! (:: core :: mem :: align_of :: < readahead_control > () , 8usize , concat ! ("Alignment of " , stringify ! (readahead_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < readahead_control > ())) . file as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (readahead_control) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < readahead_control > ())) . mapping as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (readahead_control) , "::" , stringify ! (mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < readahead_control > ())) . ra as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (readahead_control) , "::" , stringify ! (ra))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < readahead_control > ())) . _index as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (readahead_control) , "::" , stringify ! (_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < readahead_control > ())) . _nr_pages as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (readahead_control) , "::" , stringify ! (_nr_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < readahead_control > ())) . _batch_count as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (readahead_control) , "::" , stringify ! (_batch_count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct iov_iter { pub type_ : :: cty :: c_uint , pub iov_offset : size_t , pub count : size_t , pub __bindgen_anon_1 : iov_iter__bindgen_ty_1 , pub __bindgen_anon_2 : iov_iter__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union iov_iter__bindgen_ty_1 { pub iov : * const iovec , pub kvec : * const kvec , pub bvec : * const bio_vec , pub xarray : * mut xarray , pub pipe : * mut pipe_inode_info , } # [test] fn bindgen_test_layout_iov_iter__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < iov_iter__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (iov_iter__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < iov_iter__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (iov_iter__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_1 > ())) . iov as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_1) , "::" , stringify ! (iov))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_1 > ())) . kvec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_1) , "::" , stringify ! (kvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_1 > ())) . bvec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_1) , "::" , stringify ! (bvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_1 > ())) . xarray as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_1) , "::" , stringify ! (xarray))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_1 > ())) . pipe as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_1) , "::" , stringify ! (pipe))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union iov_iter__bindgen_ty_2 { pub nr_segs : :: cty :: c_ulong , pub __bindgen_anon_1 : iov_iter__bindgen_ty_2__bindgen_ty_1 , pub xarray_start : loff_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iov_iter__bindgen_ty_2__bindgen_ty_1 { pub head : :: cty :: c_uint , pub start_head : :: cty :: c_uint , } # [test] fn bindgen_test_layout_iov_iter__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < iov_iter__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (iov_iter__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < iov_iter__bindgen_ty_2__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (iov_iter__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_2__bindgen_ty_1 > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_2__bindgen_ty_1 > ())) . start_head as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (start_head))) ; } # [test] fn bindgen_test_layout_iov_iter__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < iov_iter__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (iov_iter__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < iov_iter__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (iov_iter__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_2 > ())) . nr_segs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_2) , "::" , stringify ! (nr_segs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter__bindgen_ty_2 > ())) . xarray_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter__bindgen_ty_2) , "::" , stringify ! (xarray_start))) ; } # [test] fn bindgen_test_layout_iov_iter () { assert_eq ! (:: core :: mem :: size_of :: < iov_iter > () , 40usize , concat ! ("Size of: " , stringify ! (iov_iter))) ; assert_eq ! (:: core :: mem :: align_of :: < iov_iter > () , 8usize , concat ! ("Alignment of " , stringify ! (iov_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iov_iter) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter > ())) . iov_offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iov_iter) , "::" , stringify ! (iov_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iov_iter > ())) . count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iov_iter) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct swap_cluster_info { pub lock : spinlock_t , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_swap_cluster_info () { assert_eq ! (:: core :: mem :: size_of :: < swap_cluster_info > () , 8usize , concat ! ("Size of: " , stringify ! (swap_cluster_info))) ; assert_eq ! (:: core :: mem :: align_of :: < swap_cluster_info > () , 4usize , concat ! ("Alignment of " , stringify ! (swap_cluster_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_cluster_info > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (swap_cluster_info) , "::" , stringify ! (lock))) ; } impl swap_cluster_info { # [inline] pub fn data (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set_data (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn flags (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (24usize , 8u8) as u32) } } # [inline] pub fn set_flags (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (data : :: cty :: c_uint , flags : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let data : u32 = unsafe { :: core :: mem :: transmute (data) } ; data as u64 }) ; __bindgen_bitfield_unit . set (24usize , 8u8 , { let flags : u32 = unsafe { :: core :: mem :: transmute (flags) } ; flags as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct swap_cluster_list { pub head : swap_cluster_info , pub tail : swap_cluster_info , } # [test] fn bindgen_test_layout_swap_cluster_list () { assert_eq ! (:: core :: mem :: size_of :: < swap_cluster_list > () , 16usize , concat ! ("Size of: " , stringify ! (swap_cluster_list))) ; assert_eq ! (:: core :: mem :: align_of :: < swap_cluster_list > () , 4usize , concat ! ("Alignment of " , stringify ! (swap_cluster_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_cluster_list > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (swap_cluster_list) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_cluster_list > ())) . tail as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (swap_cluster_list) , "::" , stringify ! (tail))) ; } # [repr (C)] pub struct swap_info_struct { pub flags : :: cty :: c_ulong , pub prio : :: cty :: c_short , pub list : plist_node , pub type_ : :: cty :: c_schar , pub max : :: cty :: c_uint , pub swap_map : * mut :: cty :: c_uchar , pub cluster_info : * mut swap_cluster_info , pub free_clusters : swap_cluster_list , pub lowest_bit : :: cty :: c_uint , pub highest_bit : :: cty :: c_uint , pub pages : :: cty :: c_uint , pub inuse_pages : :: cty :: c_uint , pub cluster_next : :: cty :: c_uint , pub cluster_nr : :: cty :: c_uint , pub cluster_next_cpu : * mut :: cty :: c_uint , pub percpu_cluster : * mut percpu_cluster , pub swap_extent_root : rb_root , pub bdev : * mut block_device , pub swap_file : * mut file , pub old_block_size : :: cty :: c_uint , pub frontswap_map : * mut :: cty :: c_ulong , pub frontswap_pages : atomic_t , pub lock : spinlock_t , pub cont_lock : spinlock_t , pub discard_work : work_struct , pub discard_clusters : swap_cluster_list , pub avail_lists : __IncompleteArrayField < plist_node > , } # [test] fn bindgen_test_layout_swap_info_struct () { assert_eq ! (:: core :: mem :: size_of :: < swap_info_struct > () , 240usize , concat ! ("Size of: " , stringify ! (swap_info_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < swap_info_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (swap_info_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . prio as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . type_ as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . max as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . swap_map as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (swap_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . cluster_info as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (cluster_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . free_clusters as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (free_clusters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . lowest_bit as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (lowest_bit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . highest_bit as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (highest_bit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . pages as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . inuse_pages as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (inuse_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . cluster_next as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (cluster_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . cluster_nr as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (cluster_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . cluster_next_cpu as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (cluster_next_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . percpu_cluster as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (percpu_cluster))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . swap_extent_root as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (swap_extent_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . bdev as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (bdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . swap_file as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (swap_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . old_block_size as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (old_block_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . frontswap_map as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (frontswap_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . frontswap_pages as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (frontswap_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . lock as * const _ as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . cont_lock as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (cont_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . discard_work as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (discard_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . discard_clusters as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (discard_clusters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < swap_info_struct > ())) . avail_lists as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (swap_info_struct) , "::" , stringify ! (avail_lists))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdev { pub kobj : kobject , pub owner : * mut module , pub ops : * const file_operations , pub list : list_head , pub dev : dev_t , pub count : :: cty :: c_uint , } # [test] fn bindgen_test_layout_cdev () { assert_eq ! (:: core :: mem :: size_of :: < cdev > () , 104usize , concat ! ("Size of: " , stringify ! (cdev))) ; assert_eq ! (:: core :: mem :: align_of :: < cdev > () , 8usize , concat ! ("Alignment of " , stringify ! (cdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cdev > ())) . kobj as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdev) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cdev > ())) . owner as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cdev) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cdev > ())) . ops as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (cdev) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cdev > ())) . list as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cdev) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cdev > ())) . dev as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cdev) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cdev > ())) . count as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (cdev) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct block_device { pub bd_start_sect : sector_t , pub bd_stats : * mut disk_stats , pub bd_stamp : :: cty :: c_ulong , pub bd_read_only : bool_ , pub bd_dev : dev_t , pub bd_openers : :: cty :: c_int , pub bd_inode : * mut inode , pub bd_super : * mut super_block , pub bd_mutex : mutex , pub bd_claiming : * mut :: cty :: c_void , pub bd_device : device , pub bd_holder : * mut :: cty :: c_void , pub bd_holders : :: cty :: c_int , pub bd_write_holder : bool_ , pub bd_holder_disks : list_head , pub bd_holder_dir : * mut kobject , pub bd_partno : _cargo_bpf_u8 , pub bd_part_count : :: cty :: c_uint , pub bd_size_lock : spinlock_t , pub bd_disk : * mut gendisk , pub bd_bdi : * mut backing_dev_info , pub bd_fsfreeze_count : :: cty :: c_int , pub bd_fsfreeze_mutex : mutex , pub bd_fsfreeze_sb : * mut super_block , pub bd_meta_info : * mut partition_meta_info , } # [test] fn bindgen_test_layout_block_device () { assert_eq ! (:: core :: mem :: size_of :: < block_device > () , 952usize , concat ! ("Size of: " , stringify ! (block_device))) ; assert_eq ! (:: core :: mem :: align_of :: < block_device > () , 8usize , concat ! ("Alignment of " , stringify ! (block_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_start_sect as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_start_sect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_stats as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_stamp as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_read_only as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_read_only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_dev as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_openers as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_openers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_inode as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_super as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_super))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_mutex as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_claiming as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_claiming))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_device as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_holder as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_holder))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_holders as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_holders))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_write_holder as * const _ as usize } , 836usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_write_holder))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_holder_disks as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_holder_disks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_holder_dir as * const _ as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_holder_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_partno as * const _ as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_partno))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_part_count as * const _ as usize } , 868usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_part_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_size_lock as * const _ as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_size_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_disk as * const _ as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_disk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_bdi as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_bdi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_fsfreeze_count as * const _ as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_fsfreeze_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_fsfreeze_mutex as * const _ as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_fsfreeze_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_fsfreeze_sb as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_fsfreeze_sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device > ())) . bd_meta_info as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (block_device) , "::" , stringify ! (bd_meta_info))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct p_log { pub prefix : * const :: cty :: c_char , pub log : * mut fc_log , } # [test] fn bindgen_test_layout_p_log () { assert_eq ! (:: core :: mem :: size_of :: < p_log > () , 16usize , concat ! ("Size of: " , stringify ! (p_log))) ; assert_eq ! (:: core :: mem :: align_of :: < p_log > () , 8usize , concat ! ("Alignment of " , stringify ! (p_log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < p_log > ())) . prefix as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (p_log) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < p_log > ())) . log as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (p_log) , "::" , stringify ! (log))) ; } pub const fs_context_purpose_FS_CONTEXT_FOR_MOUNT : fs_context_purpose = 0 ; pub const fs_context_purpose_FS_CONTEXT_FOR_SUBMOUNT : fs_context_purpose = 1 ; pub const fs_context_purpose_FS_CONTEXT_FOR_RECONFIGURE : fs_context_purpose = 2 ; pub type fs_context_purpose = :: cty :: c_uint ; pub const fs_context_phase_FS_CONTEXT_CREATE_PARAMS : fs_context_phase = 0 ; pub const fs_context_phase_FS_CONTEXT_CREATING : fs_context_phase = 1 ; pub const fs_context_phase_FS_CONTEXT_AWAITING_MOUNT : fs_context_phase = 2 ; pub const fs_context_phase_FS_CONTEXT_AWAITING_RECONF : fs_context_phase = 3 ; pub const fs_context_phase_FS_CONTEXT_RECONF_PARAMS : fs_context_phase = 4 ; pub const fs_context_phase_FS_CONTEXT_RECONFIGURING : fs_context_phase = 5 ; pub const fs_context_phase_FS_CONTEXT_FAILED : fs_context_phase = 6 ; pub type fs_context_phase = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct fs_context { pub ops : * const fs_context_operations , pub uapi_mutex : mutex , pub fs_type : * mut file_system_type , pub fs_private : * mut :: cty :: c_void , pub sget_key : * mut :: cty :: c_void , pub root : * mut dentry , pub user_ns : * mut user_namespace , pub net_ns : * mut net , pub cred : * const cred , pub log : p_log , pub source : * const :: cty :: c_char , pub security : * mut :: cty :: c_void , pub s_fs_info : * mut :: cty :: c_void , pub sb_flags : :: cty :: c_uint , pub sb_flags_mask : :: cty :: c_uint , pub s_iflags : :: cty :: c_uint , pub lsm_flags : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [test] fn bindgen_test_layout_fs_context () { assert_eq ! (:: core :: mem :: size_of :: < fs_context > () , 160usize , concat ! ("Size of: " , stringify ! (fs_context))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_context > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . uapi_mutex as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (uapi_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . fs_type as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (fs_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . fs_private as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (fs_private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . sget_key as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (sget_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . root as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . user_ns as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . net_ns as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (net_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . cred as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . log as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . source as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . security as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . s_fs_info as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (s_fs_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . sb_flags as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (sb_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . sb_flags_mask as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (sb_flags_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . s_iflags as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (s_iflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context > ())) . lsm_flags as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (fs_context) , "::" , stringify ! (lsm_flags))) ; } impl fs_context { # [inline] pub fn purpose (& self) -> fs_context_purpose { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_purpose (& mut self , val : fs_context_purpose) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn phase (& self) -> fs_context_phase { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 8u8) as u32) } } # [inline] pub fn set_phase (& mut self , val : fs_context_phase) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 8u8 , val as u64) } } # [inline] pub fn need_free (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (16usize , 1u8) as u8) } } # [inline] pub fn set_need_free (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (16usize , 1u8 , val as u64) } } # [inline] pub fn global (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (17usize , 1u8) as u8) } } # [inline] pub fn set_global (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (17usize , 1u8 , val as u64) } } # [inline] pub fn oldapi (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (18usize , 1u8) as u8) } } # [inline] pub fn set_oldapi (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (18usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (purpose : fs_context_purpose , phase : fs_context_phase , need_free : bool_ , global : bool_ , oldapi : bool_) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let purpose : u32 = unsafe { :: core :: mem :: transmute (purpose) } ; purpose as u64 }) ; __bindgen_bitfield_unit . set (8usize , 8u8 , { let phase : u32 = unsafe { :: core :: mem :: transmute (phase) } ; phase as u64 }) ; __bindgen_bitfield_unit . set (16usize , 1u8 , { let need_free : u8 = unsafe { :: core :: mem :: transmute (need_free) } ; need_free as u64 }) ; __bindgen_bitfield_unit . set (17usize , 1u8 , { let global : u8 = unsafe { :: core :: mem :: transmute (global) } ; global as u64 }) ; __bindgen_bitfield_unit . set (18usize , 1u8 , { let oldapi : u8 = unsafe { :: core :: mem :: transmute (oldapi) } ; oldapi as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug)] pub struct filename { pub name : * const :: cty :: c_char , pub uptr : * const :: cty :: c_char , pub refcnt : :: cty :: c_int , pub aname : * mut audit_names , pub iname : __IncompleteArrayField < :: cty :: c_char > , } # [test] fn bindgen_test_layout_filename () { assert_eq ! (:: core :: mem :: size_of :: < filename > () , 32usize , concat ! ("Size of: " , stringify ! (filename))) ; assert_eq ! (:: core :: mem :: align_of :: < filename > () , 8usize , concat ! ("Alignment of " , stringify ! (filename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filename > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (filename) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filename > ())) . uptr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (filename) , "::" , stringify ! (uptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filename > ())) . refcnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (filename) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filename > ())) . aname as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (filename) , "::" , stringify ! (aname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filename > ())) . iname as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (filename) , "::" , stringify ! (iname))) ; } pub type blk_status_t = _cargo_bpf_u8 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bvec_iter { pub bi_sector : sector_t , pub bi_size : :: cty :: c_uint , pub bi_idx : :: cty :: c_uint , pub bi_bvec_done : :: cty :: c_uint , } # [test] fn bindgen_test_layout_bvec_iter () { assert_eq ! (:: core :: mem :: size_of :: < bvec_iter > () , 24usize , concat ! ("Size of: " , stringify ! (bvec_iter))) ; assert_eq ! (:: core :: mem :: align_of :: < bvec_iter > () , 8usize , concat ! ("Alignment of " , stringify ! (bvec_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bvec_iter > ())) . bi_sector as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bvec_iter) , "::" , stringify ! (bi_sector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bvec_iter > ())) . bi_size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bvec_iter) , "::" , stringify ! (bi_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bvec_iter > ())) . bi_idx as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bvec_iter) , "::" , stringify ! (bi_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bvec_iter > ())) . bi_bvec_done as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bvec_iter) , "::" , stringify ! (bi_bvec_done))) ; } pub type bio_end_io_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bio) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bio_issue { pub value : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_bio_issue () { assert_eq ! (:: core :: mem :: size_of :: < bio_issue > () , 8usize , concat ! ("Size of: " , stringify ! (bio_issue))) ; assert_eq ! (:: core :: mem :: align_of :: < bio_issue > () , 8usize , concat ! ("Alignment of " , stringify ! (bio_issue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_issue > ())) . value as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio_issue) , "::" , stringify ! (value))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bio_vec { pub bv_page : * mut page , pub bv_len : :: cty :: c_uint , pub bv_offset : :: cty :: c_uint , } # [test] fn bindgen_test_layout_bio_vec () { assert_eq ! (:: core :: mem :: size_of :: < bio_vec > () , 16usize , concat ! ("Size of: " , stringify ! (bio_vec))) ; assert_eq ! (:: core :: mem :: align_of :: < bio_vec > () , 8usize , concat ! ("Alignment of " , stringify ! (bio_vec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_vec > ())) . bv_page as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio_vec) , "::" , stringify ! (bv_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_vec > ())) . bv_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bio_vec) , "::" , stringify ! (bv_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_vec > ())) . bv_offset as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bio_vec) , "::" , stringify ! (bv_offset))) ; } # [repr (C)] pub struct bio { pub bi_next : * mut bio , pub bi_bdev : * mut block_device , pub bi_opf : :: cty :: c_uint , pub bi_flags : :: cty :: c_ushort , pub bi_ioprio : :: cty :: c_ushort , pub bi_write_hint : :: cty :: c_ushort , pub bi_status : blk_status_t , pub __bi_remaining : atomic_t , pub bi_iter : bvec_iter , pub bi_end_io : bio_end_io_t , pub bi_private : * mut :: cty :: c_void , pub bi_blkg : * mut blkcg_gq , pub bi_issue : bio_issue , pub bi_iocost_cost : _cargo_bpf_u64 , pub bi_crypt_context : * mut bio_crypt_ctx , pub __bindgen_anon_1 : bio__bindgen_ty_1 , pub bi_vcnt : :: cty :: c_ushort , pub bi_max_vecs : :: cty :: c_ushort , pub __bi_cnt : atomic_t , pub bi_io_vec : * mut bio_vec , pub bi_pool : * mut bio_set , pub bi_inline_vecs : __IncompleteArrayField < bio_vec > , } # [repr (C)] # [derive (Copy , Clone)] pub union bio__bindgen_ty_1 { pub bi_integrity : * mut bio_integrity_payload , } # [test] fn bindgen_test_layout_bio__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bio__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (bio__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bio__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bio__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio__bindgen_ty_1 > ())) . bi_integrity as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio__bindgen_ty_1) , "::" , stringify ! (bi_integrity))) ; } # [test] fn bindgen_test_layout_bio () { assert_eq ! (:: core :: mem :: size_of :: < bio > () , 136usize , concat ! ("Size of: " , stringify ! (bio))) ; assert_eq ! (:: core :: mem :: align_of :: < bio > () , 8usize , concat ! ("Alignment of " , stringify ! (bio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_bdev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_bdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_opf as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_opf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_flags as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_ioprio as * const _ as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_ioprio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_write_hint as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_write_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_status as * const _ as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . __bi_remaining as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (__bi_remaining))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_iter as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_end_io as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_end_io))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_private as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_blkg as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_blkg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_issue as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_issue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_iocost_cost as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_iocost_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_crypt_context as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_crypt_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_vcnt as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_vcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_max_vecs as * const _ as usize } , 114usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_max_vecs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . __bi_cnt as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (__bi_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_io_vec as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_io_vec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_pool as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio > ())) . bi_inline_vecs as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (bio) , "::" , stringify ! (bi_inline_vecs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linux_binprm { pub vma : * mut vm_area_struct , pub vma_pages : :: cty :: c_ulong , pub mm : * mut mm_struct , pub p : :: cty :: c_ulong , pub argmin : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub executable : * mut file , pub interpreter : * mut file , pub file : * mut file , pub cred : * mut cred , pub unsafe_ : :: cty :: c_int , pub per_clear : :: cty :: c_uint , pub argc : :: cty :: c_int , pub envc : :: cty :: c_int , pub filename : * const :: cty :: c_char , pub interp : * const :: cty :: c_char , pub fdpath : * const :: cty :: c_char , pub interp_flags : :: cty :: c_uint , pub execfd : :: cty :: c_int , pub loader : :: cty :: c_ulong , pub exec : :: cty :: c_ulong , pub rlim_stack : rlimit , pub buf : [:: cty :: c_char ; 256usize] , } # [test] fn bindgen_test_layout_linux_binprm () { assert_eq ! (:: core :: mem :: size_of :: < linux_binprm > () , 416usize , concat ! ("Size of: " , stringify ! (linux_binprm))) ; assert_eq ! (:: core :: mem :: align_of :: < linux_binprm > () , 8usize , concat ! ("Alignment of " , stringify ! (linux_binprm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . vma as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (vma))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . vma_pages as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (vma_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . mm as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . p as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . argmin as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (argmin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . executable as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (executable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . interpreter as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (interpreter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . file as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . cred as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . unsafe_ as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (unsafe_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . per_clear as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (per_clear))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . argc as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . envc as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (envc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . filename as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (filename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . interp as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (interp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . fdpath as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (fdpath))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . interp_flags as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (interp_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . execfd as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (execfd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . loader as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (loader))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . exec as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (exec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . rlim_stack as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (rlim_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_binprm > ())) . buf as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (linux_binprm) , "::" , stringify ! (buf))) ; } impl linux_binprm { # [inline] pub fn have_execfd (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_have_execfd (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn execfd_creds (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_execfd_creds (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn secureexec (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_secureexec (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn point_of_no_return (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_point_of_no_return (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (have_execfd : :: cty :: c_uint , execfd_creds : :: cty :: c_uint , secureexec : :: cty :: c_uint , point_of_no_return : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let have_execfd : u32 = unsafe { :: core :: mem :: transmute (have_execfd) } ; have_execfd as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let execfd_creds : u32 = unsafe { :: core :: mem :: transmute (execfd_creds) } ; execfd_creds as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let secureexec : u32 = unsafe { :: core :: mem :: transmute (secureexec) } ; secureexec as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let point_of_no_return : u32 = unsafe { :: core :: mem :: transmute (point_of_no_return) } ; point_of_no_return as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct coredump_params { pub siginfo : * const kernel_siginfo_t , pub regs : * mut pt_regs , pub file : * mut file , pub limit : :: cty :: c_ulong , pub mm_flags : :: cty :: c_ulong , pub written : loff_t , pub pos : loff_t , pub to_skip : loff_t , } # [test] fn bindgen_test_layout_coredump_params () { assert_eq ! (:: core :: mem :: size_of :: < coredump_params > () , 64usize , concat ! ("Size of: " , stringify ! (coredump_params))) ; assert_eq ! (:: core :: mem :: align_of :: < coredump_params > () , 8usize , concat ! ("Alignment of " , stringify ! (coredump_params))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . siginfo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (siginfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . regs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . file as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . limit as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . mm_flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (mm_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . written as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (written))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . pos as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < coredump_params > ())) . to_skip as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (coredump_params) , "::" , stringify ! (to_skip))) ; } pub type phandle = _cargo_bpf_u32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct device_node { pub name : * const :: cty :: c_char , pub phandle : phandle , pub full_name : * const :: cty :: c_char , pub fwnode : fwnode_handle , pub properties : * mut property , pub deadprops : * mut property , pub parent : * mut device_node , pub child : * mut device_node , pub sibling : * mut device_node , pub _flags : :: cty :: c_ulong , pub data : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_device_node () { assert_eq ! (:: core :: mem :: size_of :: < device_node > () , 144usize , concat ! ("Size of: " , stringify ! (device_node))) ; assert_eq ! (:: core :: mem :: align_of :: < device_node > () , 8usize , concat ! ("Alignment of " , stringify ! (device_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . phandle as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (phandle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . full_name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (full_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . fwnode as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . properties as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (properties))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . deadprops as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (deadprops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . parent as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . child as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (child))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . sibling as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (sibling))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . _flags as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < device_node > ())) . data as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (device_node) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug)] pub struct ring_buffer_event { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub array : __IncompleteArrayField < _cargo_bpf_u32 > , } # [test] fn bindgen_test_layout_ring_buffer_event () { assert_eq ! (:: core :: mem :: size_of :: < ring_buffer_event > () , 4usize , concat ! ("Size of: " , stringify ! (ring_buffer_event))) ; assert_eq ! (:: core :: mem :: align_of :: < ring_buffer_event > () , 4usize , concat ! ("Alignment of " , stringify ! (ring_buffer_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_event > ())) . array as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_event) , "::" , stringify ! (array))) ; } impl ring_buffer_event { # [inline] pub fn type_len (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 5u8) as u32) } } # [inline] pub fn set_type_len (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 5u8 , val as u64) } } # [inline] pub fn time_delta (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 27u8) as u32) } } # [inline] pub fn set_time_delta (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 27u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (type_len : _cargo_bpf_u32 , time_delta : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 5u8 , { let type_len : u32 = unsafe { :: core :: mem :: transmute (type_len) } ; type_len as u64 }) ; __bindgen_bitfield_unit . set (5usize , 27u8 , { let time_delta : u32 = unsafe { :: core :: mem :: transmute (time_delta) } ; time_delta as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct seq_buf { pub buffer : * mut :: cty :: c_char , pub size : size_t , pub len : size_t , pub readpos : loff_t , } # [test] fn bindgen_test_layout_seq_buf () { assert_eq ! (:: core :: mem :: size_of :: < seq_buf > () , 32usize , concat ! ("Size of: " , stringify ! (seq_buf))) ; assert_eq ! (:: core :: mem :: align_of :: < seq_buf > () , 8usize , concat ! ("Alignment of " , stringify ! (seq_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_buf > ())) . buffer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seq_buf) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_buf > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (seq_buf) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_buf > ())) . len as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (seq_buf) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seq_buf > ())) . readpos as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (seq_buf) , "::" , stringify ! (readpos))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_seq { pub buffer : [:: cty :: c_char ; 4096usize] , pub seq : seq_buf , pub full : :: cty :: c_int , } # [test] fn bindgen_test_layout_trace_seq () { assert_eq ! (:: core :: mem :: size_of :: < trace_seq > () , 4136usize , concat ! ("Size of: " , stringify ! (trace_seq))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_seq > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_seq > ())) . buffer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_seq) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_seq > ())) . seq as * const _ as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (trace_seq) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_seq > ())) . full as * const _ as usize } , 4128usize , concat ! ("Offset of field: " , stringify ! (trace_seq) , "::" , stringify ! (full))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union perf_mem_data_src { pub val : __u64 , pub __bindgen_anon_1 : perf_mem_data_src__bindgen_ty_1 , } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct perf_mem_data_src__bindgen_ty_1 { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_perf_mem_data_src__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_mem_data_src__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_mem_data_src__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_mem_data_src__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_mem_data_src__bindgen_ty_1))) ; } impl perf_mem_data_src__bindgen_ty_1 { # [inline] pub fn mem_op (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 5u8) as u64) } } # [inline] pub fn set_mem_op (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 5u8 , val as u64) } } # [inline] pub fn mem_lvl (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 14u8) as u64) } } # [inline] pub fn set_mem_lvl (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 14u8 , val as u64) } } # [inline] pub fn mem_snoop (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (19usize , 5u8) as u64) } } # [inline] pub fn set_mem_snoop (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (19usize , 5u8 , val as u64) } } # [inline] pub fn mem_lock (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (24usize , 2u8) as u64) } } # [inline] pub fn set_mem_lock (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 2u8 , val as u64) } } # [inline] pub fn mem_dtlb (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (26usize , 7u8) as u64) } } # [inline] pub fn set_mem_dtlb (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (26usize , 7u8 , val as u64) } } # [inline] pub fn mem_lvl_num (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (33usize , 4u8) as u64) } } # [inline] pub fn set_mem_lvl_num (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (33usize , 4u8 , val as u64) } } # [inline] pub fn mem_remote (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (37usize , 1u8) as u64) } } # [inline] pub fn set_mem_remote (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (37usize , 1u8 , val as u64) } } # [inline] pub fn mem_snoopx (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (38usize , 2u8) as u64) } } # [inline] pub fn set_mem_snoopx (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (38usize , 2u8 , val as u64) } } # [inline] pub fn mem_blk (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (40usize , 3u8) as u64) } } # [inline] pub fn set_mem_blk (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (40usize , 3u8 , val as u64) } } # [inline] pub fn mem_rsvd (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (43usize , 21u8) as u64) } } # [inline] pub fn set_mem_rsvd (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (43usize , 21u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (mem_op : __u64 , mem_lvl : __u64 , mem_snoop : __u64 , mem_lock : __u64 , mem_dtlb : __u64 , mem_lvl_num : __u64 , mem_remote : __u64 , mem_snoopx : __u64 , mem_blk : __u64 , mem_rsvd : __u64) -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 5u8 , { let mem_op : u64 = unsafe { :: core :: mem :: transmute (mem_op) } ; mem_op as u64 }) ; __bindgen_bitfield_unit . set (5usize , 14u8 , { let mem_lvl : u64 = unsafe { :: core :: mem :: transmute (mem_lvl) } ; mem_lvl as u64 }) ; __bindgen_bitfield_unit . set (19usize , 5u8 , { let mem_snoop : u64 = unsafe { :: core :: mem :: transmute (mem_snoop) } ; mem_snoop as u64 }) ; __bindgen_bitfield_unit . set (24usize , 2u8 , { let mem_lock : u64 = unsafe { :: core :: mem :: transmute (mem_lock) } ; mem_lock as u64 }) ; __bindgen_bitfield_unit . set (26usize , 7u8 , { let mem_dtlb : u64 = unsafe { :: core :: mem :: transmute (mem_dtlb) } ; mem_dtlb as u64 }) ; __bindgen_bitfield_unit . set (33usize , 4u8 , { let mem_lvl_num : u64 = unsafe { :: core :: mem :: transmute (mem_lvl_num) } ; mem_lvl_num as u64 }) ; __bindgen_bitfield_unit . set (37usize , 1u8 , { let mem_remote : u64 = unsafe { :: core :: mem :: transmute (mem_remote) } ; mem_remote as u64 }) ; __bindgen_bitfield_unit . set (38usize , 2u8 , { let mem_snoopx : u64 = unsafe { :: core :: mem :: transmute (mem_snoopx) } ; mem_snoopx as u64 }) ; __bindgen_bitfield_unit . set (40usize , 3u8 , { let mem_blk : u64 = unsafe { :: core :: mem :: transmute (mem_blk) } ; mem_blk as u64 }) ; __bindgen_bitfield_unit . set (43usize , 21u8 , { let mem_rsvd : u64 = unsafe { :: core :: mem :: transmute (mem_rsvd) } ; mem_rsvd as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_perf_mem_data_src () { assert_eq ! (:: core :: mem :: size_of :: < perf_mem_data_src > () , 8usize , concat ! ("Size of: " , stringify ! (perf_mem_data_src))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_mem_data_src > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_mem_data_src))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_mem_data_src > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_mem_data_src) , "::" , stringify ! (val))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_branch_entry { pub from : __u64 , pub to : __u64 , pub _bitfield_align_1 : [u64 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_perf_branch_entry () { assert_eq ! (:: core :: mem :: size_of :: < perf_branch_entry > () , 24usize , concat ! ("Size of: " , stringify ! (perf_branch_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_branch_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_branch_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_branch_entry > ())) . from as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_branch_entry) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_branch_entry > ())) . to as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_branch_entry) , "::" , stringify ! (to))) ; } impl perf_branch_entry { # [inline] pub fn mispred (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u64) } } # [inline] pub fn set_mispred (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn predicted (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u64) } } # [inline] pub fn set_predicted (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn in_tx (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u64) } } # [inline] pub fn set_in_tx (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn abort (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u64) } } # [inline] pub fn set_abort (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn cycles (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 16u8) as u64) } } # [inline] pub fn set_cycles (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 16u8 , val as u64) } } # [inline] pub fn type_ (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (20usize , 4u8) as u64) } } # [inline] pub fn set_type (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (20usize , 4u8 , val as u64) } } # [inline] pub fn reserved (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (24usize , 40u8) as u64) } } # [inline] pub fn set_reserved (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (24usize , 40u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (mispred : __u64 , predicted : __u64 , in_tx : __u64 , abort : __u64 , cycles : __u64 , type_ : __u64 , reserved : __u64) -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let mispred : u64 = unsafe { :: core :: mem :: transmute (mispred) } ; mispred as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let predicted : u64 = unsafe { :: core :: mem :: transmute (predicted) } ; predicted as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let in_tx : u64 = unsafe { :: core :: mem :: transmute (in_tx) } ; in_tx as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let abort : u64 = unsafe { :: core :: mem :: transmute (abort) } ; abort as u64 }) ; __bindgen_bitfield_unit . set (4usize , 16u8 , { let cycles : u64 = unsafe { :: core :: mem :: transmute (cycles) } ; cycles as u64 }) ; __bindgen_bitfield_unit . set (20usize , 4u8 , { let type_ : u64 = unsafe { :: core :: mem :: transmute (type_) } ; type_ as u64 }) ; __bindgen_bitfield_unit . set (24usize , 40u8 , { let reserved : u64 = unsafe { :: core :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub union perf_sample_weight { pub full : __u64 , pub __bindgen_anon_1 : perf_sample_weight__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_sample_weight__bindgen_ty_1 { pub var1_dw : __u32 , pub var2_w : __u16 , pub var3_w : __u16 , } # [test] fn bindgen_test_layout_perf_sample_weight__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_sample_weight__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_sample_weight__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_sample_weight__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (perf_sample_weight__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_weight__bindgen_ty_1 > ())) . var1_dw as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_sample_weight__bindgen_ty_1) , "::" , stringify ! (var1_dw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_weight__bindgen_ty_1 > ())) . var2_w as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (perf_sample_weight__bindgen_ty_1) , "::" , stringify ! (var2_w))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_weight__bindgen_ty_1 > ())) . var3_w as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (perf_sample_weight__bindgen_ty_1) , "::" , stringify ! (var3_w))) ; } # [test] fn bindgen_test_layout_perf_sample_weight () { assert_eq ! (:: core :: mem :: size_of :: < perf_sample_weight > () , 8usize , concat ! ("Size of: " , stringify ! (perf_sample_weight))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_sample_weight > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_sample_weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_weight > ())) . full as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_sample_weight) , "::" , stringify ! (full))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct new_utsname { pub sysname : [:: cty :: c_char ; 65usize] , pub nodename : [:: cty :: c_char ; 65usize] , pub release : [:: cty :: c_char ; 65usize] , pub version : [:: cty :: c_char ; 65usize] , pub machine : [:: cty :: c_char ; 65usize] , pub domainname : [:: cty :: c_char ; 65usize] , } # [test] fn bindgen_test_layout_new_utsname () { assert_eq ! (:: core :: mem :: size_of :: < new_utsname > () , 390usize , concat ! ("Size of: " , stringify ! (new_utsname))) ; assert_eq ! (:: core :: mem :: align_of :: < new_utsname > () , 1usize , concat ! ("Alignment of " , stringify ! (new_utsname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < new_utsname > ())) . sysname as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (new_utsname) , "::" , stringify ! (sysname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < new_utsname > ())) . nodename as * const _ as usize } , 65usize , concat ! ("Offset of field: " , stringify ! (new_utsname) , "::" , stringify ! (nodename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < new_utsname > ())) . release as * const _ as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (new_utsname) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < new_utsname > ())) . version as * const _ as usize } , 195usize , concat ! ("Offset of field: " , stringify ! (new_utsname) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < new_utsname > ())) . machine as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (new_utsname) , "::" , stringify ! (machine))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < new_utsname > ())) . domainname as * const _ as usize } , 325usize , concat ! ("Offset of field: " , stringify ! (new_utsname) , "::" , stringify ! (domainname))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uts_namespace { pub name : new_utsname , pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub ns : ns_common , } # [test] fn bindgen_test_layout_uts_namespace () { assert_eq ! (:: core :: mem :: size_of :: < uts_namespace > () , 432usize , concat ! ("Size of: " , stringify ! (uts_namespace))) ; assert_eq ! (:: core :: mem :: align_of :: < uts_namespace > () , 8usize , concat ! ("Alignment of " , stringify ! (uts_namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uts_namespace > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uts_namespace) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uts_namespace > ())) . user_ns as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (uts_namespace) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uts_namespace > ())) . ucounts as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (uts_namespace) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uts_namespace > ())) . ns as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (uts_namespace) , "::" , stringify ! (ns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_namespace { pub ns : ns_common , pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub root_cset : * mut css_set , } # [test] fn bindgen_test_layout_cgroup_namespace () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_namespace > () , 48usize , concat ! ("Size of: " , stringify ! (cgroup_namespace))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_namespace > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_namespace > ())) . ns as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_namespace) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_namespace > ())) . user_ns as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cgroup_namespace) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_namespace > ())) . ucounts as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cgroup_namespace) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_namespace > ())) . root_cset as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cgroup_namespace) , "::" , stringify ! (root_cset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nsset { pub flags : :: cty :: c_uint , pub nsproxy : * mut nsproxy , pub fs : * mut fs_struct , pub cred : * const cred , } # [test] fn bindgen_test_layout_nsset () { assert_eq ! (:: core :: mem :: size_of :: < nsset > () , 32usize , concat ! ("Size of: " , stringify ! (nsset))) ; assert_eq ! (:: core :: mem :: align_of :: < nsset > () , 8usize , concat ! ("Alignment of " , stringify ! (nsset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsset > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nsset) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsset > ())) . nsproxy as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nsset) , "::" , stringify ! (nsproxy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsset > ())) . fs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nsset) , "::" , stringify ! (fs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nsset > ())) . cred as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nsset) , "::" , stringify ! (cred))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct proc_ns_operations { pub name : * const :: cty :: c_char , pub real_ns_name : * const :: cty :: c_char , pub type_ : :: cty :: c_int , pub get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct) -> * mut ns_common > , pub put : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ns_common) > , pub install : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nsset , arg2 : * mut ns_common) -> :: cty :: c_int > , pub owner : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ns_common) -> * mut user_namespace > , pub get_parent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ns_common) -> * mut ns_common > , } # [test] fn bindgen_test_layout_proc_ns_operations () { assert_eq ! (:: core :: mem :: size_of :: < proc_ns_operations > () , 64usize , concat ! ("Size of: " , stringify ! (proc_ns_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < proc_ns_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (proc_ns_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . real_ns_name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (real_ns_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . type_ as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . get as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . put as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (put))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . install as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (install))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . owner as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ns_operations > ())) . get_parent as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (proc_ns_operations) , "::" , stringify ! (get_parent))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pmu { pub entry : list_head , pub module : * mut module , pub dev : * mut device , pub attr_groups : * mut * const attribute_group , pub attr_update : * mut * const attribute_group , pub name : * const :: cty :: c_char , pub type_ : :: cty :: c_int , pub capabilities : :: cty :: c_int , pub pmu_disable_count : * mut :: cty :: c_int , pub pmu_cpu_context : * mut perf_cpu_context , pub exclusive_cnt : atomic_t , pub task_ctx_nr : :: cty :: c_int , pub hrtimer_interval_ms : :: cty :: c_int , pub nr_addr_filters : :: cty :: c_uint , pub pmu_enable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pmu) > , pub pmu_disable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pmu) > , pub event_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) -> :: cty :: c_int > , pub event_mapped : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : * mut mm_struct) > , pub event_unmapped : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : * mut mm_struct) > , pub add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub del : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : :: cty :: c_int) > , pub start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : :: cty :: c_int) > , pub stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : :: cty :: c_int) > , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) > , pub start_txn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pmu , arg2 : :: cty :: c_uint) > , pub commit_txn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pmu) -> :: cty :: c_int > , pub cancel_txn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pmu) > , pub event_idx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) -> :: cty :: c_int > , pub sched_task : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event_context , arg2 : bool_) > , pub task_ctx_cache : * mut kmem_cache , pub swap_task_ctx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event_context , arg2 : * mut perf_event_context) > , pub setup_aux : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : * mut * mut :: cty :: c_void , arg3 : :: cty :: c_int , arg4 : bool_) -> * mut :: cty :: c_void > , pub free_aux : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , pub snapshot_aux : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : * mut perf_output_handle , arg3 : :: cty :: c_ulong) -> :: cty :: c_long > , pub addr_filters_validate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut list_head) -> :: cty :: c_int > , pub addr_filters_sync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) > , pub aux_output_match : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) -> :: cty :: c_int > , pub filter_match : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event) -> :: cty :: c_int > , pub check_period : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut perf_event , arg2 : _cargo_bpf_u64) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_pmu () { assert_eq ! (:: core :: mem :: size_of :: < pmu > () , 296usize , concat ! ("Size of: " , stringify ! (pmu))) ; assert_eq ! (:: core :: mem :: align_of :: < pmu > () , 8usize , concat ! ("Alignment of " , stringify ! (pmu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . entry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . module as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . dev as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . attr_groups as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (attr_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . attr_update as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (attr_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . name as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . type_ as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . capabilities as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (capabilities))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . pmu_disable_count as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (pmu_disable_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . pmu_cpu_context as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (pmu_cpu_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . exclusive_cnt as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (exclusive_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . task_ctx_nr as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (task_ctx_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . hrtimer_interval_ms as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (hrtimer_interval_ms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . nr_addr_filters as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (nr_addr_filters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . pmu_enable as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (pmu_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . pmu_disable as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (pmu_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . event_init as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (event_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . event_mapped as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (event_mapped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . event_unmapped as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (event_unmapped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . add as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . del as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (del))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . start as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . stop as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . read as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . start_txn as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (start_txn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . commit_txn as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (commit_txn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . cancel_txn as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (cancel_txn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . event_idx as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (event_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . sched_task as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (sched_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . task_ctx_cache as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (task_ctx_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . swap_task_ctx as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (swap_task_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . setup_aux as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (setup_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . free_aux as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (free_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . snapshot_aux as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (snapshot_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . addr_filters_validate as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (addr_filters_validate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . addr_filters_sync as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (addr_filters_sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . aux_output_match as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (aux_output_match))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . filter_match as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (filter_match))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pmu > ())) . check_period as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (pmu) , "::" , stringify ! (check_period))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ftrace_regs { pub regs : pt_regs , } # [test] fn bindgen_test_layout_ftrace_regs () { assert_eq ! (:: core :: mem :: size_of :: < ftrace_regs > () , 168usize , concat ! ("Size of: " , stringify ! (ftrace_regs))) ; assert_eq ! (:: core :: mem :: align_of :: < ftrace_regs > () , 8usize , concat ! ("Alignment of " , stringify ! (ftrace_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_regs > ())) . regs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ftrace_regs) , "::" , stringify ! (regs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iovec { pub iov_base : * mut :: cty :: c_void , pub iov_len : __kernel_size_t , } # [test] fn bindgen_test_layout_iovec () { assert_eq ! (:: core :: mem :: size_of :: < iovec > () , 16usize , concat ! ("Size of: " , stringify ! (iovec))) ; assert_eq ! (:: core :: mem :: align_of :: < iovec > () , 8usize , concat ! ("Alignment of " , stringify ! (iovec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iovec > ())) . iov_base as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iovec > ())) . iov_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iovec) , "::" , stringify ! (iov_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kvec { pub iov_base : * mut :: cty :: c_void , pub iov_len : size_t , } # [test] fn bindgen_test_layout_kvec () { assert_eq ! (:: core :: mem :: size_of :: < kvec > () , 16usize , concat ! ("Size of: " , stringify ! (kvec))) ; assert_eq ! (:: core :: mem :: align_of :: < kvec > () , 8usize , concat ! ("Alignment of " , stringify ! (kvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kvec > ())) . iov_base as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kvec) , "::" , stringify ! (iov_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kvec > ())) . iov_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kvec) , "::" , stringify ! (iov_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_regs { pub abi : __u64 , pub regs : * mut pt_regs , } # [test] fn bindgen_test_layout_perf_regs () { assert_eq ! (:: core :: mem :: size_of :: < perf_regs > () , 16usize , concat ! ("Size of: " , stringify ! (perf_regs))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_regs > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_regs > ())) . abi as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_regs) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_regs > ())) . regs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_regs) , "::" , stringify ! (regs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct u64_stats_sync { } # [test] fn bindgen_test_layout_u64_stats_sync () { assert_eq ! (:: core :: mem :: size_of :: < u64_stats_sync > () , 0usize , concat ! ("Size of: " , stringify ! (u64_stats_sync))) ; assert_eq ! (:: core :: mem :: align_of :: < u64_stats_sync > () , 1usize , concat ! ("Alignment of " , stringify ! (u64_stats_sync))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_insn { pub code : __u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub off : __s16 , pub imm : __s32 , } # [test] fn bindgen_test_layout_bpf_insn () { assert_eq ! (:: core :: mem :: size_of :: < bpf_insn > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_insn))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_insn > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_insn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn > ())) . code as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_insn) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn > ())) . off as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (bpf_insn) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn > ())) . imm as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_insn) , "::" , stringify ! (imm))) ; } impl bpf_insn { # [inline] pub fn dst_reg (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_dst_reg (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn src_reg (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_src_reg (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (dst_reg : __u8 , src_reg : __u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let dst_reg : u8 = unsafe { :: core :: mem :: transmute (dst_reg) } ; dst_reg as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let src_reg : u8 = unsafe { :: core :: mem :: transmute (src_reg) } ; src_reg as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_cgroup_storage_key { pub cgroup_inode_id : __u64 , pub attach_type : __u32 , } # [test] fn bindgen_test_layout_bpf_cgroup_storage_key () { assert_eq ! (:: core :: mem :: size_of :: < bpf_cgroup_storage_key > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_cgroup_storage_key))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_cgroup_storage_key > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_cgroup_storage_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage_key > ())) . cgroup_inode_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage_key) , "::" , stringify ! (cgroup_inode_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage_key > ())) . attach_type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage_key) , "::" , stringify ! (attach_type))) ; } pub const bpf_map_type_BPF_MAP_TYPE_UNSPEC : bpf_map_type = 0 ; pub const bpf_map_type_BPF_MAP_TYPE_HASH : bpf_map_type = 1 ; pub const bpf_map_type_BPF_MAP_TYPE_ARRAY : bpf_map_type = 2 ; pub const bpf_map_type_BPF_MAP_TYPE_PROG_ARRAY : bpf_map_type = 3 ; pub const bpf_map_type_BPF_MAP_TYPE_PERF_EVENT_ARRAY : bpf_map_type = 4 ; pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_HASH : bpf_map_type = 5 ; pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_ARRAY : bpf_map_type = 6 ; pub const bpf_map_type_BPF_MAP_TYPE_STACK_TRACE : bpf_map_type = 7 ; pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_ARRAY : bpf_map_type = 8 ; pub const bpf_map_type_BPF_MAP_TYPE_LRU_HASH : bpf_map_type = 9 ; pub const bpf_map_type_BPF_MAP_TYPE_LRU_PERCPU_HASH : bpf_map_type = 10 ; pub const bpf_map_type_BPF_MAP_TYPE_LPM_TRIE : bpf_map_type = 11 ; pub const bpf_map_type_BPF_MAP_TYPE_ARRAY_OF_MAPS : bpf_map_type = 12 ; pub const bpf_map_type_BPF_MAP_TYPE_HASH_OF_MAPS : bpf_map_type = 13 ; pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP : bpf_map_type = 14 ; pub const bpf_map_type_BPF_MAP_TYPE_SOCKMAP : bpf_map_type = 15 ; pub const bpf_map_type_BPF_MAP_TYPE_CPUMAP : bpf_map_type = 16 ; pub const bpf_map_type_BPF_MAP_TYPE_XSKMAP : bpf_map_type = 17 ; pub const bpf_map_type_BPF_MAP_TYPE_SOCKHASH : bpf_map_type = 18 ; pub const bpf_map_type_BPF_MAP_TYPE_CGROUP_STORAGE : bpf_map_type = 19 ; pub const bpf_map_type_BPF_MAP_TYPE_REUSEPORT_SOCKARRAY : bpf_map_type = 20 ; pub const bpf_map_type_BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE : bpf_map_type = 21 ; pub const bpf_map_type_BPF_MAP_TYPE_QUEUE : bpf_map_type = 22 ; pub const bpf_map_type_BPF_MAP_TYPE_STACK : bpf_map_type = 23 ; pub const bpf_map_type_BPF_MAP_TYPE_SK_STORAGE : bpf_map_type = 24 ; pub const bpf_map_type_BPF_MAP_TYPE_DEVMAP_HASH : bpf_map_type = 25 ; pub const bpf_map_type_BPF_MAP_TYPE_STRUCT_OPS : bpf_map_type = 26 ; pub const bpf_map_type_BPF_MAP_TYPE_RINGBUF : bpf_map_type = 27 ; pub const bpf_map_type_BPF_MAP_TYPE_INODE_STORAGE : bpf_map_type = 28 ; pub const bpf_map_type_BPF_MAP_TYPE_TASK_STORAGE : bpf_map_type = 29 ; pub type bpf_map_type = :: cty :: c_uint ; pub const bpf_prog_type_BPF_PROG_TYPE_UNSPEC : bpf_prog_type = 0 ; pub const bpf_prog_type_BPF_PROG_TYPE_SOCKET_FILTER : bpf_prog_type = 1 ; pub const bpf_prog_type_BPF_PROG_TYPE_KPROBE : bpf_prog_type = 2 ; pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_CLS : bpf_prog_type = 3 ; pub const bpf_prog_type_BPF_PROG_TYPE_SCHED_ACT : bpf_prog_type = 4 ; pub const bpf_prog_type_BPF_PROG_TYPE_TRACEPOINT : bpf_prog_type = 5 ; pub const bpf_prog_type_BPF_PROG_TYPE_XDP : bpf_prog_type = 6 ; pub const bpf_prog_type_BPF_PROG_TYPE_PERF_EVENT : bpf_prog_type = 7 ; pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SKB : bpf_prog_type = 8 ; pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK : bpf_prog_type = 9 ; pub const bpf_prog_type_BPF_PROG_TYPE_LWT_IN : bpf_prog_type = 10 ; pub const bpf_prog_type_BPF_PROG_TYPE_LWT_OUT : bpf_prog_type = 11 ; pub const bpf_prog_type_BPF_PROG_TYPE_LWT_XMIT : bpf_prog_type = 12 ; pub const bpf_prog_type_BPF_PROG_TYPE_SOCK_OPS : bpf_prog_type = 13 ; pub const bpf_prog_type_BPF_PROG_TYPE_SK_SKB : bpf_prog_type = 14 ; pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_DEVICE : bpf_prog_type = 15 ; pub const bpf_prog_type_BPF_PROG_TYPE_SK_MSG : bpf_prog_type = 16 ; pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT : bpf_prog_type = 17 ; pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCK_ADDR : bpf_prog_type = 18 ; pub const bpf_prog_type_BPF_PROG_TYPE_LWT_SEG6LOCAL : bpf_prog_type = 19 ; pub const bpf_prog_type_BPF_PROG_TYPE_LIRC_MODE2 : bpf_prog_type = 20 ; pub const bpf_prog_type_BPF_PROG_TYPE_SK_REUSEPORT : bpf_prog_type = 21 ; pub const bpf_prog_type_BPF_PROG_TYPE_FLOW_DISSECTOR : bpf_prog_type = 22 ; pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SYSCTL : bpf_prog_type = 23 ; pub const bpf_prog_type_BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE : bpf_prog_type = 24 ; pub const bpf_prog_type_BPF_PROG_TYPE_CGROUP_SOCKOPT : bpf_prog_type = 25 ; pub const bpf_prog_type_BPF_PROG_TYPE_TRACING : bpf_prog_type = 26 ; pub const bpf_prog_type_BPF_PROG_TYPE_STRUCT_OPS : bpf_prog_type = 27 ; pub const bpf_prog_type_BPF_PROG_TYPE_EXT : bpf_prog_type = 28 ; pub const bpf_prog_type_BPF_PROG_TYPE_LSM : bpf_prog_type = 29 ; pub const bpf_prog_type_BPF_PROG_TYPE_SK_LOOKUP : bpf_prog_type = 30 ; pub type bpf_prog_type = :: cty :: c_uint ; pub const bpf_attach_type_BPF_CGROUP_INET_INGRESS : bpf_attach_type = 0 ; pub const bpf_attach_type_BPF_CGROUP_INET_EGRESS : bpf_attach_type = 1 ; pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_CREATE : bpf_attach_type = 2 ; pub const bpf_attach_type_BPF_CGROUP_SOCK_OPS : bpf_attach_type = 3 ; pub const bpf_attach_type_BPF_SK_SKB_STREAM_PARSER : bpf_attach_type = 4 ; pub const bpf_attach_type_BPF_SK_SKB_STREAM_VERDICT : bpf_attach_type = 5 ; pub const bpf_attach_type_BPF_CGROUP_DEVICE : bpf_attach_type = 6 ; pub const bpf_attach_type_BPF_SK_MSG_VERDICT : bpf_attach_type = 7 ; pub const bpf_attach_type_BPF_CGROUP_INET4_BIND : bpf_attach_type = 8 ; pub const bpf_attach_type_BPF_CGROUP_INET6_BIND : bpf_attach_type = 9 ; pub const bpf_attach_type_BPF_CGROUP_INET4_CONNECT : bpf_attach_type = 10 ; pub const bpf_attach_type_BPF_CGROUP_INET6_CONNECT : bpf_attach_type = 11 ; pub const bpf_attach_type_BPF_CGROUP_INET4_POST_BIND : bpf_attach_type = 12 ; pub const bpf_attach_type_BPF_CGROUP_INET6_POST_BIND : bpf_attach_type = 13 ; pub const bpf_attach_type_BPF_CGROUP_UDP4_SENDMSG : bpf_attach_type = 14 ; pub const bpf_attach_type_BPF_CGROUP_UDP6_SENDMSG : bpf_attach_type = 15 ; pub const bpf_attach_type_BPF_LIRC_MODE2 : bpf_attach_type = 16 ; pub const bpf_attach_type_BPF_FLOW_DISSECTOR : bpf_attach_type = 17 ; pub const bpf_attach_type_BPF_CGROUP_SYSCTL : bpf_attach_type = 18 ; pub const bpf_attach_type_BPF_CGROUP_UDP4_RECVMSG : bpf_attach_type = 19 ; pub const bpf_attach_type_BPF_CGROUP_UDP6_RECVMSG : bpf_attach_type = 20 ; pub const bpf_attach_type_BPF_CGROUP_GETSOCKOPT : bpf_attach_type = 21 ; pub const bpf_attach_type_BPF_CGROUP_SETSOCKOPT : bpf_attach_type = 22 ; pub const bpf_attach_type_BPF_TRACE_RAW_TP : bpf_attach_type = 23 ; pub const bpf_attach_type_BPF_TRACE_FENTRY : bpf_attach_type = 24 ; pub const bpf_attach_type_BPF_TRACE_FEXIT : bpf_attach_type = 25 ; pub const bpf_attach_type_BPF_MODIFY_RETURN : bpf_attach_type = 26 ; pub const bpf_attach_type_BPF_LSM_MAC : bpf_attach_type = 27 ; pub const bpf_attach_type_BPF_TRACE_ITER : bpf_attach_type = 28 ; pub const bpf_attach_type_BPF_CGROUP_INET4_GETPEERNAME : bpf_attach_type = 29 ; pub const bpf_attach_type_BPF_CGROUP_INET6_GETPEERNAME : bpf_attach_type = 30 ; pub const bpf_attach_type_BPF_CGROUP_INET4_GETSOCKNAME : bpf_attach_type = 31 ; pub const bpf_attach_type_BPF_CGROUP_INET6_GETSOCKNAME : bpf_attach_type = 32 ; pub const bpf_attach_type_BPF_XDP_DEVMAP : bpf_attach_type = 33 ; pub const bpf_attach_type_BPF_CGROUP_INET_SOCK_RELEASE : bpf_attach_type = 34 ; pub const bpf_attach_type_BPF_XDP_CPUMAP : bpf_attach_type = 35 ; pub const bpf_attach_type_BPF_SK_LOOKUP : bpf_attach_type = 36 ; pub const bpf_attach_type_BPF_XDP : bpf_attach_type = 37 ; pub const bpf_attach_type_BPF_SK_SKB_VERDICT : bpf_attach_type = 38 ; pub const bpf_attach_type___MAX_BPF_ATTACH_TYPE : bpf_attach_type = 39 ; pub type bpf_attach_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub union bpf_attr { pub __bindgen_anon_1 : bpf_attr__bindgen_ty_1 , pub __bindgen_anon_2 : bpf_attr__bindgen_ty_2 , pub batch : bpf_attr__bindgen_ty_3 , pub __bindgen_anon_3 : bpf_attr__bindgen_ty_4 , pub __bindgen_anon_4 : bpf_attr__bindgen_ty_5 , pub __bindgen_anon_5 : bpf_attr__bindgen_ty_6 , pub test : bpf_attr__bindgen_ty_7 , pub __bindgen_anon_6 : bpf_attr__bindgen_ty_8 , pub info : bpf_attr__bindgen_ty_9 , pub query : bpf_attr__bindgen_ty_10 , pub raw_tracepoint : bpf_attr__bindgen_ty_11 , pub __bindgen_anon_7 : bpf_attr__bindgen_ty_12 , pub task_fd_query : bpf_attr__bindgen_ty_13 , pub link_create : bpf_attr__bindgen_ty_14 , pub link_update : bpf_attr__bindgen_ty_15 , pub link_detach : bpf_attr__bindgen_ty_16 , pub enable_stats : bpf_attr__bindgen_ty_17 , pub iter_create : bpf_attr__bindgen_ty_18 , pub prog_bind_map : bpf_attr__bindgen_ty_19 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_1 { pub map_type : __u32 , pub key_size : __u32 , pub value_size : __u32 , pub max_entries : __u32 , pub map_flags : __u32 , pub inner_map_fd : __u32 , pub numa_node : __u32 , pub map_name : [:: cty :: c_char ; 16usize] , pub map_ifindex : __u32 , pub btf_fd : __u32 , pub btf_key_type_id : __u32 , pub btf_value_type_id : __u32 , pub btf_vmlinux_value_type_id : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . map_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (map_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . key_size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (key_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . value_size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (value_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . max_entries as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (max_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . map_flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (map_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . inner_map_fd as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (inner_map_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . numa_node as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (numa_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . map_name as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (map_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . map_ifindex as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (map_ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . btf_fd as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (btf_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . btf_key_type_id as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (btf_key_type_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . btf_value_type_id as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (btf_value_type_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_1 > ())) . btf_vmlinux_value_type_id as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_1) , "::" , stringify ! (btf_vmlinux_value_type_id))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_attr__bindgen_ty_2 { pub map_fd : __u32 , pub key : __u64 , pub __bindgen_anon_1 : bpf_attr__bindgen_ty_2__bindgen_ty_1 , pub flags : __u64 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_attr__bindgen_ty_2__bindgen_ty_1 { pub value : __u64 , pub next_key : __u64 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_2__bindgen_ty_1 > ())) . value as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_2__bindgen_ty_1 > ())) . next_key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (next_key))) ; } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_2 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_2 > ())) . map_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_2) , "::" , stringify ! (map_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_2 > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_2) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_2 > ())) . flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_2) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_3 { pub in_batch : __u64 , pub out_batch : __u64 , pub keys : __u64 , pub values : __u64 , pub count : __u32 , pub map_fd : __u32 , pub elem_flags : __u64 , pub flags : __u64 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_3 > () , 56usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . in_batch as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (in_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . out_batch as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (out_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . keys as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (keys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . values as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (values))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . map_fd as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (map_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . elem_flags as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (elem_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_3 > ())) . flags as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_3) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_attr__bindgen_ty_4 { pub prog_type : __u32 , pub insn_cnt : __u32 , pub insns : __u64 , pub license : __u64 , pub log_level : __u32 , pub log_size : __u32 , pub log_buf : __u64 , pub kern_version : __u32 , pub prog_flags : __u32 , pub prog_name : [:: cty :: c_char ; 16usize] , pub prog_ifindex : __u32 , pub expected_attach_type : __u32 , pub prog_btf_fd : __u32 , pub func_info_rec_size : __u32 , pub func_info : __u64 , pub func_info_cnt : __u32 , pub line_info_rec_size : __u32 , pub line_info : __u64 , pub line_info_cnt : __u32 , pub attach_btf_id : __u32 , pub __bindgen_anon_1 : bpf_attr__bindgen_ty_4__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_attr__bindgen_ty_4__bindgen_ty_1 { pub attach_prog_fd : __u32 , pub attach_btf_obj_fd : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_4__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_4__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_4__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4__bindgen_ty_1 > ())) . attach_prog_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (attach_prog_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4__bindgen_ty_1 > ())) . attach_btf_obj_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (attach_btf_obj_fd))) ; } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_4 > () , 120usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . prog_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (prog_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . insn_cnt as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (insn_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . insns as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (insns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . license as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (license))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . log_level as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (log_level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . log_size as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (log_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . log_buf as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (log_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . kern_version as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (kern_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . prog_flags as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (prog_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . prog_name as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (prog_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . prog_ifindex as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (prog_ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . expected_attach_type as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (expected_attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . prog_btf_fd as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (prog_btf_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . func_info_rec_size as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (func_info_rec_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . func_info as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (func_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . func_info_cnt as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (func_info_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . line_info_rec_size as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (line_info_rec_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . line_info as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (line_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . line_info_cnt as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (line_info_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_4 > ())) . attach_btf_id as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_4) , "::" , stringify ! (attach_btf_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_5 { pub pathname : __u64 , pub bpf_fd : __u32 , pub file_flags : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_5 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_5 > ())) . pathname as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_5) , "::" , stringify ! (pathname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_5 > ())) . bpf_fd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_5) , "::" , stringify ! (bpf_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_5 > ())) . file_flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_5) , "::" , stringify ! (file_flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_6 { pub target_fd : __u32 , pub attach_bpf_fd : __u32 , pub attach_type : __u32 , pub attach_flags : __u32 , pub replace_bpf_fd : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_6 > () , 20usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_6 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_6 > ())) . target_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_6) , "::" , stringify ! (target_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_6 > ())) . attach_bpf_fd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_6) , "::" , stringify ! (attach_bpf_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_6 > ())) . attach_type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_6) , "::" , stringify ! (attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_6 > ())) . attach_flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_6) , "::" , stringify ! (attach_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_6 > ())) . replace_bpf_fd as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_6) , "::" , stringify ! (replace_bpf_fd))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_7 { pub prog_fd : __u32 , pub retval : __u32 , pub data_size_in : __u32 , pub data_size_out : __u32 , pub data_in : __u64 , pub data_out : __u64 , pub repeat : __u32 , pub duration : __u32 , pub ctx_size_in : __u32 , pub ctx_size_out : __u32 , pub ctx_in : __u64 , pub ctx_out : __u64 , pub flags : __u32 , pub cpu : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_7 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_7 > () , 72usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_7))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_7 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . prog_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (prog_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . retval as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (retval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . data_size_in as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (data_size_in))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . data_size_out as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (data_size_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . data_in as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (data_in))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . data_out as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (data_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . repeat as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (repeat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . duration as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (duration))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . ctx_size_in as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (ctx_size_in))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . ctx_size_out as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (ctx_size_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . ctx_in as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (ctx_in))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . ctx_out as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (ctx_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . flags as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_7 > ())) . cpu as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_7) , "::" , stringify ! (cpu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_attr__bindgen_ty_8 { pub __bindgen_anon_1 : bpf_attr__bindgen_ty_8__bindgen_ty_1 , pub next_id : __u32 , pub open_flags : __u32 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_attr__bindgen_ty_8__bindgen_ty_1 { pub start_id : __u32 , pub prog_id : __u32 , pub map_id : __u32 , pub btf_id : __u32 , pub link_id : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_8__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > ())) . start_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1) , "::" , stringify ! (start_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > ())) . prog_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1) , "::" , stringify ! (prog_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > ())) . map_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1) , "::" , stringify ! (map_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > ())) . btf_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1) , "::" , stringify ! (btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8__bindgen_ty_1 > ())) . link_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8__bindgen_ty_1) , "::" , stringify ! (link_id))) ; } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_8 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_8 > () , 12usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_8))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_8 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_8))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8 > ())) . next_id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8) , "::" , stringify ! (next_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_8 > ())) . open_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_8) , "::" , stringify ! (open_flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_9 { pub bpf_fd : __u32 , pub info_len : __u32 , pub info : __u64 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_9 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_9 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_9))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_9 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_9))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_9 > ())) . bpf_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_9) , "::" , stringify ! (bpf_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_9 > ())) . info_len as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_9) , "::" , stringify ! (info_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_9 > ())) . info as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_9) , "::" , stringify ! (info))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_10 { pub target_fd : __u32 , pub attach_type : __u32 , pub query_flags : __u32 , pub attach_flags : __u32 , pub prog_ids : __u64 , pub prog_cnt : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_10 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_10 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_10))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_10 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_10))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_10 > ())) . target_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_10) , "::" , stringify ! (target_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_10 > ())) . attach_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_10) , "::" , stringify ! (attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_10 > ())) . query_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_10) , "::" , stringify ! (query_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_10 > ())) . attach_flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_10) , "::" , stringify ! (attach_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_10 > ())) . prog_ids as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_10) , "::" , stringify ! (prog_ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_10 > ())) . prog_cnt as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_10) , "::" , stringify ! (prog_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_11 { pub name : __u64 , pub prog_fd : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_11 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_11 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_11))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_11 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_11))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_11 > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_11) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_11 > ())) . prog_fd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_11) , "::" , stringify ! (prog_fd))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_12 { pub btf : __u64 , pub btf_log_buf : __u64 , pub btf_size : __u32 , pub btf_log_size : __u32 , pub btf_log_level : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_12 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_12 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_12))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_12 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_12))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_12 > ())) . btf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_12) , "::" , stringify ! (btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_12 > ())) . btf_log_buf as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_12) , "::" , stringify ! (btf_log_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_12 > ())) . btf_size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_12) , "::" , stringify ! (btf_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_12 > ())) . btf_log_size as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_12) , "::" , stringify ! (btf_log_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_12 > ())) . btf_log_level as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_12) , "::" , stringify ! (btf_log_level))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_13 { pub pid : __u32 , pub fd : __u32 , pub flags : __u32 , pub buf_len : __u32 , pub buf : __u64 , pub prog_id : __u32 , pub fd_type : __u32 , pub probe_offset : __u64 , pub probe_addr : __u64 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_13 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_13 > () , 48usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_13))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_13 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_13))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . pid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . fd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . buf_len as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (buf_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . buf as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . prog_id as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (prog_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . fd_type as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (fd_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . probe_offset as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (probe_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_13 > ())) . probe_addr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_13) , "::" , stringify ! (probe_addr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_attr__bindgen_ty_14 { pub prog_fd : __u32 , pub __bindgen_anon_1 : bpf_attr__bindgen_ty_14__bindgen_ty_1 , pub attach_type : __u32 , pub flags : __u32 , pub __bindgen_anon_2 : bpf_attr__bindgen_ty_14__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_attr__bindgen_ty_14__bindgen_ty_1 { pub target_fd : __u32 , pub target_ifindex : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_14__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_14__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_14__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14__bindgen_ty_1 > ())) . target_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_1) , "::" , stringify ! (target_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14__bindgen_ty_1 > ())) . target_ifindex as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_1) , "::" , stringify ! (target_ifindex))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_attr__bindgen_ty_14__bindgen_ty_2 { pub target_btf_id : __u32 , pub __bindgen_anon_1 : bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 { pub iter_info : __u64 , pub iter_info_len : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 > ())) . iter_info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (iter_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1 > ())) . iter_info_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (iter_info_len))) ; } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_14__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_14__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_14__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14__bindgen_ty_2 > ())) . target_btf_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14__bindgen_ty_2) , "::" , stringify ! (target_btf_id))) ; } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_14 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_14 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_14))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_14 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_14))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14 > ())) . prog_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14) , "::" , stringify ! (prog_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14 > ())) . attach_type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14) , "::" , stringify ! (attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_14 > ())) . flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_14) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_15 { pub link_fd : __u32 , pub new_prog_fd : __u32 , pub flags : __u32 , pub old_prog_fd : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_15 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_15 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_15))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_15 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_15))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_15 > ())) . link_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_15) , "::" , stringify ! (link_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_15 > ())) . new_prog_fd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_15) , "::" , stringify ! (new_prog_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_15 > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_15) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_15 > ())) . old_prog_fd as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_15) , "::" , stringify ! (old_prog_fd))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_16 { pub link_fd : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_16 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_16 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_16))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_16 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_16))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_16 > ())) . link_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_16) , "::" , stringify ! (link_fd))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_17 { pub type_ : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_17 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_17 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_17))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_17 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_17))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_17 > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_17) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_18 { pub link_fd : __u32 , pub flags : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_18 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_18 > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_18))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_18 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_18))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_18 > ())) . link_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_18) , "::" , stringify ! (link_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_18 > ())) . flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_18) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_attr__bindgen_ty_19 { pub prog_fd : __u32 , pub map_fd : __u32 , pub flags : __u32 , } # [test] fn bindgen_test_layout_bpf_attr__bindgen_ty_19 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr__bindgen_ty_19 > () , 12usize , concat ! ("Size of: " , stringify ! (bpf_attr__bindgen_ty_19))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr__bindgen_ty_19 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_attr__bindgen_ty_19))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_19 > ())) . prog_fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_19) , "::" , stringify ! (prog_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_19 > ())) . map_fd as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_19) , "::" , stringify ! (map_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr__bindgen_ty_19 > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_attr__bindgen_ty_19) , "::" , stringify ! (flags))) ; } # [test] fn bindgen_test_layout_bpf_attr () { assert_eq ! (:: core :: mem :: size_of :: < bpf_attr > () , 120usize , concat ! ("Size of: " , stringify ! (bpf_attr))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_attr > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . batch as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . test as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (test))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . query as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (query))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . raw_tracepoint as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (raw_tracepoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . task_fd_query as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (task_fd_query))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . link_create as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (link_create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . link_update as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (link_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . link_detach as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (link_detach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . enable_stats as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (enable_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . iter_create as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (iter_create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_attr > ())) . prog_bind_map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_attr) , "::" , stringify ! (prog_bind_map))) ; } pub const bpf_func_id_BPF_FUNC_unspec : bpf_func_id = 0 ; pub const bpf_func_id_BPF_FUNC_map_lookup_elem : bpf_func_id = 1 ; pub const bpf_func_id_BPF_FUNC_map_update_elem : bpf_func_id = 2 ; pub const bpf_func_id_BPF_FUNC_map_delete_elem : bpf_func_id = 3 ; pub const bpf_func_id_BPF_FUNC_probe_read : bpf_func_id = 4 ; pub const bpf_func_id_BPF_FUNC_ktime_get_ns : bpf_func_id = 5 ; pub const bpf_func_id_BPF_FUNC_trace_printk : bpf_func_id = 6 ; pub const bpf_func_id_BPF_FUNC_get_prandom_u32 : bpf_func_id = 7 ; pub const bpf_func_id_BPF_FUNC_get_smp_processor_id : bpf_func_id = 8 ; pub const bpf_func_id_BPF_FUNC_skb_store_bytes : bpf_func_id = 9 ; pub const bpf_func_id_BPF_FUNC_l3_csum_replace : bpf_func_id = 10 ; pub const bpf_func_id_BPF_FUNC_l4_csum_replace : bpf_func_id = 11 ; pub const bpf_func_id_BPF_FUNC_tail_call : bpf_func_id = 12 ; pub const bpf_func_id_BPF_FUNC_clone_redirect : bpf_func_id = 13 ; pub const bpf_func_id_BPF_FUNC_get_current_pid_tgid : bpf_func_id = 14 ; pub const bpf_func_id_BPF_FUNC_get_current_uid_gid : bpf_func_id = 15 ; pub const bpf_func_id_BPF_FUNC_get_current_comm : bpf_func_id = 16 ; pub const bpf_func_id_BPF_FUNC_get_cgroup_classid : bpf_func_id = 17 ; pub const bpf_func_id_BPF_FUNC_skb_vlan_push : bpf_func_id = 18 ; pub const bpf_func_id_BPF_FUNC_skb_vlan_pop : bpf_func_id = 19 ; pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_key : bpf_func_id = 20 ; pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_key : bpf_func_id = 21 ; pub const bpf_func_id_BPF_FUNC_perf_event_read : bpf_func_id = 22 ; pub const bpf_func_id_BPF_FUNC_redirect : bpf_func_id = 23 ; pub const bpf_func_id_BPF_FUNC_get_route_realm : bpf_func_id = 24 ; pub const bpf_func_id_BPF_FUNC_perf_event_output : bpf_func_id = 25 ; pub const bpf_func_id_BPF_FUNC_skb_load_bytes : bpf_func_id = 26 ; pub const bpf_func_id_BPF_FUNC_get_stackid : bpf_func_id = 27 ; pub const bpf_func_id_BPF_FUNC_csum_diff : bpf_func_id = 28 ; pub const bpf_func_id_BPF_FUNC_skb_get_tunnel_opt : bpf_func_id = 29 ; pub const bpf_func_id_BPF_FUNC_skb_set_tunnel_opt : bpf_func_id = 30 ; pub const bpf_func_id_BPF_FUNC_skb_change_proto : bpf_func_id = 31 ; pub const bpf_func_id_BPF_FUNC_skb_change_type : bpf_func_id = 32 ; pub const bpf_func_id_BPF_FUNC_skb_under_cgroup : bpf_func_id = 33 ; pub const bpf_func_id_BPF_FUNC_get_hash_recalc : bpf_func_id = 34 ; pub const bpf_func_id_BPF_FUNC_get_current_task : bpf_func_id = 35 ; pub const bpf_func_id_BPF_FUNC_probe_write_user : bpf_func_id = 36 ; pub const bpf_func_id_BPF_FUNC_current_task_under_cgroup : bpf_func_id = 37 ; pub const bpf_func_id_BPF_FUNC_skb_change_tail : bpf_func_id = 38 ; pub const bpf_func_id_BPF_FUNC_skb_pull_data : bpf_func_id = 39 ; pub const bpf_func_id_BPF_FUNC_csum_update : bpf_func_id = 40 ; pub const bpf_func_id_BPF_FUNC_set_hash_invalid : bpf_func_id = 41 ; pub const bpf_func_id_BPF_FUNC_get_numa_node_id : bpf_func_id = 42 ; pub const bpf_func_id_BPF_FUNC_skb_change_head : bpf_func_id = 43 ; pub const bpf_func_id_BPF_FUNC_xdp_adjust_head : bpf_func_id = 44 ; pub const bpf_func_id_BPF_FUNC_probe_read_str : bpf_func_id = 45 ; pub const bpf_func_id_BPF_FUNC_get_socket_cookie : bpf_func_id = 46 ; pub const bpf_func_id_BPF_FUNC_get_socket_uid : bpf_func_id = 47 ; pub const bpf_func_id_BPF_FUNC_set_hash : bpf_func_id = 48 ; pub const bpf_func_id_BPF_FUNC_setsockopt : bpf_func_id = 49 ; pub const bpf_func_id_BPF_FUNC_skb_adjust_room : bpf_func_id = 50 ; pub const bpf_func_id_BPF_FUNC_redirect_map : bpf_func_id = 51 ; pub const bpf_func_id_BPF_FUNC_sk_redirect_map : bpf_func_id = 52 ; pub const bpf_func_id_BPF_FUNC_sock_map_update : bpf_func_id = 53 ; pub const bpf_func_id_BPF_FUNC_xdp_adjust_meta : bpf_func_id = 54 ; pub const bpf_func_id_BPF_FUNC_perf_event_read_value : bpf_func_id = 55 ; pub const bpf_func_id_BPF_FUNC_perf_prog_read_value : bpf_func_id = 56 ; pub const bpf_func_id_BPF_FUNC_getsockopt : bpf_func_id = 57 ; pub const bpf_func_id_BPF_FUNC_override_return : bpf_func_id = 58 ; pub const bpf_func_id_BPF_FUNC_sock_ops_cb_flags_set : bpf_func_id = 59 ; pub const bpf_func_id_BPF_FUNC_msg_redirect_map : bpf_func_id = 60 ; pub const bpf_func_id_BPF_FUNC_msg_apply_bytes : bpf_func_id = 61 ; pub const bpf_func_id_BPF_FUNC_msg_cork_bytes : bpf_func_id = 62 ; pub const bpf_func_id_BPF_FUNC_msg_pull_data : bpf_func_id = 63 ; pub const bpf_func_id_BPF_FUNC_bind : bpf_func_id = 64 ; pub const bpf_func_id_BPF_FUNC_xdp_adjust_tail : bpf_func_id = 65 ; pub const bpf_func_id_BPF_FUNC_skb_get_xfrm_state : bpf_func_id = 66 ; pub const bpf_func_id_BPF_FUNC_get_stack : bpf_func_id = 67 ; pub const bpf_func_id_BPF_FUNC_skb_load_bytes_relative : bpf_func_id = 68 ; pub const bpf_func_id_BPF_FUNC_fib_lookup : bpf_func_id = 69 ; pub const bpf_func_id_BPF_FUNC_sock_hash_update : bpf_func_id = 70 ; pub const bpf_func_id_BPF_FUNC_msg_redirect_hash : bpf_func_id = 71 ; pub const bpf_func_id_BPF_FUNC_sk_redirect_hash : bpf_func_id = 72 ; pub const bpf_func_id_BPF_FUNC_lwt_push_encap : bpf_func_id = 73 ; pub const bpf_func_id_BPF_FUNC_lwt_seg6_store_bytes : bpf_func_id = 74 ; pub const bpf_func_id_BPF_FUNC_lwt_seg6_adjust_srh : bpf_func_id = 75 ; pub const bpf_func_id_BPF_FUNC_lwt_seg6_action : bpf_func_id = 76 ; pub const bpf_func_id_BPF_FUNC_rc_repeat : bpf_func_id = 77 ; pub const bpf_func_id_BPF_FUNC_rc_keydown : bpf_func_id = 78 ; pub const bpf_func_id_BPF_FUNC_skb_cgroup_id : bpf_func_id = 79 ; pub const bpf_func_id_BPF_FUNC_get_current_cgroup_id : bpf_func_id = 80 ; pub const bpf_func_id_BPF_FUNC_get_local_storage : bpf_func_id = 81 ; pub const bpf_func_id_BPF_FUNC_sk_select_reuseport : bpf_func_id = 82 ; pub const bpf_func_id_BPF_FUNC_skb_ancestor_cgroup_id : bpf_func_id = 83 ; pub const bpf_func_id_BPF_FUNC_sk_lookup_tcp : bpf_func_id = 84 ; pub const bpf_func_id_BPF_FUNC_sk_lookup_udp : bpf_func_id = 85 ; pub const bpf_func_id_BPF_FUNC_sk_release : bpf_func_id = 86 ; pub const bpf_func_id_BPF_FUNC_map_push_elem : bpf_func_id = 87 ; pub const bpf_func_id_BPF_FUNC_map_pop_elem : bpf_func_id = 88 ; pub const bpf_func_id_BPF_FUNC_map_peek_elem : bpf_func_id = 89 ; pub const bpf_func_id_BPF_FUNC_msg_push_data : bpf_func_id = 90 ; pub const bpf_func_id_BPF_FUNC_msg_pop_data : bpf_func_id = 91 ; pub const bpf_func_id_BPF_FUNC_rc_pointer_rel : bpf_func_id = 92 ; pub const bpf_func_id_BPF_FUNC_spin_lock : bpf_func_id = 93 ; pub const bpf_func_id_BPF_FUNC_spin_unlock : bpf_func_id = 94 ; pub const bpf_func_id_BPF_FUNC_sk_fullsock : bpf_func_id = 95 ; pub const bpf_func_id_BPF_FUNC_tcp_sock : bpf_func_id = 96 ; pub const bpf_func_id_BPF_FUNC_skb_ecn_set_ce : bpf_func_id = 97 ; pub const bpf_func_id_BPF_FUNC_get_listener_sock : bpf_func_id = 98 ; pub const bpf_func_id_BPF_FUNC_skc_lookup_tcp : bpf_func_id = 99 ; pub const bpf_func_id_BPF_FUNC_tcp_check_syncookie : bpf_func_id = 100 ; pub const bpf_func_id_BPF_FUNC_sysctl_get_name : bpf_func_id = 101 ; pub const bpf_func_id_BPF_FUNC_sysctl_get_current_value : bpf_func_id = 102 ; pub const bpf_func_id_BPF_FUNC_sysctl_get_new_value : bpf_func_id = 103 ; pub const bpf_func_id_BPF_FUNC_sysctl_set_new_value : bpf_func_id = 104 ; pub const bpf_func_id_BPF_FUNC_strtol : bpf_func_id = 105 ; pub const bpf_func_id_BPF_FUNC_strtoul : bpf_func_id = 106 ; pub const bpf_func_id_BPF_FUNC_sk_storage_get : bpf_func_id = 107 ; pub const bpf_func_id_BPF_FUNC_sk_storage_delete : bpf_func_id = 108 ; pub const bpf_func_id_BPF_FUNC_send_signal : bpf_func_id = 109 ; pub const bpf_func_id_BPF_FUNC_tcp_gen_syncookie : bpf_func_id = 110 ; pub const bpf_func_id_BPF_FUNC_skb_output : bpf_func_id = 111 ; pub const bpf_func_id_BPF_FUNC_probe_read_user : bpf_func_id = 112 ; pub const bpf_func_id_BPF_FUNC_probe_read_kernel : bpf_func_id = 113 ; pub const bpf_func_id_BPF_FUNC_probe_read_user_str : bpf_func_id = 114 ; pub const bpf_func_id_BPF_FUNC_probe_read_kernel_str : bpf_func_id = 115 ; pub const bpf_func_id_BPF_FUNC_tcp_send_ack : bpf_func_id = 116 ; pub const bpf_func_id_BPF_FUNC_send_signal_thread : bpf_func_id = 117 ; pub const bpf_func_id_BPF_FUNC_jiffies64 : bpf_func_id = 118 ; pub const bpf_func_id_BPF_FUNC_read_branch_records : bpf_func_id = 119 ; pub const bpf_func_id_BPF_FUNC_get_ns_current_pid_tgid : bpf_func_id = 120 ; pub const bpf_func_id_BPF_FUNC_xdp_output : bpf_func_id = 121 ; pub const bpf_func_id_BPF_FUNC_get_netns_cookie : bpf_func_id = 122 ; pub const bpf_func_id_BPF_FUNC_get_current_ancestor_cgroup_id : bpf_func_id = 123 ; pub const bpf_func_id_BPF_FUNC_sk_assign : bpf_func_id = 124 ; pub const bpf_func_id_BPF_FUNC_ktime_get_boot_ns : bpf_func_id = 125 ; pub const bpf_func_id_BPF_FUNC_seq_printf : bpf_func_id = 126 ; pub const bpf_func_id_BPF_FUNC_seq_write : bpf_func_id = 127 ; pub const bpf_func_id_BPF_FUNC_sk_cgroup_id : bpf_func_id = 128 ; pub const bpf_func_id_BPF_FUNC_sk_ancestor_cgroup_id : bpf_func_id = 129 ; pub const bpf_func_id_BPF_FUNC_ringbuf_output : bpf_func_id = 130 ; pub const bpf_func_id_BPF_FUNC_ringbuf_reserve : bpf_func_id = 131 ; pub const bpf_func_id_BPF_FUNC_ringbuf_submit : bpf_func_id = 132 ; pub const bpf_func_id_BPF_FUNC_ringbuf_discard : bpf_func_id = 133 ; pub const bpf_func_id_BPF_FUNC_ringbuf_query : bpf_func_id = 134 ; pub const bpf_func_id_BPF_FUNC_csum_level : bpf_func_id = 135 ; pub const bpf_func_id_BPF_FUNC_skc_to_tcp6_sock : bpf_func_id = 136 ; pub const bpf_func_id_BPF_FUNC_skc_to_tcp_sock : bpf_func_id = 137 ; pub const bpf_func_id_BPF_FUNC_skc_to_tcp_timewait_sock : bpf_func_id = 138 ; pub const bpf_func_id_BPF_FUNC_skc_to_tcp_request_sock : bpf_func_id = 139 ; pub const bpf_func_id_BPF_FUNC_skc_to_udp6_sock : bpf_func_id = 140 ; pub const bpf_func_id_BPF_FUNC_get_task_stack : bpf_func_id = 141 ; pub const bpf_func_id_BPF_FUNC_load_hdr_opt : bpf_func_id = 142 ; pub const bpf_func_id_BPF_FUNC_store_hdr_opt : bpf_func_id = 143 ; pub const bpf_func_id_BPF_FUNC_reserve_hdr_opt : bpf_func_id = 144 ; pub const bpf_func_id_BPF_FUNC_inode_storage_get : bpf_func_id = 145 ; pub const bpf_func_id_BPF_FUNC_inode_storage_delete : bpf_func_id = 146 ; pub const bpf_func_id_BPF_FUNC_d_path : bpf_func_id = 147 ; pub const bpf_func_id_BPF_FUNC_copy_from_user : bpf_func_id = 148 ; pub const bpf_func_id_BPF_FUNC_snprintf_btf : bpf_func_id = 149 ; pub const bpf_func_id_BPF_FUNC_seq_printf_btf : bpf_func_id = 150 ; pub const bpf_func_id_BPF_FUNC_skb_cgroup_classid : bpf_func_id = 151 ; pub const bpf_func_id_BPF_FUNC_redirect_neigh : bpf_func_id = 152 ; pub const bpf_func_id_BPF_FUNC_per_cpu_ptr : bpf_func_id = 153 ; pub const bpf_func_id_BPF_FUNC_this_cpu_ptr : bpf_func_id = 154 ; pub const bpf_func_id_BPF_FUNC_redirect_peer : bpf_func_id = 155 ; pub const bpf_func_id_BPF_FUNC_task_storage_get : bpf_func_id = 156 ; pub const bpf_func_id_BPF_FUNC_task_storage_delete : bpf_func_id = 157 ; pub const bpf_func_id_BPF_FUNC_get_current_task_btf : bpf_func_id = 158 ; pub const bpf_func_id_BPF_FUNC_bprm_opts_set : bpf_func_id = 159 ; pub const bpf_func_id_BPF_FUNC_ktime_get_coarse_ns : bpf_func_id = 160 ; pub const bpf_func_id_BPF_FUNC_ima_inode_hash : bpf_func_id = 161 ; pub const bpf_func_id_BPF_FUNC_sock_from_file : bpf_func_id = 162 ; pub const bpf_func_id_BPF_FUNC_check_mtu : bpf_func_id = 163 ; pub const bpf_func_id_BPF_FUNC_for_each_map_elem : bpf_func_id = 164 ; pub const bpf_func_id_BPF_FUNC_snprintf : bpf_func_id = 165 ; pub const bpf_func_id___BPF_FUNC_MAX_ID : bpf_func_id = 166 ; pub type bpf_func_id = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_func_info { pub insn_off : __u32 , pub type_id : __u32 , } # [test] fn bindgen_test_layout_bpf_func_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_info > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_func_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_info > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_func_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_info > ())) . insn_off as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_info) , "::" , stringify ! (insn_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_info > ())) . type_id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_func_info) , "::" , stringify ! (type_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_line_info { pub insn_off : __u32 , pub file_name_off : __u32 , pub line_off : __u32 , pub line_col : __u32 , } # [test] fn bindgen_test_layout_bpf_line_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_line_info > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_line_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_line_info > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_line_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_line_info > ())) . insn_off as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_line_info) , "::" , stringify ! (insn_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_line_info > ())) . file_name_off as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_line_info) , "::" , stringify ! (file_name_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_line_info > ())) . line_off as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_line_info) , "::" , stringify ! (line_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_line_info > ())) . line_col as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_line_info) , "::" , stringify ! (line_col))) ; } pub type bpf_iter_init_seq_priv_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : * mut bpf_iter_aux_info) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_iter_aux_info { pub map : * mut bpf_map , } # [test] fn bindgen_test_layout_bpf_iter_aux_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_iter_aux_info > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_iter_aux_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_iter_aux_info > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_iter_aux_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_iter_aux_info > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_iter_aux_info) , "::" , stringify ! (map))) ; } pub type bpf_iter_fini_seq_priv_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_iter_seq_info { pub seq_ops : * const seq_operations , pub init_seq_private : bpf_iter_init_seq_priv_t , pub fini_seq_private : bpf_iter_fini_seq_priv_t , pub seq_priv_size : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_bpf_iter_seq_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_iter_seq_info > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_iter_seq_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_iter_seq_info > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_iter_seq_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_iter_seq_info > ())) . seq_ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_iter_seq_info) , "::" , stringify ! (seq_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_iter_seq_info > ())) . init_seq_private as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_iter_seq_info) , "::" , stringify ! (init_seq_private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_iter_seq_info > ())) . fini_seq_private as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_iter_seq_info) , "::" , stringify ! (fini_seq_private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_iter_seq_info > ())) . seq_priv_size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_iter_seq_info) , "::" , stringify ! (seq_priv_size))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_map_ops { pub map_alloc_check : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_attr) -> :: cty :: c_int > , pub map_alloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_attr) -> * mut bpf_map > , pub map_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut file) > , pub map_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map) > , pub map_get_next_key : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub map_release_uref : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map) > , pub map_lookup_elem_sys_only : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void) -> * mut :: cty :: c_void > , pub map_lookup_batch : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * const bpf_attr , arg3 : * mut bpf_attr) -> :: cty :: c_int > , pub map_lookup_and_delete_batch : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * const bpf_attr , arg3 : * mut bpf_attr) -> :: cty :: c_int > , pub map_update_batch : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * const bpf_attr , arg3 : * mut bpf_attr) -> :: cty :: c_int > , pub map_delete_batch : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * const bpf_attr , arg3 : * mut bpf_attr) -> :: cty :: c_int > , pub map_lookup_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void) -> * mut :: cty :: c_void > , pub map_update_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void , arg4 : _cargo_bpf_u64) -> :: cty :: c_int > , pub map_delete_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub map_push_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void , arg3 : _cargo_bpf_u64) -> :: cty :: c_int > , pub map_pop_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub map_peek_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub map_fd_get_ptr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut file , arg3 : :: cty :: c_int) -> * mut :: cty :: c_void > , pub map_fd_put_ptr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , pub map_gen_lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut bpf_insn) -> :: cty :: c_int > , pub map_fd_sys_lookup_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) -> _cargo_bpf_u32 > , pub map_seq_show_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void , arg3 : * mut seq_file) > , pub map_check_btf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_map , arg2 : * const btf , arg3 : * const btf_type , arg4 : * const btf_type) -> :: cty :: c_int > , pub map_poke_track : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut bpf_prog_aux) -> :: cty :: c_int > , pub map_poke_untrack : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut bpf_prog_aux) > , pub map_poke_run : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : _cargo_bpf_u32 , arg3 : * mut bpf_prog , arg4 : * mut bpf_prog) > , pub map_direct_value_addr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_map , arg2 : * mut _cargo_bpf_u64 , arg3 : _cargo_bpf_u32) -> :: cty :: c_int > , pub map_direct_value_meta : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_map , arg2 : _cargo_bpf_u64 , arg3 : * mut _cargo_bpf_u32) -> :: cty :: c_int > , pub map_mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut vm_area_struct) -> :: cty :: c_int > , pub map_poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut file , arg3 : * mut poll_table_struct) -> __poll_t > , pub map_local_storage_charge : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_local_storage_map , arg2 : * mut :: cty :: c_void , arg3 : _cargo_bpf_u32) -> :: cty :: c_int > , pub map_local_storage_uncharge : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_local_storage_map , arg2 : * mut :: cty :: c_void , arg3 : _cargo_bpf_u32) > , pub map_owner_storage_ptr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) -> * mut * mut bpf_local_storage > , pub map_redirect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u64) -> :: cty :: c_int > , pub map_meta_equal : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_map , arg2 : * const bpf_map) -> bool_ > , pub map_set_for_each_callback_args : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_verifier_env , arg2 : * mut bpf_func_state , arg3 : * mut bpf_func_state) -> :: cty :: c_int > , pub map_for_each_callback : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_map , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void , arg4 : _cargo_bpf_u64) -> :: cty :: c_int > , pub map_btf_name : * const :: cty :: c_char , pub map_btf_id : * mut :: cty :: c_int , pub iter_seq_info : * const bpf_iter_seq_info , } # [test] fn bindgen_test_layout_bpf_map_ops () { assert_eq ! (:: core :: mem :: size_of :: < bpf_map_ops > () , 320usize , concat ! ("Size of: " , stringify ! (bpf_map_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_map_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_map_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_alloc_check as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_alloc_check))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_alloc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_release as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_free as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_get_next_key as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_get_next_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_release_uref as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_release_uref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_lookup_elem_sys_only as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_lookup_elem_sys_only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_lookup_batch as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_lookup_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_lookup_and_delete_batch as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_lookup_and_delete_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_update_batch as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_update_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_delete_batch as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_delete_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_lookup_elem as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_lookup_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_update_elem as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_update_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_delete_elem as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_delete_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_push_elem as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_push_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_pop_elem as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_pop_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_peek_elem as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_peek_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_fd_get_ptr as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_fd_get_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_fd_put_ptr as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_fd_put_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_gen_lookup as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_gen_lookup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_fd_sys_lookup_elem as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_fd_sys_lookup_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_seq_show_elem as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_seq_show_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_check_btf as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_check_btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_poke_track as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_poke_track))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_poke_untrack as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_poke_untrack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_poke_run as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_poke_run))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_direct_value_addr as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_direct_value_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_direct_value_meta as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_direct_value_meta))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_mmap as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_poll as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_local_storage_charge as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_local_storage_charge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_local_storage_uncharge as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_local_storage_uncharge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_owner_storage_ptr as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_owner_storage_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_redirect as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_redirect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_meta_equal as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_meta_equal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_set_for_each_callback_args as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_set_for_each_callback_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_for_each_callback as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_for_each_callback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_btf_name as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_btf_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . map_btf_id as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (map_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_ops > ())) . iter_seq_info as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (bpf_map_ops) , "::" , stringify ! (iter_seq_info))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_map { pub ops : * const bpf_map_ops , pub inner_map_meta : * mut bpf_map , pub security : * mut :: cty :: c_void , pub map_type : bpf_map_type , pub key_size : _cargo_bpf_u32 , pub value_size : _cargo_bpf_u32 , pub max_entries : _cargo_bpf_u32 , pub map_flags : _cargo_bpf_u32 , pub spin_lock_off : :: cty :: c_int , pub id : _cargo_bpf_u32 , pub numa_node : :: cty :: c_int , pub btf_key_type_id : _cargo_bpf_u32 , pub btf_value_type_id : _cargo_bpf_u32 , pub btf : * mut btf , pub memcg : * mut mem_cgroup , pub name : [:: cty :: c_char ; 16usize] , pub btf_vmlinux_value_type_id : _cargo_bpf_u32 , pub bypass_spec_v1 : bool_ , pub frozen : bool_ , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub refcnt : atomic64_t , pub usercnt : atomic64_t , pub work : work_struct , pub freeze_mutex : mutex , pub writecnt : atomic64_t , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [test] fn bindgen_test_layout_bpf_map () { assert_eq ! (:: core :: mem :: size_of :: < bpf_map > () , 256usize , concat ! ("Size of: " , stringify ! (bpf_map))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_map > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . inner_map_meta as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (inner_map_meta))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . security as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . map_type as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (map_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . key_size as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (key_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . value_size as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (value_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . max_entries as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (max_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . map_flags as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (map_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . spin_lock_off as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (spin_lock_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . id as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . numa_node as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (numa_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . btf_key_type_id as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (btf_key_type_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . btf_value_type_id as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (btf_value_type_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . btf as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . memcg as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (memcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . name as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . btf_vmlinux_value_type_id as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (btf_vmlinux_value_type_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . bypass_spec_v1 as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (bypass_spec_v1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . frozen as * const _ as usize } , 101usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (frozen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . refcnt as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . usercnt as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (usercnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . work as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . freeze_mutex as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (freeze_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map > ())) . writecnt as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (bpf_map) , "::" , stringify ! (writecnt))) ; } impl bpf_map { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct btf_header { pub magic : __u16 , pub version : __u8 , pub flags : __u8 , pub hdr_len : __u32 , pub type_off : __u32 , pub type_len : __u32 , pub str_off : __u32 , pub str_len : __u32 , } # [test] fn bindgen_test_layout_btf_header () { assert_eq ! (:: core :: mem :: size_of :: < btf_header > () , 24usize , concat ! ("Size of: " , stringify ! (btf_header))) ; assert_eq ! (:: core :: mem :: align_of :: < btf_header > () , 4usize , concat ! ("Alignment of " , stringify ! (btf_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . magic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (magic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . version as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . flags as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . hdr_len as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (hdr_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . type_off as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (type_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . type_len as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (type_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . str_off as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (str_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_header > ())) . str_len as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (btf_header) , "::" , stringify ! (str_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct btf { pub data : * mut :: cty :: c_void , pub types : * mut * mut btf_type , pub resolved_ids : * mut _cargo_bpf_u32 , pub resolved_sizes : * mut _cargo_bpf_u32 , pub strings : * const :: cty :: c_char , pub nohdr_data : * mut :: cty :: c_void , pub hdr : btf_header , pub nr_types : _cargo_bpf_u32 , pub types_size : _cargo_bpf_u32 , pub data_size : _cargo_bpf_u32 , pub refcnt : refcount_t , pub id : _cargo_bpf_u32 , pub rcu : callback_head , pub base_btf : * mut btf , pub start_id : _cargo_bpf_u32 , pub start_str_off : _cargo_bpf_u32 , pub name : [:: cty :: c_char ; 56usize] , pub kernel_btf : bool_ , } # [test] fn bindgen_test_layout_btf () { assert_eq ! (:: core :: mem :: size_of :: < btf > () , 192usize , concat ! ("Size of: " , stringify ! (btf))) ; assert_eq ! (:: core :: mem :: align_of :: < btf > () , 8usize , concat ! ("Alignment of " , stringify ! (btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . types as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (types))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . resolved_ids as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (resolved_ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . resolved_sizes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (resolved_sizes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . strings as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . nohdr_data as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (nohdr_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . hdr as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . nr_types as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (nr_types))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . types_size as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (types_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . data_size as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (data_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . refcnt as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . id as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . rcu as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . base_btf as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (base_btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . start_id as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (start_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . start_str_off as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (start_str_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . name as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf > ())) . kernel_btf as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (btf) , "::" , stringify ! (kernel_btf))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct btf_type { pub name_off : __u32 , pub info : __u32 , pub __bindgen_anon_1 : btf_type__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union btf_type__bindgen_ty_1 { pub size : __u32 , pub type_ : __u32 , } # [test] fn bindgen_test_layout_btf_type__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < btf_type__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (btf_type__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < btf_type__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (btf_type__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_type__bindgen_ty_1 > ())) . size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_type__bindgen_ty_1) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_type__bindgen_ty_1 > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_type__bindgen_ty_1) , "::" , stringify ! (type_))) ; } # [test] fn bindgen_test_layout_btf_type () { assert_eq ! (:: core :: mem :: size_of :: < btf_type > () , 12usize , concat ! ("Size of: " , stringify ! (btf_type))) ; assert_eq ! (:: core :: mem :: align_of :: < btf_type > () , 4usize , concat ! ("Alignment of " , stringify ! (btf_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_type > ())) . name_off as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_type) , "::" , stringify ! (name_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_type > ())) . info as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (btf_type) , "::" , stringify ! (info))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_ksym { pub start : :: cty :: c_ulong , pub end : :: cty :: c_ulong , pub name : [:: cty :: c_char ; 128usize] , pub lnode : list_head , pub tnode : latch_tree_node , pub prog : bool_ , } # [test] fn bindgen_test_layout_bpf_ksym () { assert_eq ! (:: core :: mem :: size_of :: < bpf_ksym > () , 216usize , concat ! ("Size of: " , stringify ! (bpf_ksym))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_ksym > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_ksym))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ksym > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_ksym) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ksym > ())) . end as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_ksym) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ksym > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_ksym) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ksym > ())) . lnode as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bpf_ksym) , "::" , stringify ! (lnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ksym > ())) . tnode as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bpf_ksym) , "::" , stringify ! (tnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ksym > ())) . prog as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (bpf_ksym) , "::" , stringify ! (prog))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_prog_aux { pub refcnt : atomic64_t , pub used_map_cnt : _cargo_bpf_u32 , pub used_btf_cnt : _cargo_bpf_u32 , pub max_ctx_offset : _cargo_bpf_u32 , pub max_pkt_offset : _cargo_bpf_u32 , pub max_tp_access : _cargo_bpf_u32 , pub stack_depth : _cargo_bpf_u32 , pub id : _cargo_bpf_u32 , pub func_cnt : _cargo_bpf_u32 , pub func_idx : _cargo_bpf_u32 , pub attach_btf_id : _cargo_bpf_u32 , pub ctx_arg_info_size : _cargo_bpf_u32 , pub max_rdonly_access : _cargo_bpf_u32 , pub max_rdwr_access : _cargo_bpf_u32 , pub attach_btf : * mut btf , pub ctx_arg_info : * const bpf_ctx_arg_aux , pub dst_mutex : mutex , pub dst_prog : * mut bpf_prog , pub dst_trampoline : * mut bpf_trampoline , pub saved_dst_prog_type : bpf_prog_type , pub saved_dst_attach_type : bpf_attach_type , pub verifier_zext : bool_ , pub offload_requested : bool_ , pub attach_btf_trace : bool_ , pub func_proto_unreliable : bool_ , pub sleepable : bool_ , pub tail_call_reachable : bool_ , pub tramp_hlist : hlist_node , pub attach_func_proto : * const btf_type , pub attach_func_name : * const :: cty :: c_char , pub func : * mut * mut bpf_prog , pub jit_data : * mut :: cty :: c_void , pub poke_tab : * mut bpf_jit_poke_descriptor , pub kfunc_tab : * mut bpf_kfunc_desc_tab , pub size_poke_tab : _cargo_bpf_u32 , pub ksym : bpf_ksym , pub ops : * const bpf_prog_ops , pub used_maps : * mut * mut bpf_map , pub used_maps_mutex : mutex , pub used_btfs : * mut btf_mod_pair , pub prog : * mut bpf_prog , pub user : * mut user_struct , pub load_time : _cargo_bpf_u64 , pub cgroup_storage : [* mut bpf_map ; 2usize] , pub name : [:: cty :: c_char ; 16usize] , pub security : * mut :: cty :: c_void , pub offload : * mut bpf_prog_offload , pub btf : * mut btf , pub func_info : * mut bpf_func_info , pub func_info_aux : * mut bpf_func_info_aux , pub linfo : * mut bpf_line_info , pub jited_linfo : * mut * mut :: cty :: c_void , pub func_info_cnt : _cargo_bpf_u32 , pub nr_linfo : _cargo_bpf_u32 , pub linfo_idx : _cargo_bpf_u32 , pub num_exentries : _cargo_bpf_u32 , pub extable : * mut exception_table_entry , pub __bindgen_anon_1 : bpf_prog_aux__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_prog_aux__bindgen_ty_1 { pub work : work_struct , pub rcu : callback_head , } # [test] fn bindgen_test_layout_bpf_prog_aux__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_aux__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_prog_aux__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_aux__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_aux__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux__bindgen_ty_1 > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux__bindgen_ty_1) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_bpf_prog_aux () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_aux > () , 656usize , concat ! ("Size of: " , stringify ! (bpf_prog_aux))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_aux > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . refcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . used_map_cnt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (used_map_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . used_btf_cnt as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (used_btf_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . max_ctx_offset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (max_ctx_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . max_pkt_offset as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (max_pkt_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . max_tp_access as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (max_tp_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . stack_depth as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (stack_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . id as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func_cnt as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func_idx as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . attach_btf_id as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (attach_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . ctx_arg_info_size as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (ctx_arg_info_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . max_rdonly_access as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (max_rdonly_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . max_rdwr_access as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (max_rdwr_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . attach_btf as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (attach_btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . ctx_arg_info as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (ctx_arg_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . dst_mutex as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (dst_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . dst_prog as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (dst_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . dst_trampoline as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (dst_trampoline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . saved_dst_prog_type as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (saved_dst_prog_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . saved_dst_attach_type as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (saved_dst_attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . verifier_zext as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (verifier_zext))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . offload_requested as * const _ as usize } , 137usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (offload_requested))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . attach_btf_trace as * const _ as usize } , 138usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (attach_btf_trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func_proto_unreliable as * const _ as usize } , 139usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func_proto_unreliable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . sleepable as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (sleepable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . tail_call_reachable as * const _ as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (tail_call_reachable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . tramp_hlist as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (tramp_hlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . attach_func_proto as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (attach_func_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . attach_func_name as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (attach_func_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . jit_data as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (jit_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . poke_tab as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (poke_tab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . kfunc_tab as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (kfunc_tab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . size_poke_tab as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (size_poke_tab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . ksym as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (ksym))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . ops as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . used_maps as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (used_maps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . used_maps_mutex as * const _ as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (used_maps_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . used_btfs as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (used_btfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . prog as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . user as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . load_time as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (load_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . cgroup_storage as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (cgroup_storage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . name as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . security as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . offload as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (offload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . btf as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func_info as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func_info_aux as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func_info_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . linfo as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (linfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . jited_linfo as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (jited_linfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . func_info_cnt as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (func_info_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . nr_linfo as * const _ as usize } , 604usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (nr_linfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . linfo_idx as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (linfo_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . num_exentries as * const _ as usize } , 612usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (num_exentries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_aux > ())) . extable as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_aux) , "::" , stringify ! (extable))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sock_filter { pub code : __u16 , pub jt : __u8 , pub jf : __u8 , pub k : __u32 , } # [test] fn bindgen_test_layout_sock_filter () { assert_eq ! (:: core :: mem :: size_of :: < sock_filter > () , 8usize , concat ! ("Size of: " , stringify ! (sock_filter))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_filter > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_filter > ())) . code as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_filter) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_filter > ())) . jt as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sock_filter) , "::" , stringify ! (jt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_filter > ())) . jf as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (sock_filter) , "::" , stringify ! (jf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_filter > ())) . k as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sock_filter) , "::" , stringify ! (k))) ; } # [repr (C)] # [derive (Debug)] pub struct bpf_prog { pub pages : _cargo_bpf_u16 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub type_ : bpf_prog_type , pub expected_attach_type : bpf_attach_type , pub len : _cargo_bpf_u32 , pub jited_len : _cargo_bpf_u32 , pub tag : [_cargo_bpf_u8 ; 8usize] , pub stats : * mut bpf_prog_stats , pub active : * mut :: cty :: c_int , pub bpf_func : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_void , arg2 : * const bpf_insn) -> :: cty :: c_uint > , pub aux : * mut bpf_prog_aux , pub orig_prog : * mut sock_fprog_kern , pub insns : __IncompleteArrayField < sock_filter > , pub insnsi : __IncompleteArrayField < bpf_insn > , } # [test] fn bindgen_test_layout_bpf_prog () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog > () , 72usize , concat ! ("Size of: " , stringify ! (bpf_prog))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . pages as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . type_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . expected_attach_type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (expected_attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . len as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . jited_len as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (jited_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . tag as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . stats as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . active as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . bpf_func as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (bpf_func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . aux as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . orig_prog as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (orig_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . insns as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (insns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog > ())) . insnsi as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_prog) , "::" , stringify ! (insnsi))) ; } impl bpf_prog { # [inline] pub fn jited (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u16) } } # [inline] pub fn set_jited (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn jit_requested (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u16) } } # [inline] pub fn set_jit_requested (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn gpl_compatible (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u16) } } # [inline] pub fn set_gpl_compatible (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn cb_access (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u16) } } # [inline] pub fn set_cb_access (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn dst_needed (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u16) } } # [inline] pub fn set_dst_needed (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn blinded (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u16) } } # [inline] pub fn set_blinded (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn is_func (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u16) } } # [inline] pub fn set_is_func (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn kprobe_override (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (7usize , 1u8) as u16) } } # [inline] pub fn set_kprobe_override (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn has_callchain_buf (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u16) } } # [inline] pub fn set_has_callchain_buf (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn enforce_expected_attach_type (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u16) } } # [inline] pub fn set_enforce_expected_attach_type (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn call_get_stack (& self) -> _cargo_bpf_u16 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (10usize , 1u8) as u16) } } # [inline] pub fn set_call_get_stack (& mut self , val : _cargo_bpf_u16) { unsafe { let val : u16 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (jited : _cargo_bpf_u16 , jit_requested : _cargo_bpf_u16 , gpl_compatible : _cargo_bpf_u16 , cb_access : _cargo_bpf_u16 , dst_needed : _cargo_bpf_u16 , blinded : _cargo_bpf_u16 , is_func : _cargo_bpf_u16 , kprobe_override : _cargo_bpf_u16 , has_callchain_buf : _cargo_bpf_u16 , enforce_expected_attach_type : _cargo_bpf_u16 , call_get_stack : _cargo_bpf_u16) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let jited : u16 = unsafe { :: core :: mem :: transmute (jited) } ; jited as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let jit_requested : u16 = unsafe { :: core :: mem :: transmute (jit_requested) } ; jit_requested as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let gpl_compatible : u16 = unsafe { :: core :: mem :: transmute (gpl_compatible) } ; gpl_compatible as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let cb_access : u16 = unsafe { :: core :: mem :: transmute (cb_access) } ; cb_access as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let dst_needed : u16 = unsafe { :: core :: mem :: transmute (dst_needed) } ; dst_needed as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let blinded : u16 = unsafe { :: core :: mem :: transmute (blinded) } ; blinded as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let is_func : u16 = unsafe { :: core :: mem :: transmute (is_func) } ; is_func as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let kprobe_override : u16 = unsafe { :: core :: mem :: transmute (kprobe_override) } ; kprobe_override as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let has_callchain_buf : u16 = unsafe { :: core :: mem :: transmute (has_callchain_buf) } ; has_callchain_buf as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let enforce_expected_attach_type : u16 = unsafe { :: core :: mem :: transmute (enforce_expected_attach_type) } ; enforce_expected_attach_type as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let call_get_stack : u16 = unsafe { :: core :: mem :: transmute (call_get_stack) } ; call_get_stack as u64 }) ; __bindgen_bitfield_unit } } pub const bpf_arg_type_ARG_DONTCARE : bpf_arg_type = 0 ; pub const bpf_arg_type_ARG_CONST_MAP_PTR : bpf_arg_type = 1 ; pub const bpf_arg_type_ARG_PTR_TO_MAP_KEY : bpf_arg_type = 2 ; pub const bpf_arg_type_ARG_PTR_TO_MAP_VALUE : bpf_arg_type = 3 ; pub const bpf_arg_type_ARG_PTR_TO_UNINIT_MAP_VALUE : bpf_arg_type = 4 ; pub const bpf_arg_type_ARG_PTR_TO_MAP_VALUE_OR_NULL : bpf_arg_type = 5 ; pub const bpf_arg_type_ARG_PTR_TO_MEM : bpf_arg_type = 6 ; pub const bpf_arg_type_ARG_PTR_TO_MEM_OR_NULL : bpf_arg_type = 7 ; pub const bpf_arg_type_ARG_PTR_TO_UNINIT_MEM : bpf_arg_type = 8 ; pub const bpf_arg_type_ARG_CONST_SIZE : bpf_arg_type = 9 ; pub const bpf_arg_type_ARG_CONST_SIZE_OR_ZERO : bpf_arg_type = 10 ; pub const bpf_arg_type_ARG_PTR_TO_CTX : bpf_arg_type = 11 ; pub const bpf_arg_type_ARG_PTR_TO_CTX_OR_NULL : bpf_arg_type = 12 ; pub const bpf_arg_type_ARG_ANYTHING : bpf_arg_type = 13 ; pub const bpf_arg_type_ARG_PTR_TO_SPIN_LOCK : bpf_arg_type = 14 ; pub const bpf_arg_type_ARG_PTR_TO_SOCK_COMMON : bpf_arg_type = 15 ; pub const bpf_arg_type_ARG_PTR_TO_INT : bpf_arg_type = 16 ; pub const bpf_arg_type_ARG_PTR_TO_LONG : bpf_arg_type = 17 ; pub const bpf_arg_type_ARG_PTR_TO_SOCKET : bpf_arg_type = 18 ; pub const bpf_arg_type_ARG_PTR_TO_SOCKET_OR_NULL : bpf_arg_type = 19 ; pub const bpf_arg_type_ARG_PTR_TO_BTF_ID : bpf_arg_type = 20 ; pub const bpf_arg_type_ARG_PTR_TO_ALLOC_MEM : bpf_arg_type = 21 ; pub const bpf_arg_type_ARG_PTR_TO_ALLOC_MEM_OR_NULL : bpf_arg_type = 22 ; pub const bpf_arg_type_ARG_CONST_ALLOC_SIZE_OR_ZERO : bpf_arg_type = 23 ; pub const bpf_arg_type_ARG_PTR_TO_BTF_ID_SOCK_COMMON : bpf_arg_type = 24 ; pub const bpf_arg_type_ARG_PTR_TO_PERCPU_BTF_ID : bpf_arg_type = 25 ; pub const bpf_arg_type_ARG_PTR_TO_FUNC : bpf_arg_type = 26 ; pub const bpf_arg_type_ARG_PTR_TO_STACK_OR_NULL : bpf_arg_type = 27 ; pub const bpf_arg_type_ARG_PTR_TO_CONST_STR : bpf_arg_type = 28 ; pub const bpf_arg_type___BPF_ARG_TYPE_MAX : bpf_arg_type = 29 ; pub type bpf_arg_type = :: cty :: c_uint ; pub const bpf_return_type_RET_INTEGER : bpf_return_type = 0 ; pub const bpf_return_type_RET_VOID : bpf_return_type = 1 ; pub const bpf_return_type_RET_PTR_TO_MAP_VALUE : bpf_return_type = 2 ; pub const bpf_return_type_RET_PTR_TO_MAP_VALUE_OR_NULL : bpf_return_type = 3 ; pub const bpf_return_type_RET_PTR_TO_SOCKET_OR_NULL : bpf_return_type = 4 ; pub const bpf_return_type_RET_PTR_TO_TCP_SOCK_OR_NULL : bpf_return_type = 5 ; pub const bpf_return_type_RET_PTR_TO_SOCK_COMMON_OR_NULL : bpf_return_type = 6 ; pub const bpf_return_type_RET_PTR_TO_ALLOC_MEM_OR_NULL : bpf_return_type = 7 ; pub const bpf_return_type_RET_PTR_TO_BTF_ID_OR_NULL : bpf_return_type = 8 ; pub const bpf_return_type_RET_PTR_TO_MEM_OR_BTF_ID_OR_NULL : bpf_return_type = 9 ; pub const bpf_return_type_RET_PTR_TO_MEM_OR_BTF_ID : bpf_return_type = 10 ; pub const bpf_return_type_RET_PTR_TO_BTF_ID : bpf_return_type = 11 ; pub type bpf_return_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_func_proto { pub func : :: core :: option :: Option < unsafe extern "C" fn (arg1 : _cargo_bpf_u64 , arg2 : _cargo_bpf_u64 , arg3 : _cargo_bpf_u64 , arg4 : _cargo_bpf_u64 , arg5 : _cargo_bpf_u64) -> _cargo_bpf_u64 > , pub gpl_only : bool_ , pub pkt_access : bool_ , pub ret_type : bpf_return_type , pub __bindgen_anon_1 : bpf_func_proto__bindgen_ty_1 , pub __bindgen_anon_2 : bpf_func_proto__bindgen_ty_2 , pub ret_btf_id : * mut :: cty :: c_int , pub allowed : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_prog) -> bool_ > , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_func_proto__bindgen_ty_1 { pub __bindgen_anon_1 : bpf_func_proto__bindgen_ty_1__bindgen_ty_1 , pub arg_type : [bpf_arg_type ; 5usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_func_proto__bindgen_ty_1__bindgen_ty_1 { pub arg1_type : bpf_arg_type , pub arg2_type : bpf_arg_type , pub arg3_type : bpf_arg_type , pub arg4_type : bpf_arg_type , pub arg5_type : bpf_arg_type , } # [test] fn bindgen_test_layout_bpf_func_proto__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > ())) . arg1_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (arg1_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > ())) . arg2_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (arg2_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > ())) . arg3_type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (arg3_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > ())) . arg4_type as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (arg4_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_1__bindgen_ty_1 > ())) . arg5_type as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (arg5_type))) ; } # [test] fn bindgen_test_layout_bpf_func_proto__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_proto__bindgen_ty_1 > () , 20usize , concat ! ("Size of: " , stringify ! (bpf_func_proto__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_proto__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_func_proto__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_1 > ())) . arg_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_1) , "::" , stringify ! (arg_type))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_func_proto__bindgen_ty_2 { pub __bindgen_anon_1 : bpf_func_proto__bindgen_ty_2__bindgen_ty_1 , pub arg_btf_id : [* mut _cargo_bpf_u32 ; 5usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_func_proto__bindgen_ty_2__bindgen_ty_1 { pub arg1_btf_id : * mut _cargo_bpf_u32 , pub arg2_btf_id : * mut _cargo_bpf_u32 , pub arg3_btf_id : * mut _cargo_bpf_u32 , pub arg4_btf_id : * mut _cargo_bpf_u32 , pub arg5_btf_id : * mut _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_bpf_func_proto__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > ())) . arg1_btf_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (arg1_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > ())) . arg2_btf_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (arg2_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > ())) . arg3_btf_id as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (arg3_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > ())) . arg4_btf_id as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (arg4_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_2__bindgen_ty_1 > ())) . arg5_btf_id as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (arg5_btf_id))) ; } # [test] fn bindgen_test_layout_bpf_func_proto__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_proto__bindgen_ty_2 > () , 40usize , concat ! ("Size of: " , stringify ! (bpf_func_proto__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_proto__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_func_proto__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto__bindgen_ty_2 > ())) . arg_btf_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto__bindgen_ty_2) , "::" , stringify ! (arg_btf_id))) ; } # [test] fn bindgen_test_layout_bpf_func_proto () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_proto > () , 96usize , concat ! ("Size of: " , stringify ! (bpf_func_proto))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_proto > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_func_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto > ())) . func as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto > ())) . gpl_only as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto) , "::" , stringify ! (gpl_only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto > ())) . pkt_access as * const _ as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto) , "::" , stringify ! (pkt_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto > ())) . ret_type as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto) , "::" , stringify ! (ret_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto > ())) . ret_btf_id as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto) , "::" , stringify ! (ret_btf_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_proto > ())) . allowed as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bpf_func_proto) , "::" , stringify ! (allowed))) ; } pub const bpf_access_type_BPF_READ : bpf_access_type = 1 ; pub const bpf_access_type_BPF_WRITE : bpf_access_type = 2 ; pub type bpf_access_type = :: cty :: c_uint ; pub const bpf_reg_type_NOT_INIT : bpf_reg_type = 0 ; pub const bpf_reg_type_SCALAR_VALUE : bpf_reg_type = 1 ; pub const bpf_reg_type_PTR_TO_CTX : bpf_reg_type = 2 ; pub const bpf_reg_type_CONST_PTR_TO_MAP : bpf_reg_type = 3 ; pub const bpf_reg_type_PTR_TO_MAP_VALUE : bpf_reg_type = 4 ; pub const bpf_reg_type_PTR_TO_MAP_VALUE_OR_NULL : bpf_reg_type = 5 ; pub const bpf_reg_type_PTR_TO_STACK : bpf_reg_type = 6 ; pub const bpf_reg_type_PTR_TO_PACKET_META : bpf_reg_type = 7 ; pub const bpf_reg_type_PTR_TO_PACKET : bpf_reg_type = 8 ; pub const bpf_reg_type_PTR_TO_PACKET_END : bpf_reg_type = 9 ; pub const bpf_reg_type_PTR_TO_FLOW_KEYS : bpf_reg_type = 10 ; pub const bpf_reg_type_PTR_TO_SOCKET : bpf_reg_type = 11 ; pub const bpf_reg_type_PTR_TO_SOCKET_OR_NULL : bpf_reg_type = 12 ; pub const bpf_reg_type_PTR_TO_SOCK_COMMON : bpf_reg_type = 13 ; pub const bpf_reg_type_PTR_TO_SOCK_COMMON_OR_NULL : bpf_reg_type = 14 ; pub const bpf_reg_type_PTR_TO_TCP_SOCK : bpf_reg_type = 15 ; pub const bpf_reg_type_PTR_TO_TCP_SOCK_OR_NULL : bpf_reg_type = 16 ; pub const bpf_reg_type_PTR_TO_TP_BUFFER : bpf_reg_type = 17 ; pub const bpf_reg_type_PTR_TO_XDP_SOCK : bpf_reg_type = 18 ; pub const bpf_reg_type_PTR_TO_BTF_ID : bpf_reg_type = 19 ; pub const bpf_reg_type_PTR_TO_BTF_ID_OR_NULL : bpf_reg_type = 20 ; pub const bpf_reg_type_PTR_TO_MEM : bpf_reg_type = 21 ; pub const bpf_reg_type_PTR_TO_MEM_OR_NULL : bpf_reg_type = 22 ; pub const bpf_reg_type_PTR_TO_RDONLY_BUF : bpf_reg_type = 23 ; pub const bpf_reg_type_PTR_TO_RDONLY_BUF_OR_NULL : bpf_reg_type = 24 ; pub const bpf_reg_type_PTR_TO_RDWR_BUF : bpf_reg_type = 25 ; pub const bpf_reg_type_PTR_TO_RDWR_BUF_OR_NULL : bpf_reg_type = 26 ; pub const bpf_reg_type_PTR_TO_PERCPU_BTF_ID : bpf_reg_type = 27 ; pub const bpf_reg_type_PTR_TO_FUNC : bpf_reg_type = 28 ; pub const bpf_reg_type_PTR_TO_MAP_KEY : bpf_reg_type = 29 ; pub const bpf_reg_type___BPF_REG_TYPE_MAX : bpf_reg_type = 30 ; pub type bpf_reg_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_insn_access_aux { pub reg_type : bpf_reg_type , pub __bindgen_anon_1 : bpf_insn_access_aux__bindgen_ty_1 , pub log : * mut bpf_verifier_log , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_insn_access_aux__bindgen_ty_1 { pub ctx_field_size : :: cty :: c_int , pub __bindgen_anon_1 : bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 { pub btf : * mut btf , pub btf_id : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 > ())) . btf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1 > ())) . btf_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_insn_access_aux__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (btf_id))) ; } # [test] fn bindgen_test_layout_bpf_insn_access_aux__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_insn_access_aux__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_insn_access_aux__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_insn_access_aux__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_insn_access_aux__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn_access_aux__bindgen_ty_1 > ())) . ctx_field_size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_insn_access_aux__bindgen_ty_1) , "::" , stringify ! (ctx_field_size))) ; } # [test] fn bindgen_test_layout_bpf_insn_access_aux () { assert_eq ! (:: core :: mem :: size_of :: < bpf_insn_access_aux > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_insn_access_aux))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_insn_access_aux > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_insn_access_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn_access_aux > ())) . reg_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_insn_access_aux) , "::" , stringify ! (reg_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_insn_access_aux > ())) . log as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_insn_access_aux) , "::" , stringify ! (log))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_prog_ops { pub test_run : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_prog , arg2 : * const bpf_attr , arg3 : * mut bpf_attr) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_bpf_prog_ops () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_ops > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_prog_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_ops > ())) . test_run as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_ops) , "::" , stringify ! (test_run))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_verifier_ops { pub get_func_proto : :: core :: option :: Option < unsafe extern "C" fn (arg1 : bpf_func_id , arg2 : * const bpf_prog) -> * const bpf_func_proto > , pub is_valid_access : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int , arg2 : :: cty :: c_int , arg3 : bpf_access_type , arg4 : * const bpf_prog , arg5 : * mut bpf_insn_access_aux) -> bool_ > , pub gen_prologue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_insn , arg2 : bool_ , arg3 : * const bpf_prog) -> :: cty :: c_int > , pub gen_ld_abs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_insn , arg2 : * mut bpf_insn) -> :: cty :: c_int > , pub convert_ctx_access : :: core :: option :: Option < unsafe extern "C" fn (arg1 : bpf_access_type , arg2 : * const bpf_insn , arg3 : * mut bpf_insn , arg4 : * mut bpf_prog , arg5 : * mut _cargo_bpf_u32) -> _cargo_bpf_u32 > , pub btf_struct_access : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_verifier_log , arg2 : * const btf , arg3 : * const btf_type , arg4 : :: cty :: c_int , arg5 : :: cty :: c_int , arg6 : bpf_access_type , arg7 : * mut _cargo_bpf_u32) -> :: cty :: c_int > , pub check_kfunc_call : :: core :: option :: Option < unsafe extern "C" fn (arg1 : _cargo_bpf_u32) -> bool_ > , } # [test] fn bindgen_test_layout_bpf_verifier_ops () { assert_eq ! (:: core :: mem :: size_of :: < bpf_verifier_ops > () , 56usize , concat ! ("Size of: " , stringify ! (bpf_verifier_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_verifier_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_verifier_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . get_func_proto as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (get_func_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . is_valid_access as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (is_valid_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . gen_prologue as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (gen_prologue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . gen_ld_abs as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (gen_ld_abs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . convert_ctx_access as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (convert_ctx_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . btf_struct_access as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (btf_struct_access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_verifier_ops > ())) . check_kfunc_call as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_verifier_ops) , "::" , stringify ! (check_kfunc_call))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_prog_offload { pub prog : * mut bpf_prog , pub netdev : * mut net_device , pub offdev : * mut bpf_offload_dev , pub dev_priv : * mut :: cty :: c_void , pub offloads : list_head , pub dev_state : bool_ , pub opt_failed : bool_ , pub jited_image : * mut :: cty :: c_void , pub jited_len : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_bpf_prog_offload () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_offload > () , 72usize , concat ! ("Size of: " , stringify ! (bpf_prog_offload))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_offload > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_offload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . prog as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . netdev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (netdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . offdev as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (offdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . dev_priv as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (dev_priv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . offloads as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (offloads))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . dev_state as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (dev_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . opt_failed as * const _ as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (opt_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . jited_image as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (jited_image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_offload > ())) . jited_len as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_offload) , "::" , stringify ! (jited_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct btf_func_model { pub ret_size : _cargo_bpf_u8 , pub nr_args : _cargo_bpf_u8 , pub arg_size : [_cargo_bpf_u8 ; 12usize] , } # [test] fn bindgen_test_layout_btf_func_model () { assert_eq ! (:: core :: mem :: size_of :: < btf_func_model > () , 14usize , concat ! ("Size of: " , stringify ! (btf_func_model))) ; assert_eq ! (:: core :: mem :: align_of :: < btf_func_model > () , 1usize , concat ! ("Alignment of " , stringify ! (btf_func_model))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_func_model > ())) . ret_size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_func_model) , "::" , stringify ! (ret_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_func_model > ())) . nr_args as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (btf_func_model) , "::" , stringify ! (nr_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_func_model > ())) . arg_size as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (btf_func_model) , "::" , stringify ! (arg_size))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_tramp_image { pub image : * mut :: cty :: c_void , pub ksym : bpf_ksym , pub pcref : percpu_ref , pub ip_after_call : * mut :: cty :: c_void , pub ip_epilogue : * mut :: cty :: c_void , pub __bindgen_anon_1 : bpf_tramp_image__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_tramp_image__bindgen_ty_1 { pub rcu : callback_head , pub work : work_struct , } # [test] fn bindgen_test_layout_bpf_tramp_image__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_tramp_image__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_tramp_image__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_tramp_image__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_tramp_image__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image__bindgen_ty_1) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image__bindgen_ty_1 > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image__bindgen_ty_1) , "::" , stringify ! (work))) ; } # [test] fn bindgen_test_layout_bpf_tramp_image () { assert_eq ! (:: core :: mem :: size_of :: < bpf_tramp_image > () , 288usize , concat ! ("Size of: " , stringify ! (bpf_tramp_image))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_tramp_image > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_tramp_image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image > ())) . image as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image) , "::" , stringify ! (image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image > ())) . ksym as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image) , "::" , stringify ! (ksym))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image > ())) . pcref as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image) , "::" , stringify ! (pcref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image > ())) . ip_after_call as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image) , "::" , stringify ! (ip_after_call))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_image > ())) . ip_epilogue as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_image) , "::" , stringify ! (ip_epilogue))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_trampoline { pub hlist : hlist_node , pub mutex : mutex , pub refcnt : refcount_t , pub key : _cargo_bpf_u64 , pub func : bpf_trampoline__bindgen_ty_1 , pub extension_prog : * mut bpf_prog , pub progs_hlist : [hlist_head ; 3usize] , pub progs_cnt : [:: cty :: c_int ; 3usize] , pub cur_image : * mut bpf_tramp_image , pub selector : _cargo_bpf_u64 , pub mod_ : * mut module , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_trampoline__bindgen_ty_1 { pub model : btf_func_model , pub addr : * mut :: cty :: c_void , pub ftrace_managed : bool_ , } # [test] fn bindgen_test_layout_bpf_trampoline__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_trampoline__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_trampoline__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_trampoline__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_trampoline__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline__bindgen_ty_1 > ())) . model as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline__bindgen_ty_1) , "::" , stringify ! (model))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline__bindgen_ty_1 > ())) . addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline__bindgen_ty_1 > ())) . ftrace_managed as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline__bindgen_ty_1) , "::" , stringify ! (ftrace_managed))) ; } # [test] fn bindgen_test_layout_bpf_trampoline () { assert_eq ! (:: core :: mem :: size_of :: < bpf_trampoline > () , 168usize , concat ! ("Size of: " , stringify ! (bpf_trampoline))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_trampoline > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_trampoline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . hlist as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (hlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . mutex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . refcnt as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . key as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . func as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . extension_prog as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (extension_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . progs_hlist as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (progs_hlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . progs_cnt as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (progs_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . cur_image as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (cur_image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . selector as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (selector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trampoline > ())) . mod_ as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bpf_trampoline) , "::" , stringify ! (mod_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_func_info_aux { pub linkage : _cargo_bpf_u16 , pub unreliable : bool_ , } # [test] fn bindgen_test_layout_bpf_func_info_aux () { assert_eq ! (:: core :: mem :: size_of :: < bpf_func_info_aux > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_func_info_aux))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_func_info_aux > () , 2usize , concat ! ("Alignment of " , stringify ! (bpf_func_info_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_info_aux > ())) . linkage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_func_info_aux) , "::" , stringify ! (linkage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_func_info_aux > ())) . unreliable as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (bpf_func_info_aux) , "::" , stringify ! (unreliable))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_jit_poke_descriptor { pub tailcall_target : * mut :: cty :: c_void , pub tailcall_bypass : * mut :: cty :: c_void , pub bypass_addr : * mut :: cty :: c_void , pub aux : * mut :: cty :: c_void , pub __bindgen_anon_1 : bpf_jit_poke_descriptor__bindgen_ty_1 , pub tailcall_target_stable : bool_ , pub adj_off : _cargo_bpf_u8 , pub reason : _cargo_bpf_u16 , pub insn_idx : _cargo_bpf_u32 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_jit_poke_descriptor__bindgen_ty_1 { pub tail_call : bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 { pub map : * mut bpf_map , pub key : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1 > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (key))) ; } # [test] fn bindgen_test_layout_bpf_jit_poke_descriptor__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_jit_poke_descriptor__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_jit_poke_descriptor__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor__bindgen_ty_1 > ())) . tail_call as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor__bindgen_ty_1) , "::" , stringify ! (tail_call))) ; } # [test] fn bindgen_test_layout_bpf_jit_poke_descriptor () { assert_eq ! (:: core :: mem :: size_of :: < bpf_jit_poke_descriptor > () , 56usize , concat ! ("Size of: " , stringify ! (bpf_jit_poke_descriptor))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_jit_poke_descriptor > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_jit_poke_descriptor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . tailcall_target as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (tailcall_target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . tailcall_bypass as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (tailcall_bypass))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . bypass_addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (bypass_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . aux as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . tailcall_target_stable as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (tailcall_target_stable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . adj_off as * const _ as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (adj_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . reason as * const _ as usize } , 50usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (reason))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_jit_poke_descriptor > ())) . insn_idx as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (bpf_jit_poke_descriptor) , "::" , stringify ! (insn_idx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_ctx_arg_aux { pub offset : _cargo_bpf_u32 , pub reg_type : bpf_reg_type , pub btf_id : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_bpf_ctx_arg_aux () { assert_eq ! (:: core :: mem :: size_of :: < bpf_ctx_arg_aux > () , 12usize , concat ! ("Size of: " , stringify ! (bpf_ctx_arg_aux))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_ctx_arg_aux > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_ctx_arg_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ctx_arg_aux > ())) . offset as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_ctx_arg_aux) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ctx_arg_aux > ())) . reg_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_ctx_arg_aux) , "::" , stringify ! (reg_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_ctx_arg_aux > ())) . btf_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_ctx_arg_aux) , "::" , stringify ! (btf_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct btf_mod_pair { pub btf : * mut btf , pub module : * mut module , } # [test] fn bindgen_test_layout_btf_mod_pair () { assert_eq ! (:: core :: mem :: size_of :: < btf_mod_pair > () , 16usize , concat ! ("Size of: " , stringify ! (btf_mod_pair))) ; assert_eq ! (:: core :: mem :: align_of :: < btf_mod_pair > () , 8usize , concat ! ("Alignment of " , stringify ! (btf_mod_pair))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_mod_pair > ())) . btf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_mod_pair) , "::" , stringify ! (btf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_mod_pair > ())) . module as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (btf_mod_pair) , "::" , stringify ! (module))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_prog_array_item { pub prog : * mut bpf_prog , pub cgroup_storage : [* mut bpf_cgroup_storage ; 2usize] , } # [test] fn bindgen_test_layout_bpf_prog_array_item () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_array_item > () , 24usize , concat ! ("Size of: " , stringify ! (bpf_prog_array_item))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_array_item > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_array_item))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_array_item > ())) . prog as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_array_item) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_array_item > ())) . cgroup_storage as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_array_item) , "::" , stringify ! (cgroup_storage))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_cgroup_storage { pub __bindgen_anon_1 : bpf_cgroup_storage__bindgen_ty_1 , pub map : * mut bpf_cgroup_storage_map , pub key : bpf_cgroup_storage_key , pub list_map : list_head , pub list_cg : list_head , pub node : rb_node , pub rcu : callback_head , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_cgroup_storage__bindgen_ty_1 { pub buf : * mut bpf_storage_buffer , pub percpu_buf : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_bpf_cgroup_storage__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_cgroup_storage__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_cgroup_storage__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_cgroup_storage__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_cgroup_storage__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage__bindgen_ty_1 > ())) . buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage__bindgen_ty_1) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage__bindgen_ty_1 > ())) . percpu_buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage__bindgen_ty_1) , "::" , stringify ! (percpu_buf))) ; } # [test] fn bindgen_test_layout_bpf_cgroup_storage () { assert_eq ! (:: core :: mem :: size_of :: < bpf_cgroup_storage > () , 104usize , concat ! ("Size of: " , stringify ! (bpf_cgroup_storage))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_cgroup_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_cgroup_storage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage > ())) . map as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage > ())) . key as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage > ())) . list_map as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage) , "::" , stringify ! (list_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage > ())) . list_cg as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage) , "::" , stringify ! (list_cg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage > ())) . node as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage > ())) . rcu as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug)] pub struct bpf_prog_array { pub rcu : callback_head , pub items : __IncompleteArrayField < bpf_prog_array_item > , } # [test] fn bindgen_test_layout_bpf_prog_array () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_array > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_prog_array))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_array > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_array > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_array) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_array > ())) . items as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_array) , "::" , stringify ! (items))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_cgroup_storage_info { pub task : * mut task_struct , pub storage : [* mut bpf_cgroup_storage ; 2usize] , } # [test] fn bindgen_test_layout_bpf_cgroup_storage_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_cgroup_storage_info > () , 24usize , concat ! ("Size of: " , stringify ! (bpf_cgroup_storage_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_cgroup_storage_info > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_cgroup_storage_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage_info > ())) . task as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage_info) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_storage_info > ())) . storage as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_storage_info) , "::" , stringify ! (storage))) ; } # [repr (C)] # [derive (Debug)] pub struct bpf_storage_buffer { pub rcu : callback_head , pub data : __IncompleteArrayField < :: cty :: c_char > , } # [test] fn bindgen_test_layout_bpf_storage_buffer () { assert_eq ! (:: core :: mem :: size_of :: < bpf_storage_buffer > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_storage_buffer))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_storage_buffer > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_storage_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_storage_buffer > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_storage_buffer) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_storage_buffer > ())) . data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_storage_buffer) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct psi_group_cpu { pub seq : seqcount_t , pub tasks : [:: cty :: c_uint ; 4usize] , pub state_mask : _cargo_bpf_u32 , pub times : [_cargo_bpf_u32 ; 7usize] , pub state_start : _cargo_bpf_u64 , pub times_prev : [_cargo_bpf_u32 ; 14usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_psi_group_cpu () { assert_eq ! (:: core :: mem :: size_of :: < psi_group_cpu > () , 128usize , concat ! ("Size of: " , stringify ! (psi_group_cpu))) ; assert_eq ! (:: core :: mem :: align_of :: < psi_group_cpu > () , 8usize , concat ! ("Alignment of " , stringify ! (psi_group_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group_cpu > ())) . seq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (psi_group_cpu) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group_cpu > ())) . tasks as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (psi_group_cpu) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group_cpu > ())) . state_mask as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (psi_group_cpu) , "::" , stringify ! (state_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group_cpu > ())) . times as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (psi_group_cpu) , "::" , stringify ! (times))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group_cpu > ())) . state_start as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (psi_group_cpu) , "::" , stringify ! (state_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < psi_group_cpu > ())) . times_prev as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (psi_group_cpu) , "::" , stringify ! (times_prev))) ; } impl psi_group_cpu { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct cgroup_subsys { pub css_alloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) -> * mut cgroup_subsys_state > , pub css_online : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) -> :: cty :: c_int > , pub css_offline : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) > , pub css_released : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) > , pub css_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) > , pub css_reset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) > , pub css_rstat_flush : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state , arg2 : :: cty :: c_int) > , pub css_extra_stat_show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut cgroup_subsys_state) -> :: cty :: c_int > , pub can_attach : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_taskset) -> :: cty :: c_int > , pub cancel_attach : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_taskset) > , pub attach : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_taskset) > , pub post_attach : :: core :: option :: Option < unsafe extern "C" fn () > , pub can_fork : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : * mut css_set) -> :: cty :: c_int > , pub cancel_fork : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct , arg2 : * mut css_set) > , pub fork : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct) > , pub exit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct) > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut task_struct) > , pub bind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state) > , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub id : :: cty :: c_int , pub name : * const :: cty :: c_char , pub legacy_name : * const :: cty :: c_char , pub root : * mut cgroup_root , pub css_idr : idr , pub cfts : list_head , pub dfl_cftypes : * mut cftype , pub legacy_cftypes : * mut cftype , pub depends_on : :: cty :: c_uint , } # [test] fn bindgen_test_layout_cgroup_subsys () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_subsys > () , 240usize , concat ! ("Size of: " , stringify ! (cgroup_subsys))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_subsys > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_subsys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_alloc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_online as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_offline as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_offline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_released as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_released))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_free as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_reset as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_rstat_flush as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_rstat_flush))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_extra_stat_show as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_extra_stat_show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . can_attach as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (can_attach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . cancel_attach as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (cancel_attach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . attach as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (attach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . post_attach as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (post_attach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . can_fork as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (can_fork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . cancel_fork as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (cancel_fork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . fork as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (fork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . exit as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (exit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . release as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . bind as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . id as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . name as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . legacy_name as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (legacy_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . root as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . css_idr as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (css_idr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . cfts as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (cfts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . dfl_cftypes as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (dfl_cftypes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . legacy_cftypes as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (legacy_cftypes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_subsys > ())) . depends_on as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (cgroup_subsys) , "::" , stringify ! (depends_on))) ; } impl cgroup_subsys { # [inline] pub fn early_init (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_early_init (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn implicit_on_dfl (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_implicit_on_dfl (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn threaded (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_threaded (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (early_init : bool_ , implicit_on_dfl : bool_ , threaded : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let early_init : u8 = unsafe { :: core :: mem :: transmute (early_init) } ; early_init as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let implicit_on_dfl : u8 = unsafe { :: core :: mem :: transmute (implicit_on_dfl) } ; implicit_on_dfl as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let threaded : u8 = unsafe { :: core :: mem :: transmute (threaded) } ; threaded as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_rstat_cpu { pub bsync : u64_stats_sync , pub bstat : cgroup_base_stat , pub last_bstat : cgroup_base_stat , pub updated_children : * mut cgroup , pub updated_next : * mut cgroup , } # [test] fn bindgen_test_layout_cgroup_rstat_cpu () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_rstat_cpu > () , 64usize , concat ! ("Size of: " , stringify ! (cgroup_rstat_cpu))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_rstat_cpu > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_rstat_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_rstat_cpu > ())) . bsync as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_rstat_cpu) , "::" , stringify ! (bsync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_rstat_cpu > ())) . bstat as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_rstat_cpu) , "::" , stringify ! (bstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_rstat_cpu > ())) . last_bstat as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cgroup_rstat_cpu) , "::" , stringify ! (last_bstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_rstat_cpu > ())) . updated_children as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cgroup_rstat_cpu) , "::" , stringify ! (updated_children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_rstat_cpu > ())) . updated_next as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (cgroup_rstat_cpu) , "::" , stringify ! (updated_next))) ; } # [repr (C)] pub struct cgroup_root { pub kf_root : * mut kernfs_root , pub subsys_mask : :: cty :: c_uint , pub hierarchy_id : :: cty :: c_int , pub cgrp : cgroup , pub cgrp_ancestor_id_storage : _cargo_bpf_u64 , pub nr_cgrps : atomic_t , pub root_list : list_head , pub flags : :: cty :: c_uint , pub release_agent_path : [:: cty :: c_char ; 4096usize] , pub name : [:: cty :: c_char ; 64usize] , } # [test] fn bindgen_test_layout_cgroup_root () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_root > () , 7000usize , concat ! ("Size of: " , stringify ! (cgroup_root))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_root > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . kf_root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (kf_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . subsys_mask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (subsys_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . hierarchy_id as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (hierarchy_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . cgrp as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . cgrp_ancestor_id_storage as * const _ as usize } , 2800usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (cgrp_ancestor_id_storage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . nr_cgrps as * const _ as usize } , 2808usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (nr_cgrps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . root_list as * const _ as usize } , 2816usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (root_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . flags as * const _ as usize } , 2832usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . release_agent_path as * const _ as usize } , 2836usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (release_agent_path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_root > ())) . name as * const _ as usize } , 6932usize , concat ! ("Offset of field: " , stringify ! (cgroup_root) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cftype { pub name : [:: cty :: c_char ; 64usize] , pub private : :: cty :: c_ulong , pub max_write_len : size_t , pub flags : :: cty :: c_uint , pub file_offset : :: cty :: c_uint , pub ss : * mut cgroup_subsys , pub node : list_head , pub kf_ops : * mut kernfs_ops , pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file) -> :: cty :: c_int > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file) > , pub read_u64 : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state , arg2 : * mut cftype) -> _cargo_bpf_u64 > , pub read_s64 : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state , arg2 : * mut cftype) -> s64 > , pub seq_show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub seq_start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut loff_t) -> * mut :: cty :: c_void > , pub seq_next : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void , arg3 : * mut loff_t) -> * mut :: cty :: c_void > , pub seq_stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) > , pub write_u64 : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state , arg2 : * mut cftype , arg3 : _cargo_bpf_u64) -> :: cty :: c_int > , pub write_s64 : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cgroup_subsys_state , arg2 : * mut cftype , arg3 : s64) -> :: cty :: c_int > , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file , arg2 : * mut :: cty :: c_char , arg3 : size_t , arg4 : loff_t) -> ssize_t > , pub poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kernfs_open_file , arg2 : * mut poll_table_struct) -> __poll_t > , } # [test] fn bindgen_test_layout_cftype () { assert_eq ! (:: core :: mem :: size_of :: < cftype > () , 216usize , concat ! ("Size of: " , stringify ! (cftype))) ; assert_eq ! (:: core :: mem :: align_of :: < cftype > () , 8usize , concat ! ("Alignment of " , stringify ! (cftype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . private as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . max_write_len as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (max_write_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . file_offset as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (file_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . ss as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (ss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . node as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . kf_ops as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (kf_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . open as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . release as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . read_u64 as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (read_u64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . read_s64 as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (read_s64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . seq_show as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (seq_show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . seq_start as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (seq_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . seq_next as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (seq_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . seq_stop as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (seq_stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . write_u64 as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (write_u64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . write_s64 as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (write_s64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . write as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cftype > ())) . poll as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (cftype) , "::" , stringify ! (poll))) ; } # [repr (C)] # [derive (Debug)] pub struct perf_callchain_entry { pub nr : __u64 , pub ip : __IncompleteArrayField < __u64 > , } # [test] fn bindgen_test_layout_perf_callchain_entry () { assert_eq ! (:: core :: mem :: size_of :: < perf_callchain_entry > () , 8usize , concat ! ("Size of: " , stringify ! (perf_callchain_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_callchain_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_callchain_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_callchain_entry > ())) . nr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_callchain_entry) , "::" , stringify ! (nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_callchain_entry > ())) . ip as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_callchain_entry) , "::" , stringify ! (ip))) ; } pub type perf_copy_f = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : * const :: cty :: c_void , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_ulong) -> :: cty :: c_ulong > ; # [repr (C , packed)] # [derive (Copy , Clone)] pub struct perf_raw_frag { pub __bindgen_anon_1 : perf_raw_frag__bindgen_ty_1 , pub copy : perf_copy_f , pub data : * mut :: cty :: c_void , pub size : _cargo_bpf_u32 , } # [repr (C)] # [derive (Copy , Clone)] pub union perf_raw_frag__bindgen_ty_1 { pub next : * mut perf_raw_frag , pub pad : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_perf_raw_frag__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_raw_frag__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_raw_frag__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_raw_frag__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_raw_frag__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_frag__bindgen_ty_1 > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_raw_frag__bindgen_ty_1) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_frag__bindgen_ty_1 > ())) . pad as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_raw_frag__bindgen_ty_1) , "::" , stringify ! (pad))) ; } # [test] fn bindgen_test_layout_perf_raw_frag () { assert_eq ! (:: core :: mem :: size_of :: < perf_raw_frag > () , 28usize , concat ! ("Size of: " , stringify ! (perf_raw_frag))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_raw_frag > () , 1usize , concat ! ("Alignment of " , stringify ! (perf_raw_frag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_frag > ())) . copy as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_raw_frag) , "::" , stringify ! (copy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_frag > ())) . data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_raw_frag) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_frag > ())) . size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (perf_raw_frag) , "::" , stringify ! (size))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_raw_record { pub frag : perf_raw_frag , pub size : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_perf_raw_record () { assert_eq ! (:: core :: mem :: size_of :: < perf_raw_record > () , 32usize , concat ! ("Size of: " , stringify ! (perf_raw_record))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_raw_record > () , 4usize , concat ! ("Alignment of " , stringify ! (perf_raw_record))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_record > ())) . frag as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_raw_record) , "::" , stringify ! (frag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_raw_record > ())) . size as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (perf_raw_record) , "::" , stringify ! (size))) ; } # [repr (C)] # [derive (Debug)] pub struct perf_branch_stack { pub nr : __u64 , pub hw_idx : __u64 , pub entries : __IncompleteArrayField < perf_branch_entry > , } # [test] fn bindgen_test_layout_perf_branch_stack () { assert_eq ! (:: core :: mem :: size_of :: < perf_branch_stack > () , 16usize , concat ! ("Size of: " , stringify ! (perf_branch_stack))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_branch_stack > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_branch_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_branch_stack > ())) . nr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_branch_stack) , "::" , stringify ! (nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_branch_stack > ())) . hw_idx as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_branch_stack) , "::" , stringify ! (hw_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_branch_stack > ())) . entries as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_branch_stack) , "::" , stringify ! (entries))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_cpu_context { pub ctx : perf_event_context , pub task_ctx : * mut perf_event_context , pub active_oncpu : :: cty :: c_int , pub exclusive : :: cty :: c_int , pub hrtimer_lock : raw_spinlock_t , pub hrtimer : hrtimer , pub hrtimer_interval : ktime_t , pub hrtimer_active : :: cty :: c_uint , pub cgrp : * mut perf_cgroup , pub cgrp_cpuctx_entry : list_head , pub sched_cb_entry : list_head , pub sched_cb_usage : :: cty :: c_int , pub online : :: cty :: c_int , pub heap_size : :: cty :: c_int , pub heap : * mut * mut perf_event , pub heap_default : [* mut perf_event ; 2usize] , } # [test] fn bindgen_test_layout_perf_cpu_context () { assert_eq ! (:: core :: mem :: size_of :: < perf_cpu_context > () , 440usize , concat ! ("Size of: " , stringify ! (perf_cpu_context))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_cpu_context > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_cpu_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . ctx as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . task_ctx as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (task_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . active_oncpu as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (active_oncpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . exclusive as * const _ as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (exclusive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . hrtimer_lock as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (hrtimer_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . hrtimer as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (hrtimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . hrtimer_interval as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (hrtimer_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . hrtimer_active as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (hrtimer_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . cgrp as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (cgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . cgrp_cpuctx_entry as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (cgrp_cpuctx_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . sched_cb_entry as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (sched_cb_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . sched_cb_usage as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (sched_cb_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . online as * const _ as usize } , 404usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . heap_size as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (heap_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . heap as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (heap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cpu_context > ())) . heap_default as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (perf_cpu_context) , "::" , stringify ! (heap_default))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_output_handle { pub event : * mut perf_event , pub rb : * mut perf_buffer , pub wakeup : :: cty :: c_ulong , pub size : :: cty :: c_ulong , pub aux_flags : _cargo_bpf_u64 , pub __bindgen_anon_1 : perf_output_handle__bindgen_ty_1 , pub page : :: cty :: c_int , } # [repr (C)] # [derive (Copy , Clone)] pub union perf_output_handle__bindgen_ty_1 { pub addr : * mut :: cty :: c_void , pub head : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_perf_output_handle__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_output_handle__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_output_handle__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_output_handle__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_output_handle__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle__bindgen_ty_1 > ())) . addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle__bindgen_ty_1) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle__bindgen_ty_1 > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle__bindgen_ty_1) , "::" , stringify ! (head))) ; } # [test] fn bindgen_test_layout_perf_output_handle () { assert_eq ! (:: core :: mem :: size_of :: < perf_output_handle > () , 56usize , concat ! ("Size of: " , stringify ! (perf_output_handle))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_output_handle > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_output_handle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle > ())) . event as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle > ())) . rb as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle) , "::" , stringify ! (rb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle > ())) . wakeup as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle) , "::" , stringify ! (wakeup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle > ())) . size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle > ())) . aux_flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle) , "::" , stringify ! (aux_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_output_handle > ())) . page as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (perf_output_handle) , "::" , stringify ! (page))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_addr_filter_range { pub start : :: cty :: c_ulong , pub size : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_perf_addr_filter_range () { assert_eq ! (:: core :: mem :: size_of :: < perf_addr_filter_range > () , 16usize , concat ! ("Size of: " , stringify ! (perf_addr_filter_range))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_addr_filter_range > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_addr_filter_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_addr_filter_range > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_addr_filter_range) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_addr_filter_range > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_addr_filter_range) , "::" , stringify ! (size))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct perf_sample_data { pub addr : _cargo_bpf_u64 , pub raw : * mut perf_raw_record , pub br_stack : * mut perf_branch_stack , pub period : _cargo_bpf_u64 , pub weight : perf_sample_weight , pub txn : _cargo_bpf_u64 , pub data_src : perf_mem_data_src , pub type_ : _cargo_bpf_u64 , pub ip : _cargo_bpf_u64 , pub tid_entry : perf_sample_data__bindgen_ty_1 , pub time : _cargo_bpf_u64 , pub id : _cargo_bpf_u64 , pub stream_id : _cargo_bpf_u64 , pub cpu_entry : perf_sample_data__bindgen_ty_2 , pub callchain : * mut perf_callchain_entry , pub aux_size : _cargo_bpf_u64 , pub regs_user : perf_regs , pub regs_intr : perf_regs , pub stack_user_size : _cargo_bpf_u64 , pub phys_addr : _cargo_bpf_u64 , pub cgroup : _cargo_bpf_u64 , pub data_page_size : _cargo_bpf_u64 , pub code_page_size : _cargo_bpf_u64 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 56usize] > , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_sample_data__bindgen_ty_1 { pub pid : _cargo_bpf_u32 , pub tid : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_perf_sample_data__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_sample_data__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_sample_data__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_sample_data__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (perf_sample_data__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data__bindgen_ty_1 > ())) . pid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data__bindgen_ty_1) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data__bindgen_ty_1 > ())) . tid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data__bindgen_ty_1) , "::" , stringify ! (tid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_sample_data__bindgen_ty_2 { pub cpu : _cargo_bpf_u32 , pub reserved : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_perf_sample_data__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < perf_sample_data__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_sample_data__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_sample_data__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (perf_sample_data__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data__bindgen_ty_2 > ())) . cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data__bindgen_ty_2) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data__bindgen_ty_2 > ())) . reserved as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data__bindgen_ty_2) , "::" , stringify ! (reserved))) ; } # [test] fn bindgen_test_layout_perf_sample_data () { assert_eq ! (:: core :: mem :: size_of :: < perf_sample_data > () , 256usize , concat ! ("Size of: " , stringify ! (perf_sample_data))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_sample_data > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_sample_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . raw as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (raw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . br_stack as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (br_stack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . period as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . weight as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . txn as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (txn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . data_src as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (data_src))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . type_ as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . ip as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (ip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . tid_entry as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (tid_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . time as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . id as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . stream_id as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (stream_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . cpu_entry as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (cpu_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . callchain as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (callchain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . aux_size as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (aux_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . regs_user as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (regs_user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . regs_intr as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (regs_intr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . stack_user_size as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (stack_user_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . phys_addr as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (phys_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . cgroup as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . data_page_size as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (data_page_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_sample_data > ())) . code_page_size as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (perf_sample_data) , "::" , stringify ! (code_page_size))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_cgroup { pub css : cgroup_subsys_state , pub info : * mut perf_cgroup_info , } # [test] fn bindgen_test_layout_perf_cgroup () { assert_eq ! (:: core :: mem :: size_of :: < perf_cgroup > () , 208usize , concat ! ("Size of: " , stringify ! (perf_cgroup))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_cgroup > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cgroup > ())) . css as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_cgroup) , "::" , stringify ! (css))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cgroup > ())) . info as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (perf_cgroup) , "::" , stringify ! (info))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_cgroup_info { pub time : _cargo_bpf_u64 , pub timestamp : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_perf_cgroup_info () { assert_eq ! (:: core :: mem :: size_of :: < perf_cgroup_info > () , 16usize , concat ! ("Size of: " , stringify ! (perf_cgroup_info))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_cgroup_info > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_cgroup_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cgroup_info > ())) . time as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_cgroup_info) , "::" , stringify ! (time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_cgroup_info > ())) . timestamp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_cgroup_info) , "::" , stringify ! (timestamp))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_entry { pub type_ : :: cty :: c_ushort , pub flags : :: cty :: c_uchar , pub preempt_count : :: cty :: c_uchar , pub pid : :: cty :: c_int , } # [test] fn bindgen_test_layout_trace_entry () { assert_eq ! (:: core :: mem :: size_of :: < trace_entry > () , 8usize , concat ! ("Size of: " , stringify ! (trace_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_entry > () , 4usize , concat ! ("Alignment of " , stringify ! (trace_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_entry > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_entry) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_entry > ())) . flags as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (trace_entry) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_entry > ())) . preempt_count as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (trace_entry) , "::" , stringify ! (preempt_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_entry > ())) . pid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (trace_entry) , "::" , stringify ! (pid))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct trace_iterator { pub tr : * mut trace_array , pub trace : * mut tracer , pub array_buffer : * mut array_buffer , pub private : * mut :: cty :: c_void , pub cpu_file : :: cty :: c_int , pub mutex : mutex , pub buffer_iter : * mut * mut ring_buffer_iter , pub iter_flags : :: cty :: c_ulong , pub temp : * mut :: cty :: c_void , pub temp_size : :: cty :: c_uint , pub fmt : * mut :: cty :: c_char , pub fmt_size : :: cty :: c_uint , pub tmp_seq : trace_seq , pub started : cpumask_var_t , pub snapshot : bool_ , pub seq : trace_seq , pub ent : * mut trace_entry , pub lost_events : :: cty :: c_ulong , pub leftover : :: cty :: c_int , pub ent_size : :: cty :: c_int , pub cpu : :: cty :: c_int , pub ts : _cargo_bpf_u64 , pub pos : loff_t , pub idx : :: cty :: c_long , } # [test] fn bindgen_test_layout_trace_iterator () { assert_eq ! (:: core :: mem :: size_of :: < trace_iterator > () , 8464usize , concat ! ("Size of: " , stringify ! (trace_iterator))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_iterator > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_iterator))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . tr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (tr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . trace as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . array_buffer as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (array_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . private as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . cpu_file as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (cpu_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . mutex as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . buffer_iter as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (buffer_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . iter_flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (iter_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . temp as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (temp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . temp_size as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (temp_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . fmt as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (fmt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . fmt_size as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (fmt_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . tmp_seq as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (tmp_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . started as * const _ as usize } , 4256usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (started))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . snapshot as * const _ as usize } , 4264usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (snapshot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . seq as * const _ as usize } , 4272usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . ent as * const _ as usize } , 8408usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (ent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . lost_events as * const _ as usize } , 8416usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (lost_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . leftover as * const _ as usize } , 8424usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (leftover))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . ent_size as * const _ as usize } , 8428usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (ent_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . cpu as * const _ as usize } , 8432usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . ts as * const _ as usize } , 8440usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (ts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . pos as * const _ as usize } , 8448usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_iterator > ())) . idx as * const _ as usize } , 8456usize , concat ! ("Offset of field: " , stringify ! (trace_iterator) , "::" , stringify ! (idx))) ; } pub const print_line_t_TRACE_TYPE_PARTIAL_LINE : print_line_t = 0 ; pub const print_line_t_TRACE_TYPE_HANDLED : print_line_t = 1 ; pub const print_line_t_TRACE_TYPE_UNHANDLED : print_line_t = 2 ; pub const print_line_t_TRACE_TYPE_NO_CONSUME : print_line_t = 3 ; pub type print_line_t = :: cty :: c_uint ; pub type trace_print_func = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator , arg2 : :: cty :: c_int , arg3 : * mut trace_event) -> print_line_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_event_functions { pub trace : trace_print_func , pub raw : trace_print_func , pub hex : trace_print_func , pub binary : trace_print_func , } # [test] fn bindgen_test_layout_trace_event_functions () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_functions > () , 32usize , concat ! ("Size of: " , stringify ! (trace_event_functions))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_functions > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_functions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_functions > ())) . trace as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_functions) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_functions > ())) . raw as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_event_functions) , "::" , stringify ! (raw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_functions > ())) . hex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_event_functions) , "::" , stringify ! (hex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_functions > ())) . binary as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_event_functions) , "::" , stringify ! (binary))) ; } pub const trace_reg_TRACE_REG_REGISTER : trace_reg = 0 ; pub const trace_reg_TRACE_REG_UNREGISTER : trace_reg = 1 ; pub const trace_reg_TRACE_REG_PERF_REGISTER : trace_reg = 2 ; pub const trace_reg_TRACE_REG_PERF_UNREGISTER : trace_reg = 3 ; pub const trace_reg_TRACE_REG_PERF_OPEN : trace_reg = 4 ; pub const trace_reg_TRACE_REG_PERF_CLOSE : trace_reg = 5 ; pub const trace_reg_TRACE_REG_PERF_ADD : trace_reg = 6 ; pub const trace_reg_TRACE_REG_PERF_DEL : trace_reg = 7 ; pub type trace_reg = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct trace_event_fields { pub type_ : * const :: cty :: c_char , pub __bindgen_anon_1 : trace_event_fields__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union trace_event_fields__bindgen_ty_1 { pub __bindgen_anon_1 : trace_event_fields__bindgen_ty_1__bindgen_ty_1 , pub define_fields : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_event_call) -> :: cty :: c_int > , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_event_fields__bindgen_ty_1__bindgen_ty_1 { pub name : * const :: cty :: c_char , pub size : :: cty :: c_int , pub align : :: cty :: c_int , pub is_signed : :: cty :: c_int , pub filter_type : :: cty :: c_int , } # [test] fn bindgen_test_layout_trace_event_fields__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > ())) . size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > ())) . align as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (align))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > ())) . is_signed as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (is_signed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields__bindgen_ty_1__bindgen_ty_1 > ())) . filter_type as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (filter_type))) ; } # [test] fn bindgen_test_layout_trace_event_fields__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_fields__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (trace_event_fields__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_fields__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_fields__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields__bindgen_ty_1 > ())) . define_fields as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields__bindgen_ty_1) , "::" , stringify ! (define_fields))) ; } # [test] fn bindgen_test_layout_trace_event_fields () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_fields > () , 32usize , concat ! ("Size of: " , stringify ! (trace_event_fields))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_fields > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_fields))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_fields > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_fields) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_event_class { pub system : * const :: cty :: c_char , pub probe : * mut :: cty :: c_void , pub perf_probe : * mut :: cty :: c_void , pub reg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_event_call , arg2 : trace_reg , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub fields_array : * mut trace_event_fields , pub get_fields : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_event_call) -> * mut list_head > , pub fields : list_head , pub raw_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_event_call) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_trace_event_class () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_class > () , 72usize , concat ! ("Size of: " , stringify ! (trace_event_class))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_class > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . system as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . probe as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (probe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . perf_probe as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (perf_probe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . reg as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . fields_array as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (fields_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . get_fields as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (get_fields))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . fields as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_class > ())) . raw_init as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (trace_event_class) , "::" , stringify ! (raw_init))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_buffer { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_event_file { pub list : list_head , pub event_call : * mut trace_event_call , pub filter : * mut event_filter , pub dir : * mut dentry , pub tr : * mut trace_array , pub system : * mut trace_subsystem_dir , pub triggers : list_head , pub flags : :: cty :: c_ulong , pub sm_ref : atomic_t , pub tm_ref : atomic_t , } # [test] fn bindgen_test_layout_trace_event_file () { assert_eq ! (:: core :: mem :: size_of :: < trace_event_file > () , 88usize , concat ! ("Size of: " , stringify ! (trace_event_file))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_event_file > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_event_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . event_call as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (event_call))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . filter as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . dir as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . tr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (tr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . system as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . triggers as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (triggers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . flags as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . sm_ref as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (sm_ref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_event_file > ())) . tm_ref as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (trace_event_file) , "::" , stringify ! (tm_ref))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct property { pub name : * mut :: cty :: c_char , pub length : :: cty :: c_int , pub value : * mut :: cty :: c_void , pub next : * mut property , } # [test] fn bindgen_test_layout_property () { assert_eq ! (:: core :: mem :: size_of :: < property > () , 32usize , concat ! ("Size of: " , stringify ! (property))) ; assert_eq ! (:: core :: mem :: align_of :: < property > () , 8usize , concat ! ("Alignment of " , stringify ! (property))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < property > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (property) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < property > ())) . length as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (property) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < property > ())) . value as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (property) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < property > ())) . next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (property) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_fwspec { pub fwnode : * mut fwnode_handle , pub param_count : :: cty :: c_int , pub param : [_cargo_bpf_u32 ; 16usize] , } # [test] fn bindgen_test_layout_irq_fwspec () { assert_eq ! (:: core :: mem :: size_of :: < irq_fwspec > () , 80usize , concat ! ("Size of: " , stringify ! (irq_fwspec))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_fwspec > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_fwspec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_fwspec > ())) . fwnode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_fwspec) , "::" , stringify ! (fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_fwspec > ())) . param_count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_fwspec) , "::" , stringify ! (param_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_fwspec > ())) . param as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (irq_fwspec) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_domain_ops { pub match_ : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : * mut device_node , arg3 : irq_domain_bus_token) -> :: cty :: c_int > , pub select : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : * mut irq_fwspec , arg3 : irq_domain_bus_token) -> :: cty :: c_int > , pub map : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : :: cty :: c_uint , arg3 : irq_hw_number_t) -> :: cty :: c_int > , pub unmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : :: cty :: c_uint) > , pub xlate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : * mut device_node , arg3 : * const _cargo_bpf_u32 , arg4 : :: cty :: c_uint , arg5 : * mut :: cty :: c_ulong , arg6 : * mut :: cty :: c_uint) -> :: cty :: c_int > , pub alloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_uint , arg4 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_uint) > , pub activate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : * mut irq_data , arg3 : bool_) -> :: cty :: c_int > , pub deactivate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : * mut irq_data) > , pub translate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_domain , arg2 : * mut irq_fwspec , arg3 : * mut :: cty :: c_ulong , arg4 : * mut :: cty :: c_uint) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_irq_domain_ops () { assert_eq ! (:: core :: mem :: size_of :: < irq_domain_ops > () , 80usize , concat ! ("Size of: " , stringify ! (irq_domain_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_domain_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_domain_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . match_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (match_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . select as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (select))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . map as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . unmap as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (unmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . xlate as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (xlate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . alloc as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . free as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . activate as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (activate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . deactivate as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (deactivate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_ops > ())) . translate as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (irq_domain_ops) , "::" , stringify ! (translate))) ; } # [repr (C)] pub struct tty_buffer { pub __bindgen_anon_1 : tty_buffer__bindgen_ty_1 , pub used : :: cty :: c_int , pub size : :: cty :: c_int , pub commit : :: cty :: c_int , pub read : :: cty :: c_int , pub flags : :: cty :: c_int , pub data : __IncompleteArrayField < :: cty :: c_ulong > , } # [repr (C)] # [derive (Copy , Clone)] pub union tty_buffer__bindgen_ty_1 { pub next : * mut tty_buffer , pub free : llist_node , } # [test] fn bindgen_test_layout_tty_buffer__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < tty_buffer__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (tty_buffer__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_buffer__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_buffer__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer__bindgen_ty_1 > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_buffer__bindgen_ty_1) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer__bindgen_ty_1 > ())) . free as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_buffer__bindgen_ty_1) , "::" , stringify ! (free))) ; } # [test] fn bindgen_test_layout_tty_buffer () { assert_eq ! (:: core :: mem :: size_of :: < tty_buffer > () , 32usize , concat ! ("Size of: " , stringify ! (tty_buffer))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_buffer > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer > ())) . used as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_buffer) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer > ())) . size as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tty_buffer) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer > ())) . commit as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tty_buffer) , "::" , stringify ! (commit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer > ())) . read as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tty_buffer) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer > ())) . flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tty_buffer) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_buffer > ())) . data as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tty_buffer) , "::" , stringify ! (data))) ; } # [repr (C)] pub struct tty_bufhead { pub head : * mut tty_buffer , pub work : work_struct , pub lock : mutex , pub priority : atomic_t , pub sentinel : tty_buffer , pub free : llist_head , pub mem_used : atomic_t , pub mem_limit : :: cty :: c_int , pub tail : * mut tty_buffer , } # [test] fn bindgen_test_layout_tty_bufhead () { assert_eq ! (:: core :: mem :: size_of :: < tty_bufhead > () , 136usize , concat ! ("Size of: " , stringify ! (tty_bufhead))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_bufhead > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_bufhead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . work as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . lock as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . priority as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . sentinel as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (sentinel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . free as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . mem_used as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (mem_used))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . mem_limit as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (mem_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_bufhead > ())) . tail as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tty_bufhead) , "::" , stringify ! (tail))) ; } # [repr (C)] pub struct tty_port { pub buf : tty_bufhead , pub tty : * mut tty_struct , pub itty : * mut tty_struct , pub ops : * const tty_port_operations , pub client_ops : * const tty_port_client_operations , pub lock : spinlock_t , pub blocked_open : :: cty :: c_int , pub count : :: cty :: c_int , pub open_wait : wait_queue_head_t , pub delta_msr_wait : wait_queue_head_t , pub flags : :: cty :: c_ulong , pub iflags : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub mutex : mutex , pub buf_mutex : mutex , pub xmit_buf : * mut :: cty :: c_uchar , pub close_delay : :: cty :: c_uint , pub closing_wait : :: cty :: c_uint , pub drain_delay : :: cty :: c_int , pub kref : kref , pub client_data : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_tty_port () { assert_eq ! (:: core :: mem :: size_of :: < tty_port > () , 352usize , concat ! ("Size of: " , stringify ! (tty_port))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_port > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . tty as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (tty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . itty as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (itty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . ops as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . client_ops as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (client_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . lock as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . blocked_open as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (blocked_open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . count as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . open_wait as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (open_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . delta_msr_wait as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (delta_msr_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . flags as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . iflags as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (iflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . mutex as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . buf_mutex as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (buf_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . xmit_buf as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (xmit_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . close_delay as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (close_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . closing_wait as * const _ as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (closing_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . drain_delay as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (drain_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . kref as * const _ as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port > ())) . client_data as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (tty_port) , "::" , stringify ! (client_data))) ; } impl tty_port { # [inline] pub fn console (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_console (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (console : :: cty :: c_uchar) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let console : u8 = unsafe { :: core :: mem :: transmute (console) } ; console as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct gendisk { pub major : :: cty :: c_int , pub first_minor : :: cty :: c_int , pub minors : :: cty :: c_int , pub disk_name : [:: cty :: c_char ; 32usize] , pub events : :: cty :: c_ushort , pub event_flags : :: cty :: c_ushort , pub part_tbl : xarray , pub part0 : * mut block_device , pub fops : * const block_device_operations , pub queue : * mut request_queue , pub private_data : * mut :: cty :: c_void , pub flags : :: cty :: c_int , pub state : :: cty :: c_ulong , pub slave_dir : * mut kobject , pub random : * mut timer_rand_state , pub sync_io : atomic_t , pub ev : * mut disk_events , pub integrity_kobj : kobject , pub cdi : * mut cdrom_device_info , pub node_id : :: cty :: c_int , pub bb : * mut badblocks , pub lockdep_map : lockdep_map , } # [test] fn bindgen_test_layout_gendisk () { assert_eq ! (:: core :: mem :: size_of :: < gendisk > () , 232usize , concat ! ("Size of: " , stringify ! (gendisk))) ; assert_eq ! (:: core :: mem :: align_of :: < gendisk > () , 8usize , concat ! ("Alignment of " , stringify ! (gendisk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . major as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (major))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . first_minor as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (first_minor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . minors as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (minors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . disk_name as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (disk_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . events as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . event_flags as * const _ as usize } , 46usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (event_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . part_tbl as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (part_tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . part0 as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (part0))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . fops as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (fops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . queue as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . private_data as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (private_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . flags as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . state as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . slave_dir as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (slave_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . random as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (random))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . sync_io as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (sync_io))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . ev as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . integrity_kobj as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (integrity_kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . cdi as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (cdi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . node_id as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (node_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . bb as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (bb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gendisk > ())) . lockdep_map as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (gendisk) , "::" , stringify ! (lockdep_map))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct partition_meta_info { pub uuid : [:: cty :: c_char ; 37usize] , pub volname : [_cargo_bpf_u8 ; 64usize] , } # [test] fn bindgen_test_layout_partition_meta_info () { assert_eq ! (:: core :: mem :: size_of :: < partition_meta_info > () , 101usize , concat ! ("Size of: " , stringify ! (partition_meta_info))) ; assert_eq ! (:: core :: mem :: align_of :: < partition_meta_info > () , 1usize , concat ! ("Alignment of " , stringify ! (partition_meta_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < partition_meta_info > ())) . uuid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (partition_meta_info) , "::" , stringify ! (uuid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < partition_meta_info > ())) . volname as * const _ as usize } , 37usize , concat ! ("Offset of field: " , stringify ! (partition_meta_info) , "::" , stringify ! (volname))) ; } # [repr (C)] # [derive (Debug)] pub struct bio_integrity_payload { pub bip_bio : * mut bio , pub bip_iter : bvec_iter , pub bip_vcnt : :: cty :: c_ushort , pub bip_max_vcnt : :: cty :: c_ushort , pub bip_flags : :: cty :: c_ushort , pub bio_iter : bvec_iter , pub bip_work : work_struct , pub bip_vec : * mut bio_vec , pub bip_inline_vecs : __IncompleteArrayField < bio_vec > , } # [test] fn bindgen_test_layout_bio_integrity_payload () { assert_eq ! (:: core :: mem :: size_of :: < bio_integrity_payload > () , 104usize , concat ! ("Size of: " , stringify ! (bio_integrity_payload))) ; assert_eq ! (:: core :: mem :: align_of :: < bio_integrity_payload > () , 8usize , concat ! ("Alignment of " , stringify ! (bio_integrity_payload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_bio as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_bio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_iter as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_vcnt as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_vcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_max_vcnt as * const _ as usize } , 34usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_max_vcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_flags as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bio_iter as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bio_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_work as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_vec as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_vec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_integrity_payload > ())) . bip_inline_vecs as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (bio_integrity_payload) , "::" , stringify ! (bip_inline_vecs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blkg_iostat { pub bytes : [_cargo_bpf_u64 ; 3usize] , pub ios : [_cargo_bpf_u64 ; 3usize] , } # [test] fn bindgen_test_layout_blkg_iostat () { assert_eq ! (:: core :: mem :: size_of :: < blkg_iostat > () , 48usize , concat ! ("Size of: " , stringify ! (blkg_iostat))) ; assert_eq ! (:: core :: mem :: align_of :: < blkg_iostat > () , 8usize , concat ! ("Alignment of " , stringify ! (blkg_iostat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_iostat > ())) . bytes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkg_iostat) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_iostat > ())) . ios as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blkg_iostat) , "::" , stringify ! (ios))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blkg_iostat_set { pub sync : u64_stats_sync , pub cur : blkg_iostat , pub last : blkg_iostat , } # [test] fn bindgen_test_layout_blkg_iostat_set () { assert_eq ! (:: core :: mem :: size_of :: < blkg_iostat_set > () , 96usize , concat ! ("Size of: " , stringify ! (blkg_iostat_set))) ; assert_eq ! (:: core :: mem :: align_of :: < blkg_iostat_set > () , 8usize , concat ! ("Alignment of " , stringify ! (blkg_iostat_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_iostat_set > ())) . sync as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkg_iostat_set) , "::" , stringify ! (sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_iostat_set > ())) . cur as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkg_iostat_set) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_iostat_set > ())) . last as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (blkg_iostat_set) , "::" , stringify ! (last))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct blkcg_gq { pub q : * mut request_queue , pub q_node : list_head , pub blkcg_node : hlist_node , pub blkcg : * mut blkcg , pub parent : * mut blkcg_gq , pub refcnt : percpu_ref , pub online : bool_ , pub iostat_cpu : * mut blkg_iostat_set , pub iostat : blkg_iostat_set , pub pd : [* mut blkg_policy_data ; 5usize] , pub async_bio_lock : spinlock_t , pub async_bios : bio_list , pub async_bio_work : work_struct , pub use_delay : atomic_t , pub delay_nsec : atomic64_t , pub delay_start : atomic64_t , pub last_delay : _cargo_bpf_u64 , pub last_use : :: cty :: c_int , pub callback_head : callback_head , } # [test] fn bindgen_test_layout_blkcg_gq () { assert_eq ! (:: core :: mem :: size_of :: < blkcg_gq > () , 336usize , concat ! ("Size of: " , stringify ! (blkcg_gq))) ; assert_eq ! (:: core :: mem :: align_of :: < blkcg_gq > () , 8usize , concat ! ("Alignment of " , stringify ! (blkcg_gq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . q as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . q_node as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (q_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . blkcg_node as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (blkcg_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . blkcg as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (blkcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . parent as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . refcnt as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . online as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . iostat_cpu as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (iostat_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . iostat as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (iostat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . pd as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (pd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . async_bio_lock as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (async_bio_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . async_bios as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (async_bios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . async_bio_work as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (async_bio_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . use_delay as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (use_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . delay_nsec as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (delay_nsec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . delay_start as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (delay_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . last_delay as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (last_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . last_use as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (last_use))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_gq > ())) . callback_head as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (blkcg_gq) , "::" , stringify ! (callback_head))) ; } pub type blk_qc_t = :: cty :: c_uint ; pub type integrity_processing_fn = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_integrity_iter) -> blk_status_t > ; pub type integrity_prepare_fn = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > ; pub type integrity_complete_fn = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : :: cty :: c_uint) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_integrity_profile { pub generate_fn : integrity_processing_fn , pub verify_fn : integrity_processing_fn , pub prepare_fn : integrity_prepare_fn , pub complete_fn : integrity_complete_fn , pub name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_blk_integrity_profile () { assert_eq ! (:: core :: mem :: size_of :: < blk_integrity_profile > () , 40usize , concat ! ("Size of: " , stringify ! (blk_integrity_profile))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_integrity_profile > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_integrity_profile))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_profile > ())) . generate_fn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_profile) , "::" , stringify ! (generate_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_profile > ())) . verify_fn as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_profile) , "::" , stringify ! (verify_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_profile > ())) . prepare_fn as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_profile) , "::" , stringify ! (prepare_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_profile > ())) . complete_fn as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_profile) , "::" , stringify ! (complete_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_profile > ())) . name as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_profile) , "::" , stringify ! (name))) ; } pub type report_zones_cb = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_zone , arg2 : :: cty :: c_uint , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct block_device_operations { pub submit_bio : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bio) -> blk_qc_t > , pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : fmode_t) -> :: cty :: c_int > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut gendisk , arg2 : fmode_t) > , pub rw_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : sector_t , arg3 : * mut page , arg4 : :: cty :: c_uint) -> :: cty :: c_int > , pub ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : fmode_t , arg3 : :: cty :: c_uint , arg4 : :: cty :: c_ulong) -> :: cty :: c_int > , pub compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : fmode_t , arg3 : :: cty :: c_uint , arg4 : :: cty :: c_ulong) -> :: cty :: c_int > , pub check_events : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut gendisk , arg2 : :: cty :: c_uint) -> :: cty :: c_uint > , pub unlock_native_capacity : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut gendisk) > , pub getgeo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : * mut hd_geometry) -> :: cty :: c_int > , pub set_read_only : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : bool_) -> :: cty :: c_int > , pub swap_slot_free_notify : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : :: cty :: c_ulong) > , pub report_zones : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut gendisk , arg2 : sector_t , arg3 : :: cty :: c_uint , arg4 : report_zones_cb , arg5 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub devnode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut gendisk , arg2 : * mut umode_t) -> * mut :: cty :: c_char > , pub owner : * mut module , pub pr_ops : * const pr_ops , } # [test] fn bindgen_test_layout_block_device_operations () { assert_eq ! (:: core :: mem :: size_of :: < block_device_operations > () , 120usize , concat ! ("Size of: " , stringify ! (block_device_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < block_device_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (block_device_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . submit_bio as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (submit_bio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . open as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . release as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . rw_page as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (rw_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . ioctl as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . compat_ioctl as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . check_events as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (check_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . unlock_native_capacity as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (unlock_native_capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . getgeo as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (getgeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . set_read_only as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (set_read_only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . swap_slot_free_notify as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (swap_slot_free_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . report_zones as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (report_zones))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . devnode as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (devnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . owner as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < block_device_operations > ())) . pr_ops as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (block_device_operations) , "::" , stringify ! (pr_ops))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sg_io_v4 { pub guard : __s32 , pub protocol : __u32 , pub subprotocol : __u32 , pub request_len : __u32 , pub request : __u64 , pub request_tag : __u64 , pub request_attr : __u32 , pub request_priority : __u32 , pub request_extra : __u32 , pub max_response_len : __u32 , pub response : __u64 , pub dout_iovec_count : __u32 , pub dout_xfer_len : __u32 , pub din_iovec_count : __u32 , pub din_xfer_len : __u32 , pub dout_xferp : __u64 , pub din_xferp : __u64 , pub timeout : __u32 , pub flags : __u32 , pub usr_ptr : __u64 , pub spare_in : __u32 , pub driver_status : __u32 , pub transport_status : __u32 , pub device_status : __u32 , pub retry_delay : __u32 , pub info : __u32 , pub duration : __u32 , pub response_len : __u32 , pub din_resid : __s32 , pub dout_resid : __s32 , pub generated_tag : __u64 , pub spare_out : __u32 , pub padding : __u32 , } # [test] fn bindgen_test_layout_sg_io_v4 () { assert_eq ! (:: core :: mem :: size_of :: < sg_io_v4 > () , 160usize , concat ! ("Size of: " , stringify ! (sg_io_v4))) ; assert_eq ! (:: core :: mem :: align_of :: < sg_io_v4 > () , 8usize , concat ! ("Alignment of " , stringify ! (sg_io_v4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . guard as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (guard))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . protocol as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . subprotocol as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (subprotocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . request_len as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (request_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . request as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . request_tag as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (request_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . request_attr as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (request_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . request_priority as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (request_priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . request_extra as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (request_extra))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . max_response_len as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (max_response_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . response as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (response))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . dout_iovec_count as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (dout_iovec_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . dout_xfer_len as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (dout_xfer_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . din_iovec_count as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (din_iovec_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . din_xfer_len as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (din_xfer_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . dout_xferp as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (dout_xferp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . din_xferp as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (din_xferp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . timeout as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . flags as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . usr_ptr as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (usr_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . spare_in as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (spare_in))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . driver_status as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (driver_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . transport_status as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (transport_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . device_status as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (device_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . retry_delay as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (retry_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . info as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . duration as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (duration))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . response_len as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (response_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . din_resid as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (din_resid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . dout_resid as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (dout_resid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . generated_tag as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (generated_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . spare_out as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (spare_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_io_v4 > ())) . padding as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (sg_io_v4) , "::" , stringify ! (padding))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bsg_ops { pub check_proto : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sg_io_v4) -> :: cty :: c_int > , pub fill_hdr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : * mut sg_io_v4 , arg3 : fmode_t) -> :: cty :: c_int > , pub complete_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : * mut sg_io_v4) -> :: cty :: c_int > , pub free_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , } # [test] fn bindgen_test_layout_bsg_ops () { assert_eq ! (:: core :: mem :: size_of :: < bsg_ops > () , 32usize , concat ! ("Size of: " , stringify ! (bsg_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < bsg_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (bsg_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_ops > ())) . check_proto as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bsg_ops) , "::" , stringify ! (check_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_ops > ())) . fill_hdr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bsg_ops) , "::" , stringify ! (fill_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_ops > ())) . complete_rq as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bsg_ops) , "::" , stringify ! (complete_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bsg_ops > ())) . free_rq as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bsg_ops) , "::" , stringify ! (free_rq))) ; } pub type req_flags_t = __u32 ; pub type rq_end_io_fn = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : blk_status_t) > ; pub const mq_rq_state_MQ_RQ_IDLE : mq_rq_state = 0 ; pub const mq_rq_state_MQ_RQ_IN_FLIGHT : mq_rq_state = 1 ; pub const mq_rq_state_MQ_RQ_COMPLETE : mq_rq_state = 2 ; pub type mq_rq_state = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct request { pub q : * mut request_queue , pub mq_ctx : * mut blk_mq_ctx , pub mq_hctx : * mut blk_mq_hw_ctx , pub cmd_flags : :: cty :: c_uint , pub rq_flags : req_flags_t , pub tag : :: cty :: c_int , pub internal_tag : :: cty :: c_int , pub __data_len : :: cty :: c_uint , pub __sector : sector_t , pub bio : * mut bio , pub biotail : * mut bio , pub queuelist : list_head , pub __bindgen_anon_1 : request__bindgen_ty_1 , pub __bindgen_anon_2 : request__bindgen_ty_2 , pub __bindgen_anon_3 : request__bindgen_ty_3 , pub rq_disk : * mut gendisk , pub part : * mut block_device , pub alloc_time_ns : _cargo_bpf_u64 , pub start_time_ns : _cargo_bpf_u64 , pub io_start_time_ns : _cargo_bpf_u64 , pub wbt_flags : :: cty :: c_ushort , pub stats_sectors : :: cty :: c_ushort , pub nr_phys_segments : :: cty :: c_ushort , pub nr_integrity_segments : :: cty :: c_ushort , pub crypt_ctx : * mut bio_crypt_ctx , pub crypt_keyslot : * mut blk_ksm_keyslot , pub write_hint : :: cty :: c_ushort , pub ioprio : :: cty :: c_ushort , pub state : mq_rq_state , pub ref_ : refcount_t , pub timeout : :: cty :: c_uint , pub deadline : :: cty :: c_ulong , pub __bindgen_anon_4 : request__bindgen_ty_4 , pub end_io : rq_end_io_fn , pub end_io_data : * mut :: cty :: c_void , } # [repr (C)] # [derive (Copy , Clone)] pub union request__bindgen_ty_1 { pub hash : hlist_node , pub ipi_list : llist_node , } # [test] fn bindgen_test_layout_request__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < request__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (request__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < request__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (request__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_1 > ())) . hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_1) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_1 > ())) . ipi_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_1) , "::" , stringify ! (ipi_list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union request__bindgen_ty_2 { pub rb_node : rb_node , pub special_vec : bio_vec , pub completion_data : * mut :: cty :: c_void , pub error_count : :: cty :: c_int , } # [test] fn bindgen_test_layout_request__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < request__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (request__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < request__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (request__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_2 > ())) . rb_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_2) , "::" , stringify ! (rb_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_2 > ())) . special_vec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_2) , "::" , stringify ! (special_vec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_2 > ())) . completion_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_2) , "::" , stringify ! (completion_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_2 > ())) . error_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_2) , "::" , stringify ! (error_count))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union request__bindgen_ty_3 { pub elv : request__bindgen_ty_3__bindgen_ty_1 , pub flush : request__bindgen_ty_3__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct request__bindgen_ty_3__bindgen_ty_1 { pub icq : * mut io_cq , pub priv_ : [* mut :: cty :: c_void ; 2usize] , } # [test] fn bindgen_test_layout_request__bindgen_ty_3__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < request__bindgen_ty_3__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (request__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < request__bindgen_ty_3__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (request__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3__bindgen_ty_1 > ())) . icq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (icq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3__bindgen_ty_1 > ())) . priv_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (priv_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct request__bindgen_ty_3__bindgen_ty_2 { pub seq : :: cty :: c_uint , pub list : list_head , pub saved_end_io : rq_end_io_fn , } # [test] fn bindgen_test_layout_request__bindgen_ty_3__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < request__bindgen_ty_3__bindgen_ty_2 > () , 32usize , concat ! ("Size of: " , stringify ! (request__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < request__bindgen_ty_3__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (request__bindgen_ty_3__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3__bindgen_ty_2 > ())) . seq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3__bindgen_ty_2 > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3__bindgen_ty_2 > ())) . saved_end_io as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3__bindgen_ty_2) , "::" , stringify ! (saved_end_io))) ; } # [test] fn bindgen_test_layout_request__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < request__bindgen_ty_3 > () , 32usize , concat ! ("Size of: " , stringify ! (request__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < request__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (request__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3 > ())) . elv as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3) , "::" , stringify ! (elv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_3 > ())) . flush as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_3) , "::" , stringify ! (flush))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union request__bindgen_ty_4 { pub csd : __call_single_data , pub fifo_time : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_request__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < request__bindgen_ty_4 > () , 32usize , concat ! ("Size of: " , stringify ! (request__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < request__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (request__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_4 > ())) . csd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_4) , "::" , stringify ! (csd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request__bindgen_ty_4 > ())) . fifo_time as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request__bindgen_ty_4) , "::" , stringify ! (fifo_time))) ; } # [test] fn bindgen_test_layout_request () { assert_eq ! (:: core :: mem :: size_of :: < request > () , 296usize , concat ! ("Size of: " , stringify ! (request))) ; assert_eq ! (:: core :: mem :: align_of :: < request > () , 8usize , concat ! ("Alignment of " , stringify ! (request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . q as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . mq_ctx as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (mq_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . mq_hctx as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (mq_hctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . cmd_flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (cmd_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . rq_flags as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (rq_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . tag as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . internal_tag as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (internal_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . __data_len as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (__data_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . __sector as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (__sector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . bio as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (bio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . biotail as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (biotail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . queuelist as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (queuelist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . rq_disk as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (rq_disk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . part as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (part))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . alloc_time_ns as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (alloc_time_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . start_time_ns as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (start_time_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . io_start_time_ns as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (io_start_time_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . wbt_flags as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (wbt_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . stats_sectors as * const _ as usize } , 202usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (stats_sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . nr_phys_segments as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (nr_phys_segments))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . nr_integrity_segments as * const _ as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (nr_integrity_segments))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . crypt_ctx as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (crypt_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . crypt_keyslot as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (crypt_keyslot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . write_hint as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (write_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . ioprio as * const _ as usize } , 226usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (ioprio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . state as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . ref_ as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . timeout as * const _ as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . deadline as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (deadline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . end_io as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (end_io))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request > ())) . end_io_data as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (request) , "::" , stringify ! (end_io_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_zone { pub start : __u64 , pub len : __u64 , pub wp : __u64 , pub type_ : __u8 , pub cond : __u8 , pub non_seq : __u8 , pub reset : __u8 , pub resv : [__u8 ; 4usize] , pub capacity : __u64 , pub reserved : [__u8 ; 24usize] , } # [test] fn bindgen_test_layout_blk_zone () { assert_eq ! (:: core :: mem :: size_of :: < blk_zone > () , 64usize , concat ! ("Size of: " , stringify ! (blk_zone))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_zone > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_zone))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . wp as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (wp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . type_ as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . cond as * const _ as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . non_seq as * const _ as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (non_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . reset as * const _ as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . resv as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (resv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . capacity as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_zone > ())) . reserved as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (blk_zone) , "::" , stringify ! (reserved))) ; } pub const elv_merge_ELEVATOR_NO_MERGE : elv_merge = 0 ; pub const elv_merge_ELEVATOR_FRONT_MERGE : elv_merge = 1 ; pub const elv_merge_ELEVATOR_BACK_MERGE : elv_merge = 2 ; pub const elv_merge_ELEVATOR_DISCARD_MERGE : elv_merge = 3 ; pub type elv_merge = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elevator_mq_ops { pub init_sched : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut elevator_type) -> :: cty :: c_int > , pub exit_sched : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut elevator_queue) > , pub init_hctx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub exit_hctx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx , arg2 : :: cty :: c_uint) > , pub depth_updated : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx) > , pub allow_merge : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut request , arg3 : * mut bio) -> bool_ > , pub bio_merge : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut bio , arg3 : :: cty :: c_uint) -> bool_ > , pub request_merge : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut * mut request , arg3 : * mut bio) -> :: cty :: c_int > , pub request_merged : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut request , arg3 : elv_merge) > , pub requests_merged : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut request , arg3 : * mut request) > , pub limit_depth : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_uint , arg2 : * mut blk_mq_alloc_data) > , pub prepare_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , pub finish_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , pub insert_requests : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx , arg2 : * mut list_head , arg3 : bool_) > , pub dispatch_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx) -> * mut request > , pub has_work : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx) -> bool_ > , pub completed_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : _cargo_bpf_u64) > , pub requeue_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , pub former_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut request) -> * mut request > , pub next_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : * mut request) -> * mut request > , pub init_icq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut io_cq) > , pub exit_icq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut io_cq) > , } # [test] fn bindgen_test_layout_elevator_mq_ops () { assert_eq ! (:: core :: mem :: size_of :: < elevator_mq_ops > () , 176usize , concat ! ("Size of: " , stringify ! (elevator_mq_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < elevator_mq_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (elevator_mq_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . init_sched as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (init_sched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . exit_sched as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (exit_sched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . init_hctx as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (init_hctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . exit_hctx as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (exit_hctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . depth_updated as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (depth_updated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . allow_merge as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (allow_merge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . bio_merge as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (bio_merge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . request_merge as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (request_merge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . request_merged as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (request_merged))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . requests_merged as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (requests_merged))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . limit_depth as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (limit_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . prepare_request as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (prepare_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . finish_request as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (finish_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . insert_requests as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (insert_requests))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . dispatch_request as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (dispatch_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . has_work as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (has_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . completed_request as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (completed_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . requeue_request as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (requeue_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . former_request as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (former_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . next_request as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (next_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . init_icq as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (init_icq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_mq_ops > ())) . exit_icq as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (elevator_mq_ops) , "::" , stringify ! (exit_icq))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elevator_type { pub icq_cache : * mut kmem_cache , pub ops : elevator_mq_ops , pub icq_size : size_t , pub icq_align : size_t , pub elevator_attrs : * mut elv_fs_entry , pub elevator_name : * const :: cty :: c_char , pub elevator_alias : * const :: cty :: c_char , pub elevator_features : :: cty :: c_uint , pub elevator_owner : * mut module , pub queue_debugfs_attrs : * const blk_mq_debugfs_attr , pub hctx_debugfs_attrs : * const blk_mq_debugfs_attr , pub icq_cache_name : [:: cty :: c_char ; 22usize] , pub list : list_head , } # [test] fn bindgen_test_layout_elevator_type () { assert_eq ! (:: core :: mem :: size_of :: < elevator_type > () , 296usize , concat ! ("Size of: " , stringify ! (elevator_type))) ; assert_eq ! (:: core :: mem :: align_of :: < elevator_type > () , 8usize , concat ! ("Alignment of " , stringify ! (elevator_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . icq_cache as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (icq_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . icq_size as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (icq_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . icq_align as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (icq_align))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . elevator_attrs as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (elevator_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . elevator_name as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (elevator_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . elevator_alias as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (elevator_alias))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . elevator_features as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (elevator_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . elevator_owner as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (elevator_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . queue_debugfs_attrs as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (queue_debugfs_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . hctx_debugfs_attrs as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (hctx_debugfs_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . icq_cache_name as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (icq_cache_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_type > ())) . list as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (elevator_type) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct elevator_queue { pub type_ : * mut elevator_type , pub elevator_data : * mut :: cty :: c_void , pub kobj : kobject , pub sysfs_lock : mutex , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub hash : [hlist_head ; 64usize] , } # [test] fn bindgen_test_layout_elevator_queue () { assert_eq ! (:: core :: mem :: size_of :: < elevator_queue > () , 632usize , concat ! ("Size of: " , stringify ! (elevator_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < elevator_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (elevator_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_queue > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elevator_queue) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_queue > ())) . elevator_data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (elevator_queue) , "::" , stringify ! (elevator_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_queue > ())) . kobj as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (elevator_queue) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_queue > ())) . sysfs_lock as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (elevator_queue) , "::" , stringify ! (sysfs_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elevator_queue > ())) . hash as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (elevator_queue) , "::" , stringify ! (hash))) ; } impl elevator_queue { # [inline] pub fn registered (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_registered (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (registered : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let registered : u32 = unsafe { :: core :: mem :: transmute (registered) } ; registered as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct elv_fs_entry { pub attr : attribute , pub show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut elevator_queue , arg2 : * mut :: cty :: c_char) -> ssize_t > , pub store : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut elevator_queue , arg2 : * const :: cty :: c_char , arg3 : size_t) -> ssize_t > , } # [test] fn bindgen_test_layout_elv_fs_entry () { assert_eq ! (:: core :: mem :: size_of :: < elv_fs_entry > () , 32usize , concat ! ("Size of: " , stringify ! (elv_fs_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < elv_fs_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (elv_fs_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elv_fs_entry > ())) . attr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (elv_fs_entry) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elv_fs_entry > ())) . show as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (elv_fs_entry) , "::" , stringify ! (show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < elv_fs_entry > ())) . store as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (elv_fs_entry) , "::" , stringify ! (store))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_mq_debugfs_attr { pub name : * const :: cty :: c_char , pub mode : umode_t , pub show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : * mut seq_file) -> :: cty :: c_int > , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : * const :: cty :: c_char , arg3 : size_t , arg4 : * mut loff_t) -> ssize_t > , pub seq_ops : * const seq_operations , } # [test] fn bindgen_test_layout_blk_mq_debugfs_attr () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_debugfs_attr > () , 40usize , concat ! ("Size of: " , stringify ! (blk_mq_debugfs_attr))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_debugfs_attr > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_debugfs_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_debugfs_attr > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_debugfs_attr) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_debugfs_attr > ())) . mode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_debugfs_attr) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_debugfs_attr > ())) . show as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_mq_debugfs_attr) , "::" , stringify ! (show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_debugfs_attr > ())) . write as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_mq_debugfs_attr) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_debugfs_attr > ())) . seq_ops as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_mq_debugfs_attr) , "::" , stringify ! (seq_ops))) ; } pub const blk_eh_timer_return_BLK_EH_DONE : blk_eh_timer_return = 0 ; pub const blk_eh_timer_return_BLK_EH_RESET_TIMER : blk_eh_timer_return = 1 ; pub type blk_eh_timer_return = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_mq_ops { pub queue_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx , arg2 : * const blk_mq_queue_data) -> blk_status_t > , pub commit_rqs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx) > , pub get_budget : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue) -> :: cty :: c_int > , pub put_budget : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue , arg2 : :: cty :: c_int) > , pub set_rq_budget_token : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : :: cty :: c_int) > , pub get_rq_budget_token : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) -> :: cty :: c_int > , pub timeout : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request , arg2 : bool_) -> blk_eh_timer_return > , pub poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx) -> :: cty :: c_int > , pub complete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , pub init_hctx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx , arg2 : * mut :: cty :: c_void , arg3 : :: cty :: c_uint) -> :: cty :: c_int > , pub exit_hctx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_hw_ctx , arg2 : :: cty :: c_uint) > , pub init_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_tag_set , arg2 : * mut request , arg3 : :: cty :: c_uint , arg4 : :: cty :: c_uint) -> :: cty :: c_int > , pub exit_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_tag_set , arg2 : * mut request , arg3 : :: cty :: c_uint) > , pub initialize_rq_fn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , pub cleanup_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request) > , pub busy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_queue) -> bool_ > , pub map_queues : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_mq_tag_set) -> :: cty :: c_int > , pub show_rq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut request) > , } # [test] fn bindgen_test_layout_blk_mq_ops () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_ops > () , 144usize , concat ! ("Size of: " , stringify ! (blk_mq_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . queue_rq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (queue_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . commit_rqs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (commit_rqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . get_budget as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (get_budget))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . put_budget as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (put_budget))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . set_rq_budget_token as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (set_rq_budget_token))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . get_rq_budget_token as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (get_rq_budget_token))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . timeout as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . poll as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . complete as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (complete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . init_hctx as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (init_hctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . exit_hctx as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (exit_hctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . init_request as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (init_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . exit_request as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (exit_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . initialize_rq_fn as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (initialize_rq_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . cleanup_rq as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (cleanup_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . busy as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (busy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . map_queues as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (map_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ops > ())) . show_rq as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ops) , "::" , stringify ! (show_rq))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_integrity_iter { pub prot_buf : * mut :: cty :: c_void , pub data_buf : * mut :: cty :: c_void , pub seed : sector_t , pub data_size : :: cty :: c_uint , pub interval : :: cty :: c_ushort , pub disk_name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_blk_integrity_iter () { assert_eq ! (:: core :: mem :: size_of :: < blk_integrity_iter > () , 40usize , concat ! ("Size of: " , stringify ! (blk_integrity_iter))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_integrity_iter > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_integrity_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_iter > ())) . prot_buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_iter) , "::" , stringify ! (prot_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_iter > ())) . data_buf as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_iter) , "::" , stringify ! (data_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_iter > ())) . seed as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_iter) , "::" , stringify ! (seed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_iter > ())) . data_size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_iter) , "::" , stringify ! (data_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_iter > ())) . interval as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_iter) , "::" , stringify ! (interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_integrity_iter > ())) . disk_name as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_integrity_iter) , "::" , stringify ! (disk_name))) ; } pub const pr_type_PR_WRITE_EXCLUSIVE : pr_type = 1 ; pub const pr_type_PR_EXCLUSIVE_ACCESS : pr_type = 2 ; pub const pr_type_PR_WRITE_EXCLUSIVE_REG_ONLY : pr_type = 3 ; pub const pr_type_PR_EXCLUSIVE_ACCESS_REG_ONLY : pr_type = 4 ; pub const pr_type_PR_WRITE_EXCLUSIVE_ALL_REGS : pr_type = 5 ; pub const pr_type_PR_EXCLUSIVE_ACCESS_ALL_REGS : pr_type = 6 ; pub type pr_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pr_ops { pub pr_register : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : _cargo_bpf_u64 , arg3 : _cargo_bpf_u64 , arg4 : _cargo_bpf_u32) -> :: cty :: c_int > , pub pr_reserve : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : _cargo_bpf_u64 , arg3 : pr_type , arg4 : _cargo_bpf_u32) -> :: cty :: c_int > , pub pr_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : _cargo_bpf_u64 , arg3 : pr_type) -> :: cty :: c_int > , pub pr_preempt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : _cargo_bpf_u64 , arg3 : _cargo_bpf_u64 , arg4 : pr_type , arg5 : bool_) -> :: cty :: c_int > , pub pr_clear : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut block_device , arg2 : _cargo_bpf_u64) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_pr_ops () { assert_eq ! (:: core :: mem :: size_of :: < pr_ops > () , 40usize , concat ! ("Size of: " , stringify ! (pr_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < pr_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (pr_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pr_ops > ())) . pr_register as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pr_ops) , "::" , stringify ! (pr_register))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pr_ops > ())) . pr_reserve as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pr_ops) , "::" , stringify ! (pr_reserve))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pr_ops > ())) . pr_release as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pr_ops) , "::" , stringify ! (pr_release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pr_ops > ())) . pr_preempt as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pr_ops) , "::" , stringify ! (pr_preempt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pr_ops > ())) . pr_clear as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pr_ops) , "::" , stringify ! (pr_clear))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct blkcg { pub css : cgroup_subsys_state , pub lock : spinlock_t , pub online_pin : refcount_t , pub blkg_tree : xarray , pub blkg_hint : * mut blkcg_gq , pub blkg_list : hlist_head , pub cpd : [* mut blkcg_policy_data ; 5usize] , pub all_blkcgs_node : list_head , pub cgwb_list : list_head , } # [test] fn bindgen_test_layout_blkcg () { assert_eq ! (:: core :: mem :: size_of :: < blkcg > () , 312usize , concat ! ("Size of: " , stringify ! (blkcg))) ; assert_eq ! (:: core :: mem :: align_of :: < blkcg > () , 8usize , concat ! ("Alignment of " , stringify ! (blkcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . css as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (css))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . lock as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . online_pin as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (online_pin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . blkg_tree as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (blkg_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . blkg_hint as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (blkg_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . blkg_list as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (blkg_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . cpd as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (cpd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . all_blkcgs_node as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (all_blkcgs_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg > ())) . cgwb_list as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (blkcg) , "::" , stringify ! (cgwb_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blkcg_policy_data { pub blkcg : * mut blkcg , pub plid : :: cty :: c_int , } # [test] fn bindgen_test_layout_blkcg_policy_data () { assert_eq ! (:: core :: mem :: size_of :: < blkcg_policy_data > () , 16usize , concat ! ("Size of: " , stringify ! (blkcg_policy_data))) ; assert_eq ! (:: core :: mem :: align_of :: < blkcg_policy_data > () , 8usize , concat ! ("Alignment of " , stringify ! (blkcg_policy_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_policy_data > ())) . blkcg as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkcg_policy_data) , "::" , stringify ! (blkcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkcg_policy_data > ())) . plid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blkcg_policy_data) , "::" , stringify ! (plid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blkg_policy_data { pub blkg : * mut blkcg_gq , pub plid : :: cty :: c_int , } # [test] fn bindgen_test_layout_blkg_policy_data () { assert_eq ! (:: core :: mem :: size_of :: < blkg_policy_data > () , 16usize , concat ! ("Size of: " , stringify ! (blkg_policy_data))) ; assert_eq ! (:: core :: mem :: align_of :: < blkg_policy_data > () , 8usize , concat ! ("Alignment of " , stringify ! (blkg_policy_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_policy_data > ())) . blkg as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blkg_policy_data) , "::" , stringify ! (blkg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blkg_policy_data > ())) . plid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blkg_policy_data) , "::" , stringify ! (plid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct memcg_vmstats_percpu { pub state : [:: cty :: c_long ; 42usize] , pub events : [:: cty :: c_ulong ; 98usize] , pub state_prev : [:: cty :: c_long ; 42usize] , pub events_prev : [:: cty :: c_ulong ; 98usize] , pub nr_page_events : :: cty :: c_ulong , pub targets : [:: cty :: c_ulong ; 2usize] , } # [test] fn bindgen_test_layout_memcg_vmstats_percpu () { assert_eq ! (:: core :: mem :: size_of :: < memcg_vmstats_percpu > () , 2264usize , concat ! ("Size of: " , stringify ! (memcg_vmstats_percpu))) ; assert_eq ! (:: core :: mem :: align_of :: < memcg_vmstats_percpu > () , 8usize , concat ! ("Alignment of " , stringify ! (memcg_vmstats_percpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats_percpu > ())) . state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats_percpu) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats_percpu > ())) . events as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats_percpu) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats_percpu > ())) . state_prev as * const _ as usize } , 1120usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats_percpu) , "::" , stringify ! (state_prev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats_percpu > ())) . events_prev as * const _ as usize } , 1456usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats_percpu) , "::" , stringify ! (events_prev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats_percpu > ())) . nr_page_events as * const _ as usize } , 2240usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats_percpu) , "::" , stringify ! (nr_page_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < memcg_vmstats_percpu > ())) . targets as * const _ as usize } , 2248usize , concat ! ("Offset of field: " , stringify ! (memcg_vmstats_percpu) , "::" , stringify ! (targets))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mem_cgroup_reclaim_iter { pub position : * mut mem_cgroup , pub generation : :: cty :: c_uint , } # [test] fn bindgen_test_layout_mem_cgroup_reclaim_iter () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup_reclaim_iter > () , 16usize , concat ! ("Size of: " , stringify ! (mem_cgroup_reclaim_iter))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup_reclaim_iter > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup_reclaim_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_reclaim_iter > ())) . position as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_reclaim_iter) , "::" , stringify ! (position))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_reclaim_iter > ())) . generation as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_reclaim_iter) , "::" , stringify ! (generation))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct lruvec_stat { pub count : [:: cty :: c_long ; 39usize] , } # [test] fn bindgen_test_layout_lruvec_stat () { assert_eq ! (:: core :: mem :: size_of :: < lruvec_stat > () , 312usize , concat ! ("Size of: " , stringify ! (lruvec_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < lruvec_stat > () , 8usize , concat ! ("Alignment of " , stringify ! (lruvec_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lruvec_stat > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (lruvec_stat) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct batched_lruvec_stat { pub count : [s32 ; 39usize] , } # [test] fn bindgen_test_layout_batched_lruvec_stat () { assert_eq ! (:: core :: mem :: size_of :: < batched_lruvec_stat > () , 156usize , concat ! ("Size of: " , stringify ! (batched_lruvec_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < batched_lruvec_stat > () , 4usize , concat ! ("Alignment of " , stringify ! (batched_lruvec_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < batched_lruvec_stat > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (batched_lruvec_stat) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct shrinker_info { pub rcu : callback_head , pub nr_deferred : * mut atomic_long_t , pub map : * mut :: cty :: c_ulong , } # [test] fn bindgen_test_layout_shrinker_info () { assert_eq ! (:: core :: mem :: size_of :: < shrinker_info > () , 32usize , concat ! ("Size of: " , stringify ! (shrinker_info))) ; assert_eq ! (:: core :: mem :: align_of :: < shrinker_info > () , 8usize , concat ! ("Alignment of " , stringify ! (shrinker_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker_info > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (shrinker_info) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker_info > ())) . nr_deferred as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (shrinker_info) , "::" , stringify ! (nr_deferred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < shrinker_info > ())) . map as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (shrinker_info) , "::" , stringify ! (map))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct mem_cgroup_per_node { pub lruvec : lruvec , pub lruvec_stat_local : * mut lruvec_stat , pub lruvec_stat_cpu : * mut batched_lruvec_stat , pub lruvec_stat : [atomic_long_t ; 39usize] , pub lru_zone_size : [:: cty :: c_ulong ; 25usize] , pub iter : mem_cgroup_reclaim_iter , pub shrinker_info : * mut shrinker_info , pub tree_node : rb_node , pub usage_in_excess : :: cty :: c_ulong , pub on_tree : bool_ , pub memcg : * mut mem_cgroup , } # [test] fn bindgen_test_layout_mem_cgroup_per_node () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup_per_node > () , 744usize , concat ! ("Size of: " , stringify ! (mem_cgroup_per_node))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup_per_node > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup_per_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . lruvec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (lruvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . lruvec_stat_local as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (lruvec_stat_local))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . lruvec_stat_cpu as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (lruvec_stat_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . lruvec_stat as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (lruvec_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . lru_zone_size as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (lru_zone_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . iter as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . shrinker_info as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (shrinker_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . tree_node as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (tree_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . usage_in_excess as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (usage_in_excess))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . on_tree as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (on_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_per_node > ())) . memcg as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_per_node) , "::" , stringify ! (memcg))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct eventfd_ctx { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mem_cgroup_threshold { pub eventfd : * mut eventfd_ctx , pub threshold : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_mem_cgroup_threshold () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup_threshold > () , 16usize , concat ! ("Size of: " , stringify ! (mem_cgroup_threshold))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup_threshold > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_threshold > ())) . eventfd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_threshold) , "::" , stringify ! (eventfd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_threshold > ())) . threshold as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_threshold) , "::" , stringify ! (threshold))) ; } # [repr (C)] # [derive (Debug)] pub struct mem_cgroup_threshold_ary { pub current_threshold : :: cty :: c_int , pub size : :: cty :: c_uint , pub entries : __IncompleteArrayField < mem_cgroup_threshold > , } # [test] fn bindgen_test_layout_mem_cgroup_threshold_ary () { assert_eq ! (:: core :: mem :: size_of :: < mem_cgroup_threshold_ary > () , 8usize , concat ! ("Size of: " , stringify ! (mem_cgroup_threshold_ary))) ; assert_eq ! (:: core :: mem :: align_of :: < mem_cgroup_threshold_ary > () , 8usize , concat ! ("Alignment of " , stringify ! (mem_cgroup_threshold_ary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_threshold_ary > ())) . current_threshold as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_threshold_ary) , "::" , stringify ! (current_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_threshold_ary > ())) . size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_threshold_ary) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mem_cgroup_threshold_ary > ())) . entries as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mem_cgroup_threshold_ary) , "::" , stringify ! (entries))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct obj_cgroup { pub refcnt : percpu_ref , pub memcg : * mut mem_cgroup , pub nr_charged_bytes : atomic_t , pub __bindgen_anon_1 : obj_cgroup__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union obj_cgroup__bindgen_ty_1 { pub list : list_head , pub rcu : callback_head , } # [test] fn bindgen_test_layout_obj_cgroup__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < obj_cgroup__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (obj_cgroup__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < obj_cgroup__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (obj_cgroup__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < obj_cgroup__bindgen_ty_1 > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (obj_cgroup__bindgen_ty_1) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < obj_cgroup__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (obj_cgroup__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_obj_cgroup () { assert_eq ! (:: core :: mem :: size_of :: < obj_cgroup > () , 48usize , concat ! ("Size of: " , stringify ! (obj_cgroup))) ; assert_eq ! (:: core :: mem :: align_of :: < obj_cgroup > () , 8usize , concat ! ("Alignment of " , stringify ! (obj_cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < obj_cgroup > ())) . refcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (obj_cgroup) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < obj_cgroup > ())) . memcg as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (obj_cgroup) , "::" , stringify ! (memcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < obj_cgroup > ())) . nr_charged_bytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (obj_cgroup) , "::" , stringify ! (nr_charged_bytes))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct percpu_cluster { pub index : swap_cluster_info , pub next : :: cty :: c_uint , } # [test] fn bindgen_test_layout_percpu_cluster () { assert_eq ! (:: core :: mem :: size_of :: < percpu_cluster > () , 12usize , concat ! ("Size of: " , stringify ! (percpu_cluster))) ; assert_eq ! (:: core :: mem :: align_of :: < percpu_cluster > () , 4usize , concat ! ("Alignment of " , stringify ! (percpu_cluster))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_cluster > ())) . index as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (percpu_cluster) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < percpu_cluster > ())) . next as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (percpu_cluster) , "::" , stringify ! (next))) ; } pub const fs_value_type_fs_value_is_undefined : fs_value_type = 0 ; pub const fs_value_type_fs_value_is_flag : fs_value_type = 1 ; pub const fs_value_type_fs_value_is_string : fs_value_type = 2 ; pub const fs_value_type_fs_value_is_blob : fs_value_type = 3 ; pub const fs_value_type_fs_value_is_filename : fs_value_type = 4 ; pub const fs_value_type_fs_value_is_file : fs_value_type = 5 ; pub type fs_value_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct fs_parameter { pub key : * const :: cty :: c_char , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_anon_1 : fs_parameter__bindgen_ty_1 , pub size : size_t , pub dirfd : :: cty :: c_int , } # [repr (C)] # [derive (Copy , Clone)] pub union fs_parameter__bindgen_ty_1 { pub string : * mut :: cty :: c_char , pub blob : * mut :: cty :: c_void , pub name : * mut filename , pub file : * mut file , } # [test] fn bindgen_test_layout_fs_parameter__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < fs_parameter__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (fs_parameter__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_parameter__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_parameter__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter__bindgen_ty_1 > ())) . string as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parameter__bindgen_ty_1) , "::" , stringify ! (string))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter__bindgen_ty_1 > ())) . blob as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parameter__bindgen_ty_1) , "::" , stringify ! (blob))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter__bindgen_ty_1 > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parameter__bindgen_ty_1) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter__bindgen_ty_1 > ())) . file as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parameter__bindgen_ty_1) , "::" , stringify ! (file))) ; } # [test] fn bindgen_test_layout_fs_parameter () { assert_eq ! (:: core :: mem :: size_of :: < fs_parameter > () , 40usize , concat ! ("Size of: " , stringify ! (fs_parameter))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_parameter > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_parameter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter > ())) . key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parameter) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter > ())) . size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fs_parameter) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parameter > ())) . dirfd as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fs_parameter) , "::" , stringify ! (dirfd))) ; } impl fs_parameter { # [inline] pub fn type_ (& self) -> fs_value_type { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_type (& mut self , val : fs_value_type) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (type_ : fs_value_type) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let type_ : u32 = unsafe { :: core :: mem :: transmute (type_) } ; type_ as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fc_log { pub usage : refcount_t , pub head : _cargo_bpf_u8 , pub tail : _cargo_bpf_u8 , pub need_free : _cargo_bpf_u8 , pub owner : * mut module , pub buffer : [* mut :: cty :: c_char ; 8usize] , } # [test] fn bindgen_test_layout_fc_log () { assert_eq ! (:: core :: mem :: size_of :: < fc_log > () , 80usize , concat ! ("Size of: " , stringify ! (fc_log))) ; assert_eq ! (:: core :: mem :: align_of :: < fc_log > () , 8usize , concat ! ("Alignment of " , stringify ! (fc_log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fc_log > ())) . usage as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fc_log) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fc_log > ())) . head as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fc_log) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fc_log > ())) . tail as * const _ as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (fc_log) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fc_log > ())) . need_free as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (fc_log) , "::" , stringify ! (need_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fc_log > ())) . owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fc_log) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fc_log > ())) . buffer as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fc_log) , "::" , stringify ! (buffer))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fs_context_operations { pub free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context) > , pub dup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context , arg2 : * mut fs_context) -> :: cty :: c_int > , pub parse_param : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context , arg2 : * mut fs_parameter) -> :: cty :: c_int > , pub parse_monolithic : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub get_tree : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context) -> :: cty :: c_int > , pub reconfigure : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_fs_context_operations () { assert_eq ! (:: core :: mem :: size_of :: < fs_context_operations > () , 48usize , concat ! ("Size of: " , stringify ! (fs_context_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_context_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_context_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context_operations > ())) . free as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_context_operations) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context_operations > ())) . dup as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fs_context_operations) , "::" , stringify ! (dup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context_operations > ())) . parse_param as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fs_context_operations) , "::" , stringify ! (parse_param))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context_operations > ())) . parse_monolithic as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fs_context_operations) , "::" , stringify ! (parse_monolithic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context_operations > ())) . get_tree as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fs_context_operations) , "::" , stringify ! (get_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_context_operations > ())) . reconfigure as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fs_context_operations) , "::" , stringify ! (reconfigure))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fs_parse_result { pub negated : bool_ , pub __bindgen_anon_1 : fs_parse_result__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union fs_parse_result__bindgen_ty_1 { pub boolean : bool_ , pub int_32 : :: cty :: c_int , pub uint_32 : :: cty :: c_uint , pub uint_64 : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_fs_parse_result__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < fs_parse_result__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (fs_parse_result__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_parse_result__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_parse_result__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parse_result__bindgen_ty_1 > ())) . boolean as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parse_result__bindgen_ty_1) , "::" , stringify ! (boolean))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parse_result__bindgen_ty_1 > ())) . int_32 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parse_result__bindgen_ty_1) , "::" , stringify ! (int_32))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parse_result__bindgen_ty_1 > ())) . uint_32 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parse_result__bindgen_ty_1) , "::" , stringify ! (uint_32))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parse_result__bindgen_ty_1 > ())) . uint_64 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parse_result__bindgen_ty_1) , "::" , stringify ! (uint_64))) ; } # [test] fn bindgen_test_layout_fs_parse_result () { assert_eq ! (:: core :: mem :: size_of :: < fs_parse_result > () , 16usize , concat ! ("Size of: " , stringify ! (fs_parse_result))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_parse_result > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_parse_result))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_parse_result > ())) . negated as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_parse_result) , "::" , stringify ! (negated))) ; } pub type __le16 = __u16 ; pub type __be16 = __u16 ; pub type __be32 = __u32 ; pub type __be64 = __u64 ; pub type __wsum = __u32 ; pub type slab_flags_t = :: cty :: c_uint ; pub type call_single_data_t = __call_single_data ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct raw_notifier_head { pub head : * mut notifier_block , } # [test] fn bindgen_test_layout_raw_notifier_head () { assert_eq ! (:: core :: mem :: size_of :: < raw_notifier_head > () , 8usize , concat ! ("Size of: " , stringify ! (raw_notifier_head))) ; assert_eq ! (:: core :: mem :: align_of :: < raw_notifier_head > () , 8usize , concat ! ("Alignment of " , stringify ! (raw_notifier_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < raw_notifier_head > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (raw_notifier_head) , "::" , stringify ! (head))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ida { pub xa : xarray , } # [test] fn bindgen_test_layout_ida () { assert_eq ! (:: core :: mem :: size_of :: < ida > () , 16usize , concat ! ("Size of: " , stringify ! (ida))) ; assert_eq ! (:: core :: mem :: align_of :: < ida > () , 8usize , concat ! ("Alignment of " , stringify ! (ida))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ida > ())) . xa as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ida) , "::" , stringify ! (xa))) ; } pub type __addrpair = __u64 ; pub type __portpair = __u32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct possible_net_t { pub net : * mut net , } # [test] fn bindgen_test_layout_possible_net_t () { assert_eq ! (:: core :: mem :: size_of :: < possible_net_t > () , 8usize , concat ! ("Size of: " , stringify ! (possible_net_t))) ; assert_eq ! (:: core :: mem :: align_of :: < possible_net_t > () , 8usize , concat ! ("Alignment of " , stringify ! (possible_net_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < possible_net_t > ())) . net as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (possible_net_t) , "::" , stringify ! (net))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct in6_addr { pub in6_u : in6_addr__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union in6_addr__bindgen_ty_1 { pub u6_addr8 : [__u8 ; 16usize] , pub u6_addr16 : [__be16 ; 8usize] , pub u6_addr32 : [__be32 ; 4usize] , } # [test] fn bindgen_test_layout_in6_addr__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < in6_addr__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < in6_addr__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < in6_addr__bindgen_ty_1 > ())) . u6_addr8 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (u6_addr8))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < in6_addr__bindgen_ty_1 > ())) . u6_addr16 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (u6_addr16))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < in6_addr__bindgen_ty_1 > ())) . u6_addr32 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr__bindgen_ty_1) , "::" , stringify ! (u6_addr32))) ; } # [test] fn bindgen_test_layout_in6_addr () { assert_eq ! (:: core :: mem :: size_of :: < in6_addr > () , 16usize , concat ! ("Size of: " , stringify ! (in6_addr))) ; assert_eq ! (:: core :: mem :: align_of :: < in6_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in6_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < in6_addr > ())) . in6_u as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in6_addr) , "::" , stringify ! (in6_u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hlist_nulls_node { pub next : * mut hlist_nulls_node , pub pprev : * mut * mut hlist_nulls_node , } # [test] fn bindgen_test_layout_hlist_nulls_node () { assert_eq ! (:: core :: mem :: size_of :: < hlist_nulls_node > () , 16usize , concat ! ("Size of: " , stringify ! (hlist_nulls_node))) ; assert_eq ! (:: core :: mem :: align_of :: < hlist_nulls_node > () , 8usize , concat ! ("Alignment of " , stringify ! (hlist_nulls_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_nulls_node > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hlist_nulls_node) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_nulls_node > ())) . pprev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (hlist_nulls_node) , "::" , stringify ! (pprev))) ; } # [repr (C)] pub struct sock_common { pub __bindgen_anon_1 : sock_common__bindgen_ty_1 , pub __bindgen_anon_2 : sock_common__bindgen_ty_2 , pub __bindgen_anon_3 : sock_common__bindgen_ty_3 , pub skc_family : :: cty :: c_ushort , pub skc_state : :: cty :: c_uchar , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub skc_bound_dev_if : :: cty :: c_int , pub __bindgen_anon_4 : sock_common__bindgen_ty_4 , pub skc_prot : * mut proto , pub skc_net : possible_net_t , pub skc_v6_daddr : in6_addr , pub skc_v6_rcv_saddr : in6_addr , pub skc_cookie : atomic64_t , pub __bindgen_anon_5 : sock_common__bindgen_ty_5 , pub skc_dontcopy_begin : __IncompleteArrayField < :: cty :: c_int > , pub __bindgen_anon_6 : sock_common__bindgen_ty_6 , pub skc_tx_queue_mapping : :: cty :: c_ushort , pub skc_rx_queue_mapping : :: cty :: c_ushort , pub __bindgen_anon_7 : sock_common__bindgen_ty_7 , pub skc_refcnt : refcount_t , pub skc_dontcopy_end : __IncompleteArrayField < :: cty :: c_int > , pub __bindgen_anon_8 : sock_common__bindgen_ty_8 , } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_1 { pub skc_addrpair : __addrpair , pub __bindgen_anon_1 : sock_common__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sock_common__bindgen_ty_1__bindgen_ty_1 { pub skc_daddr : __be32 , pub skc_rcv_saddr : __be32 , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_1__bindgen_ty_1 > ())) . skc_daddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (skc_daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_1__bindgen_ty_1 > ())) . skc_rcv_saddr as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (skc_rcv_saddr))) ; } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_1 > ())) . skc_addrpair as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_1) , "::" , stringify ! (skc_addrpair))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_2 { pub skc_hash : :: cty :: c_uint , pub skc_u16hashes : [__u16 ; 2usize] , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_2 > ())) . skc_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_2) , "::" , stringify ! (skc_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_2 > ())) . skc_u16hashes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_2) , "::" , stringify ! (skc_u16hashes))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_3 { pub skc_portpair : __portpair , pub __bindgen_anon_1 : sock_common__bindgen_ty_3__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sock_common__bindgen_ty_3__bindgen_ty_1 { pub skc_dport : __be16 , pub skc_num : __u16 , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_3__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_3__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_3__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_3__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_3__bindgen_ty_1 > ())) . skc_dport as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (skc_dport))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_3__bindgen_ty_1 > ())) . skc_num as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_3__bindgen_ty_1) , "::" , stringify ! (skc_num))) ; } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_3 > () , 4usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_3 > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_3 > ())) . skc_portpair as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_3) , "::" , stringify ! (skc_portpair))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_4 { pub skc_bind_node : hlist_node , pub skc_portaddr_node : hlist_node , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_4 > () , 16usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_4 > ())) . skc_bind_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_4) , "::" , stringify ! (skc_bind_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_4 > ())) . skc_portaddr_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_4) , "::" , stringify ! (skc_portaddr_node))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_5 { pub skc_flags : :: cty :: c_ulong , pub skc_listener : * mut sock , pub skc_tw_dr : * mut inet_timewait_death_row , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_5 > () , 8usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_5 > ())) . skc_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_5) , "::" , stringify ! (skc_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_5 > ())) . skc_listener as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_5) , "::" , stringify ! (skc_listener))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_5 > ())) . skc_tw_dr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_5) , "::" , stringify ! (skc_tw_dr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_6 { pub skc_node : hlist_node , pub skc_nulls_node : hlist_nulls_node , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_6 > () , 16usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_6 > ())) . skc_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_6) , "::" , stringify ! (skc_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_6 > ())) . skc_nulls_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_6) , "::" , stringify ! (skc_nulls_node))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_7 { pub skc_incoming_cpu : :: cty :: c_int , pub skc_rcv_wnd : _cargo_bpf_u32 , pub skc_tw_rcv_nxt : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_7 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_7 > () , 4usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_7))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_7 > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_7 > ())) . skc_incoming_cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_7) , "::" , stringify ! (skc_incoming_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_7 > ())) . skc_rcv_wnd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_7) , "::" , stringify ! (skc_rcv_wnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_7 > ())) . skc_tw_rcv_nxt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_7) , "::" , stringify ! (skc_tw_rcv_nxt))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock_common__bindgen_ty_8 { pub skc_rxhash : _cargo_bpf_u32 , pub skc_window_clamp : _cargo_bpf_u32 , pub skc_tw_snd_nxt : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_sock_common__bindgen_ty_8 () { assert_eq ! (:: core :: mem :: size_of :: < sock_common__bindgen_ty_8 > () , 4usize , concat ! ("Size of: " , stringify ! (sock_common__bindgen_ty_8))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common__bindgen_ty_8 > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_common__bindgen_ty_8))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_8 > ())) . skc_rxhash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_8) , "::" , stringify ! (skc_rxhash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_8 > ())) . skc_window_clamp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_8) , "::" , stringify ! (skc_window_clamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common__bindgen_ty_8 > ())) . skc_tw_snd_nxt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_common__bindgen_ty_8) , "::" , stringify ! (skc_tw_snd_nxt))) ; } # [test] fn bindgen_test_layout_sock_common () { assert_eq ! (:: core :: mem :: size_of :: < sock_common > () , 136usize , concat ! ("Size of: " , stringify ! (sock_common))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_common > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_family as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_state as * const _ as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_bound_dev_if as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_bound_dev_if))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_prot as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_net as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_v6_daddr as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_v6_daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_v6_rcv_saddr as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_v6_rcv_saddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_cookie as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_dontcopy_begin as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_dontcopy_begin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_tx_queue_mapping as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_tx_queue_mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_rx_queue_mapping as * const _ as usize } , 122usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_rx_queue_mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_refcnt as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_common > ())) . skc_dontcopy_end as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (sock_common) , "::" , stringify ! (skc_dontcopy_end))) ; } impl sock_common { # [inline] pub fn skc_reuse (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 4u8) as u8) } } # [inline] pub fn set_skc_reuse (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 4u8 , val as u64) } } # [inline] pub fn skc_reuseport (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u8) } } # [inline] pub fn set_skc_reuseport (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn skc_ipv6only (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u8) } } # [inline] pub fn set_skc_ipv6only (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn skc_net_refcnt (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u8) } } # [inline] pub fn set_skc_net_refcnt (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (skc_reuse : :: cty :: c_uchar , skc_reuseport : :: cty :: c_uchar , skc_ipv6only : :: cty :: c_uchar , skc_net_refcnt : :: cty :: c_uchar) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 4u8 , { let skc_reuse : u8 = unsafe { :: core :: mem :: transmute (skc_reuse) } ; skc_reuse as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let skc_reuseport : u8 = unsafe { :: core :: mem :: transmute (skc_reuseport) } ; skc_reuseport as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let skc_ipv6only : u8 = unsafe { :: core :: mem :: transmute (skc_ipv6only) } ; skc_ipv6only as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let skc_net_refcnt : u8 = unsafe { :: core :: mem :: transmute (skc_net_refcnt) } ; skc_net_refcnt as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct socket_lock_t { pub slock : spinlock_t , pub owned : :: cty :: c_int , pub wq : wait_queue_head_t , } # [test] fn bindgen_test_layout_socket_lock_t () { assert_eq ! (:: core :: mem :: size_of :: < socket_lock_t > () , 32usize , concat ! ("Size of: " , stringify ! (socket_lock_t))) ; assert_eq ! (:: core :: mem :: align_of :: < socket_lock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (socket_lock_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_lock_t > ())) . slock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (socket_lock_t) , "::" , stringify ! (slock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_lock_t > ())) . owned as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (socket_lock_t) , "::" , stringify ! (owned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_lock_t > ())) . wq as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (socket_lock_t) , "::" , stringify ! (wq))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct sk_buff_head { pub next : * mut sk_buff , pub prev : * mut sk_buff , pub qlen : __u32 , pub lock : spinlock_t , } # [test] fn bindgen_test_layout_sk_buff_head () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff_head > () , 24usize , concat ! ("Size of: " , stringify ! (sk_buff_head))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff_head > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff_head > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff_head) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff_head > ())) . prev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sk_buff_head) , "::" , stringify ! (prev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff_head > ())) . qlen as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sk_buff_head) , "::" , stringify ! (qlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff_head > ())) . lock as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (sk_buff_head) , "::" , stringify ! (lock))) ; } pub type netdev_features_t = _cargo_bpf_u64 ; # [repr (C)] # [derive (Copy , Clone)] pub struct sock_cgroup_data { pub __bindgen_anon_1 : sock_cgroup_data__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union sock_cgroup_data__bindgen_ty_1 { pub __bindgen_anon_1 : sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 , pub val : _cargo_bpf_u64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub padding : _cargo_bpf_u8 , pub prioidx : _cargo_bpf_u16 , pub classid : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (sock_cgroup_data__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (sock_cgroup_data__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 > ())) . padding as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (sock_cgroup_data__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 > ())) . prioidx as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sock_cgroup_data__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (prioidx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 > ())) . classid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sock_cgroup_data__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (classid))) ; } impl sock_cgroup_data__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn is_data (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_is_data (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn no_refcnt (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_no_refcnt (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn unused (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 6u8) as u8) } } # [inline] pub fn set_unused (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 6u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_data : _cargo_bpf_u8 , no_refcnt : _cargo_bpf_u8 , unused : _cargo_bpf_u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_data : u8 = unsafe { :: core :: mem :: transmute (is_data) } ; is_data as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let no_refcnt : u8 = unsafe { :: core :: mem :: transmute (no_refcnt) } ; no_refcnt as u64 }) ; __bindgen_bitfield_unit . set (2usize , 6u8 , { let unused : u8 = unsafe { :: core :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_sock_cgroup_data__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sock_cgroup_data__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (sock_cgroup_data__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_cgroup_data__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_cgroup_data__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_cgroup_data__bindgen_ty_1 > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_cgroup_data__bindgen_ty_1) , "::" , stringify ! (val))) ; } # [test] fn bindgen_test_layout_sock_cgroup_data () { assert_eq ! (:: core :: mem :: size_of :: < sock_cgroup_data > () , 8usize , concat ! ("Size of: " , stringify ! (sock_cgroup_data))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_cgroup_data > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_cgroup_data))) ; } # [repr (C)] pub struct sock { pub __sk_common : sock_common , pub sk_lock : socket_lock_t , pub sk_drops : atomic_t , pub sk_rcvlowat : :: cty :: c_int , pub sk_error_queue : sk_buff_head , pub sk_rx_skb_cache : * mut sk_buff , pub sk_receive_queue : sk_buff_head , pub sk_backlog : sock__bindgen_ty_1 , pub sk_forward_alloc : :: cty :: c_int , pub sk_ll_usec : :: cty :: c_uint , pub sk_napi_id : :: cty :: c_uint , pub sk_rcvbuf : :: cty :: c_int , pub sk_filter : * mut sk_filter , pub __bindgen_anon_1 : sock__bindgen_ty_2 , pub sk_policy : [* mut xfrm_policy ; 2usize] , pub sk_rx_dst : * mut dst_entry , pub sk_rx_dst_ifindex : :: cty :: c_int , pub sk_rx_dst_cookie : _cargo_bpf_u32 , pub sk_dst_cache : * mut dst_entry , pub sk_omem_alloc : atomic_t , pub sk_sndbuf : :: cty :: c_int , pub sk_wmem_queued : :: cty :: c_int , pub sk_wmem_alloc : refcount_t , pub sk_tsq_flags : :: cty :: c_ulong , pub __bindgen_anon_2 : sock__bindgen_ty_3 , pub sk_tx_skb_cache : * mut sk_buff , pub sk_write_queue : sk_buff_head , pub sk_peek_off : __s32 , pub sk_write_pending : :: cty :: c_int , pub sk_dst_pending_confirm : __u32 , pub sk_pacing_status : _cargo_bpf_u32 , pub sk_sndtimeo : :: cty :: c_long , pub sk_timer : timer_list , pub sk_priority : __u32 , pub sk_mark : __u32 , pub sk_pacing_rate : :: cty :: c_ulong , pub sk_max_pacing_rate : :: cty :: c_ulong , pub sk_frag : page_frag , pub sk_route_caps : netdev_features_t , pub sk_route_nocaps : netdev_features_t , pub sk_route_forced_caps : netdev_features_t , pub sk_gso_type : :: cty :: c_int , pub sk_gso_max_size : :: cty :: c_uint , pub sk_allocation : gfp_t , pub sk_txhash : __u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub sk_pacing_shift : _cargo_bpf_u8 , pub sk_type : _cargo_bpf_u16 , pub sk_protocol : _cargo_bpf_u16 , pub sk_gso_max_segs : _cargo_bpf_u16 , pub sk_lingertime : :: cty :: c_ulong , pub sk_prot_creator : * mut proto , pub sk_callback_lock : rwlock_t , pub sk_err : :: cty :: c_int , pub sk_err_soft : :: cty :: c_int , pub sk_ack_backlog : _cargo_bpf_u32 , pub sk_max_ack_backlog : _cargo_bpf_u32 , pub sk_uid : kuid_t , pub sk_prefer_busy_poll : _cargo_bpf_u8 , pub sk_busy_poll_budget : _cargo_bpf_u16 , pub sk_peer_lock : spinlock_t , pub sk_peer_pid : * mut pid , pub sk_peer_cred : * const cred , pub sk_rcvtimeo : :: cty :: c_long , pub sk_stamp : ktime_t , pub sk_tsflags : _cargo_bpf_u16 , pub sk_shutdown : _cargo_bpf_u8 , pub sk_tskey : _cargo_bpf_u32 , pub sk_zckey : atomic_t , pub sk_clockid : _cargo_bpf_u8 , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub sk_socket : * mut socket , pub sk_user_data : * mut :: cty :: c_void , pub sk_security : * mut :: cty :: c_void , pub sk_cgrp_data : sock_cgroup_data , pub sk_memcg : * mut mem_cgroup , pub sk_state_change : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub sk_data_ready : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub sk_write_space : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub sk_error_report : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub sk_backlog_rcv : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sk_buff) -> :: cty :: c_int > , pub sk_validate_xmit_skb : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut net_device , arg3 : * mut sk_buff) -> * mut sk_buff > , pub sk_destruct : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub sk_reuseport_cb : * mut sock_reuseport , pub sk_bpf_storage : * mut bpf_local_storage , pub sk_rcu : callback_head , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sock__bindgen_ty_1 { pub rmem_alloc : atomic_t , pub len : :: cty :: c_int , pub head : * mut sk_buff , pub tail : * mut sk_buff , } # [test] fn bindgen_test_layout_sock__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sock__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (sock__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sock__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_1 > ())) . rmem_alloc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_1) , "::" , stringify ! (rmem_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_1 > ())) . len as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_1) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_1 > ())) . head as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_1) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_1 > ())) . tail as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_1) , "::" , stringify ! (tail))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock__bindgen_ty_2 { pub sk_wq : * mut socket_wq , pub sk_wq_raw : * mut socket_wq , } # [test] fn bindgen_test_layout_sock__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < sock__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (sock__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < sock__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_2 > ())) . sk_wq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_2) , "::" , stringify ! (sk_wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_2 > ())) . sk_wq_raw as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_2) , "::" , stringify ! (sk_wq_raw))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sock__bindgen_ty_3 { pub sk_send_head : * mut sk_buff , pub tcp_rtx_queue : rb_root , } # [test] fn bindgen_test_layout_sock__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < sock__bindgen_ty_3 > () , 8usize , concat ! ("Size of: " , stringify ! (sock__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < sock__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (sock__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_3 > ())) . sk_send_head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_3) , "::" , stringify ! (sk_send_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock__bindgen_ty_3 > ())) . tcp_rtx_queue as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock__bindgen_ty_3) , "::" , stringify ! (tcp_rtx_queue))) ; } # [test] fn bindgen_test_layout_sock () { assert_eq ! (:: core :: mem :: size_of :: < sock > () , 776usize , concat ! ("Size of: " , stringify ! (sock))) ; assert_eq ! (:: core :: mem :: align_of :: < sock > () , 8usize , concat ! ("Alignment of " , stringify ! (sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . __sk_common as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (__sk_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_lock as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_drops as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_drops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rcvlowat as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rcvlowat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_error_queue as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_error_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rx_skb_cache as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rx_skb_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_receive_queue as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_receive_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_backlog as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_backlog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_forward_alloc as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_forward_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_ll_usec as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_ll_usec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_napi_id as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_napi_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rcvbuf as * const _ as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rcvbuf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_filter as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_policy as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rx_dst as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rx_dst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rx_dst_ifindex as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rx_dst_ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rx_dst_cookie as * const _ as usize } , 316usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rx_dst_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_dst_cache as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_dst_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_omem_alloc as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_omem_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_sndbuf as * const _ as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_sndbuf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_wmem_queued as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_wmem_queued))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_wmem_alloc as * const _ as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_wmem_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_tsq_flags as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_tsq_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_tx_skb_cache as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_tx_skb_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_write_queue as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_write_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_peek_off as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_peek_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_write_pending as * const _ as usize } , 396usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_write_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_dst_pending_confirm as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_dst_pending_confirm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_pacing_status as * const _ as usize } , 404usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_pacing_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_sndtimeo as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_sndtimeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_timer as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_priority as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_mark as * const _ as usize } , 460usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_mark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_pacing_rate as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_pacing_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_max_pacing_rate as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_max_pacing_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_frag as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_frag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_route_caps as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_route_caps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_route_nocaps as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_route_nocaps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_route_forced_caps as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_route_forced_caps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_gso_type as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_gso_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_gso_max_size as * const _ as usize } , 524usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_gso_max_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_allocation as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_allocation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_txhash as * const _ as usize } , 532usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_txhash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_pacing_shift as * const _ as usize } , 537usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_pacing_shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_type as * const _ as usize } , 538usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_protocol as * const _ as usize } , 540usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_gso_max_segs as * const _ as usize } , 542usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_gso_max_segs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_lingertime as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_lingertime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_prot_creator as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_prot_creator))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_callback_lock as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_callback_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_err as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_err))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_err_soft as * const _ as usize } , 572usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_err_soft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_ack_backlog as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_ack_backlog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_max_ack_backlog as * const _ as usize } , 580usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_max_ack_backlog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_uid as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_prefer_busy_poll as * const _ as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_prefer_busy_poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_busy_poll_budget as * const _ as usize } , 590usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_busy_poll_budget))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_peer_lock as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_peer_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_peer_pid as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_peer_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_peer_cred as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_peer_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rcvtimeo as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rcvtimeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_stamp as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_tsflags as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_tsflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_shutdown as * const _ as usize } , 634usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_tskey as * const _ as usize } , 636usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_tskey))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_zckey as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_zckey))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_clockid as * const _ as usize } , 644usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_clockid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_socket as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_socket))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_user_data as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_user_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_security as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_security))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_cgrp_data as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_cgrp_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_memcg as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_memcg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_state_change as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_state_change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_data_ready as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_data_ready))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_write_space as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_write_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_error_report as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_error_report))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_backlog_rcv as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_backlog_rcv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_validate_xmit_skb as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_validate_xmit_skb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_destruct as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_destruct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_reuseport_cb as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_reuseport_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_bpf_storage as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_bpf_storage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock > ())) . sk_rcu as * const _ as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (sock) , "::" , stringify ! (sk_rcu))) ; } impl sock { # [inline] pub fn sk_padding (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_sk_padding (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn sk_kern_sock (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_sk_kern_sock (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn sk_no_check_tx (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u8) } } # [inline] pub fn set_sk_no_check_tx (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn sk_no_check_rx (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u8) } } # [inline] pub fn set_sk_no_check_rx (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn sk_userlocks (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 4u8) as u8) } } # [inline] pub fn set_sk_userlocks (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 4u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sk_padding : _cargo_bpf_u8 , sk_kern_sock : _cargo_bpf_u8 , sk_no_check_tx : _cargo_bpf_u8 , sk_no_check_rx : _cargo_bpf_u8 , sk_userlocks : _cargo_bpf_u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let sk_padding : u8 = unsafe { :: core :: mem :: transmute (sk_padding) } ; sk_padding as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let sk_kern_sock : u8 = unsafe { :: core :: mem :: transmute (sk_kern_sock) } ; sk_kern_sock as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let sk_no_check_tx : u8 = unsafe { :: core :: mem :: transmute (sk_no_check_tx) } ; sk_no_check_tx as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let sk_no_check_rx : u8 = unsafe { :: core :: mem :: transmute (sk_no_check_rx) } ; sk_no_check_rx as u64 }) ; __bindgen_bitfield_unit . set (4usize , 4u8 , { let sk_userlocks : u8 = unsafe { :: core :: mem :: transmute (sk_userlocks) } ; sk_userlocks as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn sk_txtime_deadline_mode (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_sk_txtime_deadline_mode (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn sk_txtime_report_errors (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_sk_txtime_report_errors (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn sk_txtime_unused (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (2usize , 6u8) as u8) } } # [inline] pub fn set_sk_txtime_unused (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (2usize , 6u8 , val as u64) } } # [inline] pub fn new_bitfield_2 (sk_txtime_deadline_mode : _cargo_bpf_u8 , sk_txtime_report_errors : _cargo_bpf_u8 , sk_txtime_unused : _cargo_bpf_u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let sk_txtime_deadline_mode : u8 = unsafe { :: core :: mem :: transmute (sk_txtime_deadline_mode) } ; sk_txtime_deadline_mode as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let sk_txtime_report_errors : u8 = unsafe { :: core :: mem :: transmute (sk_txtime_report_errors) } ; sk_txtime_report_errors as u64 }) ; __bindgen_bitfield_unit . set (2usize , 6u8 , { let sk_txtime_unused : u8 = unsafe { :: core :: mem :: transmute (sk_txtime_unused) } ; sk_txtime_unused as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rhash_head { pub next : * mut rhash_head , } # [test] fn bindgen_test_layout_rhash_head () { assert_eq ! (:: core :: mem :: size_of :: < rhash_head > () , 8usize , concat ! ("Size of: " , stringify ! (rhash_head))) ; assert_eq ! (:: core :: mem :: align_of :: < rhash_head > () , 8usize , concat ! ("Alignment of " , stringify ! (rhash_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhash_head > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rhash_head) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rhashtable_compare_arg { pub ht : * mut rhashtable , pub key : * const :: cty :: c_void , } # [test] fn bindgen_test_layout_rhashtable_compare_arg () { assert_eq ! (:: core :: mem :: size_of :: < rhashtable_compare_arg > () , 16usize , concat ! ("Size of: " , stringify ! (rhashtable_compare_arg))) ; assert_eq ! (:: core :: mem :: align_of :: < rhashtable_compare_arg > () , 8usize , concat ! ("Alignment of " , stringify ! (rhashtable_compare_arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_compare_arg > ())) . ht as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rhashtable_compare_arg) , "::" , stringify ! (ht))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_compare_arg > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rhashtable_compare_arg) , "::" , stringify ! (key))) ; } pub type rht_hashfn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_void , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32) -> _cargo_bpf_u32 > ; pub type rht_obj_hashfn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_void , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32) -> _cargo_bpf_u32 > ; pub type rht_obj_cmpfn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rhashtable_compare_arg , arg2 : * const :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rhashtable_params { pub nelem_hint : _cargo_bpf_u16 , pub key_len : _cargo_bpf_u16 , pub key_offset : _cargo_bpf_u16 , pub head_offset : _cargo_bpf_u16 , pub max_size : :: cty :: c_uint , pub min_size : _cargo_bpf_u16 , pub automatic_shrinking : bool_ , pub hashfn : rht_hashfn_t , pub obj_hashfn : rht_obj_hashfn_t , pub obj_cmpfn : rht_obj_cmpfn_t , } # [test] fn bindgen_test_layout_rhashtable_params () { assert_eq ! (:: core :: mem :: size_of :: < rhashtable_params > () , 40usize , concat ! ("Size of: " , stringify ! (rhashtable_params))) ; assert_eq ! (:: core :: mem :: align_of :: < rhashtable_params > () , 8usize , concat ! ("Alignment of " , stringify ! (rhashtable_params))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . nelem_hint as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (nelem_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . key_len as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . key_offset as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (key_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . head_offset as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (head_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . max_size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (max_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . min_size as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (min_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . automatic_shrinking as * const _ as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (automatic_shrinking))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . hashfn as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (hashfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . obj_hashfn as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (obj_hashfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable_params > ())) . obj_cmpfn as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rhashtable_params) , "::" , stringify ! (obj_cmpfn))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rhashtable { pub tbl : * mut bucket_table , pub key_len : :: cty :: c_uint , pub max_elems : :: cty :: c_uint , pub p : rhashtable_params , pub rhlist : bool_ , pub run_work : work_struct , pub mutex : mutex , pub lock : spinlock_t , pub nelems : atomic_t , } # [test] fn bindgen_test_layout_rhashtable () { assert_eq ! (:: core :: mem :: size_of :: < rhashtable > () , 136usize , concat ! ("Size of: " , stringify ! (rhashtable))) ; assert_eq ! (:: core :: mem :: align_of :: < rhashtable > () , 8usize , concat ! ("Alignment of " , stringify ! (rhashtable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . tbl as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . key_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . max_elems as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (max_elems))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . p as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . rhlist as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (rhlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . run_work as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (run_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . mutex as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . lock as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rhashtable > ())) . nelems as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (rhashtable) , "::" , stringify ! (nelems))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fs_struct { pub users : :: cty :: c_int , pub lock : spinlock_t , pub seq : seqcount_spinlock_t , pub umask : :: cty :: c_int , pub in_exec : :: cty :: c_int , pub root : path , pub pwd : path , } # [test] fn bindgen_test_layout_fs_struct () { assert_eq ! (:: core :: mem :: size_of :: < fs_struct > () , 56usize , concat ! ("Size of: " , stringify ! (fs_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . users as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . lock as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . seq as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . umask as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (umask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . in_exec as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (in_exec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . root as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_struct > ())) . pwd as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fs_struct) , "::" , stringify ! (pwd))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct pipe_inode_info { pub mutex : mutex , pub rd_wait : wait_queue_head_t , pub wr_wait : wait_queue_head_t , pub head : :: cty :: c_uint , pub tail : :: cty :: c_uint , pub max_usage : :: cty :: c_uint , pub ring_size : :: cty :: c_uint , pub note_loss : bool_ , pub nr_accounted : :: cty :: c_uint , pub readers : :: cty :: c_uint , pub writers : :: cty :: c_uint , pub files : :: cty :: c_uint , pub r_counter : :: cty :: c_uint , pub w_counter : :: cty :: c_uint , pub poll_usage : :: cty :: c_uint , pub tmp_page : * mut page , pub fasync_readers : * mut fasync_struct , pub fasync_writers : * mut fasync_struct , pub bufs : * mut pipe_buffer , pub user : * mut user_struct , pub watch_queue : * mut watch_queue , } # [test] fn bindgen_test_layout_pipe_inode_info () { assert_eq ! (:: core :: mem :: size_of :: < pipe_inode_info > () , 176usize , concat ! ("Size of: " , stringify ! (pipe_inode_info))) ; assert_eq ! (:: core :: mem :: align_of :: < pipe_inode_info > () , 8usize , concat ! ("Alignment of " , stringify ! (pipe_inode_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . mutex as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . rd_wait as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (rd_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . wr_wait as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (wr_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . head as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . tail as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . max_usage as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (max_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . ring_size as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (ring_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . note_loss as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (note_loss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . nr_accounted as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (nr_accounted))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . readers as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (readers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . writers as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (writers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . files as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . r_counter as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (r_counter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . w_counter as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (w_counter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . poll_usage as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (poll_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . tmp_page as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (tmp_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . fasync_readers as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (fasync_readers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . fasync_writers as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (fasync_writers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . bufs as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (bufs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . user as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_inode_info > ())) . watch_queue as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (pipe_inode_info) , "::" , stringify ! (watch_queue))) ; } pub type __kernel_sa_family_t = :: cty :: c_ushort ; # [repr (C)] # [derive (Copy , Clone)] pub struct __kernel_sockaddr_storage { pub __bindgen_anon_1 : __kernel_sockaddr_storage__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union __kernel_sockaddr_storage__bindgen_ty_1 { pub __bindgen_anon_1 : __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 , pub __align : * mut :: cty :: c_void , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 { pub ss_family : __kernel_sa_family_t , pub __data : [:: cty :: c_char ; 126usize] , } # [test] fn bindgen_test_layout___kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 > ())) . ss_family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (ss_family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 > ())) . __data as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (__data))) ; } # [test] fn bindgen_test_layout___kernel_sockaddr_storage__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < __kernel_sockaddr_storage__bindgen_ty_1 > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < __kernel_sockaddr_storage__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __kernel_sockaddr_storage__bindgen_ty_1 > ())) . __align as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_sockaddr_storage__bindgen_ty_1) , "::" , stringify ! (__align))) ; } # [test] fn bindgen_test_layout___kernel_sockaddr_storage () { assert_eq ! (:: core :: mem :: size_of :: < __kernel_sockaddr_storage > () , 128usize , concat ! ("Size of: " , stringify ! (__kernel_sockaddr_storage))) ; assert_eq ! (:: core :: mem :: align_of :: < __kernel_sockaddr_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (__kernel_sockaddr_storage))) ; } pub type sa_family_t = __kernel_sa_family_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: cty :: c_char ; 14usize] , } # [test] fn bindgen_test_layout_sockaddr () { assert_eq ! (:: core :: mem :: size_of :: < sockaddr > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr))) ; assert_eq ! (:: core :: mem :: align_of :: < sockaddr > () , 2usize , concat ! ("Alignment of " , stringify ! (sockaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sockaddr > ())) . sa_family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sockaddr > ())) . sa_data as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr) , "::" , stringify ! (sa_data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct msghdr { pub msg_name : * mut :: cty :: c_void , pub msg_namelen : :: cty :: c_int , pub msg_iter : iov_iter , pub __bindgen_anon_1 : msghdr__bindgen_ty_1 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub msg_controllen : __kernel_size_t , pub msg_flags : :: cty :: c_uint , pub msg_iocb : * mut kiocb , } # [repr (C)] # [derive (Copy , Clone)] pub union msghdr__bindgen_ty_1 { pub msg_control : * mut :: cty :: c_void , pub msg_control_user : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_msghdr__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < msghdr__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (msghdr__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < msghdr__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr__bindgen_ty_1 > ())) . msg_control as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr__bindgen_ty_1) , "::" , stringify ! (msg_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr__bindgen_ty_1 > ())) . msg_control_user as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr__bindgen_ty_1) , "::" , stringify ! (msg_control_user))) ; } # [test] fn bindgen_test_layout_msghdr () { assert_eq ! (:: core :: mem :: size_of :: < msghdr > () , 96usize , concat ! ("Size of: " , stringify ! (msghdr))) ; assert_eq ! (:: core :: mem :: align_of :: < msghdr > () , 8usize , concat ! ("Alignment of " , stringify ! (msghdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr > ())) . msg_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr > ())) . msg_namelen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_namelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr > ())) . msg_iter as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr > ())) . msg_controllen as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_controllen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr > ())) . msg_flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msghdr > ())) . msg_iocb as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (msghdr) , "::" , stringify ! (msg_iocb))) ; } impl msghdr { # [inline] pub fn msg_control_is_user (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_msg_control_is_user (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (msg_control_is_user : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let msg_control_is_user : u8 = unsafe { :: core :: mem :: transmute (msg_control_is_user) } ; msg_control_is_user as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sync_serial_settings { pub clock_rate : :: cty :: c_uint , pub clock_type : :: cty :: c_uint , pub loopback : :: cty :: c_ushort , } # [test] fn bindgen_test_layout_sync_serial_settings () { assert_eq ! (:: core :: mem :: size_of :: < sync_serial_settings > () , 12usize , concat ! ("Size of: " , stringify ! (sync_serial_settings))) ; assert_eq ! (:: core :: mem :: align_of :: < sync_serial_settings > () , 4usize , concat ! ("Alignment of " , stringify ! (sync_serial_settings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sync_serial_settings > ())) . clock_rate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sync_serial_settings) , "::" , stringify ! (clock_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sync_serial_settings > ())) . clock_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sync_serial_settings) , "::" , stringify ! (clock_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sync_serial_settings > ())) . loopback as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sync_serial_settings) , "::" , stringify ! (loopback))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct te1_settings { pub clock_rate : :: cty :: c_uint , pub clock_type : :: cty :: c_uint , pub loopback : :: cty :: c_ushort , pub slot_map : :: cty :: c_uint , } # [test] fn bindgen_test_layout_te1_settings () { assert_eq ! (:: core :: mem :: size_of :: < te1_settings > () , 16usize , concat ! ("Size of: " , stringify ! (te1_settings))) ; assert_eq ! (:: core :: mem :: align_of :: < te1_settings > () , 4usize , concat ! ("Alignment of " , stringify ! (te1_settings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < te1_settings > ())) . clock_rate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (te1_settings) , "::" , stringify ! (clock_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < te1_settings > ())) . clock_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (te1_settings) , "::" , stringify ! (clock_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < te1_settings > ())) . loopback as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (te1_settings) , "::" , stringify ! (loopback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < te1_settings > ())) . slot_map as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (te1_settings) , "::" , stringify ! (slot_map))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct raw_hdlc_proto { pub encoding : :: cty :: c_ushort , pub parity : :: cty :: c_ushort , } # [test] fn bindgen_test_layout_raw_hdlc_proto () { assert_eq ! (:: core :: mem :: size_of :: < raw_hdlc_proto > () , 4usize , concat ! ("Size of: " , stringify ! (raw_hdlc_proto))) ; assert_eq ! (:: core :: mem :: align_of :: < raw_hdlc_proto > () , 2usize , concat ! ("Alignment of " , stringify ! (raw_hdlc_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < raw_hdlc_proto > ())) . encoding as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (raw_hdlc_proto) , "::" , stringify ! (encoding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < raw_hdlc_proto > ())) . parity as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (raw_hdlc_proto) , "::" , stringify ! (parity))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fr_proto { pub t391 : :: cty :: c_uint , pub t392 : :: cty :: c_uint , pub n391 : :: cty :: c_uint , pub n392 : :: cty :: c_uint , pub n393 : :: cty :: c_uint , pub lmi : :: cty :: c_ushort , pub dce : :: cty :: c_ushort , } # [test] fn bindgen_test_layout_fr_proto () { assert_eq ! (:: core :: mem :: size_of :: < fr_proto > () , 24usize , concat ! ("Size of: " , stringify ! (fr_proto))) ; assert_eq ! (:: core :: mem :: align_of :: < fr_proto > () , 4usize , concat ! ("Alignment of " , stringify ! (fr_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . t391 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (t391))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . t392 as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (t392))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . n391 as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (n391))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . n392 as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (n392))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . n393 as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (n393))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . lmi as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (lmi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto > ())) . dce as * const _ as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (fr_proto) , "::" , stringify ! (dce))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fr_proto_pvc { pub dlci : :: cty :: c_uint , } # [test] fn bindgen_test_layout_fr_proto_pvc () { assert_eq ! (:: core :: mem :: size_of :: < fr_proto_pvc > () , 4usize , concat ! ("Size of: " , stringify ! (fr_proto_pvc))) ; assert_eq ! (:: core :: mem :: align_of :: < fr_proto_pvc > () , 4usize , concat ! ("Alignment of " , stringify ! (fr_proto_pvc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto_pvc > ())) . dlci as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fr_proto_pvc) , "::" , stringify ! (dlci))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fr_proto_pvc_info { pub dlci : :: cty :: c_uint , pub master : [:: cty :: c_char ; 16usize] , } # [test] fn bindgen_test_layout_fr_proto_pvc_info () { assert_eq ! (:: core :: mem :: size_of :: < fr_proto_pvc_info > () , 20usize , concat ! ("Size of: " , stringify ! (fr_proto_pvc_info))) ; assert_eq ! (:: core :: mem :: align_of :: < fr_proto_pvc_info > () , 4usize , concat ! ("Alignment of " , stringify ! (fr_proto_pvc_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto_pvc_info > ())) . dlci as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fr_proto_pvc_info) , "::" , stringify ! (dlci))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fr_proto_pvc_info > ())) . master as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fr_proto_pvc_info) , "::" , stringify ! (master))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cisco_proto { pub interval : :: cty :: c_uint , pub timeout : :: cty :: c_uint , } # [test] fn bindgen_test_layout_cisco_proto () { assert_eq ! (:: core :: mem :: size_of :: < cisco_proto > () , 8usize , concat ! ("Size of: " , stringify ! (cisco_proto))) ; assert_eq ! (:: core :: mem :: align_of :: < cisco_proto > () , 4usize , concat ! ("Alignment of " , stringify ! (cisco_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cisco_proto > ())) . interval as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cisco_proto) , "::" , stringify ! (interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cisco_proto > ())) . timeout as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cisco_proto) , "::" , stringify ! (timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct x25_hdlc_proto { pub dce : :: cty :: c_ushort , pub modulo : :: cty :: c_uint , pub window : :: cty :: c_uint , pub t1 : :: cty :: c_uint , pub t2 : :: cty :: c_uint , pub n2 : :: cty :: c_uint , } # [test] fn bindgen_test_layout_x25_hdlc_proto () { assert_eq ! (:: core :: mem :: size_of :: < x25_hdlc_proto > () , 24usize , concat ! ("Size of: " , stringify ! (x25_hdlc_proto))) ; assert_eq ! (:: core :: mem :: align_of :: < x25_hdlc_proto > () , 4usize , concat ! ("Alignment of " , stringify ! (x25_hdlc_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x25_hdlc_proto > ())) . dce as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (x25_hdlc_proto) , "::" , stringify ! (dce))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x25_hdlc_proto > ())) . modulo as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (x25_hdlc_proto) , "::" , stringify ! (modulo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x25_hdlc_proto > ())) . window as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (x25_hdlc_proto) , "::" , stringify ! (window))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x25_hdlc_proto > ())) . t1 as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (x25_hdlc_proto) , "::" , stringify ! (t1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x25_hdlc_proto > ())) . t2 as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (x25_hdlc_proto) , "::" , stringify ! (t2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x25_hdlc_proto > ())) . n2 as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (x25_hdlc_proto) , "::" , stringify ! (n2))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ifmap { pub mem_start : :: cty :: c_ulong , pub mem_end : :: cty :: c_ulong , pub base_addr : :: cty :: c_ushort , pub irq : :: cty :: c_uchar , pub dma : :: cty :: c_uchar , pub port : :: cty :: c_uchar , } # [test] fn bindgen_test_layout_ifmap () { assert_eq ! (:: core :: mem :: size_of :: < ifmap > () , 24usize , concat ! ("Size of: " , stringify ! (ifmap))) ; assert_eq ! (:: core :: mem :: align_of :: < ifmap > () , 8usize , concat ! ("Alignment of " , stringify ! (ifmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmap > ())) . mem_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifmap) , "::" , stringify ! (mem_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmap > ())) . mem_end as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ifmap) , "::" , stringify ! (mem_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmap > ())) . base_addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ifmap) , "::" , stringify ! (base_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmap > ())) . irq as * const _ as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (ifmap) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmap > ())) . dma as * const _ as usize } , 19usize , concat ! ("Offset of field: " , stringify ! (ifmap) , "::" , stringify ! (dma))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmap > ())) . port as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (ifmap) , "::" , stringify ! (port))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct if_settings { pub type_ : :: cty :: c_uint , pub size : :: cty :: c_uint , pub ifs_ifsu : if_settings__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union if_settings__bindgen_ty_1 { pub raw_hdlc : * mut raw_hdlc_proto , pub cisco : * mut cisco_proto , pub fr : * mut fr_proto , pub fr_pvc : * mut fr_proto_pvc , pub fr_pvc_info : * mut fr_proto_pvc_info , pub x25 : * mut x25_hdlc_proto , pub sync : * mut sync_serial_settings , pub te1 : * mut te1_settings , } # [test] fn bindgen_test_layout_if_settings__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < if_settings__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (if_settings__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < if_settings__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (if_settings__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . raw_hdlc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (raw_hdlc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . cisco as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (cisco))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . fr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (fr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . fr_pvc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (fr_pvc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . fr_pvc_info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (fr_pvc_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . x25 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (x25))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . sync as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (sync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings__bindgen_ty_1 > ())) . te1 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings__bindgen_ty_1) , "::" , stringify ! (te1))) ; } # [test] fn bindgen_test_layout_if_settings () { assert_eq ! (:: core :: mem :: size_of :: < if_settings > () , 16usize , concat ! ("Size of: " , stringify ! (if_settings))) ; assert_eq ! (:: core :: mem :: align_of :: < if_settings > () , 8usize , concat ! ("Alignment of " , stringify ! (if_settings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (if_settings) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings > ())) . size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (if_settings) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < if_settings > ())) . ifs_ifsu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (if_settings) , "::" , stringify ! (ifs_ifsu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ifreq { pub ifr_ifrn : ifreq__bindgen_ty_1 , pub ifr_ifru : ifreq__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union ifreq__bindgen_ty_1 { pub ifrn_name : [:: cty :: c_char ; 16usize] , } # [test] fn bindgen_test_layout_ifreq__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < ifreq__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (ifreq__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < ifreq__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (ifreq__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_1 > ())) . ifrn_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_1) , "::" , stringify ! (ifrn_name))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union ifreq__bindgen_ty_2 { pub ifru_addr : sockaddr , pub ifru_dstaddr : sockaddr , pub ifru_broadaddr : sockaddr , pub ifru_netmask : sockaddr , pub ifru_hwaddr : sockaddr , pub ifru_flags : :: cty :: c_short , pub ifru_ivalue : :: cty :: c_int , pub ifru_mtu : :: cty :: c_int , pub ifru_map : ifmap , pub ifru_slave : [:: cty :: c_char ; 16usize] , pub ifru_newname : [:: cty :: c_char ; 16usize] , pub ifru_data : * mut :: cty :: c_void , pub ifru_settings : if_settings , } # [test] fn bindgen_test_layout_ifreq__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < ifreq__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (ifreq__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < ifreq__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (ifreq__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_dstaddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_dstaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_broadaddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_broadaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_netmask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_netmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_hwaddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_hwaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_ivalue as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_ivalue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_mtu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_slave as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_slave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_newname as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_newname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq__bindgen_ty_2 > ())) . ifru_settings as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq__bindgen_ty_2) , "::" , stringify ! (ifru_settings))) ; } # [test] fn bindgen_test_layout_ifreq () { assert_eq ! (:: core :: mem :: size_of :: < ifreq > () , 40usize , concat ! ("Size of: " , stringify ! (ifreq))) ; assert_eq ! (:: core :: mem :: align_of :: < ifreq > () , 8usize , concat ! ("Alignment of " , stringify ! (ifreq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq > ())) . ifr_ifrn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifreq) , "::" , stringify ! (ifr_ifrn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifreq > ())) . ifr_ifru as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ifreq) , "::" , stringify ! (ifr_ifru))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ld_semaphore { pub count : atomic_long_t , pub wait_lock : raw_spinlock_t , pub wait_readers : :: cty :: c_uint , pub read_wait : list_head , pub write_wait : list_head , } # [test] fn bindgen_test_layout_ld_semaphore () { assert_eq ! (:: core :: mem :: size_of :: < ld_semaphore > () , 48usize , concat ! ("Size of: " , stringify ! (ld_semaphore))) ; assert_eq ! (:: core :: mem :: align_of :: < ld_semaphore > () , 8usize , concat ! ("Alignment of " , stringify ! (ld_semaphore))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ld_semaphore > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ld_semaphore) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ld_semaphore > ())) . wait_lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ld_semaphore) , "::" , stringify ! (wait_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ld_semaphore > ())) . wait_readers as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ld_semaphore) , "::" , stringify ! (wait_readers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ld_semaphore > ())) . read_wait as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ld_semaphore) , "::" , stringify ! (read_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ld_semaphore > ())) . write_wait as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ld_semaphore) , "::" , stringify ! (write_wait))) ; } pub type tcflag_t = :: cty :: c_uint ; pub type cc_t = :: cty :: c_uchar ; pub type speed_t = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ktermios { pub c_iflag : tcflag_t , pub c_oflag : tcflag_t , pub c_cflag : tcflag_t , pub c_lflag : tcflag_t , pub c_line : cc_t , pub c_cc : [cc_t ; 19usize] , pub c_ispeed : speed_t , pub c_ospeed : speed_t , } # [test] fn bindgen_test_layout_ktermios () { assert_eq ! (:: core :: mem :: size_of :: < ktermios > () , 44usize , concat ! ("Size of: " , stringify ! (ktermios))) ; assert_eq ! (:: core :: mem :: align_of :: < ktermios > () , 4usize , concat ! ("Alignment of " , stringify ! (ktermios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_iflag as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_iflag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_oflag as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_oflag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_cflag as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_cflag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_lflag as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_lflag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_line as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_line))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_cc as * const _ as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_cc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_ispeed as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_ispeed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ktermios > ())) . c_ospeed as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ktermios) , "::" , stringify ! (c_ospeed))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct winsize { pub ws_row : :: cty :: c_ushort , pub ws_col : :: cty :: c_ushort , pub ws_xpixel : :: cty :: c_ushort , pub ws_ypixel : :: cty :: c_ushort , } # [test] fn bindgen_test_layout_winsize () { assert_eq ! (:: core :: mem :: size_of :: < winsize > () , 8usize , concat ! ("Size of: " , stringify ! (winsize))) ; assert_eq ! (:: core :: mem :: align_of :: < winsize > () , 2usize , concat ! ("Alignment of " , stringify ! (winsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < winsize > ())) . ws_row as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (winsize) , "::" , stringify ! (ws_row))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < winsize > ())) . ws_col as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (winsize) , "::" , stringify ! (ws_col))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < winsize > ())) . ws_xpixel as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (winsize) , "::" , stringify ! (ws_xpixel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < winsize > ())) . ws_ypixel as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (winsize) , "::" , stringify ! (ws_ypixel))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct tty_struct { pub magic : :: cty :: c_int , pub kref : kref , pub dev : * mut device , pub driver : * mut tty_driver , pub ops : * const tty_operations , pub index : :: cty :: c_int , pub ldisc_sem : ld_semaphore , pub ldisc : * mut tty_ldisc , pub atomic_write_lock : mutex , pub legacy_mutex : mutex , pub throttle_mutex : mutex , pub termios_rwsem : rw_semaphore , pub winsize_mutex : mutex , pub ctrl_lock : spinlock_t , pub flow_lock : spinlock_t , pub termios : ktermios , pub termios_locked : ktermios , pub name : [:: cty :: c_char ; 64usize] , pub pgrp : * mut pid , pub session : * mut pid , pub flags : :: cty :: c_ulong , pub count : :: cty :: c_int , pub winsize : winsize , pub _bitfield_align_1 : [u64 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 16usize] > , pub hw_stopped : :: cty :: c_int , pub _bitfield_align_2 : [u64 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 15usize] > , pub receive_room : :: cty :: c_uint , pub flow_change : :: cty :: c_int , pub link : * mut tty_struct , pub fasync : * mut fasync_struct , pub write_wait : wait_queue_head_t , pub read_wait : wait_queue_head_t , pub hangup_work : work_struct , pub disc_data : * mut :: cty :: c_void , pub driver_data : * mut :: cty :: c_void , pub files_lock : spinlock_t , pub tty_files : list_head , pub closing : :: cty :: c_int , pub write_buf : * mut :: cty :: c_uchar , pub write_cnt : :: cty :: c_int , pub SAK_work : work_struct , pub port : * mut tty_port , } # [test] fn bindgen_test_layout_tty_struct () { assert_eq ! (:: core :: mem :: size_of :: < tty_struct > () , 696usize , concat ! ("Size of: " , stringify ! (tty_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . magic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (magic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . kref as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . dev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . driver as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (driver))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . index as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . ldisc_sem as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (ldisc_sem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . ldisc as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (ldisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . atomic_write_lock as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (atomic_write_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . legacy_mutex as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (legacy_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . throttle_mutex as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (throttle_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . termios_rwsem as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (termios_rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . winsize_mutex as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (winsize_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . ctrl_lock as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (ctrl_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . flow_lock as * const _ as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (flow_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . termios as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (termios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . termios_locked as * const _ as usize } , 316usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (termios_locked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . name as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . pgrp as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (pgrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . session as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (session))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . flags as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . count as * const _ as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . winsize as * const _ as usize } , 452usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (winsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . hw_stopped as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (hw_stopped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . receive_room as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (receive_room))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . flow_change as * const _ as usize } , 492usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (flow_change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . link as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . fasync as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (fasync))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . write_wait as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (write_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . read_wait as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (read_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . hangup_work as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (hangup_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . disc_data as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (disc_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . driver_data as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (driver_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . files_lock as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (files_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . tty_files as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (tty_files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . closing as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (closing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . write_buf as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (write_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . write_cnt as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (write_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . SAK_work as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (SAK_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_struct > ())) . port as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (tty_struct) , "::" , stringify ! (port))) ; } impl tty_struct { # [inline] pub fn stopped (& self) -> :: cty :: c_ulong { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u64) } } # [inline] pub fn set_stopped (& mut self , val : :: cty :: c_ulong) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn flow_stopped (& self) -> :: cty :: c_ulong { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u64) } } # [inline] pub fn set_flow_stopped (& mut self , val : :: cty :: c_ulong) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn unused (& self) -> :: cty :: c_ulong { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (64usize , 62u8) as u64) } } # [inline] pub fn set_unused (& mut self , val : :: cty :: c_ulong) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (64usize , 62u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (stopped : :: cty :: c_ulong , flow_stopped : :: cty :: c_ulong , unused : :: cty :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let stopped : u64 = unsafe { :: core :: mem :: transmute (stopped) } ; stopped as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let flow_stopped : u64 = unsafe { :: core :: mem :: transmute (flow_stopped) } ; flow_stopped as u64 }) ; __bindgen_bitfield_unit . set (64usize , 62u8 , { let unused : u64 = unsafe { :: core :: mem :: transmute (unused) } ; unused as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn ctrl_status (& self) -> :: cty :: c_ulong { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (0usize , 8u8) as u64) } } # [inline] pub fn set_ctrl_status (& mut self , val : :: cty :: c_ulong) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn packet (& self) -> :: cty :: c_ulong { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (8usize , 1u8) as u64) } } # [inline] pub fn set_packet (& mut self , val : :: cty :: c_ulong) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn unused_ctrl (& self) -> :: cty :: c_ulong { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (64usize , 55u8) as u64) } } # [inline] pub fn set_unused_ctrl (& mut self , val : :: cty :: c_ulong) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (64usize , 55u8 , val as u64) } } # [inline] pub fn new_bitfield_2 (ctrl_status : :: cty :: c_ulong , packet : :: cty :: c_ulong , unused_ctrl : :: cty :: c_ulong) -> __BindgenBitfieldUnit < [u8 ; 15usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 15usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let ctrl_status : u64 = unsafe { :: core :: mem :: transmute (ctrl_status) } ; ctrl_status as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let packet : u64 = unsafe { :: core :: mem :: transmute (packet) } ; packet as u64 }) ; __bindgen_bitfield_unit . set (64usize , 55u8 , { let unused_ctrl : u64 = unsafe { :: core :: mem :: transmute (unused_ctrl) } ; unused_ctrl as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct read_descriptor_t { pub written : size_t , pub count : size_t , pub arg : read_descriptor_t__bindgen_ty_1 , pub error : :: cty :: c_int , } # [repr (C)] # [derive (Copy , Clone)] pub union read_descriptor_t__bindgen_ty_1 { pub buf : * mut :: cty :: c_char , pub data : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_read_descriptor_t__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < read_descriptor_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (read_descriptor_t__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < read_descriptor_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (read_descriptor_t__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < read_descriptor_t__bindgen_ty_1 > ())) . buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (read_descriptor_t__bindgen_ty_1) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < read_descriptor_t__bindgen_ty_1 > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (read_descriptor_t__bindgen_ty_1) , "::" , stringify ! (data))) ; } # [test] fn bindgen_test_layout_read_descriptor_t () { assert_eq ! (:: core :: mem :: size_of :: < read_descriptor_t > () , 32usize , concat ! ("Size of: " , stringify ! (read_descriptor_t))) ; assert_eq ! (:: core :: mem :: align_of :: < read_descriptor_t > () , 8usize , concat ! ("Alignment of " , stringify ! (read_descriptor_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < read_descriptor_t > ())) . written as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (read_descriptor_t) , "::" , stringify ! (written))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < read_descriptor_t > ())) . count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (read_descriptor_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < read_descriptor_t > ())) . arg as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (read_descriptor_t) , "::" , stringify ! (arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < read_descriptor_t > ())) . error as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (read_descriptor_t) , "::" , stringify ! (error))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct posix_acl_entry { pub e_tag : :: cty :: c_short , pub e_perm : :: cty :: c_ushort , pub __bindgen_anon_1 : posix_acl_entry__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union posix_acl_entry__bindgen_ty_1 { pub e_uid : kuid_t , pub e_gid : kgid_t , } # [test] fn bindgen_test_layout_posix_acl_entry__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < posix_acl_entry__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (posix_acl_entry__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < posix_acl_entry__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (posix_acl_entry__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl_entry__bindgen_ty_1 > ())) . e_uid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_acl_entry__bindgen_ty_1) , "::" , stringify ! (e_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl_entry__bindgen_ty_1 > ())) . e_gid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_acl_entry__bindgen_ty_1) , "::" , stringify ! (e_gid))) ; } # [test] fn bindgen_test_layout_posix_acl_entry () { assert_eq ! (:: core :: mem :: size_of :: < posix_acl_entry > () , 8usize , concat ! ("Size of: " , stringify ! (posix_acl_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < posix_acl_entry > () , 4usize , concat ! ("Alignment of " , stringify ! (posix_acl_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl_entry > ())) . e_tag as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_acl_entry) , "::" , stringify ! (e_tag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl_entry > ())) . e_perm as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (posix_acl_entry) , "::" , stringify ! (e_perm))) ; } # [repr (C)] pub struct posix_acl { pub a_refcount : refcount_t , pub a_rcu : callback_head , pub a_count : :: cty :: c_uint , pub a_entries : __IncompleteArrayField < posix_acl_entry > , } # [test] fn bindgen_test_layout_posix_acl () { assert_eq ! (:: core :: mem :: size_of :: < posix_acl > () , 32usize , concat ! ("Size of: " , stringify ! (posix_acl))) ; assert_eq ! (:: core :: mem :: align_of :: < posix_acl > () , 8usize , concat ! ("Alignment of " , stringify ! (posix_acl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl > ())) . a_refcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (posix_acl) , "::" , stringify ! (a_refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl > ())) . a_rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (posix_acl) , "::" , stringify ! (a_rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl > ())) . a_count as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (posix_acl) , "::" , stringify ! (a_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < posix_acl > ())) . a_entries as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (posix_acl) , "::" , stringify ! (a_entries))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tty_operations { pub lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_driver , arg2 : * mut file , arg3 : :: cty :: c_int) -> * mut tty_struct > , pub install : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_driver , arg2 : * mut tty_struct) -> :: cty :: c_int > , pub remove : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_driver , arg2 : * mut tty_struct) > , pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file) -> :: cty :: c_int > , pub close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file) > , pub shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub cleanup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * const :: cty :: c_uchar , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub put_char : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_uchar) -> :: cty :: c_int > , pub flush_chars : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub write_room : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) -> :: cty :: c_int > , pub chars_in_buffer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) -> :: cty :: c_int > , pub ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_int > , pub compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_long > , pub set_termios : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut ktermios) > , pub throttle : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub unthrottle : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub hangup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub break_ctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub flush_buffer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub set_ldisc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub wait_until_sent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_int) > , pub send_xchar : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_char) > , pub tiocmget : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) -> :: cty :: c_int > , pub tiocmset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_uint) -> :: cty :: c_int > , pub resize : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut winsize) -> :: cty :: c_int > , pub get_icount : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut serial_icounter_struct) -> :: cty :: c_int > , pub get_serial : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut serial_struct) -> :: cty :: c_int > , pub set_serial : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut serial_struct) -> :: cty :: c_int > , pub show_fdinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut seq_file) > , pub poll_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_driver , arg2 : :: cty :: c_int , arg3 : * mut :: cty :: c_char) -> :: cty :: c_int > , pub poll_get_char : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_driver , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub poll_put_char : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_driver , arg2 : :: cty :: c_int , arg3 : :: cty :: c_char) > , pub proc_show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_tty_operations () { assert_eq ! (:: core :: mem :: size_of :: < tty_operations > () , 288usize , concat ! ("Size of: " , stringify ! (tty_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . lookup as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (lookup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . install as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (install))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . remove as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (remove))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . open as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . close as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . shutdown as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . cleanup as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (cleanup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . write as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . put_char as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (put_char))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . flush_chars as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (flush_chars))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . write_room as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (write_room))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . chars_in_buffer as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (chars_in_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . ioctl as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . compat_ioctl as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . set_termios as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (set_termios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . throttle as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (throttle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . unthrottle as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (unthrottle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . stop as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . start as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . hangup as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (hangup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . break_ctl as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (break_ctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . flush_buffer as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (flush_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . set_ldisc as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (set_ldisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . wait_until_sent as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (wait_until_sent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . send_xchar as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (send_xchar))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . tiocmget as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (tiocmget))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . tiocmset as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (tiocmset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . resize as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (resize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . get_icount as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (get_icount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . get_serial as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (get_serial))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . set_serial as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (set_serial))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . show_fdinfo as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (show_fdinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . poll_init as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (poll_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . poll_get_char as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (poll_get_char))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . poll_put_char as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (poll_put_char))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_operations > ())) . proc_show as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (tty_operations) , "::" , stringify ! (proc_show))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tty_driver { pub magic : :: cty :: c_int , pub kref : kref , pub cdevs : * mut * mut cdev , pub owner : * mut module , pub driver_name : * const :: cty :: c_char , pub name : * const :: cty :: c_char , pub name_base : :: cty :: c_int , pub major : :: cty :: c_int , pub minor_start : :: cty :: c_int , pub num : :: cty :: c_uint , pub type_ : :: cty :: c_short , pub subtype : :: cty :: c_short , pub init_termios : ktermios , pub flags : :: cty :: c_ulong , pub proc_entry : * mut proc_dir_entry , pub other : * mut tty_driver , pub ttys : * mut * mut tty_struct , pub ports : * mut * mut tty_port , pub termios : * mut * mut ktermios , pub driver_state : * mut :: cty :: c_void , pub ops : * const tty_operations , pub tty_drivers : list_head , } # [test] fn bindgen_test_layout_tty_driver () { assert_eq ! (:: core :: mem :: size_of :: < tty_driver > () , 184usize , concat ! ("Size of: " , stringify ! (tty_driver))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_driver > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_driver))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . magic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (magic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . kref as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . cdevs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (cdevs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . owner as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . driver_name as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (driver_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . name as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . name_base as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (name_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . major as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (major))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . minor_start as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (minor_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . num as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . type_ as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . subtype as * const _ as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (subtype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . init_termios as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (init_termios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . flags as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . proc_entry as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (proc_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . other as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (other))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . ttys as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (ttys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . ports as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (ports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . termios as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (termios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . driver_state as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (driver_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . ops as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_driver > ())) . tty_drivers as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tty_driver) , "::" , stringify ! (tty_drivers))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tty_ldisc_ops { pub name : * mut :: cty :: c_char , pub num : :: cty :: c_int , pub flags : :: cty :: c_int , pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) -> :: cty :: c_int > , pub close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub flush_buffer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file , arg3 : * mut :: cty :: c_uchar , arg4 : size_t , arg5 : * mut * mut :: cty :: c_void , arg6 : :: cty :: c_ulong) -> ssize_t > , pub write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file , arg3 : * const :: cty :: c_uchar , arg4 : size_t) -> ssize_t > , pub ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file , arg3 : :: cty :: c_uint , arg4 : :: cty :: c_ulong) -> :: cty :: c_int > , pub compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file , arg3 : :: cty :: c_uint , arg4 : :: cty :: c_ulong) -> :: cty :: c_int > , pub set_termios : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut ktermios) > , pub poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * mut file , arg3 : * mut poll_table_struct) -> __poll_t > , pub hangup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) -> :: cty :: c_int > , pub receive_buf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * const :: cty :: c_uchar , arg3 : * mut :: cty :: c_char , arg4 : :: cty :: c_int) > , pub write_wakeup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct) > , pub dcd_change : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : :: cty :: c_uint) > , pub receive_buf2 : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_struct , arg2 : * const :: cty :: c_uchar , arg3 : * mut :: cty :: c_char , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub owner : * mut module , pub refcount : :: cty :: c_int , } # [test] fn bindgen_test_layout_tty_ldisc_ops () { assert_eq ! (:: core :: mem :: size_of :: < tty_ldisc_ops > () , 144usize , concat ! ("Size of: " , stringify ! (tty_ldisc_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_ldisc_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_ldisc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . num as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . open as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . close as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . flush_buffer as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (flush_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . read as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . write as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . ioctl as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . compat_ioctl as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . set_termios as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (set_termios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . poll as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . hangup as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (hangup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . receive_buf as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (receive_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . write_wakeup as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (write_wakeup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . dcd_change as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (dcd_change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . receive_buf2 as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (receive_buf2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . owner as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc_ops > ())) . refcount as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc_ops) , "::" , stringify ! (refcount))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tty_ldisc { pub ops : * mut tty_ldisc_ops , pub tty : * mut tty_struct , } # [test] fn bindgen_test_layout_tty_ldisc () { assert_eq ! (:: core :: mem :: size_of :: < tty_ldisc > () , 16usize , concat ! ("Size of: " , stringify ! (tty_ldisc))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_ldisc > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_ldisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc > ())) . ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_ldisc > ())) . tty as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_ldisc) , "::" , stringify ! (tty))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tty_port_operations { pub carrier_raised : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port) -> :: cty :: c_int > , pub dtr_rts : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port , arg2 : :: cty :: c_int) > , pub shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port) > , pub activate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port , arg2 : * mut tty_struct) -> :: cty :: c_int > , pub destruct : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port) > , } # [test] fn bindgen_test_layout_tty_port_operations () { assert_eq ! (:: core :: mem :: size_of :: < tty_port_operations > () , 40usize , concat ! ("Size of: " , stringify ! (tty_port_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_port_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_port_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_operations > ())) . carrier_raised as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_port_operations) , "::" , stringify ! (carrier_raised))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_operations > ())) . dtr_rts as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_port_operations) , "::" , stringify ! (dtr_rts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_operations > ())) . shutdown as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tty_port_operations) , "::" , stringify ! (shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_operations > ())) . activate as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tty_port_operations) , "::" , stringify ! (activate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_operations > ())) . destruct as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tty_port_operations) , "::" , stringify ! (destruct))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tty_port_client_operations { pub receive_buf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port , arg2 : * const :: cty :: c_uchar , arg3 : * const :: cty :: c_uchar , arg4 : size_t) -> :: cty :: c_int > , pub write_wakeup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tty_port) > , } # [test] fn bindgen_test_layout_tty_port_client_operations () { assert_eq ! (:: core :: mem :: size_of :: < tty_port_client_operations > () , 16usize , concat ! ("Size of: " , stringify ! (tty_port_client_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < tty_port_client_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (tty_port_client_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_client_operations > ())) . receive_buf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tty_port_client_operations) , "::" , stringify ! (receive_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tty_port_client_operations > ())) . write_wakeup as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tty_port_client_operations) , "::" , stringify ! (write_wakeup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_core { pub sysctl_hdr : * mut ctl_table_header , pub sysctl_somaxconn : :: cty :: c_int , pub sock_inuse : * mut :: cty :: c_int , pub prot_inuse : * mut prot_inuse , } # [test] fn bindgen_test_layout_netns_core () { assert_eq ! (:: core :: mem :: size_of :: < netns_core > () , 32usize , concat ! ("Size of: " , stringify ! (netns_core))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_core > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_core))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_core > ())) . sysctl_hdr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_core) , "::" , stringify ! (sysctl_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_core > ())) . sysctl_somaxconn as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_core) , "::" , stringify ! (sysctl_somaxconn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_core > ())) . sock_inuse as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_core) , "::" , stringify ! (sock_inuse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_core > ())) . prot_inuse as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_core) , "::" , stringify ! (prot_inuse))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_mib { pub ip_statistics : * mut ipstats_mib , pub ipv6_statistics : * mut ipstats_mib , pub tcp_statistics : * mut tcp_mib , pub net_statistics : * mut linux_mib , pub udp_statistics : * mut udp_mib , pub udp_stats_in6 : * mut udp_mib , pub xfrm_statistics : * mut linux_xfrm_mib , pub tls_statistics : * mut linux_tls_mib , pub mptcp_statistics : * mut mptcp_mib , pub udplite_statistics : * mut udp_mib , pub udplite_stats_in6 : * mut udp_mib , pub icmp_statistics : * mut icmp_mib , pub icmpmsg_statistics : * mut icmpmsg_mib , pub icmpv6_statistics : * mut icmpv6_mib , pub icmpv6msg_statistics : * mut icmpv6msg_mib , pub proc_net_devsnmp6 : * mut proc_dir_entry , } # [test] fn bindgen_test_layout_netns_mib () { assert_eq ! (:: core :: mem :: size_of :: < netns_mib > () , 128usize , concat ! ("Size of: " , stringify ! (netns_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . ip_statistics as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (ip_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . ipv6_statistics as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (ipv6_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . tcp_statistics as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (tcp_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . net_statistics as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (net_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . udp_statistics as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (udp_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . udp_stats_in6 as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (udp_stats_in6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . xfrm_statistics as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (xfrm_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . tls_statistics as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (tls_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . mptcp_statistics as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (mptcp_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . udplite_statistics as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (udplite_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . udplite_stats_in6 as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (udplite_stats_in6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . icmp_statistics as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (icmp_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . icmpmsg_statistics as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (icmpmsg_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . icmpv6_statistics as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (icmpv6_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . icmpv6msg_statistics as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (icmpv6msg_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mib > ())) . proc_net_devsnmp6 as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (netns_mib) , "::" , stringify ! (proc_net_devsnmp6))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_packet { pub sklist_lock : mutex , pub sklist : hlist_head , } # [test] fn bindgen_test_layout_netns_packet () { assert_eq ! (:: core :: mem :: size_of :: < netns_packet > () , 40usize , concat ! ("Size of: " , stringify ! (netns_packet))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_packet > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_packet))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_packet > ())) . sklist_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_packet) , "::" , stringify ! (sklist_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_packet > ())) . sklist as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_packet) , "::" , stringify ! (sklist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_unix { pub sysctl_max_dgram_qlen : :: cty :: c_int , pub ctl : * mut ctl_table_header , } # [test] fn bindgen_test_layout_netns_unix () { assert_eq ! (:: core :: mem :: size_of :: < netns_unix > () , 16usize , concat ! ("Size of: " , stringify ! (netns_unix))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_unix > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_unix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_unix > ())) . sysctl_max_dgram_qlen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_unix) , "::" , stringify ! (sysctl_max_dgram_qlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_unix > ())) . ctl as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_unix) , "::" , stringify ! (ctl))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_nexthop { pub rb_root : rb_root , pub devhash : * mut hlist_head , pub seq : :: cty :: c_uint , pub last_id_allocated : _cargo_bpf_u32 , pub notifier_chain : blocking_notifier_head , } # [test] fn bindgen_test_layout_netns_nexthop () { assert_eq ! (:: core :: mem :: size_of :: < netns_nexthop > () , 72usize , concat ! ("Size of: " , stringify ! (netns_nexthop))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_nexthop > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_nexthop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nexthop > ())) . rb_root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_nexthop) , "::" , stringify ! (rb_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nexthop > ())) . devhash as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_nexthop) , "::" , stringify ! (devhash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nexthop > ())) . seq as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_nexthop) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nexthop > ())) . last_id_allocated as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (netns_nexthop) , "::" , stringify ! (last_id_allocated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nexthop > ())) . notifier_chain as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_nexthop) , "::" , stringify ! (notifier_chain))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct inet_timewait_death_row { pub tw_count : atomic_t , pub tw_pad : [:: cty :: c_char ; 60usize] , pub hashinfo : * mut inet_hashinfo , pub sysctl_max_tw_buckets : :: cty :: c_int , } # [test] fn bindgen_test_layout_inet_timewait_death_row () { assert_eq ! (:: core :: mem :: size_of :: < inet_timewait_death_row > () , 80usize , concat ! ("Size of: " , stringify ! (inet_timewait_death_row))) ; assert_eq ! (:: core :: mem :: align_of :: < inet_timewait_death_row > () , 8usize , concat ! ("Alignment of " , stringify ! (inet_timewait_death_row))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_timewait_death_row > ())) . tw_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inet_timewait_death_row) , "::" , stringify ! (tw_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_timewait_death_row > ())) . tw_pad as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (inet_timewait_death_row) , "::" , stringify ! (tw_pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_timewait_death_row > ())) . hashinfo as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (inet_timewait_death_row) , "::" , stringify ! (hashinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_timewait_death_row > ())) . sysctl_max_tw_buckets as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (inet_timewait_death_row) , "::" , stringify ! (sysctl_max_tw_buckets))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct local_ports { pub lock : seqlock_t , pub range : [:: cty :: c_int ; 2usize] , pub warned : bool_ , } # [test] fn bindgen_test_layout_local_ports () { assert_eq ! (:: core :: mem :: size_of :: < local_ports > () , 20usize , concat ! ("Size of: " , stringify ! (local_ports))) ; assert_eq ! (:: core :: mem :: align_of :: < local_ports > () , 4usize , concat ! ("Alignment of " , stringify ! (local_ports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < local_ports > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (local_ports) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < local_ports > ())) . range as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (local_ports) , "::" , stringify ! (range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < local_ports > ())) . warned as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (local_ports) , "::" , stringify ! (warned))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ping_group_range { pub lock : seqlock_t , pub range : [kgid_t ; 2usize] , } # [test] fn bindgen_test_layout_ping_group_range () { assert_eq ! (:: core :: mem :: size_of :: < ping_group_range > () , 16usize , concat ! ("Size of: " , stringify ! (ping_group_range))) ; assert_eq ! (:: core :: mem :: align_of :: < ping_group_range > () , 4usize , concat ! ("Alignment of " , stringify ! (ping_group_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ping_group_range > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ping_group_range) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ping_group_range > ())) . range as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ping_group_range) , "::" , stringify ! (range))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct siphash_key_t { pub key : [_cargo_bpf_u64 ; 2usize] , } # [test] fn bindgen_test_layout_siphash_key_t () { assert_eq ! (:: core :: mem :: size_of :: < siphash_key_t > () , 16usize , concat ! ("Size of: " , stringify ! (siphash_key_t))) ; assert_eq ! (:: core :: mem :: align_of :: < siphash_key_t > () , 8usize , concat ! ("Alignment of " , stringify ! (siphash_key_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < siphash_key_t > ())) . key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (siphash_key_t) , "::" , stringify ! (key))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_ipv4 { pub tcp_death_row : inet_timewait_death_row , pub forw_hdr : * mut ctl_table_header , pub frags_hdr : * mut ctl_table_header , pub ipv4_hdr : * mut ctl_table_header , pub route_hdr : * mut ctl_table_header , pub xfrm4_hdr : * mut ctl_table_header , pub devconf_all : * mut ipv4_devconf , pub devconf_dflt : * mut ipv4_devconf , pub ra_chain : * mut ip_ra_chain , pub ra_mutex : mutex , pub rules_ops : * mut fib_rules_ops , pub fib_main : * mut fib_table , pub fib_default : * mut fib_table , pub fib_rules_require_fldissect : :: cty :: c_uint , pub fib_has_custom_rules : bool_ , pub fib_has_custom_local_routes : bool_ , pub fib_offload_disabled : bool_ , pub fib_num_tclassid_users : atomic_t , pub fib_table_hash : * mut hlist_head , pub fibnl : * mut sock , pub icmp_sk : * mut * mut sock , pub mc_autojoin_sk : * mut sock , pub peers : * mut inet_peer_base , pub tcp_sk : * mut * mut sock , pub fqdir : * mut fqdir , pub sysctl_icmp_echo_ignore_all : _cargo_bpf_u8 , pub sysctl_icmp_echo_enable_probe : _cargo_bpf_u8 , pub sysctl_icmp_echo_ignore_broadcasts : _cargo_bpf_u8 , pub sysctl_icmp_ignore_bogus_error_responses : _cargo_bpf_u8 , pub sysctl_icmp_errors_use_inbound_ifaddr : _cargo_bpf_u8 , pub sysctl_icmp_ratelimit : :: cty :: c_int , pub sysctl_icmp_ratemask : :: cty :: c_int , pub ip_local_ports : local_ports , pub sysctl_tcp_ecn : _cargo_bpf_u8 , pub sysctl_tcp_ecn_fallback : _cargo_bpf_u8 , pub sysctl_ip_default_ttl : _cargo_bpf_u8 , pub sysctl_ip_no_pmtu_disc : _cargo_bpf_u8 , pub sysctl_ip_fwd_use_pmtu : _cargo_bpf_u8 , pub sysctl_ip_fwd_update_priority : _cargo_bpf_u8 , pub sysctl_ip_nonlocal_bind : _cargo_bpf_u8 , pub sysctl_ip_autobind_reuse : _cargo_bpf_u8 , pub sysctl_ip_dynaddr : _cargo_bpf_u8 , pub sysctl_ip_early_demux : _cargo_bpf_u8 , pub sysctl_raw_l3mdev_accept : _cargo_bpf_u8 , pub sysctl_tcp_early_demux : _cargo_bpf_u8 , pub sysctl_udp_early_demux : _cargo_bpf_u8 , pub sysctl_nexthop_compat_mode : _cargo_bpf_u8 , pub sysctl_fwmark_reflect : _cargo_bpf_u8 , pub sysctl_tcp_fwmark_accept : _cargo_bpf_u8 , pub sysctl_tcp_l3mdev_accept : _cargo_bpf_u8 , pub sysctl_tcp_mtu_probing : _cargo_bpf_u8 , pub sysctl_tcp_mtu_probe_floor : :: cty :: c_int , pub sysctl_tcp_base_mss : :: cty :: c_int , pub sysctl_tcp_min_snd_mss : :: cty :: c_int , pub sysctl_tcp_probe_threshold : :: cty :: c_int , pub sysctl_tcp_probe_interval : _cargo_bpf_u32 , pub sysctl_tcp_keepalive_time : :: cty :: c_int , pub sysctl_tcp_keepalive_intvl : :: cty :: c_int , pub sysctl_tcp_keepalive_probes : _cargo_bpf_u8 , pub sysctl_tcp_syn_retries : _cargo_bpf_u8 , pub sysctl_tcp_synack_retries : _cargo_bpf_u8 , pub sysctl_tcp_syncookies : _cargo_bpf_u8 , pub sysctl_tcp_reordering : :: cty :: c_int , pub sysctl_tcp_retries1 : _cargo_bpf_u8 , pub sysctl_tcp_retries2 : _cargo_bpf_u8 , pub sysctl_tcp_orphan_retries : _cargo_bpf_u8 , pub sysctl_tcp_tw_reuse : _cargo_bpf_u8 , pub sysctl_tcp_fin_timeout : :: cty :: c_int , pub sysctl_tcp_notsent_lowat : :: cty :: c_uint , pub sysctl_tcp_sack : _cargo_bpf_u8 , pub sysctl_tcp_window_scaling : _cargo_bpf_u8 , pub sysctl_tcp_timestamps : _cargo_bpf_u8 , pub sysctl_tcp_early_retrans : _cargo_bpf_u8 , pub sysctl_tcp_recovery : _cargo_bpf_u8 , pub sysctl_tcp_thin_linear_timeouts : _cargo_bpf_u8 , pub sysctl_tcp_slow_start_after_idle : _cargo_bpf_u8 , pub sysctl_tcp_retrans_collapse : _cargo_bpf_u8 , pub sysctl_tcp_stdurg : _cargo_bpf_u8 , pub sysctl_tcp_rfc1337 : _cargo_bpf_u8 , pub sysctl_tcp_abort_on_overflow : _cargo_bpf_u8 , pub sysctl_tcp_fack : _cargo_bpf_u8 , pub sysctl_tcp_max_reordering : :: cty :: c_int , pub sysctl_tcp_adv_win_scale : :: cty :: c_int , pub sysctl_tcp_dsack : _cargo_bpf_u8 , pub sysctl_tcp_app_win : _cargo_bpf_u8 , pub sysctl_tcp_frto : _cargo_bpf_u8 , pub sysctl_tcp_nometrics_save : _cargo_bpf_u8 , pub sysctl_tcp_no_ssthresh_metrics_save : _cargo_bpf_u8 , pub sysctl_tcp_moderate_rcvbuf : _cargo_bpf_u8 , pub sysctl_tcp_tso_win_divisor : _cargo_bpf_u8 , pub sysctl_tcp_workaround_signed_windows : _cargo_bpf_u8 , pub sysctl_tcp_limit_output_bytes : :: cty :: c_int , pub sysctl_tcp_challenge_ack_limit : :: cty :: c_int , pub sysctl_tcp_min_rtt_wlen : :: cty :: c_int , pub sysctl_tcp_min_tso_segs : _cargo_bpf_u8 , pub sysctl_tcp_autocorking : _cargo_bpf_u8 , pub sysctl_tcp_reflect_tos : _cargo_bpf_u8 , pub sysctl_tcp_comp_sack_nr : _cargo_bpf_u8 , pub sysctl_tcp_invalid_ratelimit : :: cty :: c_int , pub sysctl_tcp_pacing_ss_ratio : :: cty :: c_int , pub sysctl_tcp_pacing_ca_ratio : :: cty :: c_int , pub sysctl_tcp_wmem : [:: cty :: c_int ; 3usize] , pub sysctl_tcp_rmem : [:: cty :: c_int ; 3usize] , pub sysctl_tcp_comp_sack_delay_ns : :: cty :: c_ulong , pub sysctl_tcp_comp_sack_slack_ns : :: cty :: c_ulong , pub sysctl_max_syn_backlog : :: cty :: c_int , pub sysctl_tcp_fastopen : :: cty :: c_int , pub tcp_congestion_control : * const tcp_congestion_ops , pub tcp_fastopen_ctx : * mut tcp_fastopen_context , pub tcp_fastopen_ctx_lock : spinlock_t , pub sysctl_tcp_fastopen_blackhole_timeout : :: cty :: c_uint , pub tfo_active_disable_times : atomic_t , pub tfo_active_disable_stamp : :: cty :: c_ulong , pub sysctl_udp_wmem_min : :: cty :: c_int , pub sysctl_udp_rmem_min : :: cty :: c_int , pub sysctl_fib_notify_on_flag_change : _cargo_bpf_u8 , pub sysctl_udp_l3mdev_accept : _cargo_bpf_u8 , pub sysctl_igmp_llm_reports : _cargo_bpf_u8 , pub sysctl_igmp_max_memberships : :: cty :: c_int , pub sysctl_igmp_max_msf : :: cty :: c_int , pub sysctl_igmp_qrv : :: cty :: c_int , pub ping_group_range : ping_group_range , pub dev_addr_genid : atomic_t , pub sysctl_local_reserved_ports : * mut :: cty :: c_ulong , pub sysctl_ip_prot_sock : :: cty :: c_int , pub mrt : * mut mr_table , pub sysctl_fib_multipath_use_neigh : _cargo_bpf_u8 , pub sysctl_fib_multipath_hash_policy : _cargo_bpf_u8 , pub notifier_ops : * mut fib_notifier_ops , pub fib_seq : :: cty :: c_uint , pub ipmr_notifier_ops : * mut fib_notifier_ops , pub ipmr_seq : :: cty :: c_uint , pub rt_genid : atomic_t , pub ip_id_key : siphash_key_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 56usize] > , } # [test] fn bindgen_test_layout_netns_ipv4 () { assert_eq ! (:: core :: mem :: size_of :: < netns_ipv4 > () , 704usize , concat ! ("Size of: " , stringify ! (netns_ipv4))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_ipv4 > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_ipv4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tcp_death_row as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tcp_death_row))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . forw_hdr as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (forw_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . frags_hdr as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (frags_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ipv4_hdr as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ipv4_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . route_hdr as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (route_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . xfrm4_hdr as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (xfrm4_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . devconf_all as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (devconf_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . devconf_dflt as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (devconf_dflt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ra_chain as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ra_chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ra_mutex as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ra_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . rules_ops as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (rules_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_main as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_main))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_default as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_default))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_rules_require_fldissect as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_rules_require_fldissect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_has_custom_rules as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_has_custom_rules))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_has_custom_local_routes as * const _ as usize } , 205usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_has_custom_local_routes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_offload_disabled as * const _ as usize } , 206usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_offload_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_num_tclassid_users as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_num_tclassid_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_table_hash as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_table_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fibnl as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fibnl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . icmp_sk as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (icmp_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . mc_autojoin_sk as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (mc_autojoin_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . peers as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (peers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tcp_sk as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tcp_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fqdir as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fqdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_echo_ignore_all as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_echo_ignore_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_echo_enable_probe as * const _ as usize } , 273usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_echo_enable_probe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_echo_ignore_broadcasts as * const _ as usize } , 274usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_echo_ignore_broadcasts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_ignore_bogus_error_responses as * const _ as usize } , 275usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_ignore_bogus_error_responses))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_errors_use_inbound_ifaddr as * const _ as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_errors_use_inbound_ifaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_ratelimit as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_ratelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_icmp_ratemask as * const _ as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_icmp_ratemask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ip_local_ports as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ip_local_ports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_ecn as * const _ as usize } , 308usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_ecn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_ecn_fallback as * const _ as usize } , 309usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_ecn_fallback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_default_ttl as * const _ as usize } , 310usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_default_ttl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_no_pmtu_disc as * const _ as usize } , 311usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_no_pmtu_disc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_fwd_use_pmtu as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_fwd_use_pmtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_fwd_update_priority as * const _ as usize } , 313usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_fwd_update_priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_nonlocal_bind as * const _ as usize } , 314usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_nonlocal_bind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_autobind_reuse as * const _ as usize } , 315usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_autobind_reuse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_dynaddr as * const _ as usize } , 316usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_dynaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_early_demux as * const _ as usize } , 317usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_early_demux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_raw_l3mdev_accept as * const _ as usize } , 318usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_raw_l3mdev_accept))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_early_demux as * const _ as usize } , 319usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_early_demux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_udp_early_demux as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_udp_early_demux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_nexthop_compat_mode as * const _ as usize } , 321usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_nexthop_compat_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_fwmark_reflect as * const _ as usize } , 322usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_fwmark_reflect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_fwmark_accept as * const _ as usize } , 323usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_fwmark_accept))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_l3mdev_accept as * const _ as usize } , 324usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_l3mdev_accept))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_mtu_probing as * const _ as usize } , 325usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_mtu_probing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_mtu_probe_floor as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_mtu_probe_floor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_base_mss as * const _ as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_base_mss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_min_snd_mss as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_min_snd_mss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_probe_threshold as * const _ as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_probe_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_probe_interval as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_probe_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_keepalive_time as * const _ as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_keepalive_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_keepalive_intvl as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_keepalive_intvl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_keepalive_probes as * const _ as usize } , 356usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_keepalive_probes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_syn_retries as * const _ as usize } , 357usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_syn_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_synack_retries as * const _ as usize } , 358usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_synack_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_syncookies as * const _ as usize } , 359usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_syncookies))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_reordering as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_reordering))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_retries1 as * const _ as usize } , 364usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_retries1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_retries2 as * const _ as usize } , 365usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_retries2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_orphan_retries as * const _ as usize } , 366usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_orphan_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_tw_reuse as * const _ as usize } , 367usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_tw_reuse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_fin_timeout as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_fin_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_notsent_lowat as * const _ as usize } , 372usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_notsent_lowat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_sack as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_sack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_window_scaling as * const _ as usize } , 377usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_window_scaling))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_timestamps as * const _ as usize } , 378usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_timestamps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_early_retrans as * const _ as usize } , 379usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_early_retrans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_recovery as * const _ as usize } , 380usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_recovery))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_thin_linear_timeouts as * const _ as usize } , 381usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_thin_linear_timeouts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_slow_start_after_idle as * const _ as usize } , 382usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_slow_start_after_idle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_retrans_collapse as * const _ as usize } , 383usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_retrans_collapse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_stdurg as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_stdurg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_rfc1337 as * const _ as usize } , 385usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_rfc1337))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_abort_on_overflow as * const _ as usize } , 386usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_abort_on_overflow))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_fack as * const _ as usize } , 387usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_fack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_max_reordering as * const _ as usize } , 388usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_max_reordering))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_adv_win_scale as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_adv_win_scale))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_dsack as * const _ as usize } , 396usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_dsack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_app_win as * const _ as usize } , 397usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_app_win))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_frto as * const _ as usize } , 398usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_frto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_nometrics_save as * const _ as usize } , 399usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_nometrics_save))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_no_ssthresh_metrics_save as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_no_ssthresh_metrics_save))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_moderate_rcvbuf as * const _ as usize } , 401usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_moderate_rcvbuf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_tso_win_divisor as * const _ as usize } , 402usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_tso_win_divisor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_workaround_signed_windows as * const _ as usize } , 403usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_workaround_signed_windows))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_limit_output_bytes as * const _ as usize } , 404usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_limit_output_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_challenge_ack_limit as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_challenge_ack_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_min_rtt_wlen as * const _ as usize } , 412usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_min_rtt_wlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_min_tso_segs as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_min_tso_segs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_autocorking as * const _ as usize } , 417usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_autocorking))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_reflect_tos as * const _ as usize } , 418usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_reflect_tos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_comp_sack_nr as * const _ as usize } , 419usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_comp_sack_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_invalid_ratelimit as * const _ as usize } , 420usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_invalid_ratelimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_pacing_ss_ratio as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_pacing_ss_ratio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_pacing_ca_ratio as * const _ as usize } , 428usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_pacing_ca_ratio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_wmem as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_wmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_rmem as * const _ as usize } , 444usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_rmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_comp_sack_delay_ns as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_comp_sack_delay_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_comp_sack_slack_ns as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_comp_sack_slack_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_max_syn_backlog as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_max_syn_backlog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_fastopen as * const _ as usize } , 476usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_fastopen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tcp_congestion_control as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tcp_congestion_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tcp_fastopen_ctx as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tcp_fastopen_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tcp_fastopen_ctx_lock as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tcp_fastopen_ctx_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_tcp_fastopen_blackhole_timeout as * const _ as usize } , 500usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_tcp_fastopen_blackhole_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tfo_active_disable_times as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tfo_active_disable_times))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . tfo_active_disable_stamp as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (tfo_active_disable_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_udp_wmem_min as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_udp_wmem_min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_udp_rmem_min as * const _ as usize } , 524usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_udp_rmem_min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_fib_notify_on_flag_change as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_fib_notify_on_flag_change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_udp_l3mdev_accept as * const _ as usize } , 529usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_udp_l3mdev_accept))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_igmp_llm_reports as * const _ as usize } , 530usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_igmp_llm_reports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_igmp_max_memberships as * const _ as usize } , 532usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_igmp_max_memberships))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_igmp_max_msf as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_igmp_max_msf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_igmp_qrv as * const _ as usize } , 540usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_igmp_qrv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ping_group_range as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ping_group_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . dev_addr_genid as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (dev_addr_genid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_local_reserved_ports as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_local_reserved_ports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_ip_prot_sock as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_ip_prot_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . mrt as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (mrt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_fib_multipath_use_neigh as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_fib_multipath_use_neigh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . sysctl_fib_multipath_hash_policy as * const _ as usize } , 593usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (sysctl_fib_multipath_hash_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . notifier_ops as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (notifier_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . fib_seq as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (fib_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ipmr_notifier_ops as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ipmr_notifier_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ipmr_seq as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ipmr_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . rt_genid as * const _ as usize } , 628usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (rt_genid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv4 > ())) . ip_id_key as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (netns_ipv4) , "::" , stringify ! (ip_id_key))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct dst_ops { pub family : :: cty :: c_ushort , pub gc_thresh : :: cty :: c_uint , pub gc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_ops) -> :: cty :: c_int > , pub check : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry , arg2 : __u32) -> * mut dst_entry > , pub default_advmss : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dst_entry) -> :: cty :: c_uint > , pub mtu : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dst_entry) -> :: cty :: c_uint > , pub cow_metrics : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry , arg2 : :: cty :: c_ulong) -> * mut _cargo_bpf_u32 > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry) > , pub ifdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry , arg2 : * mut net_device , arg3 : :: cty :: c_int) > , pub negative_advice : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry) -> * mut dst_entry > , pub link_failure : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff) > , pub update_pmtu : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry , arg2 : * mut sock , arg3 : * mut sk_buff , arg4 : _cargo_bpf_u32 , arg5 : bool_) > , pub redirect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dst_entry , arg2 : * mut sock , arg3 : * mut sk_buff) > , pub local_out : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut sock , arg3 : * mut sk_buff) -> :: cty :: c_int > , pub neigh_lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dst_entry , arg2 : * mut sk_buff , arg3 : * const :: cty :: c_void) -> * mut neighbour > , pub confirm_neigh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const dst_entry , arg2 : * const :: cty :: c_void) > , pub kmem_cachep : * mut kmem_cache , pub pcpuc_entries : percpu_counter , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [test] fn bindgen_test_layout_dst_ops () { assert_eq ! (:: core :: mem :: size_of :: < dst_ops > () , 192usize , concat ! ("Size of: " , stringify ! (dst_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < dst_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (dst_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . gc_thresh as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (gc_thresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . gc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (gc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . check as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . default_advmss as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (default_advmss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . mtu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . cow_metrics as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (cow_metrics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . destroy as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . ifdown as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (ifdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . negative_advice as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (negative_advice))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . link_failure as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (link_failure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . update_pmtu as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (update_pmtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . redirect as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (redirect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . local_out as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (local_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . neigh_lookup as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (neigh_lookup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . confirm_neigh as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (confirm_neigh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . kmem_cachep as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (kmem_cachep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_ops > ())) . pcpuc_entries as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (dst_ops) , "::" , stringify ! (pcpuc_entries))) ; } impl dst_ops { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_sysctl_ipv6 { pub hdr : * mut ctl_table_header , pub route_hdr : * mut ctl_table_header , pub icmp_hdr : * mut ctl_table_header , pub frags_hdr : * mut ctl_table_header , pub xfrm6_hdr : * mut ctl_table_header , pub flush_delay : :: cty :: c_int , pub ip6_rt_max_size : :: cty :: c_int , pub ip6_rt_gc_min_interval : :: cty :: c_int , pub ip6_rt_gc_timeout : :: cty :: c_int , pub ip6_rt_gc_interval : :: cty :: c_int , pub ip6_rt_gc_elasticity : :: cty :: c_int , pub ip6_rt_mtu_expires : :: cty :: c_int , pub ip6_rt_min_advmss : :: cty :: c_int , pub bindv6only : _cargo_bpf_u8 , pub multipath_hash_policy : _cargo_bpf_u8 , pub flowlabel_consistency : _cargo_bpf_u8 , pub auto_flowlabels : _cargo_bpf_u8 , pub icmpv6_time : :: cty :: c_int , pub icmpv6_echo_ignore_all : _cargo_bpf_u8 , pub icmpv6_echo_ignore_multicast : _cargo_bpf_u8 , pub icmpv6_echo_ignore_anycast : _cargo_bpf_u8 , pub icmpv6_ratemask : [:: cty :: c_ulong ; 4usize] , pub icmpv6_ratemask_ptr : * mut :: cty :: c_ulong , pub anycast_src_echo_reply : _cargo_bpf_u8 , pub ip_nonlocal_bind : _cargo_bpf_u8 , pub fwmark_reflect : _cargo_bpf_u8 , pub flowlabel_state_ranges : _cargo_bpf_u8 , pub idgen_retries : :: cty :: c_int , pub idgen_delay : :: cty :: c_int , pub flowlabel_reflect : :: cty :: c_int , pub max_dst_opts_cnt : :: cty :: c_int , pub max_hbh_opts_cnt : :: cty :: c_int , pub max_dst_opts_len : :: cty :: c_int , pub max_hbh_opts_len : :: cty :: c_int , pub seg6_flowlabel : :: cty :: c_int , pub skip_notify_on_dev_down : bool_ , pub fib_notify_on_flag_change : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_netns_sysctl_ipv6 () { assert_eq ! (:: core :: mem :: size_of :: < netns_sysctl_ipv6 > () , 168usize , concat ! ("Size of: " , stringify ! (netns_sysctl_ipv6))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_sysctl_ipv6 > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_sysctl_ipv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . hdr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . route_hdr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (route_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmp_hdr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmp_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . frags_hdr as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (frags_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . xfrm6_hdr as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (xfrm6_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . flush_delay as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (flush_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_max_size as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_max_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_gc_min_interval as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_gc_min_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_gc_timeout as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_gc_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_gc_interval as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_gc_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_gc_elasticity as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_gc_elasticity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_mtu_expires as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_mtu_expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip6_rt_min_advmss as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip6_rt_min_advmss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . bindv6only as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (bindv6only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . multipath_hash_policy as * const _ as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (multipath_hash_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . flowlabel_consistency as * const _ as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (flowlabel_consistency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . auto_flowlabels as * const _ as usize } , 75usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (auto_flowlabels))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmpv6_time as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmpv6_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmpv6_echo_ignore_all as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmpv6_echo_ignore_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmpv6_echo_ignore_multicast as * const _ as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmpv6_echo_ignore_multicast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmpv6_echo_ignore_anycast as * const _ as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmpv6_echo_ignore_anycast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmpv6_ratemask as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmpv6_ratemask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . icmpv6_ratemask_ptr as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (icmpv6_ratemask_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . anycast_src_echo_reply as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (anycast_src_echo_reply))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . ip_nonlocal_bind as * const _ as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (ip_nonlocal_bind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . fwmark_reflect as * const _ as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (fwmark_reflect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . flowlabel_state_ranges as * const _ as usize } , 131usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (flowlabel_state_ranges))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . idgen_retries as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (idgen_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . idgen_delay as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (idgen_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . flowlabel_reflect as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (flowlabel_reflect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . max_dst_opts_cnt as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (max_dst_opts_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . max_hbh_opts_cnt as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (max_hbh_opts_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . max_dst_opts_len as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (max_dst_opts_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . max_hbh_opts_len as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (max_hbh_opts_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . seg6_flowlabel as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (seg6_flowlabel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . skip_notify_on_dev_down as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (skip_notify_on_dev_down))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_ipv6 > ())) . fib_notify_on_flag_change as * const _ as usize } , 165usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_ipv6) , "::" , stringify ! (fib_notify_on_flag_change))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_ipv6 { pub ip6_dst_ops : dst_ops , pub sysctl : netns_sysctl_ipv6 , pub devconf_all : * mut ipv6_devconf , pub devconf_dflt : * mut ipv6_devconf , pub peers : * mut inet_peer_base , pub fqdir : * mut fqdir , pub fib6_null_entry : * mut fib6_info , pub ip6_null_entry : * mut rt6_info , pub rt6_stats : * mut rt6_statistics , pub ip6_fib_timer : timer_list , pub fib_table_hash : * mut hlist_head , pub fib6_main_tbl : * mut fib6_table , pub fib6_walkers : list_head , pub fib6_walker_lock : rwlock_t , pub fib6_gc_lock : spinlock_t , pub ip6_rt_gc_expire : :: cty :: c_uint , pub ip6_rt_last_gc : :: cty :: c_ulong , pub fib6_rules_require_fldissect : :: cty :: c_uint , pub fib6_has_custom_rules : bool_ , pub fib6_routes_require_src : :: cty :: c_uint , pub ip6_prohibit_entry : * mut rt6_info , pub ip6_blk_hole_entry : * mut rt6_info , pub fib6_local_tbl : * mut fib6_table , pub fib6_rules_ops : * mut fib_rules_ops , pub icmp_sk : * mut * mut sock , pub ndisc_sk : * mut sock , pub tcp_sk : * mut sock , pub igmp_sk : * mut sock , pub mc_autojoin_sk : * mut sock , pub mr6_tables : list_head , pub mr6_rules_ops : * mut fib_rules_ops , pub dev_addr_genid : atomic_t , pub fib6_sernum : atomic_t , pub seg6_data : * mut seg6_pernet_data , pub notifier_ops : * mut fib_notifier_ops , pub ip6mr_notifier_ops : * mut fib_notifier_ops , pub ipmr_seq : :: cty :: c_uint , pub ip6addrlbl_table : netns_ipv6__bindgen_ty_1 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_ipv6__bindgen_ty_1 { pub head : hlist_head , pub lock : spinlock_t , pub seq : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_netns_ipv6__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < netns_ipv6__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (netns_ipv6__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_ipv6__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_ipv6__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6__bindgen_ty_1 > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6__bindgen_ty_1) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6__bindgen_ty_1 > ())) . lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6__bindgen_ty_1) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6__bindgen_ty_1 > ())) . seq as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6__bindgen_ty_1) , "::" , stringify ! (seq))) ; } # [test] fn bindgen_test_layout_netns_ipv6 () { assert_eq ! (:: core :: mem :: size_of :: < netns_ipv6 > () , 704usize , concat ! ("Size of: " , stringify ! (netns_ipv6))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_ipv6 > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_ipv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_dst_ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_dst_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . sysctl as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (sysctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . devconf_all as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (devconf_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . devconf_dflt as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (devconf_dflt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . peers as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (peers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fqdir as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fqdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_null_entry as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_null_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_null_entry as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_null_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . rt6_stats as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (rt6_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_fib_timer as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_fib_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib_table_hash as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib_table_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_main_tbl as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_main_tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_walkers as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_walkers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_walker_lock as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_walker_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_gc_lock as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_gc_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_rt_gc_expire as * const _ as usize } , 500usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_rt_gc_expire))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_rt_last_gc as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_rt_last_gc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_rules_require_fldissect as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_rules_require_fldissect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_has_custom_rules as * const _ as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_has_custom_rules))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_routes_require_src as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_routes_require_src))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_prohibit_entry as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_prohibit_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6_blk_hole_entry as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6_blk_hole_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_local_tbl as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_local_tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_rules_ops as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_rules_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . icmp_sk as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (icmp_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ndisc_sk as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ndisc_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . tcp_sk as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (tcp_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . igmp_sk as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (igmp_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . mc_autojoin_sk as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (mc_autojoin_sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . mr6_tables as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (mr6_tables))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . mr6_rules_ops as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (mr6_rules_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . dev_addr_genid as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (dev_addr_genid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . fib6_sernum as * const _ as usize } , 628usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (fib6_sernum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . seg6_data as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (seg6_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . notifier_ops as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (notifier_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6mr_notifier_ops as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6mr_notifier_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ipmr_seq as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ipmr_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ipv6 > ())) . ip6addrlbl_table as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (netns_ipv6) , "::" , stringify ! (ip6addrlbl_table))) ; } impl netns_ipv6 { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_sysctl_lowpan { pub frags_hdr : * mut ctl_table_header , } # [test] fn bindgen_test_layout_netns_sysctl_lowpan () { assert_eq ! (:: core :: mem :: size_of :: < netns_sysctl_lowpan > () , 8usize , concat ! ("Size of: " , stringify ! (netns_sysctl_lowpan))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_sysctl_lowpan > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_sysctl_lowpan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sysctl_lowpan > ())) . frags_hdr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_sysctl_lowpan) , "::" , stringify ! (frags_hdr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_ieee802154_lowpan { pub sysctl : netns_sysctl_lowpan , pub fqdir : * mut fqdir , } # [test] fn bindgen_test_layout_netns_ieee802154_lowpan () { assert_eq ! (:: core :: mem :: size_of :: < netns_ieee802154_lowpan > () , 16usize , concat ! ("Size of: " , stringify ! (netns_ieee802154_lowpan))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_ieee802154_lowpan > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_ieee802154_lowpan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ieee802154_lowpan > ())) . sysctl as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_ieee802154_lowpan) , "::" , stringify ! (sysctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ieee802154_lowpan > ())) . fqdir as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_ieee802154_lowpan) , "::" , stringify ! (fqdir))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_sctp { pub sctp_statistics : * mut sctp_mib , pub proc_net_sctp : * mut proc_dir_entry , pub sysctl_header : * mut ctl_table_header , pub ctl_sock : * mut sock , pub udp4_sock : * mut sock , pub udp6_sock : * mut sock , pub udp_port : :: cty :: c_int , pub encap_port : :: cty :: c_int , pub local_addr_list : list_head , pub addr_waitq : list_head , pub addr_wq_timer : timer_list , pub auto_asconf_splist : list_head , pub addr_wq_lock : spinlock_t , pub local_addr_lock : spinlock_t , pub rto_initial : :: cty :: c_uint , pub rto_min : :: cty :: c_uint , pub rto_max : :: cty :: c_uint , pub rto_alpha : :: cty :: c_int , pub rto_beta : :: cty :: c_int , pub max_burst : :: cty :: c_int , pub cookie_preserve_enable : :: cty :: c_int , pub sctp_hmac_alg : * mut :: cty :: c_char , pub valid_cookie_life : :: cty :: c_uint , pub sack_timeout : :: cty :: c_uint , pub hb_interval : :: cty :: c_uint , pub max_retrans_association : :: cty :: c_int , pub max_retrans_path : :: cty :: c_int , pub max_retrans_init : :: cty :: c_int , pub pf_retrans : :: cty :: c_int , pub ps_retrans : :: cty :: c_int , pub pf_enable : :: cty :: c_int , pub pf_expose : :: cty :: c_int , pub sndbuf_policy : :: cty :: c_int , pub rcvbuf_policy : :: cty :: c_int , pub default_auto_asconf : :: cty :: c_int , pub addip_enable : :: cty :: c_int , pub addip_noauth : :: cty :: c_int , pub prsctp_enable : :: cty :: c_int , pub reconf_enable : :: cty :: c_int , pub auth_enable : :: cty :: c_int , pub intl_enable : :: cty :: c_int , pub ecn_enable : :: cty :: c_int , pub scope_policy : :: cty :: c_int , pub rwnd_upd_shift : :: cty :: c_int , pub max_autoclose : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_netns_sctp () { assert_eq ! (:: core :: mem :: size_of :: < netns_sctp > () , 288usize , concat ! ("Size of: " , stringify ! (netns_sctp))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_sctp > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_sctp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . sctp_statistics as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (sctp_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . proc_net_sctp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (proc_net_sctp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . sysctl_header as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (sysctl_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . ctl_sock as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (ctl_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . udp4_sock as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (udp4_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . udp6_sock as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (udp6_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . udp_port as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (udp_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . encap_port as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (encap_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . local_addr_list as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (local_addr_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . addr_waitq as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (addr_waitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . addr_wq_timer as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (addr_wq_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . auto_asconf_splist as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (auto_asconf_splist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . addr_wq_lock as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (addr_wq_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . local_addr_lock as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (local_addr_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rto_initial as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rto_initial))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rto_min as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rto_min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rto_max as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rto_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rto_alpha as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rto_alpha))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rto_beta as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rto_beta))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . max_burst as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (max_burst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . cookie_preserve_enable as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (cookie_preserve_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . sctp_hmac_alg as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (sctp_hmac_alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . valid_cookie_life as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (valid_cookie_life))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . sack_timeout as * const _ as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (sack_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . hb_interval as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (hb_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . max_retrans_association as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (max_retrans_association))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . max_retrans_path as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (max_retrans_path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . max_retrans_init as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (max_retrans_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . pf_retrans as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (pf_retrans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . ps_retrans as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (ps_retrans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . pf_enable as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (pf_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . pf_expose as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (pf_expose))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . sndbuf_policy as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (sndbuf_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rcvbuf_policy as * const _ as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rcvbuf_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . default_auto_asconf as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (default_auto_asconf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . addip_enable as * const _ as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (addip_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . addip_noauth as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (addip_noauth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . prsctp_enable as * const _ as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (prsctp_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . reconf_enable as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (reconf_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . auth_enable as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (auth_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . intl_enable as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (intl_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . ecn_enable as * const _ as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (ecn_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . scope_policy as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (scope_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . rwnd_upd_shift as * const _ as usize } , 276usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (rwnd_upd_shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_sctp > ())) . max_autoclose as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (netns_sctp) , "::" , stringify ! (max_autoclose))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_nf { pub proc_netfilter : * mut proc_dir_entry , pub queue_handler : * const nf_queue_handler , pub nf_loggers : [* const nf_logger ; 13usize] , pub nf_log_dir_header : * mut ctl_table_header , pub hooks_ipv4 : [* mut nf_hook_entries ; 5usize] , pub hooks_ipv6 : [* mut nf_hook_entries ; 5usize] , pub hooks_arp : [* mut nf_hook_entries ; 3usize] , pub hooks_bridge : [* mut nf_hook_entries ; 5usize] , pub hooks_decnet : [* mut nf_hook_entries ; 7usize] , pub defrag_ipv4_users : :: cty :: c_uint , pub defrag_ipv6_users : :: cty :: c_uint , } # [test] fn bindgen_test_layout_netns_nf () { assert_eq ! (:: core :: mem :: size_of :: < netns_nf > () , 336usize , concat ! ("Size of: " , stringify ! (netns_nf))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_nf > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_nf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . proc_netfilter as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (proc_netfilter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . queue_handler as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (queue_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . nf_loggers as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (nf_loggers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . nf_log_dir_header as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (nf_log_dir_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . hooks_ipv4 as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (hooks_ipv4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . hooks_ipv6 as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (hooks_ipv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . hooks_arp as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (hooks_arp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . hooks_bridge as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (hooks_bridge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . hooks_decnet as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (hooks_decnet))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . defrag_ipv4_users as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (defrag_ipv4_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nf > ())) . defrag_ipv6_users as * const _ as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (netns_nf) , "::" , stringify ! (defrag_ipv6_users))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_xt { pub notrack_deprecated_warning : bool_ , pub clusterip_deprecated_warning : bool_ , } # [test] fn bindgen_test_layout_netns_xt () { assert_eq ! (:: core :: mem :: size_of :: < netns_xt > () , 2usize , concat ! ("Size of: " , stringify ! (netns_xt))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_xt > () , 1usize , concat ! ("Alignment of " , stringify ! (netns_xt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xt > ())) . notrack_deprecated_warning as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_xt) , "::" , stringify ! (notrack_deprecated_warning))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xt > ())) . clusterip_deprecated_warning as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (netns_xt) , "::" , stringify ! (clusterip_deprecated_warning))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_generic_net { pub timeout : :: cty :: c_uint , } # [test] fn bindgen_test_layout_nf_generic_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_generic_net > () , 4usize , concat ! ("Size of: " , stringify ! (nf_generic_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_generic_net > () , 4usize , concat ! ("Alignment of " , stringify ! (nf_generic_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_generic_net > ())) . timeout as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_generic_net) , "::" , stringify ! (timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_tcp_net { pub timeouts : [:: cty :: c_uint ; 14usize] , pub tcp_loose : _cargo_bpf_u8 , pub tcp_be_liberal : _cargo_bpf_u8 , pub tcp_max_retrans : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_nf_tcp_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_tcp_net > () , 60usize , concat ! ("Size of: " , stringify ! (nf_tcp_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_tcp_net > () , 4usize , concat ! ("Alignment of " , stringify ! (nf_tcp_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_tcp_net > ())) . timeouts as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_tcp_net) , "::" , stringify ! (timeouts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_tcp_net > ())) . tcp_loose as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nf_tcp_net) , "::" , stringify ! (tcp_loose))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_tcp_net > ())) . tcp_be_liberal as * const _ as usize } , 57usize , concat ! ("Offset of field: " , stringify ! (nf_tcp_net) , "::" , stringify ! (tcp_be_liberal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_tcp_net > ())) . tcp_max_retrans as * const _ as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (nf_tcp_net) , "::" , stringify ! (tcp_max_retrans))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_udp_net { pub timeouts : [:: cty :: c_uint ; 2usize] , } # [test] fn bindgen_test_layout_nf_udp_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_udp_net > () , 8usize , concat ! ("Size of: " , stringify ! (nf_udp_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_udp_net > () , 4usize , concat ! ("Alignment of " , stringify ! (nf_udp_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_udp_net > ())) . timeouts as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_udp_net) , "::" , stringify ! (timeouts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_icmp_net { pub timeout : :: cty :: c_uint , } # [test] fn bindgen_test_layout_nf_icmp_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_icmp_net > () , 4usize , concat ! ("Size of: " , stringify ! (nf_icmp_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_icmp_net > () , 4usize , concat ! ("Alignment of " , stringify ! (nf_icmp_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_icmp_net > ())) . timeout as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_icmp_net) , "::" , stringify ! (timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_dccp_net { pub dccp_loose : _cargo_bpf_u8 , pub dccp_timeout : [:: cty :: c_uint ; 10usize] , } # [test] fn bindgen_test_layout_nf_dccp_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_dccp_net > () , 44usize , concat ! ("Size of: " , stringify ! (nf_dccp_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_dccp_net > () , 4usize , concat ! ("Alignment of " , stringify ! (nf_dccp_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_dccp_net > ())) . dccp_loose as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_dccp_net) , "::" , stringify ! (dccp_loose))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_dccp_net > ())) . dccp_timeout as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nf_dccp_net) , "::" , stringify ! (dccp_timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_sctp_net { pub timeouts : [:: cty :: c_uint ; 10usize] , } # [test] fn bindgen_test_layout_nf_sctp_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_sctp_net > () , 40usize , concat ! ("Size of: " , stringify ! (nf_sctp_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_sctp_net > () , 4usize , concat ! ("Alignment of " , stringify ! (nf_sctp_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_sctp_net > ())) . timeouts as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_sctp_net) , "::" , stringify ! (timeouts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_gre_net { pub keymap_list : list_head , pub timeouts : [:: cty :: c_uint ; 2usize] , } # [test] fn bindgen_test_layout_nf_gre_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_gre_net > () , 24usize , concat ! ("Size of: " , stringify ! (nf_gre_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_gre_net > () , 8usize , concat ! ("Alignment of " , stringify ! (nf_gre_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_gre_net > ())) . keymap_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_gre_net) , "::" , stringify ! (keymap_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_gre_net > ())) . timeouts as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nf_gre_net) , "::" , stringify ! (timeouts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_ip_net { pub generic : nf_generic_net , pub tcp : nf_tcp_net , pub udp : nf_udp_net , pub icmp : nf_icmp_net , pub icmpv6 : nf_icmp_net , pub dccp : nf_dccp_net , pub sctp : nf_sctp_net , pub gre : nf_gre_net , } # [test] fn bindgen_test_layout_nf_ip_net () { assert_eq ! (:: core :: mem :: size_of :: < nf_ip_net > () , 192usize , concat ! ("Size of: " , stringify ! (nf_ip_net))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_ip_net > () , 8usize , concat ! ("Alignment of " , stringify ! (nf_ip_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . generic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (generic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . tcp as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (tcp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . udp as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (udp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . icmp as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (icmp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . icmpv6 as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (icmpv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . dccp as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (dccp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . sctp as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (sctp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_ip_net > ())) . gre as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (nf_ip_net) , "::" , stringify ! (gre))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_ct { pub ecache_dwork_pending : bool_ , pub sysctl_log_invalid : _cargo_bpf_u8 , pub sysctl_events : _cargo_bpf_u8 , pub sysctl_acct : _cargo_bpf_u8 , pub sysctl_auto_assign_helper : _cargo_bpf_u8 , pub sysctl_tstamp : _cargo_bpf_u8 , pub sysctl_checksum : _cargo_bpf_u8 , pub pcpu_lists : * mut ct_pcpu , pub stat : * mut ip_conntrack_stat , pub nf_conntrack_event_cb : * mut nf_ct_event_notifier , pub nf_expect_event_cb : * mut nf_exp_event_notifier , pub nf_ct_proto : nf_ip_net , pub labels_used : :: cty :: c_uint , } # [test] fn bindgen_test_layout_netns_ct () { assert_eq ! (:: core :: mem :: size_of :: < netns_ct > () , 240usize , concat ! ("Size of: " , stringify ! (netns_ct))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_ct > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_ct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . ecache_dwork_pending as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (ecache_dwork_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . sysctl_log_invalid as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (sysctl_log_invalid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . sysctl_events as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (sysctl_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . sysctl_acct as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (sysctl_acct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . sysctl_auto_assign_helper as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (sysctl_auto_assign_helper))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . sysctl_tstamp as * const _ as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (sysctl_tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . sysctl_checksum as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (sysctl_checksum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . pcpu_lists as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (pcpu_lists))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . stat as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . nf_conntrack_event_cb as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (nf_conntrack_event_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . nf_expect_event_cb as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (nf_expect_event_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . nf_ct_proto as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (nf_ct_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_ct > ())) . labels_used as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (netns_ct) , "::" , stringify ! (labels_used))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_nftables { pub gencursor : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_netns_nftables () { assert_eq ! (:: core :: mem :: size_of :: < netns_nftables > () , 1usize , concat ! ("Size of: " , stringify ! (netns_nftables))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_nftables > () , 1usize , concat ! ("Alignment of " , stringify ! (netns_nftables))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_nftables > ())) . gencursor as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_nftables) , "::" , stringify ! (gencursor))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_bpf { pub run_array : [* mut bpf_prog_array ; 2usize] , pub progs : [* mut bpf_prog ; 2usize] , pub links : [list_head ; 2usize] , } # [test] fn bindgen_test_layout_netns_bpf () { assert_eq ! (:: core :: mem :: size_of :: < netns_bpf > () , 64usize , concat ! ("Size of: " , stringify ! (netns_bpf))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_bpf > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_bpf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_bpf > ())) . run_array as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_bpf) , "::" , stringify ! (run_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_bpf > ())) . progs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_bpf) , "::" , stringify ! (progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_bpf > ())) . links as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_bpf) , "::" , stringify ! (links))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xfrm_policy_hash { pub table : * mut hlist_head , pub hmask : :: cty :: c_uint , pub dbits4 : _cargo_bpf_u8 , pub sbits4 : _cargo_bpf_u8 , pub dbits6 : _cargo_bpf_u8 , pub sbits6 : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_xfrm_policy_hash () { assert_eq ! (:: core :: mem :: size_of :: < xfrm_policy_hash > () , 16usize , concat ! ("Size of: " , stringify ! (xfrm_policy_hash))) ; assert_eq ! (:: core :: mem :: align_of :: < xfrm_policy_hash > () , 8usize , concat ! ("Alignment of " , stringify ! (xfrm_policy_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hash > ())) . table as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hash) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hash > ())) . hmask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hash) , "::" , stringify ! (hmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hash > ())) . dbits4 as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hash) , "::" , stringify ! (dbits4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hash > ())) . sbits4 as * const _ as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hash) , "::" , stringify ! (sbits4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hash > ())) . dbits6 as * const _ as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hash) , "::" , stringify ! (dbits6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hash > ())) . sbits6 as * const _ as usize } , 15usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hash) , "::" , stringify ! (sbits6))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct xfrm_policy_hthresh { pub work : work_struct , pub lock : seqlock_t , pub lbits4 : _cargo_bpf_u8 , pub rbits4 : _cargo_bpf_u8 , pub lbits6 : _cargo_bpf_u8 , pub rbits6 : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_xfrm_policy_hthresh () { assert_eq ! (:: core :: mem :: size_of :: < xfrm_policy_hthresh > () , 48usize , concat ! ("Size of: " , stringify ! (xfrm_policy_hthresh))) ; assert_eq ! (:: core :: mem :: align_of :: < xfrm_policy_hthresh > () , 8usize , concat ! ("Alignment of " , stringify ! (xfrm_policy_hthresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hthresh > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hthresh) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hthresh > ())) . lock as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hthresh) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hthresh > ())) . lbits4 as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hthresh) , "::" , stringify ! (lbits4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hthresh > ())) . rbits4 as * const _ as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hthresh) , "::" , stringify ! (rbits4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hthresh > ())) . lbits6 as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hthresh) , "::" , stringify ! (lbits6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrm_policy_hthresh > ())) . rbits6 as * const _ as usize } , 43usize , concat ! ("Offset of field: " , stringify ! (xfrm_policy_hthresh) , "::" , stringify ! (rbits6))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_xfrm { pub state_all : list_head , pub state_bydst : * mut hlist_head , pub state_bysrc : * mut hlist_head , pub state_byspi : * mut hlist_head , pub state_hmask : :: cty :: c_uint , pub state_num : :: cty :: c_uint , pub state_hash_work : work_struct , pub policy_all : list_head , pub policy_byidx : * mut hlist_head , pub policy_idx_hmask : :: cty :: c_uint , pub policy_inexact : [hlist_head ; 3usize] , pub policy_bydst : [xfrm_policy_hash ; 3usize] , pub policy_count : [:: cty :: c_uint ; 6usize] , pub policy_hash_work : work_struct , pub policy_hthresh : xfrm_policy_hthresh , pub inexact_bins : list_head , pub nlsk : * mut sock , pub nlsk_stash : * mut sock , pub sysctl_aevent_etime : _cargo_bpf_u32 , pub sysctl_aevent_rseqth : _cargo_bpf_u32 , pub sysctl_larval_drop : :: cty :: c_int , pub sysctl_acq_expires : _cargo_bpf_u32 , pub sysctl_hdr : * mut ctl_table_header , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , pub xfrm4_dst_ops : dst_ops , pub xfrm6_dst_ops : dst_ops , pub xfrm_state_lock : spinlock_t , pub xfrm_state_hash_generation : seqcount_spinlock_t , pub xfrm_policy_hash_generation : seqcount_spinlock_t , pub xfrm_policy_lock : spinlock_t , pub xfrm_cfg_mutex : mutex , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 16usize] > , } # [test] fn bindgen_test_layout_netns_xfrm () { assert_eq ! (:: core :: mem :: size_of :: < netns_xfrm > () , 832usize , concat ! ("Size of: " , stringify ! (netns_xfrm))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_xfrm > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_xfrm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_all as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_bydst as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_bydst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_bysrc as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_bysrc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_byspi as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_byspi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_hmask as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_hmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_num as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . state_hash_work as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (state_hash_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_all as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_byidx as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_byidx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_idx_hmask as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_idx_hmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_inexact as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_inexact))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_bydst as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_bydst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_count as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_hash_work as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_hash_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . policy_hthresh as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (policy_hthresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . inexact_bins as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (inexact_bins))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . nlsk as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (nlsk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . nlsk_stash as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (nlsk_stash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . sysctl_aevent_etime as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (sysctl_aevent_etime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . sysctl_aevent_rseqth as * const _ as usize } , 324usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (sysctl_aevent_rseqth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . sysctl_larval_drop as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (sysctl_larval_drop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . sysctl_acq_expires as * const _ as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (sysctl_acq_expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . sysctl_hdr as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (sysctl_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm4_dst_ops as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm4_dst_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm6_dst_ops as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm6_dst_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm_state_lock as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm_state_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm_state_hash_generation as * const _ as usize } , 772usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm_state_hash_generation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm_policy_hash_generation as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm_policy_hash_generation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm_policy_lock as * const _ as usize } , 780usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm_policy_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xfrm > ())) . xfrm_cfg_mutex as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (netns_xfrm) , "::" , stringify ! (xfrm_cfg_mutex))) ; } impl netns_xfrm { # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_ipvs { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mpls_route { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netns_mpls { pub ip_ttl_propagate : :: cty :: c_int , pub default_ttl : :: cty :: c_int , pub platform_labels : size_t , pub platform_label : * mut * mut mpls_route , pub ctl : * mut ctl_table_header , } # [test] fn bindgen_test_layout_netns_mpls () { assert_eq ! (:: core :: mem :: size_of :: < netns_mpls > () , 32usize , concat ! ("Size of: " , stringify ! (netns_mpls))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_mpls > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_mpls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mpls > ())) . ip_ttl_propagate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_mpls) , "::" , stringify ! (ip_ttl_propagate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mpls > ())) . default_ttl as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (netns_mpls) , "::" , stringify ! (default_ttl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mpls > ())) . platform_labels as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_mpls) , "::" , stringify ! (platform_labels))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mpls > ())) . platform_label as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_mpls) , "::" , stringify ! (platform_label))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_mpls > ())) . ctl as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_mpls) , "::" , stringify ! (ctl))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct can_dev_rcv_lists { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct can_pkg_stats { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct can_rcv_lists_stats { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_can { pub proc_dir : * mut proc_dir_entry , pub pde_stats : * mut proc_dir_entry , pub pde_reset_stats : * mut proc_dir_entry , pub pde_rcvlist_all : * mut proc_dir_entry , pub pde_rcvlist_fil : * mut proc_dir_entry , pub pde_rcvlist_inv : * mut proc_dir_entry , pub pde_rcvlist_sff : * mut proc_dir_entry , pub pde_rcvlist_eff : * mut proc_dir_entry , pub pde_rcvlist_err : * mut proc_dir_entry , pub bcmproc_dir : * mut proc_dir_entry , pub rx_alldev_list : * mut can_dev_rcv_lists , pub rcvlists_lock : spinlock_t , pub stattimer : timer_list , pub pkg_stats : * mut can_pkg_stats , pub rcv_lists_stats : * mut can_rcv_lists_stats , pub cgw_list : hlist_head , } # [test] fn bindgen_test_layout_netns_can () { assert_eq ! (:: core :: mem :: size_of :: < netns_can > () , 160usize , concat ! ("Size of: " , stringify ! (netns_can))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_can > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_can))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . proc_dir as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (proc_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_stats as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_reset_stats as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_reset_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_rcvlist_all as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_rcvlist_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_rcvlist_fil as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_rcvlist_fil))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_rcvlist_inv as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_rcvlist_inv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_rcvlist_sff as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_rcvlist_sff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_rcvlist_eff as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_rcvlist_eff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pde_rcvlist_err as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pde_rcvlist_err))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . bcmproc_dir as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (bcmproc_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . rx_alldev_list as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (rx_alldev_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . rcvlists_lock as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (rcvlists_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . stattimer as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (stattimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . pkg_stats as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (pkg_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . rcv_lists_stats as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (rcv_lists_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_can > ())) . cgw_list as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (netns_can) , "::" , stringify ! (cgw_list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_xdp { pub lock : mutex , pub list : hlist_head , } # [test] fn bindgen_test_layout_netns_xdp () { assert_eq ! (:: core :: mem :: size_of :: < netns_xdp > () , 40usize , concat ! ("Size of: " , stringify ! (netns_xdp))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_xdp > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_xdp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xdp > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_xdp) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_xdp > ())) . list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netns_xdp) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct smc_stats { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct smc_stats_rsn { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct netns_smc { pub smc_stats : * mut smc_stats , pub mutex_fback_rsn : mutex , pub fback_rsn : * mut smc_stats_rsn , } # [test] fn bindgen_test_layout_netns_smc () { assert_eq ! (:: core :: mem :: size_of :: < netns_smc > () , 48usize , concat ! ("Size of: " , stringify ! (netns_smc))) ; assert_eq ! (:: core :: mem :: align_of :: < netns_smc > () , 8usize , concat ! ("Alignment of " , stringify ! (netns_smc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_smc > ())) . smc_stats as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netns_smc) , "::" , stringify ! (smc_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_smc > ())) . mutex_fback_rsn as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netns_smc) , "::" , stringify ! (mutex_fback_rsn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netns_smc > ())) . fback_rsn as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netns_smc) , "::" , stringify ! (fback_rsn))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct net { pub passive : refcount_t , pub rules_mod_lock : spinlock_t , pub dev_unreg_count : :: cty :: c_uint , pub dev_base_seq : :: cty :: c_uint , pub ifindex : :: cty :: c_int , pub nsid_lock : spinlock_t , pub fnhe_genid : atomic_t , pub list : list_head , pub exit_list : list_head , pub cleanup_list : llist_node , pub key_domain : * mut key_tag , pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub netns_ids : idr , pub ns : ns_common , pub dev_base_head : list_head , pub proc_net : * mut proc_dir_entry , pub proc_net_stat : * mut proc_dir_entry , pub sysctls : ctl_table_set , pub rtnl : * mut sock , pub genl_sock : * mut sock , pub uevent_sock : * mut uevent_sock , pub dev_name_head : * mut hlist_head , pub dev_index_head : * mut hlist_head , pub netdev_chain : raw_notifier_head , pub hash_mix : _cargo_bpf_u32 , pub loopback_dev : * mut net_device , pub rules_ops : list_head , pub core : netns_core , pub mib : netns_mib , pub packet : netns_packet , pub unx : netns_unix , pub nexthop : netns_nexthop , pub ipv4 : netns_ipv4 , pub ipv6 : netns_ipv6 , pub ieee802154_lowpan : netns_ieee802154_lowpan , pub sctp : netns_sctp , pub nf : netns_nf , pub xt : netns_xt , pub ct : netns_ct , pub nft : netns_nftables , pub wext_nlevents : sk_buff_head , pub gen : * mut net_generic , pub bpf : netns_bpf , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub xfrm : netns_xfrm , pub net_cookie : _cargo_bpf_u64 , pub ipvs : * mut netns_ipvs , pub mpls : netns_mpls , pub can : netns_can , pub xdp : netns_xdp , pub crypto_nlsk : * mut sock , pub diag_nlsk : * mut sock , pub smc : netns_smc , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_net () { assert_eq ! (:: core :: mem :: size_of :: < net > () , 4224usize , concat ! ("Size of: " , stringify ! (net))) ; assert_eq ! (:: core :: mem :: align_of :: < net > () , 8usize , concat ! ("Alignment of " , stringify ! (net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . passive as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (passive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . rules_mod_lock as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (rules_mod_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . dev_unreg_count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (dev_unreg_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . dev_base_seq as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (dev_base_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ifindex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . nsid_lock as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (nsid_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . fnhe_genid as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (fnhe_genid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . exit_list as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (exit_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . cleanup_list as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (cleanup_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . key_domain as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (key_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . user_ns as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ucounts as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . netns_ids as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (netns_ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ns as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . dev_base_head as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (dev_base_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . proc_net as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (proc_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . proc_net_stat as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (proc_net_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . sysctls as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (sysctls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . rtnl as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (rtnl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . genl_sock as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (genl_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . uevent_sock as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (uevent_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . dev_name_head as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (dev_name_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . dev_index_head as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (dev_index_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . netdev_chain as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (netdev_chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . hash_mix as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (hash_mix))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . loopback_dev as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (loopback_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . rules_ops as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (rules_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . core as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . mib as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . packet as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (packet))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . unx as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (unx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . nexthop as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (nexthop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ipv4 as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ipv4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ipv6 as * const _ as usize } , 1344usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ipv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ieee802154_lowpan as * const _ as usize } , 2048usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ieee802154_lowpan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . sctp as * const _ as usize } , 2064usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (sctp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . nf as * const _ as usize } , 2352usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (nf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . xt as * const _ as usize } , 2688usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (xt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ct as * const _ as usize } , 2696usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . nft as * const _ as usize } , 2936usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (nft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . wext_nlevents as * const _ as usize } , 2944usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (wext_nlevents))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . gen as * const _ as usize } , 2968usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . bpf as * const _ as usize } , 2976usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (bpf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . xfrm as * const _ as usize } , 3072usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (xfrm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . net_cookie as * const _ as usize } , 3904usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (net_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . ipvs as * const _ as usize } , 3912usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (ipvs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . mpls as * const _ as usize } , 3920usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (mpls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . can as * const _ as usize } , 3952usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (can))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . xdp as * const _ as usize } , 4112usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (xdp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . crypto_nlsk as * const _ as usize } , 4152usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (crypto_nlsk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . diag_nlsk as * const _ as usize } , 4160usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (diag_nlsk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net > ())) . smc as * const _ as usize } , 4168usize , concat ! ("Offset of field: " , stringify ! (net) , "::" , stringify ! (smc))) ; } impl net { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct u64_stats_t { pub v : local64_t , } # [test] fn bindgen_test_layout_u64_stats_t () { assert_eq ! (:: core :: mem :: size_of :: < u64_stats_t > () , 8usize , concat ! ("Size of: " , stringify ! (u64_stats_t))) ; assert_eq ! (:: core :: mem :: align_of :: < u64_stats_t > () , 8usize , concat ! ("Alignment of " , stringify ! (u64_stats_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < u64_stats_t > ())) . v as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (u64_stats_t) , "::" , stringify ! (v))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_map_dev_ops { pub map_get_next_key : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_offloaded_map , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub map_lookup_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_offloaded_map , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub map_update_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_offloaded_map , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void , arg4 : _cargo_bpf_u64) -> :: cty :: c_int > , pub map_delete_elem : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_offloaded_map , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_bpf_map_dev_ops () { assert_eq ! (:: core :: mem :: size_of :: < bpf_map_dev_ops > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_map_dev_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_map_dev_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_map_dev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_dev_ops > ())) . map_get_next_key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_map_dev_ops) , "::" , stringify ! (map_get_next_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_dev_ops > ())) . map_lookup_elem as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_map_dev_ops) , "::" , stringify ! (map_lookup_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_dev_ops > ())) . map_update_elem as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_map_dev_ops) , "::" , stringify ! (map_update_elem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_map_dev_ops > ())) . map_delete_elem as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_map_dev_ops) , "::" , stringify ! (map_delete_elem))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_offloaded_map { pub map : bpf_map , pub netdev : * mut net_device , pub dev_ops : * const bpf_map_dev_ops , pub dev_priv : * mut :: cty :: c_void , pub offloads : list_head , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [test] fn bindgen_test_layout_bpf_offloaded_map () { assert_eq ! (:: core :: mem :: size_of :: < bpf_offloaded_map > () , 320usize , concat ! ("Size of: " , stringify ! (bpf_offloaded_map))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_offloaded_map > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_offloaded_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_offloaded_map > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_offloaded_map) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_offloaded_map > ())) . netdev as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (bpf_offloaded_map) , "::" , stringify ! (netdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_offloaded_map > ())) . dev_ops as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (bpf_offloaded_map) , "::" , stringify ! (dev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_offloaded_map > ())) . dev_priv as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (bpf_offloaded_map) , "::" , stringify ! (dev_priv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_offloaded_map > ())) . offloads as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (bpf_offloaded_map) , "::" , stringify ! (offloads))) ; } impl bpf_offloaded_map { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_stats { pub rx_packets : :: cty :: c_ulong , pub tx_packets : :: cty :: c_ulong , pub rx_bytes : :: cty :: c_ulong , pub tx_bytes : :: cty :: c_ulong , pub rx_errors : :: cty :: c_ulong , pub tx_errors : :: cty :: c_ulong , pub rx_dropped : :: cty :: c_ulong , pub tx_dropped : :: cty :: c_ulong , pub multicast : :: cty :: c_ulong , pub collisions : :: cty :: c_ulong , pub rx_length_errors : :: cty :: c_ulong , pub rx_over_errors : :: cty :: c_ulong , pub rx_crc_errors : :: cty :: c_ulong , pub rx_frame_errors : :: cty :: c_ulong , pub rx_fifo_errors : :: cty :: c_ulong , pub rx_missed_errors : :: cty :: c_ulong , pub tx_aborted_errors : :: cty :: c_ulong , pub tx_carrier_errors : :: cty :: c_ulong , pub tx_fifo_errors : :: cty :: c_ulong , pub tx_heartbeat_errors : :: cty :: c_ulong , pub tx_window_errors : :: cty :: c_ulong , pub rx_compressed : :: cty :: c_ulong , pub tx_compressed : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_net_device_stats () { assert_eq ! (:: core :: mem :: size_of :: < net_device_stats > () , 184usize , concat ! ("Size of: " , stringify ! (net_device_stats))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_stats > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_packets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_packets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_bytes as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_bytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_errors as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_errors as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_dropped as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_dropped as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . multicast as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (multicast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . collisions as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (collisions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_length_errors as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_length_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_over_errors as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_over_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_crc_errors as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_crc_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_frame_errors as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_frame_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_fifo_errors as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_fifo_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_missed_errors as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_missed_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_aborted_errors as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_aborted_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_carrier_errors as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_carrier_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_fifo_errors as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_fifo_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_heartbeat_errors as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_heartbeat_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_window_errors as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_window_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . rx_compressed as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (rx_compressed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_stats > ())) . tx_compressed as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (net_device_stats) , "::" , stringify ! (tx_compressed))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_hw_addr_list { pub list : list_head , pub count : :: cty :: c_int , } # [test] fn bindgen_test_layout_netdev_hw_addr_list () { assert_eq ! (:: core :: mem :: size_of :: < netdev_hw_addr_list > () , 24usize , concat ! ("Size of: " , stringify ! (netdev_hw_addr_list))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_hw_addr_list > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_hw_addr_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_hw_addr_list > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_hw_addr_list) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_hw_addr_list > ())) . count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netdev_hw_addr_list) , "::" , stringify ! (count))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tipc_bearer { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dn_dev { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mpls_dev { _unused : [u8 ; 0] , } pub const rx_handler_result_RX_HANDLER_CONSUMED : rx_handler_result = 0 ; pub const rx_handler_result_RX_HANDLER_ANOTHER : rx_handler_result = 1 ; pub const rx_handler_result_RX_HANDLER_EXACT : rx_handler_result = 2 ; pub const rx_handler_result_RX_HANDLER_PASS : rx_handler_result = 3 ; pub type rx_handler_result = :: cty :: c_uint ; pub use self :: rx_handler_result as rx_handler_result_t ; pub type rx_handler_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut * mut sk_buff) -> rx_handler_result_t > ; pub const netdev_ml_priv_type_ML_PRIV_NONE : netdev_ml_priv_type = 0 ; pub const netdev_ml_priv_type_ML_PRIV_CAN : netdev_ml_priv_type = 1 ; pub type netdev_ml_priv_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pcpu_dstats { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct garp_port { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mrp_port { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_tc_txq { pub count : _cargo_bpf_u16 , pub offset : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_netdev_tc_txq () { assert_eq ! (:: core :: mem :: size_of :: < netdev_tc_txq > () , 4usize , concat ! ("Size of: " , stringify ! (netdev_tc_txq))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_tc_txq > () , 2usize , concat ! ("Alignment of " , stringify ! (netdev_tc_txq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_tc_txq > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_tc_txq) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_tc_txq > ())) . offset as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (netdev_tc_txq) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct macsec_ops { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct udp_tunnel_nic { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_xdp_entity { pub prog : * mut bpf_prog , pub link : * mut bpf_xdp_link , } # [test] fn bindgen_test_layout_bpf_xdp_entity () { assert_eq ! (:: core :: mem :: size_of :: < bpf_xdp_entity > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_xdp_entity))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_xdp_entity > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_xdp_entity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_xdp_entity > ())) . prog as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_xdp_entity) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_xdp_entity > ())) . link as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_xdp_entity) , "::" , stringify ! (link))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct net_device { pub name : [:: cty :: c_char ; 16usize] , pub name_node : * mut netdev_name_node , pub ifalias : * mut dev_ifalias , pub mem_end : :: cty :: c_ulong , pub mem_start : :: cty :: c_ulong , pub base_addr : :: cty :: c_ulong , pub state : :: cty :: c_ulong , pub dev_list : list_head , pub napi_list : list_head , pub unreg_list : list_head , pub close_list : list_head , pub ptype_all : list_head , pub ptype_specific : list_head , pub adj_list : net_device__bindgen_ty_1 , pub flags : :: cty :: c_uint , pub priv_flags : :: cty :: c_uint , pub netdev_ops : * const net_device_ops , pub ifindex : :: cty :: c_int , pub gflags : :: cty :: c_ushort , pub hard_header_len : :: cty :: c_ushort , pub mtu : :: cty :: c_uint , pub needed_headroom : :: cty :: c_ushort , pub needed_tailroom : :: cty :: c_ushort , pub features : netdev_features_t , pub hw_features : netdev_features_t , pub wanted_features : netdev_features_t , pub vlan_features : netdev_features_t , pub hw_enc_features : netdev_features_t , pub mpls_features : netdev_features_t , pub gso_partial_features : netdev_features_t , pub min_mtu : :: cty :: c_uint , pub max_mtu : :: cty :: c_uint , pub type_ : :: cty :: c_ushort , pub min_header_len : :: cty :: c_uchar , pub name_assign_type : :: cty :: c_uchar , pub group : :: cty :: c_int , pub stats : net_device_stats , pub rx_dropped : atomic_long_t , pub tx_dropped : atomic_long_t , pub rx_nohandler : atomic_long_t , pub carrier_up_count : atomic_t , pub carrier_down_count : atomic_t , pub wireless_handlers : * const iw_handler_def , pub wireless_data : * mut iw_public_data , pub ethtool_ops : * const ethtool_ops , pub l3mdev_ops : * const l3mdev_ops , pub ndisc_ops : * const ndisc_ops , pub xfrmdev_ops : * const xfrmdev_ops , pub tlsdev_ops : * const tlsdev_ops , pub header_ops : * const header_ops , pub operstate : :: cty :: c_uchar , pub link_mode : :: cty :: c_uchar , pub if_port : :: cty :: c_uchar , pub dma : :: cty :: c_uchar , pub perm_addr : [:: cty :: c_uchar ; 32usize] , pub addr_assign_type : :: cty :: c_uchar , pub addr_len : :: cty :: c_uchar , pub upper_level : :: cty :: c_uchar , pub lower_level : :: cty :: c_uchar , pub neigh_priv_len : :: cty :: c_ushort , pub dev_id : :: cty :: c_ushort , pub dev_port : :: cty :: c_ushort , pub padded : :: cty :: c_ushort , pub addr_list_lock : spinlock_t , pub irq : :: cty :: c_int , pub uc : netdev_hw_addr_list , pub mc : netdev_hw_addr_list , pub dev_addrs : netdev_hw_addr_list , pub queues_kset : * mut kset , pub promiscuity : :: cty :: c_uint , pub allmulti : :: cty :: c_uint , pub uc_promisc : bool_ , pub vlan_info : * mut vlan_info , pub dsa_ptr : * mut dsa_port , pub tipc_ptr : * mut tipc_bearer , pub atalk_ptr : * mut :: cty :: c_void , pub ip_ptr : * mut in_device , pub dn_ptr : * mut dn_dev , pub ip6_ptr : * mut inet6_dev , pub ax25_ptr : * mut :: cty :: c_void , pub ieee80211_ptr : * mut wireless_dev , pub ieee802154_ptr : * mut wpan_dev , pub mpls_ptr : * mut mpls_dev , pub dev_addr : * mut :: cty :: c_uchar , pub _rx : * mut netdev_rx_queue , pub num_rx_queues : :: cty :: c_uint , pub real_num_rx_queues : :: cty :: c_uint , pub xdp_prog : * mut bpf_prog , pub gro_flush_timeout : :: cty :: c_ulong , pub napi_defer_hard_irqs : :: cty :: c_int , pub rx_handler : rx_handler_func_t , pub rx_handler_data : * mut :: cty :: c_void , pub miniq_ingress : * mut mini_Qdisc , pub ingress_queue : * mut netdev_queue , pub nf_hooks_ingress : * mut nf_hook_entries , pub broadcast : [:: cty :: c_uchar ; 32usize] , pub rx_cpu_rmap : * mut cpu_rmap , pub index_hlist : hlist_node , pub _tx : * mut netdev_queue , pub num_tx_queues : :: cty :: c_uint , pub real_num_tx_queues : :: cty :: c_uint , pub qdisc : * mut Qdisc , pub tx_queue_len : :: cty :: c_uint , pub tx_global_lock : spinlock_t , pub xdp_bulkq : * mut xdp_dev_bulk_queue , pub xps_maps : [* mut xps_dev_maps ; 2usize] , pub miniq_egress : * mut mini_Qdisc , pub qdisc_hash : [hlist_head ; 16usize] , pub watchdog_timer : timer_list , pub watchdog_timeo : :: cty :: c_int , pub proto_down_reason : _cargo_bpf_u32 , pub todo_list : list_head , pub pcpu_refcnt : * mut :: cty :: c_int , pub link_watch_list : list_head , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub dismantle : bool_ , pub _bitfield_align_2 : [u16 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub needs_free_netdev : bool_ , pub priv_destructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub npinfo : * mut netpoll_info , pub nd_net : possible_net_t , pub ml_priv : * mut :: cty :: c_void , pub ml_priv_type : netdev_ml_priv_type , pub __bindgen_anon_1 : net_device__bindgen_ty_4 , pub garp_port : * mut garp_port , pub mrp_port : * mut mrp_port , pub dev : device , pub sysfs_groups : [* const attribute_group ; 4usize] , pub sysfs_rx_queue_group : * const attribute_group , pub rtnl_link_ops : * const rtnl_link_ops , pub gso_max_size : :: cty :: c_uint , pub gso_max_segs : _cargo_bpf_u16 , pub dcbnl_ops : * const dcbnl_rtnl_ops , pub num_tc : s16 , pub tc_to_txq : [netdev_tc_txq ; 16usize] , pub prio_tc_map : [_cargo_bpf_u8 ; 16usize] , pub fcoe_ddp_xid : :: cty :: c_uint , pub priomap : * mut netprio_map , pub phydev : * mut phy_device , pub sfp_bus : * mut sfp_bus , pub qdisc_tx_busylock : * mut lock_class_key , pub qdisc_running_key : * mut lock_class_key , pub proto_down : bool_ , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub net_notifier_list : list_head , pub macsec_ops : * const macsec_ops , pub udp_tunnel_nic_info : * const udp_tunnel_nic_info , pub udp_tunnel_nic : * mut udp_tunnel_nic , pub xdp_state : [bpf_xdp_entity ; 3usize] , pub _bitfield_align_4 : [u8 ; 0] , pub _bitfield_4 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device__bindgen_ty_1 { pub upper : list_head , pub lower : list_head , } # [test] fn bindgen_test_layout_net_device__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < net_device__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (net_device__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device__bindgen_ty_1 > ())) . upper as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device__bindgen_ty_1) , "::" , stringify ! (upper))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device__bindgen_ty_1 > ())) . lower as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (net_device__bindgen_ty_1) , "::" , stringify ! (lower))) ; } pub const net_device_NETREG_UNINITIALIZED : :: cty :: c_uint = 0 ; pub const net_device_NETREG_REGISTERED : :: cty :: c_uint = 1 ; pub const net_device_NETREG_UNREGISTERING : :: cty :: c_uint = 2 ; pub const net_device_NETREG_UNREGISTERED : :: cty :: c_uint = 3 ; pub const net_device_NETREG_RELEASED : :: cty :: c_uint = 4 ; pub const net_device_NETREG_DUMMY : :: cty :: c_uint = 5 ; pub type net_device__bindgen_ty_2 = :: cty :: c_uint ; pub const net_device_RTNL_LINK_INITIALIZED : :: cty :: c_uint = 0 ; pub const net_device_RTNL_LINK_INITIALIZING : :: cty :: c_uint = 1 ; pub type net_device__bindgen_ty_3 = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub union net_device__bindgen_ty_4 { pub lstats : * mut pcpu_lstats , pub tstats : * mut pcpu_sw_netstats , pub dstats : * mut pcpu_dstats , } # [test] fn bindgen_test_layout_net_device__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < net_device__bindgen_ty_4 > () , 8usize , concat ! ("Size of: " , stringify ! (net_device__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device__bindgen_ty_4 > ())) . lstats as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device__bindgen_ty_4) , "::" , stringify ! (lstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device__bindgen_ty_4 > ())) . tstats as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device__bindgen_ty_4) , "::" , stringify ! (tstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device__bindgen_ty_4 > ())) . dstats as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device__bindgen_ty_4) , "::" , stringify ! (dstats))) ; } # [test] fn bindgen_test_layout_net_device () { assert_eq ! (:: core :: mem :: size_of :: < net_device > () , 2368usize , concat ! ("Size of: " , stringify ! (net_device))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . name_node as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (name_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ifalias as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ifalias))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mem_end as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mem_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mem_start as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mem_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . base_addr as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (base_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . state as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dev_list as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dev_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . napi_list as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (napi_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . unreg_list as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (unreg_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . close_list as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (close_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ptype_all as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ptype_all))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ptype_specific as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ptype_specific))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . adj_list as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (adj_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . flags as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . priv_flags as * const _ as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (priv_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . netdev_ops as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (netdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ifindex as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . gflags as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (gflags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . hard_header_len as * const _ as usize } , 214usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (hard_header_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mtu as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . needed_headroom as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (needed_headroom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . needed_tailroom as * const _ as usize } , 222usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (needed_tailroom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . features as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . hw_features as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (hw_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . wanted_features as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (wanted_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . vlan_features as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (vlan_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . hw_enc_features as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (hw_enc_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mpls_features as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mpls_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . gso_partial_features as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (gso_partial_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . min_mtu as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (min_mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . max_mtu as * const _ as usize } , 284usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (max_mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . type_ as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . min_header_len as * const _ as usize } , 290usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (min_header_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . name_assign_type as * const _ as usize } , 291usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (name_assign_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . group as * const _ as usize } , 292usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . stats as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . rx_dropped as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (rx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . tx_dropped as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (tx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . rx_nohandler as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (rx_nohandler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . carrier_up_count as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (carrier_up_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . carrier_down_count as * const _ as usize } , 508usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (carrier_down_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . wireless_handlers as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (wireless_handlers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . wireless_data as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (wireless_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ethtool_ops as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ethtool_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . l3mdev_ops as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (l3mdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ndisc_ops as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ndisc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . xfrmdev_ops as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (xfrmdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . tlsdev_ops as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (tlsdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . header_ops as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (header_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . operstate as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (operstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . link_mode as * const _ as usize } , 577usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (link_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . if_port as * const _ as usize } , 578usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (if_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dma as * const _ as usize } , 579usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dma))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . perm_addr as * const _ as usize } , 580usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (perm_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . addr_assign_type as * const _ as usize } , 612usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (addr_assign_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . addr_len as * const _ as usize } , 613usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (addr_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . upper_level as * const _ as usize } , 614usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (upper_level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . lower_level as * const _ as usize } , 615usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (lower_level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . neigh_priv_len as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (neigh_priv_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dev_id as * const _ as usize } , 618usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dev_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dev_port as * const _ as usize } , 620usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dev_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . padded as * const _ as usize } , 622usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (padded))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . addr_list_lock as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (addr_list_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . irq as * const _ as usize } , 628usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . uc as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (uc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mc as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dev_addrs as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dev_addrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . queues_kset as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (queues_kset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . promiscuity as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (promiscuity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . allmulti as * const _ as usize } , 716usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (allmulti))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . uc_promisc as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (uc_promisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . vlan_info as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (vlan_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dsa_ptr as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dsa_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . tipc_ptr as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (tipc_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . atalk_ptr as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (atalk_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ip_ptr as * const _ as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ip_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dn_ptr as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dn_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ip6_ptr as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ip6_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ax25_ptr as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ax25_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ieee80211_ptr as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ieee80211_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ieee802154_ptr as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ieee802154_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mpls_ptr as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mpls_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dev_addr as * const _ as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dev_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . _rx as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (_rx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . num_rx_queues as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (num_rx_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . real_num_rx_queues as * const _ as usize } , 836usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (real_num_rx_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . xdp_prog as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (xdp_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . gro_flush_timeout as * const _ as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (gro_flush_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . napi_defer_hard_irqs as * const _ as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (napi_defer_hard_irqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . rx_handler as * const _ as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (rx_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . rx_handler_data as * const _ as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (rx_handler_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . miniq_ingress as * const _ as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (miniq_ingress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ingress_queue as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ingress_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . nf_hooks_ingress as * const _ as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (nf_hooks_ingress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . broadcast as * const _ as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (broadcast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . rx_cpu_rmap as * const _ as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (rx_cpu_rmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . index_hlist as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (index_hlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . _tx as * const _ as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (_tx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . num_tx_queues as * const _ as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (num_tx_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . real_num_tx_queues as * const _ as usize } , 972usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (real_num_tx_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . qdisc as * const _ as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (qdisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . tx_queue_len as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (tx_queue_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . tx_global_lock as * const _ as usize } , 988usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (tx_global_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . xdp_bulkq as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (xdp_bulkq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . xps_maps as * const _ as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (xps_maps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . miniq_egress as * const _ as usize } , 1016usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (miniq_egress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . qdisc_hash as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (qdisc_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . watchdog_timer as * const _ as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (watchdog_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . watchdog_timeo as * const _ as usize } , 1192usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (watchdog_timeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . proto_down_reason as * const _ as usize } , 1196usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (proto_down_reason))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . todo_list as * const _ as usize } , 1200usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (todo_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . pcpu_refcnt as * const _ as usize } , 1216usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (pcpu_refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . link_watch_list as * const _ as usize } , 1224usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (link_watch_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dismantle as * const _ as usize } , 1241usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dismantle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . needs_free_netdev as * const _ as usize } , 1244usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (needs_free_netdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . priv_destructor as * const _ as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (priv_destructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . npinfo as * const _ as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (npinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . nd_net as * const _ as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (nd_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ml_priv as * const _ as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ml_priv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . ml_priv_type as * const _ as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (ml_priv_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . garp_port as * const _ as usize } , 1296usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (garp_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . mrp_port as * const _ as usize } , 1304usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (mrp_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dev as * const _ as usize } , 1312usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . sysfs_groups as * const _ as usize } , 2040usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (sysfs_groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . sysfs_rx_queue_group as * const _ as usize } , 2072usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (sysfs_rx_queue_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . rtnl_link_ops as * const _ as usize } , 2080usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (rtnl_link_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . gso_max_size as * const _ as usize } , 2088usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (gso_max_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . gso_max_segs as * const _ as usize } , 2092usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (gso_max_segs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . dcbnl_ops as * const _ as usize } , 2096usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (dcbnl_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . num_tc as * const _ as usize } , 2104usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (num_tc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . tc_to_txq as * const _ as usize } , 2106usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (tc_to_txq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . prio_tc_map as * const _ as usize } , 2170usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (prio_tc_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . fcoe_ddp_xid as * const _ as usize } , 2188usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (fcoe_ddp_xid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . priomap as * const _ as usize } , 2192usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (priomap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . phydev as * const _ as usize } , 2200usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (phydev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . sfp_bus as * const _ as usize } , 2208usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (sfp_bus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . qdisc_tx_busylock as * const _ as usize } , 2216usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (qdisc_tx_busylock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . qdisc_running_key as * const _ as usize } , 2224usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (qdisc_running_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . proto_down as * const _ as usize } , 2232usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (proto_down))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . net_notifier_list as * const _ as usize } , 2240usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (net_notifier_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . macsec_ops as * const _ as usize } , 2256usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (macsec_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . udp_tunnel_nic_info as * const _ as usize } , 2264usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (udp_tunnel_nic_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . udp_tunnel_nic as * const _ as usize } , 2272usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (udp_tunnel_nic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device > ())) . xdp_state as * const _ as usize } , 2280usize , concat ! ("Offset of field: " , stringify ! (net_device) , "::" , stringify ! (xdp_state))) ; } impl net_device { # [inline] pub fn reg_state (& self) -> net_device__bindgen_ty_2 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_reg_state (& mut self , val : net_device__bindgen_ty_2) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reg_state : net_device__bindgen_ty_2) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let reg_state : u32 = unsafe { :: core :: mem :: transmute (reg_state) } ; reg_state as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn rtnl_link_state (& self) -> net_device__bindgen_ty_3 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (0usize , 16u8) as u32) } } # [inline] pub fn set_rtnl_link_state (& mut self , val : net_device__bindgen_ty_3) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (0usize , 16u8 , val as u64) } } # [inline] pub fn new_bitfield_2 (rtnl_link_state : net_device__bindgen_ty_3) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 16u8 , { let rtnl_link_state : u32 = unsafe { :: core :: mem :: transmute (rtnl_link_state) } ; rtnl_link_state as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn wol_enabled (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_wol_enabled (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn threaded (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_threaded (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_3 (wol_enabled : :: cty :: c_uint , threaded : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let wol_enabled : u32 = unsafe { :: core :: mem :: transmute (wol_enabled) } ; wol_enabled as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let threaded : u32 = unsafe { :: core :: mem :: transmute (threaded) } ; threaded as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_dispatcher_prog { pub prog : * mut bpf_prog , pub users : refcount_t , } # [test] fn bindgen_test_layout_bpf_dispatcher_prog () { assert_eq ! (:: core :: mem :: size_of :: < bpf_dispatcher_prog > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_dispatcher_prog))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_dispatcher_prog > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_dispatcher_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher_prog > ())) . prog as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher_prog) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher_prog > ())) . users as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher_prog) , "::" , stringify ! (users))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_dispatcher { pub mutex : mutex , pub func : * mut :: cty :: c_void , pub progs : [bpf_dispatcher_prog ; 48usize] , pub num_progs : :: cty :: c_int , pub image : * mut :: cty :: c_void , pub image_off : _cargo_bpf_u32 , pub ksym : bpf_ksym , } # [test] fn bindgen_test_layout_bpf_dispatcher () { assert_eq ! (:: core :: mem :: size_of :: < bpf_dispatcher > () , 1048usize , concat ! ("Size of: " , stringify ! (bpf_dispatcher))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_dispatcher > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_dispatcher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . mutex as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . func as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . progs as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . num_progs as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (num_progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . image as * const _ as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (image))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . image_off as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (image_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_dispatcher > ())) . ksym as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (bpf_dispatcher) , "::" , stringify ! (ksym))) ; } pub type sk_buff_data_t = :: cty :: c_uint ; # [repr (C)] pub struct sk_buff { pub __bindgen_anon_1 : sk_buff__bindgen_ty_1 , pub __bindgen_anon_2 : sk_buff__bindgen_ty_2 , pub __bindgen_anon_3 : sk_buff__bindgen_ty_3 , pub cb : [:: cty :: c_char ; 48usize] , pub __bindgen_anon_4 : sk_buff__bindgen_ty_4 , pub _nfct : :: cty :: c_ulong , pub len : :: cty :: c_uint , pub data_len : :: cty :: c_uint , pub mac_len : __u16 , pub hdr_len : __u16 , pub queue_mapping : __u16 , pub __cloned_offset : __IncompleteArrayField < __u8 > , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub active_extensions : __u8 , pub headers_start : __IncompleteArrayField < __u32 > , pub __pkt_type_offset : __IncompleteArrayField < __u8 > , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub __pkt_vlan_present_offset : __IncompleteArrayField < __u8 > , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub tc_index : __u16 , pub __bindgen_anon_5 : sk_buff__bindgen_ty_5 , pub priority : __u32 , pub skb_iif : :: cty :: c_int , pub hash : __u32 , pub vlan_proto : __be16 , pub vlan_tci : __u16 , pub __bindgen_anon_6 : sk_buff__bindgen_ty_6 , pub secmark : __u32 , pub __bindgen_anon_7 : sk_buff__bindgen_ty_7 , pub __bindgen_anon_8 : sk_buff__bindgen_ty_8 , pub inner_transport_header : __u16 , pub inner_network_header : __u16 , pub inner_mac_header : __u16 , pub protocol : __be16 , pub transport_header : __u16 , pub network_header : __u16 , pub mac_header : __u16 , pub headers_end : __IncompleteArrayField < __u32 > , pub tail : sk_buff_data_t , pub end : sk_buff_data_t , pub head : * mut :: cty :: c_uchar , pub data : * mut :: cty :: c_uchar , pub truesize : :: cty :: c_uint , pub users : refcount_t , pub extensions : * mut skb_ext , } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_1 { pub __bindgen_anon_1 : sk_buff__bindgen_ty_1__bindgen_ty_1 , pub rbnode : rb_node , pub list : list_head , } # [repr (C)] # [derive (Copy , Clone)] pub struct sk_buff__bindgen_ty_1__bindgen_ty_1 { pub next : * mut sk_buff , pub prev : * mut sk_buff , pub __bindgen_anon_1 : sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { pub dev : * mut net_device , pub dev_scratch : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > ())) . dev_scratch as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (dev_scratch))) ; } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_1__bindgen_ty_1 > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_1__bindgen_ty_1 > ())) . prev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (prev))) ; } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_1 > ())) . rbnode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_1) , "::" , stringify ! (rbnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_1 > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_1) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_2 { pub sk : * mut sock , pub ip_defrag_offset : :: cty :: c_int , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_2 > ())) . sk as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_2) , "::" , stringify ! (sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_2 > ())) . ip_defrag_offset as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_2) , "::" , stringify ! (ip_defrag_offset))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_3 { pub tstamp : ktime_t , pub skb_mstamp_ns : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_3 > () , 8usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_3 > ())) . tstamp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_3) , "::" , stringify ! (tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_3 > ())) . skb_mstamp_ns as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_3) , "::" , stringify ! (skb_mstamp_ns))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_4 { pub __bindgen_anon_1 : sk_buff__bindgen_ty_4__bindgen_ty_1 , pub tcp_tsorted_anchor : list_head , pub _sk_redir : :: cty :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sk_buff__bindgen_ty_4__bindgen_ty_1 { pub _skb_refdst : :: cty :: c_ulong , pub destructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff) > , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_4__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_4__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_4__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_4__bindgen_ty_1 > ())) . _skb_refdst as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (_skb_refdst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_4__bindgen_ty_1 > ())) . destructor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (destructor))) ; } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_4 > () , 16usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_4 > ())) . tcp_tsorted_anchor as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_4) , "::" , stringify ! (tcp_tsorted_anchor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_4 > ())) . _sk_redir as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_4) , "::" , stringify ! (_sk_redir))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_5 { pub csum : __wsum , pub __bindgen_anon_1 : sk_buff__bindgen_ty_5__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sk_buff__bindgen_ty_5__bindgen_ty_1 { pub csum_start : __u16 , pub csum_offset : __u16 , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_5__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_5__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_5__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_5__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_5__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_5__bindgen_ty_1 > ())) . csum_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (csum_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_5__bindgen_ty_1 > ())) . csum_offset as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_5__bindgen_ty_1) , "::" , stringify ! (csum_offset))) ; } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_5 > () , 4usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_5 > () , 4usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_5 > ())) . csum as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_5) , "::" , stringify ! (csum))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_6 { pub napi_id : :: cty :: c_uint , pub sender_cpu : :: cty :: c_uint , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_6 > () , 4usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_6 > () , 4usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_6 > ())) . napi_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_6) , "::" , stringify ! (napi_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_6 > ())) . sender_cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_6) , "::" , stringify ! (sender_cpu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_7 { pub mark : __u32 , pub reserved_tailroom : __u32 , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_7 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_7 > () , 4usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_7))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_7 > () , 4usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_7 > ())) . mark as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_7) , "::" , stringify ! (mark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_7 > ())) . reserved_tailroom as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_7) , "::" , stringify ! (reserved_tailroom))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union sk_buff__bindgen_ty_8 { pub inner_protocol : __be16 , pub inner_ipproto : __u8 , } # [test] fn bindgen_test_layout_sk_buff__bindgen_ty_8 () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff__bindgen_ty_8 > () , 2usize , concat ! ("Size of: " , stringify ! (sk_buff__bindgen_ty_8))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff__bindgen_ty_8 > () , 2usize , concat ! ("Alignment of " , stringify ! (sk_buff__bindgen_ty_8))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_8 > ())) . inner_protocol as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_8) , "::" , stringify ! (inner_protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff__bindgen_ty_8 > ())) . inner_ipproto as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_buff__bindgen_ty_8) , "::" , stringify ! (inner_ipproto))) ; } # [test] fn bindgen_test_layout_sk_buff () { assert_eq ! (:: core :: mem :: size_of :: < sk_buff > () , 224usize , concat ! ("Size of: " , stringify ! (sk_buff))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_buff > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_buff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . cb as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . _nfct as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (_nfct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . len as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . data_len as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (data_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . mac_len as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (mac_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . hdr_len as * const _ as usize } , 122usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (hdr_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . queue_mapping as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (queue_mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . __cloned_offset as * const _ as usize } , 126usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (__cloned_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . active_extensions as * const _ as usize } , 127usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (active_extensions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . headers_start as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (headers_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . __pkt_type_offset as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (__pkt_type_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . __pkt_vlan_present_offset as * const _ as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (__pkt_vlan_present_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . tc_index as * const _ as usize } , 134usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (tc_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . priority as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . skb_iif as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (skb_iif))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . hash as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . vlan_proto as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (vlan_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . vlan_tci as * const _ as usize } , 154usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (vlan_tci))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . secmark as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (secmark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . inner_transport_header as * const _ as usize } , 170usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (inner_transport_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . inner_network_header as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (inner_network_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . inner_mac_header as * const _ as usize } , 174usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (inner_mac_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . protocol as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . transport_header as * const _ as usize } , 178usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (transport_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . network_header as * const _ as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (network_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . mac_header as * const _ as usize } , 182usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (mac_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . headers_end as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (headers_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . tail as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . end as * const _ as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . head as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . data as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . truesize as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (truesize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . users as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_buff > ())) . extensions as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (sk_buff) , "::" , stringify ! (extensions))) ; } impl sk_buff { # [inline] pub fn cloned (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_cloned (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn nohdr (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_nohdr (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn fclone (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 2u8) as u8) } } # [inline] pub fn set_fclone (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 2u8 , val as u64) } } # [inline] pub fn peeked (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u8) } } # [inline] pub fn set_peeked (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn head_frag (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u8) } } # [inline] pub fn set_head_frag (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn pfmemalloc (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u8) } } # [inline] pub fn set_pfmemalloc (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (cloned : __u8 , nohdr : __u8 , fclone : __u8 , peeked : __u8 , head_frag : __u8 , pfmemalloc : __u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let cloned : u8 = unsafe { :: core :: mem :: transmute (cloned) } ; cloned as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let nohdr : u8 = unsafe { :: core :: mem :: transmute (nohdr) } ; nohdr as u64 }) ; __bindgen_bitfield_unit . set (2usize , 2u8 , { let fclone : u8 = unsafe { :: core :: mem :: transmute (fclone) } ; fclone as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let peeked : u8 = unsafe { :: core :: mem :: transmute (peeked) } ; peeked as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let head_frag : u8 = unsafe { :: core :: mem :: transmute (head_frag) } ; head_frag as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let pfmemalloc : u8 = unsafe { :: core :: mem :: transmute (pfmemalloc) } ; pfmemalloc as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn pkt_type (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (0usize , 3u8) as u8) } } # [inline] pub fn set_pkt_type (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (0usize , 3u8 , val as u64) } } # [inline] pub fn ignore_df (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (3usize , 1u8) as u8) } } # [inline] pub fn set_ignore_df (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn nf_trace (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (4usize , 1u8) as u8) } } # [inline] pub fn set_nf_trace (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn ip_summed (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (5usize , 2u8) as u8) } } # [inline] pub fn set_ip_summed (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (5usize , 2u8 , val as u64) } } # [inline] pub fn ooo_okay (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (7usize , 1u8) as u8) } } # [inline] pub fn set_ooo_okay (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn l4_hash (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (8usize , 1u8) as u8) } } # [inline] pub fn set_l4_hash (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn sw_hash (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (9usize , 1u8) as u8) } } # [inline] pub fn set_sw_hash (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn wifi_acked_valid (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (10usize , 1u8) as u8) } } # [inline] pub fn set_wifi_acked_valid (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn wifi_acked (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (11usize , 1u8) as u8) } } # [inline] pub fn set_wifi_acked (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn no_fcs (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (12usize , 1u8) as u8) } } # [inline] pub fn set_no_fcs (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn encapsulation (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (13usize , 1u8) as u8) } } # [inline] pub fn set_encapsulation (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn encap_hdr_csum (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (14usize , 1u8) as u8) } } # [inline] pub fn set_encap_hdr_csum (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (14usize , 1u8 , val as u64) } } # [inline] pub fn csum_valid (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_2 . get (15usize , 1u8) as u8) } } # [inline] pub fn set_csum_valid (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_2 . set (15usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_2 (pkt_type : __u8 , ignore_df : __u8 , nf_trace : __u8 , ip_summed : __u8 , ooo_okay : __u8 , l4_hash : __u8 , sw_hash : __u8 , wifi_acked_valid : __u8 , wifi_acked : __u8 , no_fcs : __u8 , encapsulation : __u8 , encap_hdr_csum : __u8 , csum_valid : __u8) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 3u8 , { let pkt_type : u8 = unsafe { :: core :: mem :: transmute (pkt_type) } ; pkt_type as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let ignore_df : u8 = unsafe { :: core :: mem :: transmute (ignore_df) } ; ignore_df as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let nf_trace : u8 = unsafe { :: core :: mem :: transmute (nf_trace) } ; nf_trace as u64 }) ; __bindgen_bitfield_unit . set (5usize , 2u8 , { let ip_summed : u8 = unsafe { :: core :: mem :: transmute (ip_summed) } ; ip_summed as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let ooo_okay : u8 = unsafe { :: core :: mem :: transmute (ooo_okay) } ; ooo_okay as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let l4_hash : u8 = unsafe { :: core :: mem :: transmute (l4_hash) } ; l4_hash as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let sw_hash : u8 = unsafe { :: core :: mem :: transmute (sw_hash) } ; sw_hash as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let wifi_acked_valid : u8 = unsafe { :: core :: mem :: transmute (wifi_acked_valid) } ; wifi_acked_valid as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let wifi_acked : u8 = unsafe { :: core :: mem :: transmute (wifi_acked) } ; wifi_acked as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let no_fcs : u8 = unsafe { :: core :: mem :: transmute (no_fcs) } ; no_fcs as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let encapsulation : u8 = unsafe { :: core :: mem :: transmute (encapsulation) } ; encapsulation as u64 }) ; __bindgen_bitfield_unit . set (14usize , 1u8 , { let encap_hdr_csum : u8 = unsafe { :: core :: mem :: transmute (encap_hdr_csum) } ; encap_hdr_csum as u64 }) ; __bindgen_bitfield_unit . set (15usize , 1u8 , { let csum_valid : u8 = unsafe { :: core :: mem :: transmute (csum_valid) } ; csum_valid as u64 }) ; __bindgen_bitfield_unit } # [inline] pub fn vlan_present (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_vlan_present (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn csum_complete_sw (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_csum_complete_sw (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn csum_level (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (2usize , 2u8) as u8) } } # [inline] pub fn set_csum_level (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (2usize , 2u8 , val as u64) } } # [inline] pub fn csum_not_inet (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (4usize , 1u8) as u8) } } # [inline] pub fn set_csum_not_inet (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn dst_pending_confirm (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (5usize , 1u8) as u8) } } # [inline] pub fn set_dst_pending_confirm (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn ndisc_nodetype (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (6usize , 2u8) as u8) } } # [inline] pub fn set_ndisc_nodetype (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (6usize , 2u8 , val as u64) } } # [inline] pub fn ipvs_property (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (8usize , 1u8) as u8) } } # [inline] pub fn set_ipvs_property (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn inner_protocol_type (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (9usize , 1u8) as u8) } } # [inline] pub fn set_inner_protocol_type (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn remcsum_offload (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (10usize , 1u8) as u8) } } # [inline] pub fn set_remcsum_offload (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (10usize , 1u8 , val as u64) } } # [inline] pub fn offload_fwd_mark (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (11usize , 1u8) as u8) } } # [inline] pub fn set_offload_fwd_mark (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn offload_l3_fwd_mark (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (12usize , 1u8) as u8) } } # [inline] pub fn set_offload_l3_fwd_mark (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (12usize , 1u8 , val as u64) } } # [inline] pub fn tc_skip_classify (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (13usize , 1u8) as u8) } } # [inline] pub fn set_tc_skip_classify (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (13usize , 1u8 , val as u64) } } # [inline] pub fn tc_at_ingress (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (14usize , 1u8) as u8) } } # [inline] pub fn set_tc_at_ingress (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (14usize , 1u8 , val as u64) } } # [inline] pub fn redirected (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (15usize , 1u8) as u8) } } # [inline] pub fn set_redirected (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (15usize , 1u8 , val as u64) } } # [inline] pub fn from_ingress (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (16usize , 1u8) as u8) } } # [inline] pub fn set_from_ingress (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (16usize , 1u8 , val as u64) } } # [inline] pub fn decrypted (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_3 . get (17usize , 1u8) as u8) } } # [inline] pub fn set_decrypted (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_3 . set (17usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_3 (vlan_present : __u8 , csum_complete_sw : __u8 , csum_level : __u8 , csum_not_inet : __u8 , dst_pending_confirm : __u8 , ndisc_nodetype : __u8 , ipvs_property : __u8 , inner_protocol_type : __u8 , remcsum_offload : __u8 , offload_fwd_mark : __u8 , offload_l3_fwd_mark : __u8 , tc_skip_classify : __u8 , tc_at_ingress : __u8 , redirected : __u8 , from_ingress : __u8 , decrypted : __u8) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let vlan_present : u8 = unsafe { :: core :: mem :: transmute (vlan_present) } ; vlan_present as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let csum_complete_sw : u8 = unsafe { :: core :: mem :: transmute (csum_complete_sw) } ; csum_complete_sw as u64 }) ; __bindgen_bitfield_unit . set (2usize , 2u8 , { let csum_level : u8 = unsafe { :: core :: mem :: transmute (csum_level) } ; csum_level as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let csum_not_inet : u8 = unsafe { :: core :: mem :: transmute (csum_not_inet) } ; csum_not_inet as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let dst_pending_confirm : u8 = unsafe { :: core :: mem :: transmute (dst_pending_confirm) } ; dst_pending_confirm as u64 }) ; __bindgen_bitfield_unit . set (6usize , 2u8 , { let ndisc_nodetype : u8 = unsafe { :: core :: mem :: transmute (ndisc_nodetype) } ; ndisc_nodetype as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let ipvs_property : u8 = unsafe { :: core :: mem :: transmute (ipvs_property) } ; ipvs_property as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let inner_protocol_type : u8 = unsafe { :: core :: mem :: transmute (inner_protocol_type) } ; inner_protocol_type as u64 }) ; __bindgen_bitfield_unit . set (10usize , 1u8 , { let remcsum_offload : u8 = unsafe { :: core :: mem :: transmute (remcsum_offload) } ; remcsum_offload as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let offload_fwd_mark : u8 = unsafe { :: core :: mem :: transmute (offload_fwd_mark) } ; offload_fwd_mark as u64 }) ; __bindgen_bitfield_unit . set (12usize , 1u8 , { let offload_l3_fwd_mark : u8 = unsafe { :: core :: mem :: transmute (offload_l3_fwd_mark) } ; offload_l3_fwd_mark as u64 }) ; __bindgen_bitfield_unit . set (13usize , 1u8 , { let tc_skip_classify : u8 = unsafe { :: core :: mem :: transmute (tc_skip_classify) } ; tc_skip_classify as u64 }) ; __bindgen_bitfield_unit . set (14usize , 1u8 , { let tc_at_ingress : u8 = unsafe { :: core :: mem :: transmute (tc_at_ingress) } ; tc_at_ingress as u64 }) ; __bindgen_bitfield_unit . set (15usize , 1u8 , { let redirected : u8 = unsafe { :: core :: mem :: transmute (redirected) } ; redirected as u64 }) ; __bindgen_bitfield_unit . set (16usize , 1u8 , { let from_ingress : u8 = unsafe { :: core :: mem :: transmute (from_ingress) } ; from_ingress as u64 }) ; __bindgen_bitfield_unit . set (17usize , 1u8 , { let decrypted : u8 = unsafe { :: core :: mem :: transmute (decrypted) } ; decrypted as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct scatterlist { pub page_link : :: cty :: c_ulong , pub offset : :: cty :: c_uint , pub length : :: cty :: c_uint , pub dma_address : dma_addr_t , pub dma_length : :: cty :: c_uint , } # [test] fn bindgen_test_layout_scatterlist () { assert_eq ! (:: core :: mem :: size_of :: < scatterlist > () , 32usize , concat ! ("Size of: " , stringify ! (scatterlist))) ; assert_eq ! (:: core :: mem :: align_of :: < scatterlist > () , 8usize , concat ! ("Alignment of " , stringify ! (scatterlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < scatterlist > ())) . page_link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (scatterlist) , "::" , stringify ! (page_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < scatterlist > ())) . offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (scatterlist) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < scatterlist > ())) . length as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (scatterlist) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < scatterlist > ())) . dma_address as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (scatterlist) , "::" , stringify ! (dma_address))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < scatterlist > ())) . dma_length as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (scatterlist) , "::" , stringify ! (dma_length))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xdr_buf { pub head : [kvec ; 1usize] , pub tail : [kvec ; 1usize] , pub bvec : * mut bio_vec , pub pages : * mut * mut page , pub page_base : :: cty :: c_uint , pub page_len : :: cty :: c_uint , pub flags : :: cty :: c_uint , pub buflen : :: cty :: c_uint , pub len : :: cty :: c_uint , } # [test] fn bindgen_test_layout_xdr_buf () { assert_eq ! (:: core :: mem :: size_of :: < xdr_buf > () , 72usize , concat ! ("Size of: " , stringify ! (xdr_buf))) ; assert_eq ! (:: core :: mem :: align_of :: < xdr_buf > () , 8usize , concat ! ("Alignment of " , stringify ! (xdr_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . tail as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . bvec as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (bvec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . pages as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . page_base as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (page_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . page_len as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (page_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . flags as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . buflen as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (buflen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_buf > ())) . len as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (xdr_buf) , "::" , stringify ! (len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xdr_stream { pub p : * mut __be32 , pub buf : * mut xdr_buf , pub end : * mut __be32 , pub iov : * mut kvec , pub scratch : kvec , pub page_ptr : * mut * mut page , pub nwords : :: cty :: c_uint , pub rqst : * mut rpc_rqst , } # [test] fn bindgen_test_layout_xdr_stream () { assert_eq ! (:: core :: mem :: size_of :: < xdr_stream > () , 72usize , concat ! ("Size of: " , stringify ! (xdr_stream))) ; assert_eq ! (:: core :: mem :: align_of :: < xdr_stream > () , 8usize , concat ! ("Alignment of " , stringify ! (xdr_stream))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . p as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . buf as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . end as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . iov as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (iov))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . scratch as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (scratch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . page_ptr as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (page_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . nwords as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (nwords))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdr_stream > ())) . rqst as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (xdr_stream) , "::" , stringify ! (rqst))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rpc_rqst { pub rq_xprt : * mut rpc_xprt , pub rq_snd_buf : xdr_buf , pub rq_rcv_buf : xdr_buf , pub rq_task : * mut rpc_task , pub rq_cred : * mut rpc_cred , pub rq_xid : __be32 , pub rq_cong : :: cty :: c_int , pub rq_seqno : _cargo_bpf_u32 , pub rq_enc_pages_num : :: cty :: c_int , pub rq_enc_pages : * mut * mut page , pub rq_release_snd_buf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_rqst) > , pub __bindgen_anon_1 : rpc_rqst__bindgen_ty_1 , pub rq_xmit : list_head , pub rq_xmit2 : list_head , pub rq_buffer : * mut :: cty :: c_void , pub rq_callsize : size_t , pub rq_rbuffer : * mut :: cty :: c_void , pub rq_rcvsize : size_t , pub rq_xmit_bytes_sent : size_t , pub rq_reply_bytes_recvd : size_t , pub rq_private_buf : xdr_buf , pub rq_majortimeo : :: cty :: c_ulong , pub rq_minortimeo : :: cty :: c_ulong , pub rq_timeout : :: cty :: c_ulong , pub rq_rtt : ktime_t , pub rq_retries : :: cty :: c_uint , pub rq_connect_cookie : :: cty :: c_uint , pub rq_pin : atomic_t , pub rq_bytes_sent : _cargo_bpf_u32 , pub rq_xtime : ktime_t , pub rq_ntrans : :: cty :: c_int , pub rq_bc_list : list_head , pub rq_bc_pa_state : :: cty :: c_ulong , pub rq_bc_pa_list : list_head , } # [repr (C)] # [derive (Copy , Clone)] pub union rpc_rqst__bindgen_ty_1 { pub rq_list : list_head , pub rq_recv : rb_node , } # [test] fn bindgen_test_layout_rpc_rqst__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rpc_rqst__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (rpc_rqst__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_rqst__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_rqst__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst__bindgen_ty_1 > ())) . rq_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst__bindgen_ty_1) , "::" , stringify ! (rq_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst__bindgen_ty_1 > ())) . rq_recv as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst__bindgen_ty_1) , "::" , stringify ! (rq_recv))) ; } # [test] fn bindgen_test_layout_rpc_rqst () { assert_eq ! (:: core :: mem :: size_of :: < rpc_rqst > () , 480usize , concat ! ("Size of: " , stringify ! (rpc_rqst))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_rqst > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_rqst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_xprt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_snd_buf as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_snd_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_rcv_buf as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_rcv_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_task as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_cred as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_xid as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_xid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_cong as * const _ as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_cong))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_seqno as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_seqno))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_enc_pages_num as * const _ as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_enc_pages_num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_enc_pages as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_enc_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_release_snd_buf as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_release_snd_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_xmit as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_xmit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_xmit2 as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_xmit2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_buffer as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_callsize as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_callsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_rbuffer as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_rbuffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_rcvsize as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_rcvsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_xmit_bytes_sent as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_xmit_bytes_sent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_reply_bytes_recvd as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_reply_bytes_recvd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_private_buf as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_private_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_majortimeo as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_majortimeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_minortimeo as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_minortimeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_timeout as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_rtt as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_rtt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_retries as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_connect_cookie as * const _ as usize } , 412usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_connect_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_pin as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_pin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_bytes_sent as * const _ as usize } , 420usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_bytes_sent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_xtime as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_xtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_ntrans as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_ntrans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_bc_list as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_bc_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_bc_pa_state as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_bc_pa_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rqst > ())) . rq_bc_pa_list as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (rpc_rqst) , "::" , stringify ! (rq_bc_pa_list))) ; } pub type kxdreproc_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_rqst , arg2 : * mut xdr_stream , arg3 : * const :: cty :: c_void) > ; pub type kxdrdproc_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_rqst , arg2 : * mut xdr_stream , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_message { pub rpc_proc : * const rpc_procinfo , pub rpc_argp : * mut :: cty :: c_void , pub rpc_resp : * mut :: cty :: c_void , pub rpc_cred : * const cred , } # [test] fn bindgen_test_layout_rpc_message () { assert_eq ! (:: core :: mem :: size_of :: < rpc_message > () , 32usize , concat ! ("Size of: " , stringify ! (rpc_message))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_message > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_message))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_message > ())) . rpc_proc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_message) , "::" , stringify ! (rpc_proc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_message > ())) . rpc_argp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_message) , "::" , stringify ! (rpc_argp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_message > ())) . rpc_resp as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_message) , "::" , stringify ! (rpc_resp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_message > ())) . rpc_cred as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_message) , "::" , stringify ! (rpc_cred))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_procinfo { pub p_proc : _cargo_bpf_u32 , pub p_encode : kxdreproc_t , pub p_decode : kxdrdproc_t , pub p_arglen : :: cty :: c_uint , pub p_replen : :: cty :: c_uint , pub p_timer : :: cty :: c_uint , pub p_statidx : _cargo_bpf_u32 , pub p_name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_rpc_procinfo () { assert_eq ! (:: core :: mem :: size_of :: < rpc_procinfo > () , 48usize , concat ! ("Size of: " , stringify ! (rpc_procinfo))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_procinfo > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_procinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_proc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_proc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_encode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_encode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_decode as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_decode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_arglen as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_arglen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_replen as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_replen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_timer as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_statidx as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_statidx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_procinfo > ())) . p_name as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_procinfo) , "::" , stringify ! (p_name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_wait { pub list : list_head , pub links : list_head , pub timer_list : list_head , } # [test] fn bindgen_test_layout_rpc_wait () { assert_eq ! (:: core :: mem :: size_of :: < rpc_wait > () , 48usize , concat ! ("Size of: " , stringify ! (rpc_wait))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_wait > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_wait) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait > ())) . links as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_wait) , "::" , stringify ! (links))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait > ())) . timer_list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_wait) , "::" , stringify ! (timer_list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rpc_task { pub tk_count : atomic_t , pub tk_status : :: cty :: c_int , pub tk_task : list_head , pub tk_callback : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) > , pub tk_action : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) > , pub tk_timeout : :: cty :: c_ulong , pub tk_runstate : :: cty :: c_ulong , pub tk_waitqueue : * mut rpc_wait_queue , pub u : rpc_task__bindgen_ty_1 , pub tk_rpc_status : :: cty :: c_int , pub tk_msg : rpc_message , pub tk_calldata : * mut :: cty :: c_void , pub tk_ops : * const rpc_call_ops , pub tk_client : * mut rpc_clnt , pub tk_xprt : * mut rpc_xprt , pub tk_op_cred : * mut rpc_cred , pub tk_rqstp : * mut rpc_rqst , pub tk_workqueue : * mut workqueue_struct , pub tk_start : ktime_t , pub tk_owner : pid_t , pub tk_flags : :: cty :: c_ushort , pub tk_timeouts : :: cty :: c_ushort , pub tk_pid : :: cty :: c_ushort , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 5usize] , } # [repr (C)] # [derive (Copy , Clone)] pub union rpc_task__bindgen_ty_1 { pub tk_work : work_struct , pub tk_wait : rpc_wait , } # [test] fn bindgen_test_layout_rpc_task__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rpc_task__bindgen_ty_1 > () , 48usize , concat ! ("Size of: " , stringify ! (rpc_task__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_task__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_task__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task__bindgen_ty_1 > ())) . tk_work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_task__bindgen_ty_1) , "::" , stringify ! (tk_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task__bindgen_ty_1 > ())) . tk_wait as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_task__bindgen_ty_1) , "::" , stringify ! (tk_wait))) ; } # [test] fn bindgen_test_layout_rpc_task () { assert_eq ! (:: core :: mem :: size_of :: < rpc_task > () , 232usize , concat ! ("Size of: " , stringify ! (rpc_task))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_task > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_status as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_task as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_callback as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_callback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_action as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_action))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_timeout as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_runstate as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_runstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_waitqueue as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_waitqueue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . u as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (u))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_rpc_status as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_rpc_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_msg as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_msg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_calldata as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_calldata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_ops as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_client as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_xprt as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_op_cred as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_op_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_rqstp as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_rqstp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_workqueue as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_workqueue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_start as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_owner as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_flags as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_timeouts as * const _ as usize } , 222usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_timeouts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_task > ())) . tk_pid as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (rpc_task) , "::" , stringify ! (tk_pid))) ; } impl rpc_task { # [inline] pub fn tk_priority (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 2u8) as u8) } } # [inline] pub fn set_tk_priority (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 2u8 , val as u64) } } # [inline] pub fn tk_garb_retry (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 2u8) as u8) } } # [inline] pub fn set_tk_garb_retry (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 2u8 , val as u64) } } # [inline] pub fn tk_cred_retry (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 2u8) as u8) } } # [inline] pub fn set_tk_cred_retry (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 2u8 , val as u64) } } # [inline] pub fn tk_rebind_retry (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 2u8) as u8) } } # [inline] pub fn set_tk_rebind_retry (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 2u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (tk_priority : :: cty :: c_uchar , tk_garb_retry : :: cty :: c_uchar , tk_cred_retry : :: cty :: c_uchar , tk_rebind_retry : :: cty :: c_uchar) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 2u8 , { let tk_priority : u8 = unsafe { :: core :: mem :: transmute (tk_priority) } ; tk_priority as u64 }) ; __bindgen_bitfield_unit . set (2usize , 2u8 , { let tk_garb_retry : u8 = unsafe { :: core :: mem :: transmute (tk_garb_retry) } ; tk_garb_retry as u64 }) ; __bindgen_bitfield_unit . set (4usize , 2u8 , { let tk_cred_retry : u8 = unsafe { :: core :: mem :: transmute (tk_cred_retry) } ; tk_cred_retry as u64 }) ; __bindgen_bitfield_unit . set (6usize , 2u8 , { let tk_rebind_retry : u8 = unsafe { :: core :: mem :: transmute (tk_rebind_retry) } ; tk_rebind_retry as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_timer { pub list : list_head , pub expires : :: cty :: c_ulong , pub dwork : delayed_work , } # [test] fn bindgen_test_layout_rpc_timer () { assert_eq ! (:: core :: mem :: size_of :: < rpc_timer > () , 112usize , concat ! ("Size of: " , stringify ! (rpc_timer))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_timer > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timer > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_timer) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timer > ())) . expires as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_timer) , "::" , stringify ! (expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timer > ())) . dwork as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_timer) , "::" , stringify ! (dwork))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rpc_wait_queue { pub lock : spinlock_t , pub tasks : [list_head ; 4usize] , pub maxpriority : :: cty :: c_uchar , pub priority : :: cty :: c_uchar , pub nr : :: cty :: c_uchar , pub qlen : :: cty :: c_ushort , pub timer_list : rpc_timer , pub name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_rpc_wait_queue () { assert_eq ! (:: core :: mem :: size_of :: < rpc_wait_queue > () , 200usize , concat ! ("Size of: " , stringify ! (rpc_wait_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_wait_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_wait_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . tasks as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . maxpriority as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (maxpriority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . priority as * const _ as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . nr as * const _ as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . qlen as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (qlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . timer_list as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (timer_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_wait_queue > ())) . name as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (rpc_wait_queue) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_call_ops { pub rpc_call_prepare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut :: cty :: c_void) > , pub rpc_call_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut :: cty :: c_void) > , pub rpc_count_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut :: cty :: c_void) > , pub rpc_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , } # [test] fn bindgen_test_layout_rpc_call_ops () { assert_eq ! (:: core :: mem :: size_of :: < rpc_call_ops > () , 32usize , concat ! ("Size of: " , stringify ! (rpc_call_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_call_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_call_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_call_ops > ())) . rpc_call_prepare as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_call_ops) , "::" , stringify ! (rpc_call_prepare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_call_ops > ())) . rpc_call_done as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_call_ops) , "::" , stringify ! (rpc_call_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_call_ops > ())) . rpc_count_stats as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_call_ops) , "::" , stringify ! (rpc_count_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_call_ops > ())) . rpc_release as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_call_ops) , "::" , stringify ! (rpc_release))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_iostats { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_pipe_dir_head { pub pdh_entries : list_head , pub pdh_dentry : * mut dentry , } # [test] fn bindgen_test_layout_rpc_pipe_dir_head () { assert_eq ! (:: core :: mem :: size_of :: < rpc_pipe_dir_head > () , 24usize , concat ! ("Size of: " , stringify ! (rpc_pipe_dir_head))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_pipe_dir_head > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_pipe_dir_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_pipe_dir_head > ())) . pdh_entries as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_pipe_dir_head) , "::" , stringify ! (pdh_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_pipe_dir_head > ())) . pdh_dentry as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_pipe_dir_head) , "::" , stringify ! (pdh_dentry))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_rtt { pub timeo : :: cty :: c_ulong , pub srtt : [:: cty :: c_ulong ; 5usize] , pub sdrtt : [:: cty :: c_ulong ; 5usize] , pub ntimeouts : [:: cty :: c_int ; 5usize] , } # [test] fn bindgen_test_layout_rpc_rtt () { assert_eq ! (:: core :: mem :: size_of :: < rpc_rtt > () , 112usize , concat ! ("Size of: " , stringify ! (rpc_rtt))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_rtt > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_rtt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rtt > ())) . timeo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_rtt) , "::" , stringify ! (timeo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rtt > ())) . srtt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_rtt) , "::" , stringify ! (srtt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rtt > ())) . sdrtt as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_rtt) , "::" , stringify ! (sdrtt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_rtt > ())) . ntimeouts as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rpc_rtt) , "::" , stringify ! (ntimeouts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_timeout { pub to_initval : :: cty :: c_ulong , pub to_maxval : :: cty :: c_ulong , pub to_increment : :: cty :: c_ulong , pub to_retries : :: cty :: c_uint , pub to_exponential : :: cty :: c_uchar , } # [test] fn bindgen_test_layout_rpc_timeout () { assert_eq ! (:: core :: mem :: size_of :: < rpc_timeout > () , 32usize , concat ! ("Size of: " , stringify ! (rpc_timeout))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_timeout > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timeout > ())) . to_initval as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_timeout) , "::" , stringify ! (to_initval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timeout > ())) . to_maxval as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_timeout) , "::" , stringify ! (to_maxval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timeout > ())) . to_increment as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_timeout) , "::" , stringify ! (to_increment))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timeout > ())) . to_retries as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_timeout) , "::" , stringify ! (to_retries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_timeout > ())) . to_exponential as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (rpc_timeout) , "::" , stringify ! (to_exponential))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_xprt_iter { pub xpi_xpswitch : * mut rpc_xprt_switch , pub xpi_cursor : * mut rpc_xprt , pub xpi_ops : * const rpc_xprt_iter_ops , } # [test] fn bindgen_test_layout_rpc_xprt_iter () { assert_eq ! (:: core :: mem :: size_of :: < rpc_xprt_iter > () , 24usize , concat ! ("Size of: " , stringify ! (rpc_xprt_iter))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_xprt_iter > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_xprt_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_iter > ())) . xpi_xpswitch as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_iter) , "::" , stringify ! (xpi_xpswitch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_iter > ())) . xpi_cursor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_iter) , "::" , stringify ! (xpi_cursor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_iter > ())) . xpi_ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_iter) , "::" , stringify ! (xpi_ops))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rpc_clnt { pub cl_count : atomic_t , pub cl_clid : :: cty :: c_uint , pub cl_clients : list_head , pub cl_tasks : list_head , pub cl_lock : spinlock_t , pub cl_xprt : * mut rpc_xprt , pub cl_procinfo : * const rpc_procinfo , pub cl_prog : _cargo_bpf_u32 , pub cl_vers : _cargo_bpf_u32 , pub cl_maxproc : _cargo_bpf_u32 , pub cl_auth : * mut rpc_auth , pub cl_stats : * mut rpc_stat , pub cl_metrics : * mut rpc_iostats , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub cl_rtt : * mut rpc_rtt , pub cl_timeout : * const rpc_timeout , pub cl_swapper : atomic_t , pub cl_nodelen : :: cty :: c_int , pub cl_nodename : [:: cty :: c_char ; 65usize] , pub cl_pipedir_objects : rpc_pipe_dir_head , pub cl_parent : * mut rpc_clnt , pub cl_rtt_default : rpc_rtt , pub cl_timeout_default : rpc_timeout , pub cl_program : * const rpc_program , pub cl_principal : * const :: cty :: c_char , pub cl_debugfs : * mut dentry , pub __bindgen_anon_1 : rpc_clnt__bindgen_ty_1 , pub cl_cred : * const cred , } # [repr (C)] # [derive (Copy , Clone)] pub union rpc_clnt__bindgen_ty_1 { pub cl_xpi : rpc_xprt_iter , pub cl_work : work_struct , } # [test] fn bindgen_test_layout_rpc_clnt__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rpc_clnt__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (rpc_clnt__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_clnt__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_clnt__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt__bindgen_ty_1 > ())) . cl_xpi as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt__bindgen_ty_1) , "::" , stringify ! (cl_xpi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt__bindgen_ty_1 > ())) . cl_work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt__bindgen_ty_1) , "::" , stringify ! (cl_work))) ; } # [test] fn bindgen_test_layout_rpc_clnt () { assert_eq ! (:: core :: mem :: size_of :: < rpc_clnt > () , 448usize , concat ! ("Size of: " , stringify ! (rpc_clnt))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_clnt > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_clnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_clid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_clid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_clients as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_clients))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_tasks as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_lock as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_xprt as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_procinfo as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_procinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_prog as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_vers as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_vers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_maxproc as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_maxproc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_auth as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_auth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_stats as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_metrics as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_metrics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_rtt as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_rtt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_timeout as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_swapper as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_swapper))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_nodelen as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_nodelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_nodename as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_nodename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_pipedir_objects as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_pipedir_objects))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_parent as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_rtt_default as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_rtt_default))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_timeout_default as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_timeout_default))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_program as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_program))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_principal as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_principal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_debugfs as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_debugfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_clnt > ())) . cl_cred as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (rpc_clnt) , "::" , stringify ! (cl_cred))) ; } impl rpc_clnt { # [inline] pub fn cl_softrtry (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_cl_softrtry (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn cl_softerr (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_cl_softerr (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn cl_discrtry (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_cl_discrtry (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn cl_noretranstimeo (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_cl_noretranstimeo (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn cl_autobind (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_cl_autobind (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn cl_chatty (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u32) } } # [inline] pub fn set_cl_chatty (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (cl_softrtry : :: cty :: c_uint , cl_softerr : :: cty :: c_uint , cl_discrtry : :: cty :: c_uint , cl_noretranstimeo : :: cty :: c_uint , cl_autobind : :: cty :: c_uint , cl_chatty : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let cl_softrtry : u32 = unsafe { :: core :: mem :: transmute (cl_softrtry) } ; cl_softrtry as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let cl_softerr : u32 = unsafe { :: core :: mem :: transmute (cl_softerr) } ; cl_softerr as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let cl_discrtry : u32 = unsafe { :: core :: mem :: transmute (cl_discrtry) } ; cl_discrtry as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let cl_noretranstimeo : u32 = unsafe { :: core :: mem :: transmute (cl_noretranstimeo) } ; cl_noretranstimeo as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let cl_autobind : u32 = unsafe { :: core :: mem :: transmute (cl_autobind) } ; cl_autobind as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let cl_chatty : u32 = unsafe { :: core :: mem :: transmute (cl_chatty) } ; cl_chatty as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct svc_xprt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct svc_serv { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct rpc_xprt { pub kref : kref , pub ops : * const rpc_xprt_ops , pub timeout : * const rpc_timeout , pub addr : __kernel_sockaddr_storage , pub addrlen : size_t , pub prot : :: cty :: c_int , pub cong : :: cty :: c_ulong , pub cwnd : :: cty :: c_ulong , pub max_payload : size_t , pub binding : rpc_wait_queue , pub sending : rpc_wait_queue , pub pending : rpc_wait_queue , pub backlog : rpc_wait_queue , pub free : list_head , pub max_reqs : :: cty :: c_uint , pub min_reqs : :: cty :: c_uint , pub num_reqs : :: cty :: c_uint , pub state : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub swapper : atomic_t , pub bind_index : :: cty :: c_uint , pub xprt_switch : list_head , pub bind_timeout : :: cty :: c_ulong , pub reestablish_timeout : :: cty :: c_ulong , pub connect_cookie : :: cty :: c_uint , pub task_cleanup : work_struct , pub timer : timer_list , pub last_used : :: cty :: c_ulong , pub idle_timeout : :: cty :: c_ulong , pub connect_timeout : :: cty :: c_ulong , pub max_reconnect_timeout : :: cty :: c_ulong , pub queuelen : atomic_long_t , pub transport_lock : spinlock_t , pub reserve_lock : spinlock_t , pub queue_lock : spinlock_t , pub xid : _cargo_bpf_u32 , pub snd_task : * mut rpc_task , pub xmit_queue : list_head , pub xmit_queuelen : atomic_long_t , pub bc_xprt : * mut svc_xprt , pub bc_serv : * mut svc_serv , pub bc_alloc_max : :: cty :: c_uint , pub bc_alloc_count : :: cty :: c_uint , pub bc_slot_count : atomic_t , pub bc_pa_lock : spinlock_t , pub bc_pa_list : list_head , pub recv_queue : rb_root , pub stat : rpc_xprt__bindgen_ty_1 , pub xprt_net : * mut net , pub servername : * const :: cty :: c_char , pub address_strings : [* const :: cty :: c_char ; 6usize] , pub debugfs : * mut dentry , pub inject_disconnect : atomic_t , pub rcu : callback_head , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_xprt__bindgen_ty_1 { pub bind_count : :: cty :: c_ulong , pub connect_count : :: cty :: c_ulong , pub connect_start : :: cty :: c_ulong , pub connect_time : :: cty :: c_ulong , pub sends : :: cty :: c_ulong , pub recvs : :: cty :: c_ulong , pub bad_xids : :: cty :: c_ulong , pub max_slots : :: cty :: c_ulong , pub req_u : :: cty :: c_ulonglong , pub bklog_u : :: cty :: c_ulonglong , pub sending_u : :: cty :: c_ulonglong , pub pending_u : :: cty :: c_ulonglong , } # [test] fn bindgen_test_layout_rpc_xprt__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rpc_xprt__bindgen_ty_1 > () , 96usize , concat ! ("Size of: " , stringify ! (rpc_xprt__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_xprt__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_xprt__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . bind_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (bind_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . connect_count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (connect_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . connect_start as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (connect_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . connect_time as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (connect_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . sends as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (sends))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . recvs as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (recvs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . bad_xids as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (bad_xids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . max_slots as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (max_slots))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . req_u as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (req_u))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . bklog_u as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (bklog_u))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . sending_u as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (sending_u))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt__bindgen_ty_1 > ())) . pending_u as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt__bindgen_ty_1) , "::" , stringify ! (pending_u))) ; } # [test] fn bindgen_test_layout_rpc_xprt () { assert_eq ! (:: core :: mem :: size_of :: < rpc_xprt > () , 1496usize , concat ! ("Size of: " , stringify ! (rpc_xprt))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_xprt > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . kref as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . timeout as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . addr as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . addrlen as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (addrlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . prot as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . cong as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (cong))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . cwnd as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (cwnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . max_payload as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (max_payload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . binding as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (binding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . sending as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (sending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . pending as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . backlog as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (backlog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . free as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . max_reqs as * const _ as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (max_reqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . min_reqs as * const _ as usize } , 1012usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (min_reqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . num_reqs as * const _ as usize } , 1016usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (num_reqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . state as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . swapper as * const _ as usize } , 1036usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (swapper))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bind_index as * const _ as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bind_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . xprt_switch as * const _ as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (xprt_switch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bind_timeout as * const _ as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bind_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . reestablish_timeout as * const _ as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (reestablish_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . connect_cookie as * const _ as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (connect_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . task_cleanup as * const _ as usize } , 1088usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (task_cleanup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . timer as * const _ as usize } , 1120usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . last_used as * const _ as usize } , 1160usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (last_used))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . idle_timeout as * const _ as usize } , 1168usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (idle_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . connect_timeout as * const _ as usize } , 1176usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (connect_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . max_reconnect_timeout as * const _ as usize } , 1184usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (max_reconnect_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . queuelen as * const _ as usize } , 1192usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (queuelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . transport_lock as * const _ as usize } , 1200usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (transport_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . reserve_lock as * const _ as usize } , 1204usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (reserve_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . queue_lock as * const _ as usize } , 1208usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (queue_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . xid as * const _ as usize } , 1212usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (xid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . snd_task as * const _ as usize } , 1216usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (snd_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . xmit_queue as * const _ as usize } , 1224usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (xmit_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . xmit_queuelen as * const _ as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (xmit_queuelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_xprt as * const _ as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_serv as * const _ as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_serv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_alloc_max as * const _ as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_alloc_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_alloc_count as * const _ as usize } , 1268usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_alloc_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_slot_count as * const _ as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_slot_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_pa_lock as * const _ as usize } , 1276usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_pa_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . bc_pa_list as * const _ as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (bc_pa_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . recv_queue as * const _ as usize } , 1296usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (recv_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . stat as * const _ as usize } , 1304usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . xprt_net as * const _ as usize } , 1400usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (xprt_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . servername as * const _ as usize } , 1408usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (servername))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . address_strings as * const _ as usize } , 1416usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (address_strings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . debugfs as * const _ as usize } , 1464usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (debugfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . inject_disconnect as * const _ as usize } , 1472usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (inject_disconnect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt > ())) . rcu as * const _ as usize } , 1480usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt) , "::" , stringify ! (rcu))) ; } impl rpc_xprt { # [inline] pub fn resvport (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_resvport (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn reuseport (& self) -> :: cty :: c_uchar { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_reuseport (& mut self , val : :: cty :: c_uchar) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (resvport : :: cty :: c_uchar , reuseport : :: cty :: c_uchar) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let resvport : u8 = unsafe { :: core :: mem :: transmute (resvport) } ; resvport as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let reuseport : u8 = unsafe { :: core :: mem :: transmute (reuseport) } ; reuseport as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_cred { pub cr_hash : hlist_node , pub cr_lru : list_head , pub cr_rcu : callback_head , pub cr_auth : * mut rpc_auth , pub cr_ops : * const rpc_credops , pub cr_expire : :: cty :: c_ulong , pub cr_flags : :: cty :: c_ulong , pub cr_count : refcount_t , pub cr_cred : * const cred , } # [test] fn bindgen_test_layout_rpc_cred () { assert_eq ! (:: core :: mem :: size_of :: < rpc_cred > () , 96usize , concat ! ("Size of: " , stringify ! (rpc_cred))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_cred > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_lru as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_auth as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_auth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_ops as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_expire as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_expire))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_flags as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_count as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_cred > ())) . cr_cred as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rpc_cred) , "::" , stringify ! (cr_cred))) ; } pub type rpc_authflavor_t = _cargo_bpf_u32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flow_dissector { pub used_keys : :: cty :: c_uint , pub offset : [:: cty :: c_ushort ; 28usize] , } # [test] fn bindgen_test_layout_flow_dissector () { assert_eq ! (:: core :: mem :: size_of :: < flow_dissector > () , 60usize , concat ! ("Size of: " , stringify ! (flow_dissector))) ; assert_eq ! (:: core :: mem :: align_of :: < flow_dissector > () , 4usize , concat ! ("Alignment of " , stringify ! (flow_dissector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flow_dissector > ())) . used_keys as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flow_dissector) , "::" , stringify ! (used_keys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flow_dissector > ())) . offset as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (flow_dissector) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flowi_tunnel { pub tun_id : __be64 , } # [test] fn bindgen_test_layout_flowi_tunnel () { assert_eq ! (:: core :: mem :: size_of :: < flowi_tunnel > () , 8usize , concat ! ("Size of: " , stringify ! (flowi_tunnel))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_tunnel > () , 8usize , concat ! ("Alignment of " , stringify ! (flowi_tunnel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_tunnel > ())) . tun_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_tunnel) , "::" , stringify ! (tun_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flowi_common { pub flowic_oif : :: cty :: c_int , pub flowic_iif : :: cty :: c_int , pub flowic_mark : __u32 , pub flowic_tos : __u8 , pub flowic_scope : __u8 , pub flowic_proto : __u8 , pub flowic_flags : __u8 , pub flowic_secid : __u32 , pub flowic_uid : kuid_t , pub flowic_tun_key : flowi_tunnel , pub flowic_multipath_hash : __u32 , } # [test] fn bindgen_test_layout_flowi_common () { assert_eq ! (:: core :: mem :: size_of :: < flowi_common > () , 40usize , concat ! ("Size of: " , stringify ! (flowi_common))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_common > () , 8usize , concat ! ("Alignment of " , stringify ! (flowi_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_oif as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_oif))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_iif as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_iif))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_mark as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_mark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_tos as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_tos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_scope as * const _ as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_scope))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_proto as * const _ as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_flags as * const _ as usize } , 15usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_secid as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_secid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_uid as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_tun_key as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_tun_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_common > ())) . flowic_multipath_hash as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (flowi_common) , "::" , stringify ! (flowic_multipath_hash))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union flowi_uli { pub ports : flowi_uli__bindgen_ty_1 , pub icmpt : flowi_uli__bindgen_ty_2 , pub dnports : flowi_uli__bindgen_ty_3 , pub gre_key : __be32 , pub mht : flowi_uli__bindgen_ty_4 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flowi_uli__bindgen_ty_1 { pub dport : __be16 , pub sport : __be16 , } # [test] fn bindgen_test_layout_flowi_uli__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < flowi_uli__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (flowi_uli__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_uli__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (flowi_uli__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_1 > ())) . dport as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_1) , "::" , stringify ! (dport))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_1 > ())) . sport as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_1) , "::" , stringify ! (sport))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flowi_uli__bindgen_ty_2 { pub type_ : __u8 , pub code : __u8 , } # [test] fn bindgen_test_layout_flowi_uli__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < flowi_uli__bindgen_ty_2 > () , 2usize , concat ! ("Size of: " , stringify ! (flowi_uli__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_uli__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (flowi_uli__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_2 > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_2) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_2 > ())) . code as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_2) , "::" , stringify ! (code))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flowi_uli__bindgen_ty_3 { pub dport : __le16 , pub sport : __le16 , } # [test] fn bindgen_test_layout_flowi_uli__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < flowi_uli__bindgen_ty_3 > () , 4usize , concat ! ("Size of: " , stringify ! (flowi_uli__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_uli__bindgen_ty_3 > () , 2usize , concat ! ("Alignment of " , stringify ! (flowi_uli__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_3 > ())) . dport as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_3) , "::" , stringify ! (dport))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_3 > ())) . sport as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_3) , "::" , stringify ! (sport))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flowi_uli__bindgen_ty_4 { pub type_ : __u8 , } # [test] fn bindgen_test_layout_flowi_uli__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < flowi_uli__bindgen_ty_4 > () , 1usize , concat ! ("Size of: " , stringify ! (flowi_uli__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_uli__bindgen_ty_4 > () , 1usize , concat ! ("Alignment of " , stringify ! (flowi_uli__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli__bindgen_ty_4 > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli__bindgen_ty_4) , "::" , stringify ! (type_))) ; } # [test] fn bindgen_test_layout_flowi_uli () { assert_eq ! (:: core :: mem :: size_of :: < flowi_uli > () , 4usize , concat ! ("Size of: " , stringify ! (flowi_uli))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi_uli > () , 4usize , concat ! ("Alignment of " , stringify ! (flowi_uli))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli > ())) . ports as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli) , "::" , stringify ! (ports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli > ())) . icmpt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli) , "::" , stringify ! (icmpt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli > ())) . dnports as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli) , "::" , stringify ! (dnports))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli > ())) . gre_key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli) , "::" , stringify ! (gre_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi_uli > ())) . mht as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi_uli) , "::" , stringify ! (mht))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct flowi4 { pub __fl_common : flowi_common , pub saddr : __be32 , pub daddr : __be32 , pub uli : flowi_uli , } # [test] fn bindgen_test_layout_flowi4 () { assert_eq ! (:: core :: mem :: size_of :: < flowi4 > () , 56usize , concat ! ("Size of: " , stringify ! (flowi4))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi4 > () , 8usize , concat ! ("Alignment of " , stringify ! (flowi4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi4 > ())) . __fl_common as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi4) , "::" , stringify ! (__fl_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi4 > ())) . saddr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (flowi4) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi4 > ())) . daddr as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (flowi4) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi4 > ())) . uli as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (flowi4) , "::" , stringify ! (uli))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct flowi6 { pub __fl_common : flowi_common , pub daddr : in6_addr , pub saddr : in6_addr , pub flowlabel : __be32 , pub uli : flowi_uli , pub mp_hash : __u32 , } # [test] fn bindgen_test_layout_flowi6 () { assert_eq ! (:: core :: mem :: size_of :: < flowi6 > () , 88usize , concat ! ("Size of: " , stringify ! (flowi6))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi6 > () , 8usize , concat ! ("Alignment of " , stringify ! (flowi6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi6 > ())) . __fl_common as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi6) , "::" , stringify ! (__fl_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi6 > ())) . daddr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (flowi6) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi6 > ())) . saddr as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (flowi6) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi6 > ())) . flowlabel as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (flowi6) , "::" , stringify ! (flowlabel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi6 > ())) . uli as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (flowi6) , "::" , stringify ! (uli))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi6 > ())) . mp_hash as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (flowi6) , "::" , stringify ! (mp_hash))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct flowidn { pub __fl_common : flowi_common , pub daddr : __le16 , pub saddr : __le16 , pub uli : flowi_uli , } # [test] fn bindgen_test_layout_flowidn () { assert_eq ! (:: core :: mem :: size_of :: < flowidn > () , 48usize , concat ! ("Size of: " , stringify ! (flowidn))) ; assert_eq ! (:: core :: mem :: align_of :: < flowidn > () , 8usize , concat ! ("Alignment of " , stringify ! (flowidn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowidn > ())) . __fl_common as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowidn) , "::" , stringify ! (__fl_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowidn > ())) . daddr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (flowidn) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowidn > ())) . saddr as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (flowidn) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowidn > ())) . uli as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (flowidn) , "::" , stringify ! (uli))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct flowi { pub u : flowi__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union flowi__bindgen_ty_1 { pub __fl_common : flowi_common , pub ip4 : flowi4 , pub ip6 : flowi6 , pub dn : flowidn , } # [test] fn bindgen_test_layout_flowi__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < flowi__bindgen_ty_1 > () , 88usize , concat ! ("Size of: " , stringify ! (flowi__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (flowi__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi__bindgen_ty_1 > ())) . __fl_common as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi__bindgen_ty_1) , "::" , stringify ! (__fl_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi__bindgen_ty_1 > ())) . ip4 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi__bindgen_ty_1) , "::" , stringify ! (ip4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi__bindgen_ty_1 > ())) . ip6 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi__bindgen_ty_1) , "::" , stringify ! (ip6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi__bindgen_ty_1 > ())) . dn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi__bindgen_ty_1) , "::" , stringify ! (dn))) ; } # [test] fn bindgen_test_layout_flowi () { assert_eq ! (:: core :: mem :: size_of :: < flowi > () , 88usize , concat ! ("Size of: " , stringify ! (flowi))) ; assert_eq ! (:: core :: mem :: align_of :: < flowi > () , 8usize , concat ! ("Alignment of " , stringify ! (flowi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flowi > ())) . u as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flowi) , "::" , stringify ! (u))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ipstats_mib { pub mibs : [_cargo_bpf_u64 ; 37usize] , pub syncp : u64_stats_sync , } # [test] fn bindgen_test_layout_ipstats_mib () { assert_eq ! (:: core :: mem :: size_of :: < ipstats_mib > () , 296usize , concat ! ("Size of: " , stringify ! (ipstats_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < ipstats_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (ipstats_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipstats_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipstats_mib) , "::" , stringify ! (mibs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipstats_mib > ())) . syncp as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (ipstats_mib) , "::" , stringify ! (syncp))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct icmp_mib { pub mibs : [:: cty :: c_ulong ; 28usize] , } # [test] fn bindgen_test_layout_icmp_mib () { assert_eq ! (:: core :: mem :: size_of :: < icmp_mib > () , 224usize , concat ! ("Size of: " , stringify ! (icmp_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < icmp_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (icmp_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < icmp_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (icmp_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct icmpmsg_mib { pub mibs : [atomic_long_t ; 512usize] , } # [test] fn bindgen_test_layout_icmpmsg_mib () { assert_eq ! (:: core :: mem :: size_of :: < icmpmsg_mib > () , 4096usize , concat ! ("Size of: " , stringify ! (icmpmsg_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < icmpmsg_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (icmpmsg_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < icmpmsg_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (icmpmsg_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct icmpv6_mib { pub mibs : [:: cty :: c_ulong ; 6usize] , } # [test] fn bindgen_test_layout_icmpv6_mib () { assert_eq ! (:: core :: mem :: size_of :: < icmpv6_mib > () , 48usize , concat ! ("Size of: " , stringify ! (icmpv6_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < icmpv6_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (icmpv6_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < icmpv6_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (icmpv6_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct icmpv6_mib_device { pub mibs : [atomic_long_t ; 6usize] , } # [test] fn bindgen_test_layout_icmpv6_mib_device () { assert_eq ! (:: core :: mem :: size_of :: < icmpv6_mib_device > () , 48usize , concat ! ("Size of: " , stringify ! (icmpv6_mib_device))) ; assert_eq ! (:: core :: mem :: align_of :: < icmpv6_mib_device > () , 8usize , concat ! ("Alignment of " , stringify ! (icmpv6_mib_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < icmpv6_mib_device > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (icmpv6_mib_device) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct icmpv6msg_mib { pub mibs : [atomic_long_t ; 512usize] , } # [test] fn bindgen_test_layout_icmpv6msg_mib () { assert_eq ! (:: core :: mem :: size_of :: < icmpv6msg_mib > () , 4096usize , concat ! ("Size of: " , stringify ! (icmpv6msg_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < icmpv6msg_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (icmpv6msg_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < icmpv6msg_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (icmpv6msg_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct icmpv6msg_mib_device { pub mibs : [atomic_long_t ; 512usize] , } # [test] fn bindgen_test_layout_icmpv6msg_mib_device () { assert_eq ! (:: core :: mem :: size_of :: < icmpv6msg_mib_device > () , 4096usize , concat ! ("Size of: " , stringify ! (icmpv6msg_mib_device))) ; assert_eq ! (:: core :: mem :: align_of :: < icmpv6msg_mib_device > () , 8usize , concat ! ("Alignment of " , stringify ! (icmpv6msg_mib_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < icmpv6msg_mib_device > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (icmpv6msg_mib_device) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_mib { pub mibs : [:: cty :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout_tcp_mib () { assert_eq ! (:: core :: mem :: size_of :: < tcp_mib > () , 128usize , concat ! ("Size of: " , stringify ! (tcp_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < tcp_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct udp_mib { pub mibs : [:: cty :: c_ulong ; 10usize] , } # [test] fn bindgen_test_layout_udp_mib () { assert_eq ! (:: core :: mem :: size_of :: < udp_mib > () , 80usize , concat ! ("Size of: " , stringify ! (udp_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < udp_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (udp_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (udp_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linux_mib { pub mibs : [:: cty :: c_ulong ; 124usize] , } # [test] fn bindgen_test_layout_linux_mib () { assert_eq ! (:: core :: mem :: size_of :: < linux_mib > () , 992usize , concat ! ("Size of: " , stringify ! (linux_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < linux_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (linux_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linux_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linux_xfrm_mib { pub mibs : [:: cty :: c_ulong ; 29usize] , } # [test] fn bindgen_test_layout_linux_xfrm_mib () { assert_eq ! (:: core :: mem :: size_of :: < linux_xfrm_mib > () , 232usize , concat ! ("Size of: " , stringify ! (linux_xfrm_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < linux_xfrm_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (linux_xfrm_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_xfrm_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linux_xfrm_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct linux_tls_mib { pub mibs : [:: cty :: c_ulong ; 11usize] , } # [test] fn bindgen_test_layout_linux_tls_mib () { assert_eq ! (:: core :: mem :: size_of :: < linux_tls_mib > () , 88usize , concat ! ("Size of: " , stringify ! (linux_tls_mib))) ; assert_eq ! (:: core :: mem :: align_of :: < linux_tls_mib > () , 8usize , concat ! ("Alignment of " , stringify ! (linux_tls_mib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < linux_tls_mib > ())) . mibs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (linux_tls_mib) , "::" , stringify ! (mibs))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fqdir { pub high_thresh : :: cty :: c_long , pub low_thresh : :: cty :: c_long , pub timeout : :: cty :: c_int , pub max_dist : :: cty :: c_int , pub f : * mut inet_frags , pub net : * mut net , pub dead : bool_ , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub rhashtable : rhashtable , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 56usize] > , pub mem : atomic_long_t , pub destroy_work : work_struct , pub free_list : llist_node , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 16usize] > , } # [test] fn bindgen_test_layout_fqdir () { assert_eq ! (:: core :: mem :: size_of :: < fqdir > () , 320usize , concat ! ("Size of: " , stringify ! (fqdir))) ; assert_eq ! (:: core :: mem :: align_of :: < fqdir > () , 8usize , concat ! ("Alignment of " , stringify ! (fqdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . high_thresh as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (high_thresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . low_thresh as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (low_thresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . timeout as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . max_dist as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (max_dist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . f as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (f))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . net as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . dead as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . rhashtable as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (rhashtable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . mem as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . destroy_work as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (destroy_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fqdir > ())) . free_list as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (fqdir) , "::" , stringify ! (free_list))) ; } impl fqdir { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_3 () -> __BindgenBitfieldUnit < [u8 ; 16usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 16usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct inet_frags { pub qsize : :: cty :: c_uint , pub constructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inet_frag_queue , arg2 : * const :: cty :: c_void) > , pub destructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inet_frag_queue) > , pub frag_expire : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut timer_list) > , pub frags_cachep : * mut kmem_cache , pub frags_cache_name : * const :: cty :: c_char , pub rhash_params : rhashtable_params , pub refcnt : refcount_t , pub completion : completion , } # [test] fn bindgen_test_layout_inet_frags () { assert_eq ! (:: core :: mem :: size_of :: < inet_frags > () , 128usize , concat ! ("Size of: " , stringify ! (inet_frags))) ; assert_eq ! (:: core :: mem :: align_of :: < inet_frags > () , 8usize , concat ! ("Alignment of " , stringify ! (inet_frags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . qsize as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (qsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . constructor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (constructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . destructor as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (destructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . frag_expire as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (frag_expire))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . frags_cachep as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (frags_cachep))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . frags_cache_name as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (frags_cache_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . rhash_params as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (rhash_params))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . refcnt as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frags > ())) . completion as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (inet_frags) , "::" , stringify ! (completion))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct frag_v4_compare_key { pub saddr : __be32 , pub daddr : __be32 , pub user : _cargo_bpf_u32 , pub vif : _cargo_bpf_u32 , pub id : __be16 , pub protocol : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_frag_v4_compare_key () { assert_eq ! (:: core :: mem :: size_of :: < frag_v4_compare_key > () , 20usize , concat ! ("Size of: " , stringify ! (frag_v4_compare_key))) ; assert_eq ! (:: core :: mem :: align_of :: < frag_v4_compare_key > () , 4usize , concat ! ("Alignment of " , stringify ! (frag_v4_compare_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v4_compare_key > ())) . saddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (frag_v4_compare_key) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v4_compare_key > ())) . daddr as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (frag_v4_compare_key) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v4_compare_key > ())) . user as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (frag_v4_compare_key) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v4_compare_key > ())) . vif as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (frag_v4_compare_key) , "::" , stringify ! (vif))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v4_compare_key > ())) . id as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (frag_v4_compare_key) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v4_compare_key > ())) . protocol as * const _ as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (frag_v4_compare_key) , "::" , stringify ! (protocol))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct frag_v6_compare_key { pub saddr : in6_addr , pub daddr : in6_addr , pub user : _cargo_bpf_u32 , pub id : __be32 , pub iif : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_frag_v6_compare_key () { assert_eq ! (:: core :: mem :: size_of :: < frag_v6_compare_key > () , 44usize , concat ! ("Size of: " , stringify ! (frag_v6_compare_key))) ; assert_eq ! (:: core :: mem :: align_of :: < frag_v6_compare_key > () , 4usize , concat ! ("Alignment of " , stringify ! (frag_v6_compare_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v6_compare_key > ())) . saddr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (frag_v6_compare_key) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v6_compare_key > ())) . daddr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (frag_v6_compare_key) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v6_compare_key > ())) . user as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (frag_v6_compare_key) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v6_compare_key > ())) . id as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (frag_v6_compare_key) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < frag_v6_compare_key > ())) . iif as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (frag_v6_compare_key) , "::" , stringify ! (iif))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct inet_frag_queue { pub node : rhash_head , pub key : inet_frag_queue__bindgen_ty_1 , pub timer : timer_list , pub lock : spinlock_t , pub refcnt : refcount_t , pub rb_fragments : rb_root , pub fragments_tail : * mut sk_buff , pub last_run_head : * mut sk_buff , pub stamp : ktime_t , pub len : :: cty :: c_int , pub meat : :: cty :: c_int , pub flags : __u8 , pub max_size : _cargo_bpf_u16 , pub fqdir : * mut fqdir , pub rcu : callback_head , } # [repr (C)] # [derive (Copy , Clone)] pub union inet_frag_queue__bindgen_ty_1 { pub v4 : frag_v4_compare_key , pub v6 : frag_v6_compare_key , } # [test] fn bindgen_test_layout_inet_frag_queue__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < inet_frag_queue__bindgen_ty_1 > () , 44usize , concat ! ("Size of: " , stringify ! (inet_frag_queue__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < inet_frag_queue__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (inet_frag_queue__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue__bindgen_ty_1 > ())) . v4 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue__bindgen_ty_1) , "::" , stringify ! (v4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue__bindgen_ty_1 > ())) . v6 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue__bindgen_ty_1) , "::" , stringify ! (v6))) ; } # [test] fn bindgen_test_layout_inet_frag_queue () { assert_eq ! (:: core :: mem :: size_of :: < inet_frag_queue > () , 176usize , concat ! ("Size of: " , stringify ! (inet_frag_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < inet_frag_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (inet_frag_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . key as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . timer as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . lock as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . refcnt as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . rb_fragments as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (rb_fragments))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . fragments_tail as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (fragments_tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . last_run_head as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (last_run_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . stamp as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . len as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . meat as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (meat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . flags as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . max_size as * const _ as usize } , 146usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (max_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . fqdir as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (fqdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet_frag_queue > ())) . rcu as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (inet_frag_queue) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_rules_ops { pub family : :: cty :: c_int , pub list : list_head , pub rule_size : :: cty :: c_int , pub addr_size : :: cty :: c_int , pub unresolved_rules : :: cty :: c_int , pub nr_goto_rules : :: cty :: c_int , pub fib_rules_seq : :: cty :: c_uint , pub action : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule , arg2 : * mut flowi , arg3 : :: cty :: c_int , arg4 : * mut fib_lookup_arg) -> :: cty :: c_int > , pub suppress : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule , arg2 : :: cty :: c_int , arg3 : * mut fib_lookup_arg) -> bool_ > , pub match_ : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule , arg2 : * mut flowi , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub configure : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule , arg2 : * mut sk_buff , arg3 : * mut fib_rule_hdr , arg4 : * mut * mut nlattr , arg5 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub delete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule) -> :: cty :: c_int > , pub compare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule , arg2 : * mut fib_rule_hdr , arg3 : * mut * mut nlattr) -> :: cty :: c_int > , pub fill : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule , arg2 : * mut sk_buff , arg3 : * mut fib_rule_hdr) -> :: cty :: c_int > , pub nlmsg_payload : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rule) -> size_t > , pub flush_cache : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fib_rules_ops) > , pub nlgroup : :: cty :: c_int , pub policy : * const nla_policy , pub rules_list : list_head , pub owner : * mut module , pub fro_net : * mut net , pub rcu : callback_head , } # [test] fn bindgen_test_layout_fib_rules_ops () { assert_eq ! (:: core :: mem :: size_of :: < fib_rules_ops > () , 184usize , concat ! ("Size of: " , stringify ! (fib_rules_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_rules_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (fib_rules_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . rule_size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (rule_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . addr_size as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (addr_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . unresolved_rules as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (unresolved_rules))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . nr_goto_rules as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (nr_goto_rules))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . fib_rules_seq as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (fib_rules_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . action as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (action))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . suppress as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (suppress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . match_ as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (match_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . configure as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (configure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . delete as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (delete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . compare as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (compare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . fill as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (fill))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . nlmsg_payload as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (nlmsg_payload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . flush_cache as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (flush_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . nlgroup as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (nlgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . policy as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . rules_list as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (rules_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . owner as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . fro_net as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (fro_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rules_ops > ())) . rcu as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (fib_rules_ops) , "::" , stringify ! (rcu))) ; } pub const tcp_ca_event_CA_EVENT_TX_START : tcp_ca_event = 0 ; pub const tcp_ca_event_CA_EVENT_CWND_RESTART : tcp_ca_event = 1 ; pub const tcp_ca_event_CA_EVENT_COMPLETE_CWR : tcp_ca_event = 2 ; pub const tcp_ca_event_CA_EVENT_LOSS : tcp_ca_event = 3 ; pub const tcp_ca_event_CA_EVENT_ECN_NO_CE : tcp_ca_event = 4 ; pub const tcp_ca_event_CA_EVENT_ECN_IS_CE : tcp_ca_event = 5 ; pub type tcp_ca_event = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcp_congestion_ops { pub ssthresh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> _cargo_bpf_u32 > , pub cong_avoid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32) > , pub set_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : _cargo_bpf_u8) > , pub cwnd_event : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : tcp_ca_event) > , pub in_ack_event : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : _cargo_bpf_u32) > , pub pkts_acked : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * const ack_sample) > , pub min_tso_segs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> _cargo_bpf_u32 > , pub cong_control : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * const rate_sample) > , pub undo_cwnd : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> _cargo_bpf_u32 > , pub sndbuf_expand : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> _cargo_bpf_u32 > , pub get_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : _cargo_bpf_u32 , arg3 : * mut :: cty :: c_int , arg4 : * mut tcp_cc_info) -> size_t > , pub name : [:: cty :: c_char ; 16usize] , pub owner : * mut module , pub list : list_head , pub key : _cargo_bpf_u32 , pub flags : _cargo_bpf_u32 , pub init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [test] fn bindgen_test_layout_tcp_congestion_ops () { assert_eq ! (:: core :: mem :: size_of :: < tcp_congestion_ops > () , 192usize , concat ! ("Size of: " , stringify ! (tcp_congestion_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < tcp_congestion_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (tcp_congestion_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . ssthresh as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (ssthresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . cong_avoid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (cong_avoid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . set_state as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (set_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . cwnd_event as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (cwnd_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . in_ack_event as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (in_ack_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . pkts_acked as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (pkts_acked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . min_tso_segs as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (min_tso_segs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . cong_control as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (cong_control))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . undo_cwnd as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (undo_cwnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . sndbuf_expand as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (sndbuf_expand))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . get_info as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (get_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . name as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . owner as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . list as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . key as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . flags as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . init as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcp_congestion_ops > ())) . release as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcp_congestion_ops) , "::" , stringify ! (release))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_notifier_ops { pub family : :: cty :: c_int , pub list : list_head , pub fib_seq_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net) -> :: cty :: c_uint > , pub fib_dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut notifier_block , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub owner : * mut module , pub rcu : callback_head , } # [test] fn bindgen_test_layout_fib_notifier_ops () { assert_eq ! (:: core :: mem :: size_of :: < fib_notifier_ops > () , 64usize , concat ! ("Size of: " , stringify ! (fib_notifier_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_notifier_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (fib_notifier_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_notifier_ops > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_notifier_ops) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_notifier_ops > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fib_notifier_ops) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_notifier_ops > ())) . fib_seq_read as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fib_notifier_ops) , "::" , stringify ! (fib_seq_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_notifier_ops > ())) . fib_dump as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fib_notifier_ops) , "::" , stringify ! (fib_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_notifier_ops > ())) . owner as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fib_notifier_ops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_notifier_ops > ())) . rcu as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fib_notifier_ops) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dst_entry { pub dev : * mut net_device , pub ops : * mut dst_ops , pub _metrics : :: cty :: c_ulong , pub expires : :: cty :: c_ulong , pub xfrm : * mut xfrm_state , pub input : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff) -> :: cty :: c_int > , pub output : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut sock , arg3 : * mut sk_buff) -> :: cty :: c_int > , pub flags : :: cty :: c_ushort , pub obsolete : :: cty :: c_short , pub header_len : :: cty :: c_ushort , pub trailer_len : :: cty :: c_ushort , pub __refcnt : atomic_t , pub __use : :: cty :: c_int , pub lastuse : :: cty :: c_ulong , pub lwtstate : * mut lwtunnel_state , pub callback_head : callback_head , pub error : :: cty :: c_short , pub __pad : :: cty :: c_short , pub tclassid : __u32 , } # [test] fn bindgen_test_layout_dst_entry () { assert_eq ! (:: core :: mem :: size_of :: < dst_entry > () , 112usize , concat ! ("Size of: " , stringify ! (dst_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < dst_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (dst_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . _metrics as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (_metrics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . expires as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (expires))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . xfrm as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (xfrm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . input as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . output as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . flags as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . obsolete as * const _ as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (obsolete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . header_len as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (header_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . trailer_len as * const _ as usize } , 62usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (trailer_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . __refcnt as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (__refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . __use as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (__use))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . lastuse as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (lastuse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . lwtstate as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (lwtstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . callback_head as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (callback_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . error as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . __pad as * const _ as usize } , 106usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (__pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_entry > ())) . tclassid as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (dst_entry) , "::" , stringify ! (tclassid))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct hh_cache { pub hh_len : :: cty :: c_uint , pub hh_lock : seqlock_t , pub hh_data : [:: cty :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout_hh_cache () { assert_eq ! (:: core :: mem :: size_of :: < hh_cache > () , 144usize , concat ! ("Size of: " , stringify ! (hh_cache))) ; assert_eq ! (:: core :: mem :: align_of :: < hh_cache > () , 8usize , concat ! ("Alignment of " , stringify ! (hh_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hh_cache > ())) . hh_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hh_cache) , "::" , stringify ! (hh_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hh_cache > ())) . hh_lock as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (hh_cache) , "::" , stringify ! (hh_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hh_cache > ())) . hh_data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (hh_cache) , "::" , stringify ! (hh_data))) ; } # [repr (C)] pub struct neighbour { pub next : * mut neighbour , pub tbl : * mut neigh_table , pub parms : * mut neigh_parms , pub confirmed : :: cty :: c_ulong , pub updated : :: cty :: c_ulong , pub lock : rwlock_t , pub refcnt : refcount_t , pub arp_queue_len_bytes : :: cty :: c_uint , pub arp_queue : sk_buff_head , pub timer : timer_list , pub used : :: cty :: c_ulong , pub probes : atomic_t , pub flags : __u8 , pub nud_state : __u8 , pub type_ : __u8 , pub dead : __u8 , pub protocol : _cargo_bpf_u8 , pub ha_lock : seqlock_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub ha : [:: cty :: c_uchar ; 32usize] , pub hh : hh_cache , pub output : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour , arg2 : * mut sk_buff) -> :: cty :: c_int > , pub ops : * const neigh_ops , pub gc_list : list_head , pub rcu : callback_head , pub dev : * mut net_device , pub primary_key : __IncompleteArrayField < _cargo_bpf_u8 > , } # [test] fn bindgen_test_layout_neighbour () { assert_eq ! (:: core :: mem :: size_of :: < neighbour > () , 384usize , concat ! ("Size of: " , stringify ! (neighbour))) ; assert_eq ! (:: core :: mem :: align_of :: < neighbour > () , 8usize , concat ! ("Alignment of " , stringify ! (neighbour))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . tbl as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . parms as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (parms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . confirmed as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (confirmed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . updated as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (updated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . lock as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . refcnt as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . arp_queue_len_bytes as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (arp_queue_len_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . arp_queue as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (arp_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . timer as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . used as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . probes as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (probes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . flags as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . nud_state as * const _ as usize } , 133usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (nud_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . type_ as * const _ as usize } , 134usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . dead as * const _ as usize } , 135usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . protocol as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . ha_lock as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (ha_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . ha as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (ha))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . hh as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (hh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . output as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . ops as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . gc_list as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (gc_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . rcu as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . dev as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neighbour > ())) . primary_key as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (neighbour) , "::" , stringify ! (primary_key))) ; } impl neighbour { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_stable_secret { pub initialized : bool_ , pub secret : in6_addr , } # [test] fn bindgen_test_layout_ipv6_stable_secret () { assert_eq ! (:: core :: mem :: size_of :: < ipv6_stable_secret > () , 20usize , concat ! ("Size of: " , stringify ! (ipv6_stable_secret))) ; assert_eq ! (:: core :: mem :: align_of :: < ipv6_stable_secret > () , 4usize , concat ! ("Alignment of " , stringify ! (ipv6_stable_secret))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_stable_secret > ())) . initialized as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_stable_secret) , "::" , stringify ! (initialized))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_stable_secret > ())) . secret as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ipv6_stable_secret) , "::" , stringify ! (secret))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipv6_devconf { pub forwarding : __s32 , pub hop_limit : __s32 , pub mtu6 : __s32 , pub accept_ra : __s32 , pub accept_redirects : __s32 , pub autoconf : __s32 , pub dad_transmits : __s32 , pub rtr_solicits : __s32 , pub rtr_solicit_interval : __s32 , pub rtr_solicit_max_interval : __s32 , pub rtr_solicit_delay : __s32 , pub force_mld_version : __s32 , pub mldv1_unsolicited_report_interval : __s32 , pub mldv2_unsolicited_report_interval : __s32 , pub use_tempaddr : __s32 , pub temp_valid_lft : __s32 , pub temp_prefered_lft : __s32 , pub regen_max_retry : __s32 , pub max_desync_factor : __s32 , pub max_addresses : __s32 , pub accept_ra_defrtr : __s32 , pub ra_defrtr_metric : __u32 , pub accept_ra_min_hop_limit : __s32 , pub accept_ra_pinfo : __s32 , pub ignore_routes_with_linkdown : __s32 , pub accept_ra_rtr_pref : __s32 , pub rtr_probe_interval : __s32 , pub accept_ra_rt_info_min_plen : __s32 , pub accept_ra_rt_info_max_plen : __s32 , pub proxy_ndp : __s32 , pub accept_source_route : __s32 , pub accept_ra_from_local : __s32 , pub mc_forwarding : __s32 , pub disable_ipv6 : __s32 , pub drop_unicast_in_l2_multicast : __s32 , pub accept_dad : __s32 , pub force_tllao : __s32 , pub ndisc_notify : __s32 , pub suppress_frag_ndisc : __s32 , pub accept_ra_mtu : __s32 , pub drop_unsolicited_na : __s32 , pub stable_secret : ipv6_stable_secret , pub use_oif_addrs_only : __s32 , pub keep_addr_on_down : __s32 , pub seg6_enabled : __s32 , pub seg6_require_hmac : __s32 , pub enhanced_dad : __u32 , pub addr_gen_mode : __u32 , pub disable_policy : __s32 , pub ndisc_tclass : __s32 , pub rpl_seg_enabled : __s32 , pub sysctl_header : * mut ctl_table_header , } # [test] fn bindgen_test_layout_ipv6_devconf () { assert_eq ! (:: core :: mem :: size_of :: < ipv6_devconf > () , 232usize , concat ! ("Size of: " , stringify ! (ipv6_devconf))) ; assert_eq ! (:: core :: mem :: align_of :: < ipv6_devconf > () , 8usize , concat ! ("Alignment of " , stringify ! (ipv6_devconf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . forwarding as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (forwarding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . hop_limit as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (hop_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . mtu6 as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (mtu6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_redirects as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_redirects))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . autoconf as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (autoconf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . dad_transmits as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (dad_transmits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . rtr_solicits as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (rtr_solicits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . rtr_solicit_interval as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (rtr_solicit_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . rtr_solicit_max_interval as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (rtr_solicit_max_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . rtr_solicit_delay as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (rtr_solicit_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . force_mld_version as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (force_mld_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . mldv1_unsolicited_report_interval as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (mldv1_unsolicited_report_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . mldv2_unsolicited_report_interval as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (mldv2_unsolicited_report_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . use_tempaddr as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (use_tempaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . temp_valid_lft as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (temp_valid_lft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . temp_prefered_lft as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (temp_prefered_lft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . regen_max_retry as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (regen_max_retry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . max_desync_factor as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (max_desync_factor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . max_addresses as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (max_addresses))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_defrtr as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_defrtr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . ra_defrtr_metric as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (ra_defrtr_metric))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_min_hop_limit as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_min_hop_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_pinfo as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_pinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . ignore_routes_with_linkdown as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (ignore_routes_with_linkdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_rtr_pref as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_rtr_pref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . rtr_probe_interval as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (rtr_probe_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_rt_info_min_plen as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_rt_info_min_plen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_rt_info_max_plen as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_rt_info_max_plen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . proxy_ndp as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (proxy_ndp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_source_route as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_source_route))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_from_local as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_from_local))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . mc_forwarding as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (mc_forwarding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . disable_ipv6 as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (disable_ipv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . drop_unicast_in_l2_multicast as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (drop_unicast_in_l2_multicast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_dad as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_dad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . force_tllao as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (force_tllao))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . ndisc_notify as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (ndisc_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . suppress_frag_ndisc as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (suppress_frag_ndisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . accept_ra_mtu as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (accept_ra_mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . drop_unsolicited_na as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (drop_unsolicited_na))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . stable_secret as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (stable_secret))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . use_oif_addrs_only as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (use_oif_addrs_only))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . keep_addr_on_down as * const _ as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (keep_addr_on_down))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . seg6_enabled as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (seg6_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . seg6_require_hmac as * const _ as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (seg6_require_hmac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . enhanced_dad as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (enhanced_dad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . addr_gen_mode as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (addr_gen_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . disable_policy as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (disable_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . ndisc_tclass as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (ndisc_tclass))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . rpl_seg_enabled as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (rpl_seg_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devconf > ())) . sysctl_header as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (ipv6_devconf) , "::" , stringify ! (sysctl_header))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_queue_handler { pub outfn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nf_queue_entry , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub nf_hook_drop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net) > , } # [test] fn bindgen_test_layout_nf_queue_handler () { assert_eq ! (:: core :: mem :: size_of :: < nf_queue_handler > () , 16usize , concat ! ("Size of: " , stringify ! (nf_queue_handler))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_queue_handler > () , 8usize , concat ! ("Alignment of " , stringify ! (nf_queue_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_queue_handler > ())) . outfn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_queue_handler) , "::" , stringify ! (outfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_queue_handler > ())) . nf_hook_drop as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nf_queue_handler) , "::" , stringify ! (nf_hook_drop))) ; } pub const nf_log_type_NF_LOG_TYPE_LOG : nf_log_type = 0 ; pub const nf_log_type_NF_LOG_TYPE_ULOG : nf_log_type = 1 ; pub const nf_log_type_NF_LOG_TYPE_MAX : nf_log_type = 2 ; pub type nf_log_type = :: cty :: c_uint ; pub type u_int8_t = _cargo_bpf_u8 ; pub type nf_logfn = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : u_int8_t , arg3 : :: cty :: c_uint , arg4 : * const sk_buff , arg5 : * const net_device , arg6 : * const net_device , arg7 : * const nf_loginfo , arg8 : * const :: cty :: c_char) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nf_logger { pub name : * mut :: cty :: c_char , pub type_ : nf_log_type , pub logfn : nf_logfn , pub me : * mut module , } # [test] fn bindgen_test_layout_nf_logger () { assert_eq ! (:: core :: mem :: size_of :: < nf_logger > () , 32usize , concat ! ("Size of: " , stringify ! (nf_logger))) ; assert_eq ! (:: core :: mem :: align_of :: < nf_logger > () , 8usize , concat ! ("Alignment of " , stringify ! (nf_logger))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_logger > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nf_logger) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_logger > ())) . type_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nf_logger) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_logger > ())) . logfn as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nf_logger) , "::" , stringify ! (logfn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nf_logger > ())) . me as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nf_logger) , "::" , stringify ! (me))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct hlist_nulls_head { pub first : * mut hlist_nulls_node , } # [test] fn bindgen_test_layout_hlist_nulls_head () { assert_eq ! (:: core :: mem :: size_of :: < hlist_nulls_head > () , 8usize , concat ! ("Size of: " , stringify ! (hlist_nulls_head))) ; assert_eq ! (:: core :: mem :: align_of :: < hlist_nulls_head > () , 8usize , concat ! ("Alignment of " , stringify ! (hlist_nulls_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < hlist_nulls_head > ())) . first as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (hlist_nulls_head) , "::" , stringify ! (first))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ip_conntrack_stat { pub found : :: cty :: c_uint , pub invalid : :: cty :: c_uint , pub insert : :: cty :: c_uint , pub insert_failed : :: cty :: c_uint , pub clash_resolve : :: cty :: c_uint , pub drop : :: cty :: c_uint , pub early_drop : :: cty :: c_uint , pub error : :: cty :: c_uint , pub expect_new : :: cty :: c_uint , pub expect_create : :: cty :: c_uint , pub expect_delete : :: cty :: c_uint , pub search_restart : :: cty :: c_uint , } # [test] fn bindgen_test_layout_ip_conntrack_stat () { assert_eq ! (:: core :: mem :: size_of :: < ip_conntrack_stat > () , 48usize , concat ! ("Size of: " , stringify ! (ip_conntrack_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < ip_conntrack_stat > () , 4usize , concat ! ("Alignment of " , stringify ! (ip_conntrack_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . found as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (found))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . invalid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (invalid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . insert as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (insert))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . insert_failed as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (insert_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . clash_resolve as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (clash_resolve))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . drop as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (drop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . early_drop as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (early_drop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . error as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . expect_new as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (expect_new))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . expect_create as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (expect_create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . expect_delete as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (expect_delete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip_conntrack_stat > ())) . search_restart as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (ip_conntrack_stat) , "::" , stringify ! (search_restart))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ct_pcpu { pub lock : spinlock_t , pub unconfirmed : hlist_nulls_head , pub dying : hlist_nulls_head , } # [test] fn bindgen_test_layout_ct_pcpu () { assert_eq ! (:: core :: mem :: size_of :: < ct_pcpu > () , 24usize , concat ! ("Size of: " , stringify ! (ct_pcpu))) ; assert_eq ! (:: core :: mem :: align_of :: < ct_pcpu > () , 8usize , concat ! ("Alignment of " , stringify ! (ct_pcpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ct_pcpu > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ct_pcpu) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ct_pcpu > ())) . unconfirmed as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ct_pcpu) , "::" , stringify ! (unconfirmed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ct_pcpu > ())) . dying as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ct_pcpu) , "::" , stringify ! (dying))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct sockptr_t { pub __bindgen_anon_1 : sockptr_t__bindgen_ty_1 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [repr (C)] # [derive (Copy , Clone)] pub union sockptr_t__bindgen_ty_1 { pub kernel : * mut :: cty :: c_void , pub user : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_sockptr_t__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sockptr_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (sockptr_t__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sockptr_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sockptr_t__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sockptr_t__bindgen_ty_1 > ())) . kernel as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockptr_t__bindgen_ty_1) , "::" , stringify ! (kernel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sockptr_t__bindgen_ty_1 > ())) . user as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockptr_t__bindgen_ty_1) , "::" , stringify ! (user))) ; } # [test] fn bindgen_test_layout_sockptr_t () { assert_eq ! (:: core :: mem :: size_of :: < sockptr_t > () , 16usize , concat ! ("Size of: " , stringify ! (sockptr_t))) ; assert_eq ! (:: core :: mem :: align_of :: < sockptr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sockptr_t))) ; } impl sockptr_t { # [inline] pub fn is_kernel (& self) -> bool_ { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_is_kernel (& mut self , val : bool_) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_kernel : bool_) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_kernel : u8 = unsafe { :: core :: mem :: transmute (is_kernel) } ; is_kernel as u64 }) ; __bindgen_bitfield_unit } } pub const socket_state_SS_FREE : socket_state = 0 ; pub const socket_state_SS_UNCONNECTED : socket_state = 1 ; pub const socket_state_SS_CONNECTING : socket_state = 2 ; pub const socket_state_SS_CONNECTED : socket_state = 3 ; pub const socket_state_SS_DISCONNECTING : socket_state = 4 ; pub type socket_state = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct socket_wq { pub wait : wait_queue_head_t , pub fasync_list : * mut fasync_struct , pub flags : :: cty :: c_ulong , pub rcu : callback_head , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_socket_wq () { assert_eq ! (:: core :: mem :: size_of :: < socket_wq > () , 64usize , concat ! ("Size of: " , stringify ! (socket_wq))) ; assert_eq ! (:: core :: mem :: align_of :: < socket_wq > () , 8usize , concat ! ("Alignment of " , stringify ! (socket_wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_wq > ())) . wait as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (socket_wq) , "::" , stringify ! (wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_wq > ())) . fasync_list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (socket_wq) , "::" , stringify ! (fasync_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_wq > ())) . flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (socket_wq) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket_wq > ())) . rcu as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (socket_wq) , "::" , stringify ! (rcu))) ; } impl socket_wq { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct socket { pub state : socket_state , pub type_ : :: cty :: c_short , pub flags : :: cty :: c_ulong , pub file : * mut file , pub sk : * mut sock , pub ops : * const proto_ops , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub wq : socket_wq , } # [test] fn bindgen_test_layout_socket () { assert_eq ! (:: core :: mem :: size_of :: < socket > () , 128usize , concat ! ("Size of: " , stringify ! (socket))) ; assert_eq ! (:: core :: mem :: align_of :: < socket > () , 8usize , concat ! ("Alignment of " , stringify ! (socket))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . type_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . file as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . sk as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . ops as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < socket > ())) . wq as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (socket) , "::" , stringify ! (wq))) ; } impl socket { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } pub type sk_read_actor_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut read_descriptor_t , arg2 : * mut sk_buff , arg3 : :: cty :: c_uint , arg4 : size_t) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct proto_ops { pub family : :: cty :: c_int , pub owner : * mut module , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket) -> :: cty :: c_int > , pub bind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut sockaddr , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub connect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut sockaddr , arg3 : :: cty :: c_int , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub socketpair : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut socket) -> :: cty :: c_int > , pub accept : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut socket , arg3 : :: cty :: c_int , arg4 : bool_) -> :: cty :: c_int > , pub getname : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut sockaddr , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut socket , arg3 : * mut poll_table_struct) -> __poll_t > , pub ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_int > , pub compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_int > , pub gettstamp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut :: cty :: c_void , arg3 : bool_ , arg4 : bool_) -> :: cty :: c_int > , pub listen : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub setsockopt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int , arg4 : sockptr_t , arg5 : :: cty :: c_uint) -> :: cty :: c_int > , pub getsockopt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int , arg4 : * mut :: cty :: c_char , arg5 : * mut :: cty :: c_int) -> :: cty :: c_int > , pub show_fdinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut socket) > , pub sendmsg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut msghdr , arg3 : size_t) -> :: cty :: c_int > , pub recvmsg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut msghdr , arg3 : size_t , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut socket , arg3 : * mut vm_area_struct) -> :: cty :: c_int > , pub sendpage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut page , arg3 : :: cty :: c_int , arg4 : size_t , arg5 : :: cty :: c_int) -> ssize_t > , pub splice_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket , arg2 : * mut loff_t , arg3 : * mut pipe_inode_info , arg4 : size_t , arg5 : :: cty :: c_uint) -> ssize_t > , pub set_peek_off : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub peek_len : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut socket) -> :: cty :: c_int > , pub read_sock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut read_descriptor_t , arg3 : sk_read_actor_t) -> :: cty :: c_int > , pub sendpage_locked : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut page , arg3 : :: cty :: c_int , arg4 : size_t , arg5 : :: cty :: c_int) -> :: cty :: c_int > , pub sendmsg_locked : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut msghdr , arg3 : size_t) -> :: cty :: c_int > , pub set_rcvlowat : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_proto_ops () { assert_eq ! (:: core :: mem :: size_of :: < proto_ops > () , 224usize , concat ! ("Size of: " , stringify ! (proto_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < proto_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (proto_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . release as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . bind as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . connect as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (connect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . socketpair as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (socketpair))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . accept as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (accept))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . getname as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (getname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . poll as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . ioctl as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . compat_ioctl as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . gettstamp as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (gettstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . listen as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (listen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . shutdown as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . setsockopt as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (setsockopt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . getsockopt as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (getsockopt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . show_fdinfo as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (show_fdinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . sendmsg as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (sendmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . recvmsg as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (recvmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . mmap as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . sendpage as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (sendpage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . splice_read as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (splice_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . set_peek_off as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (set_peek_off))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . peek_len as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (peek_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . read_sock as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (read_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . sendpage_locked as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (sendpage_locked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . sendmsg_locked as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (sendmsg_locked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto_ops > ())) . set_rcvlowat as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (proto_ops) , "::" , stringify ! (set_rcvlowat))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pipe_buffer { pub page : * mut page , pub offset : :: cty :: c_uint , pub len : :: cty :: c_uint , pub ops : * const pipe_buf_operations , pub flags : :: cty :: c_uint , pub private : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_pipe_buffer () { assert_eq ! (:: core :: mem :: size_of :: < pipe_buffer > () , 40usize , concat ! ("Size of: " , stringify ! (pipe_buffer))) ; assert_eq ! (:: core :: mem :: align_of :: < pipe_buffer > () , 8usize , concat ! ("Alignment of " , stringify ! (pipe_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buffer > ())) . page as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pipe_buffer) , "::" , stringify ! (page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buffer > ())) . offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pipe_buffer) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buffer > ())) . len as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (pipe_buffer) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buffer > ())) . ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pipe_buffer) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buffer > ())) . flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pipe_buffer) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buffer > ())) . private as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pipe_buffer) , "::" , stringify ! (private))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pipe_buf_operations { pub confirm : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pipe_inode_info , arg2 : * mut pipe_buffer) -> :: cty :: c_int > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pipe_inode_info , arg2 : * mut pipe_buffer) > , pub try_steal : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pipe_inode_info , arg2 : * mut pipe_buffer) -> bool_ > , pub get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pipe_inode_info , arg2 : * mut pipe_buffer) -> bool_ > , } # [test] fn bindgen_test_layout_pipe_buf_operations () { assert_eq ! (:: core :: mem :: size_of :: < pipe_buf_operations > () , 32usize , concat ! ("Size of: " , stringify ! (pipe_buf_operations))) ; assert_eq ! (:: core :: mem :: align_of :: < pipe_buf_operations > () , 8usize , concat ! ("Alignment of " , stringify ! (pipe_buf_operations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buf_operations > ())) . confirm as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pipe_buf_operations) , "::" , stringify ! (confirm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buf_operations > ())) . release as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pipe_buf_operations) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buf_operations > ())) . try_steal as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pipe_buf_operations) , "::" , stringify ! (try_steal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pipe_buf_operations > ())) . get as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pipe_buf_operations) , "::" , stringify ! (get))) ; } # [repr (C)] # [derive (Debug)] pub struct skb_ext { pub refcnt : refcount_t , pub offset : [_cargo_bpf_u8 ; 4usize] , pub chunks : _cargo_bpf_u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 7usize] > , pub data : __IncompleteArrayField < :: cty :: c_char > , } # [test] fn bindgen_test_layout_skb_ext () { assert_eq ! (:: core :: mem :: size_of :: < skb_ext > () , 16usize , concat ! ("Size of: " , stringify ! (skb_ext))) ; assert_eq ! (:: core :: mem :: align_of :: < skb_ext > () , 4usize , concat ! ("Alignment of " , stringify ! (skb_ext))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < skb_ext > ())) . refcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (skb_ext) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < skb_ext > ())) . offset as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (skb_ext) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < skb_ext > ())) . chunks as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (skb_ext) , "::" , stringify ! (chunks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < skb_ext > ())) . data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (skb_ext) , "::" , stringify ! (data))) ; } impl skb_ext { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 7usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 7usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct auth_cred { pub cred : * const cred , pub principal : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_auth_cred () { assert_eq ! (:: core :: mem :: size_of :: < auth_cred > () , 16usize , concat ! ("Size of: " , stringify ! (auth_cred))) ; assert_eq ! (:: core :: mem :: align_of :: < auth_cred > () , 8usize , concat ! ("Alignment of " , stringify ! (auth_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < auth_cred > ())) . cred as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (auth_cred) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < auth_cred > ())) . principal as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (auth_cred) , "::" , stringify ! (principal))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_cred_cache { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_auth { pub au_cslack : :: cty :: c_uint , pub au_rslack : :: cty :: c_uint , pub au_verfsize : :: cty :: c_uint , pub au_ralign : :: cty :: c_uint , pub au_flags : :: cty :: c_ulong , pub au_ops : * const rpc_authops , pub au_flavor : rpc_authflavor_t , pub au_count : refcount_t , pub au_credcache : * mut rpc_cred_cache , } # [test] fn bindgen_test_layout_rpc_auth () { assert_eq ! (:: core :: mem :: size_of :: < rpc_auth > () , 48usize , concat ! ("Size of: " , stringify ! (rpc_auth))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_auth > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_auth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_cslack as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_cslack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_rslack as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_rslack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_verfsize as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_verfsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_ralign as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_ralign))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_flavor as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_flavor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_count as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth > ())) . au_credcache as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_auth) , "::" , stringify ! (au_credcache))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_credops { pub cr_name : * const :: cty :: c_char , pub cr_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_auth , arg2 : * mut rpc_cred) -> :: cty :: c_int > , pub crdestroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_cred) > , pub crmatch : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut auth_cred , arg2 : * mut rpc_cred , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub crmarshal : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut xdr_stream) -> :: cty :: c_int > , pub crrefresh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) -> :: cty :: c_int > , pub crvalidate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut xdr_stream) -> :: cty :: c_int > , pub crwrap_req : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut xdr_stream) -> :: cty :: c_int > , pub crunwrap_resp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut xdr_stream) -> :: cty :: c_int > , pub crkey_timeout : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_cred) -> :: cty :: c_int > , pub crstringify_acceptor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_cred) -> * mut :: cty :: c_char > , pub crneed_reencode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) -> bool_ > , } # [test] fn bindgen_test_layout_rpc_credops () { assert_eq ! (:: core :: mem :: size_of :: < rpc_credops > () , 96usize , concat ! ("Size of: " , stringify ! (rpc_credops))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_credops > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_credops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . cr_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (cr_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . cr_init as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (cr_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crdestroy as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crdestroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crmatch as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crmatch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crmarshal as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crmarshal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crrefresh as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crrefresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crvalidate as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crvalidate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crwrap_req as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crwrap_req))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crunwrap_resp as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crunwrap_resp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crkey_timeout as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crkey_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crstringify_acceptor as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crstringify_acceptor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_credops > ())) . crneed_reencode as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rpc_credops) , "::" , stringify ! (crneed_reencode))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_authops { pub owner : * mut module , pub au_flavor : rpc_authflavor_t , pub au_name : * mut :: cty :: c_char , pub create : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const rpc_auth_create_args , arg2 : * mut rpc_clnt) -> * mut rpc_auth > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_auth) > , pub hash_cred : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut auth_cred , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub lookup_cred : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_auth , arg2 : * mut auth_cred , arg3 : :: cty :: c_int) -> * mut rpc_cred > , pub crcreate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_auth , arg2 : * mut auth_cred , arg3 : :: cty :: c_int , arg4 : gfp_t) -> * mut rpc_cred > , pub info2flavor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpcsec_gss_info) -> rpc_authflavor_t > , pub flavor2info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : rpc_authflavor_t , arg2 : * mut rpcsec_gss_info) -> :: cty :: c_int > , pub key_timeout : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_auth , arg2 : * mut rpc_cred) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_rpc_authops () { assert_eq ! (:: core :: mem :: size_of :: < rpc_authops > () , 88usize , concat ! ("Size of: " , stringify ! (rpc_authops))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_authops > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_authops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . owner as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . au_flavor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (au_flavor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . au_name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (au_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . create as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . destroy as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . hash_cred as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (hash_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . lookup_cred as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (lookup_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . crcreate as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (crcreate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . info2flavor as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (info2flavor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . flavor2info as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (flavor2info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_authops > ())) . key_timeout as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_authops) , "::" , stringify ! (key_timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_auth_create_args { pub pseudoflavor : rpc_authflavor_t , pub target_name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_rpc_auth_create_args () { assert_eq ! (:: core :: mem :: size_of :: < rpc_auth_create_args > () , 16usize , concat ! ("Size of: " , stringify ! (rpc_auth_create_args))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_auth_create_args > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_auth_create_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth_create_args > ())) . pseudoflavor as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_auth_create_args) , "::" , stringify ! (pseudoflavor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_auth_create_args > ())) . target_name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_auth_create_args) , "::" , stringify ! (target_name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpcsec_gss_oid { pub len : :: cty :: c_uint , pub data : [_cargo_bpf_u8 ; 32usize] , } # [test] fn bindgen_test_layout_rpcsec_gss_oid () { assert_eq ! (:: core :: mem :: size_of :: < rpcsec_gss_oid > () , 36usize , concat ! ("Size of: " , stringify ! (rpcsec_gss_oid))) ; assert_eq ! (:: core :: mem :: align_of :: < rpcsec_gss_oid > () , 4usize , concat ! ("Alignment of " , stringify ! (rpcsec_gss_oid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpcsec_gss_oid > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpcsec_gss_oid) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpcsec_gss_oid > ())) . data as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rpcsec_gss_oid) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpcsec_gss_info { pub oid : rpcsec_gss_oid , pub qop : _cargo_bpf_u32 , pub service : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_rpcsec_gss_info () { assert_eq ! (:: core :: mem :: size_of :: < rpcsec_gss_info > () , 44usize , concat ! ("Size of: " , stringify ! (rpcsec_gss_info))) ; assert_eq ! (:: core :: mem :: align_of :: < rpcsec_gss_info > () , 4usize , concat ! ("Alignment of " , stringify ! (rpcsec_gss_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpcsec_gss_info > ())) . oid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpcsec_gss_info) , "::" , stringify ! (oid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpcsec_gss_info > ())) . qop as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (rpcsec_gss_info) , "::" , stringify ! (qop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpcsec_gss_info > ())) . service as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpcsec_gss_info) , "::" , stringify ! (service))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_xprt_ops { pub set_buffer_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : size_t , arg3 : size_t) > , pub reserve_xprt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut rpc_task) -> :: cty :: c_int > , pub release_xprt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut rpc_task) > , pub alloc_slot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut rpc_task) > , pub free_slot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut rpc_rqst) > , pub rpcbind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) > , pub set_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : :: cty :: c_ushort) > , pub connect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut rpc_task) > , pub buf_alloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) -> :: cty :: c_int > , pub buf_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) > , pub prepare_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_rqst) > , pub send_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_rqst) -> :: cty :: c_int > , pub wait_for_reply_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) > , pub timer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut rpc_task) > , pub release_request : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task) > , pub close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) > , pub set_connect_timeout : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong) > , pub print_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : * mut seq_file) > , pub enable_swap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) -> :: cty :: c_int > , pub disable_swap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) > , pub inject_disconnect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) > , pub bc_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub bc_maxpayload : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) -> size_t > , pub bc_num_slots : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt) -> :: cty :: c_uint > , pub bc_free_rqst : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_rqst) > , pub bc_destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt , arg2 : :: cty :: c_uint) > , } # [test] fn bindgen_test_layout_rpc_xprt_ops () { assert_eq ! (:: core :: mem :: size_of :: < rpc_xprt_ops > () , 216usize , concat ! ("Size of: " , stringify ! (rpc_xprt_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_xprt_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_xprt_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . set_buffer_size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (set_buffer_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . reserve_xprt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (reserve_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . release_xprt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (release_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . alloc_slot as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (alloc_slot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . free_slot as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (free_slot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . rpcbind as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (rpcbind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . set_port as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (set_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . connect as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (connect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . buf_alloc as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (buf_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . buf_free as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (buf_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . prepare_request as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (prepare_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . send_request as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (send_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . wait_for_reply_request as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (wait_for_reply_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . timer as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . release_request as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (release_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . close as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . destroy as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . set_connect_timeout as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (set_connect_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . print_stats as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (print_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . enable_swap as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (enable_swap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . disable_swap as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (disable_swap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . inject_disconnect as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (inject_disconnect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . bc_setup as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (bc_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . bc_maxpayload as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (bc_maxpayload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . bc_num_slots as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (bc_num_slots))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . bc_free_rqst as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (bc_free_rqst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_ops > ())) . bc_destroy as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_ops) , "::" , stringify ! (bc_destroy))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rpc_xprt_switch { pub xps_lock : spinlock_t , pub xps_kref : kref , pub xps_nxprts : :: cty :: c_uint , pub xps_nactive : :: cty :: c_uint , pub xps_queuelen : atomic_long_t , pub xps_xprt_list : list_head , pub xps_net : * mut net , pub xps_iter_ops : * const rpc_xprt_iter_ops , pub xps_rcu : callback_head , } # [test] fn bindgen_test_layout_rpc_xprt_switch () { assert_eq ! (:: core :: mem :: size_of :: < rpc_xprt_switch > () , 72usize , concat ! ("Size of: " , stringify ! (rpc_xprt_switch))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_xprt_switch > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_xprt_switch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_kref as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_nxprts as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_nxprts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_nactive as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_nactive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_queuelen as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_queuelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_xprt_list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_xprt_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_net as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_iter_ops as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_iter_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_switch > ())) . xps_rcu as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_switch) , "::" , stringify ! (xps_rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_stat { pub program : * const rpc_program , pub netcnt : :: cty :: c_uint , pub netudpcnt : :: cty :: c_uint , pub nettcpcnt : :: cty :: c_uint , pub nettcpconn : :: cty :: c_uint , pub netreconn : :: cty :: c_uint , pub rpccnt : :: cty :: c_uint , pub rpcretrans : :: cty :: c_uint , pub rpcauthrefresh : :: cty :: c_uint , pub rpcgarbage : :: cty :: c_uint , } # [test] fn bindgen_test_layout_rpc_stat () { assert_eq ! (:: core :: mem :: size_of :: < rpc_stat > () , 48usize , concat ! ("Size of: " , stringify ! (rpc_stat))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_stat > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . program as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (program))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . netcnt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (netcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . netudpcnt as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (netudpcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . nettcpcnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (nettcpcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . nettcpconn as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (nettcpconn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . netreconn as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (netreconn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . rpccnt as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (rpccnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . rpcretrans as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (rpcretrans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . rpcauthrefresh as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (rpcauthrefresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_stat > ())) . rpcgarbage as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rpc_stat) , "::" , stringify ! (rpcgarbage))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_program { pub name : * const :: cty :: c_char , pub number : _cargo_bpf_u32 , pub nrvers : :: cty :: c_uint , pub version : * mut * const rpc_version , pub stats : * mut rpc_stat , pub pipe_dir_name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_rpc_program () { assert_eq ! (:: core :: mem :: size_of :: < rpc_program > () , 40usize , concat ! ("Size of: " , stringify ! (rpc_program))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_program > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_program))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_program > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_program) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_program > ())) . number as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_program) , "::" , stringify ! (number))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_program > ())) . nrvers as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rpc_program) , "::" , stringify ! (nrvers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_program > ())) . version as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_program) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_program > ())) . stats as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rpc_program) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_program > ())) . pipe_dir_name as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rpc_program) , "::" , stringify ! (pipe_dir_name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dql { pub num_queued : :: cty :: c_uint , pub adj_limit : :: cty :: c_uint , pub last_obj_cnt : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 56usize] > , pub limit : :: cty :: c_uint , pub num_completed : :: cty :: c_uint , pub prev_ovlimit : :: cty :: c_uint , pub prev_num_queued : :: cty :: c_uint , pub prev_last_obj_cnt : :: cty :: c_uint , pub lowest_slack : :: cty :: c_uint , pub slack_start_time : :: cty :: c_ulong , pub max_limit : :: cty :: c_uint , pub min_limit : :: cty :: c_uint , pub slack_hold_time : :: cty :: c_uint , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [test] fn bindgen_test_layout_dql () { assert_eq ! (:: core :: mem :: size_of :: < dql > () , 128usize , concat ! ("Size of: " , stringify ! (dql))) ; assert_eq ! (:: core :: mem :: align_of :: < dql > () , 8usize , concat ! ("Alignment of " , stringify ! (dql))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . num_queued as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (num_queued))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . adj_limit as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (adj_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . last_obj_cnt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (last_obj_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . limit as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . num_completed as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (num_completed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . prev_ovlimit as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (prev_ovlimit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . prev_num_queued as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (prev_num_queued))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . prev_last_obj_cnt as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (prev_last_obj_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . lowest_slack as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (lowest_slack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . slack_start_time as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (slack_start_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . max_limit as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (max_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . min_limit as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (min_limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dql > ())) . slack_hold_time as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dql) , "::" , stringify ! (slack_hold_time))) ; } impl dql { # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ieee_ets { pub willing : __u8 , pub ets_cap : __u8 , pub cbs : __u8 , pub tc_tx_bw : [__u8 ; 8usize] , pub tc_rx_bw : [__u8 ; 8usize] , pub tc_tsa : [__u8 ; 8usize] , pub prio_tc : [__u8 ; 8usize] , pub tc_reco_bw : [__u8 ; 8usize] , pub tc_reco_tsa : [__u8 ; 8usize] , pub reco_prio_tc : [__u8 ; 8usize] , } # [test] fn bindgen_test_layout_ieee_ets () { assert_eq ! (:: core :: mem :: size_of :: < ieee_ets > () , 59usize , concat ! ("Size of: " , stringify ! (ieee_ets))) ; assert_eq ! (:: core :: mem :: align_of :: < ieee_ets > () , 1usize , concat ! ("Alignment of " , stringify ! (ieee_ets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . willing as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (willing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . ets_cap as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (ets_cap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . cbs as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (cbs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . tc_tx_bw as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (tc_tx_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . tc_rx_bw as * const _ as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (tc_rx_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . tc_tsa as * const _ as usize } , 19usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (tc_tsa))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . prio_tc as * const _ as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (prio_tc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . tc_reco_bw as * const _ as usize } , 35usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (tc_reco_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . tc_reco_tsa as * const _ as usize } , 43usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (tc_reco_tsa))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_ets > ())) . reco_prio_tc as * const _ as usize } , 51usize , concat ! ("Offset of field: " , stringify ! (ieee_ets) , "::" , stringify ! (reco_prio_tc))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ieee_maxrate { pub tc_maxrate : [__u64 ; 8usize] , } # [test] fn bindgen_test_layout_ieee_maxrate () { assert_eq ! (:: core :: mem :: size_of :: < ieee_maxrate > () , 64usize , concat ! ("Size of: " , stringify ! (ieee_maxrate))) ; assert_eq ! (:: core :: mem :: align_of :: < ieee_maxrate > () , 8usize , concat ! ("Alignment of " , stringify ! (ieee_maxrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_maxrate > ())) . tc_maxrate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ieee_maxrate) , "::" , stringify ! (tc_maxrate))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ieee_qcn { pub rpg_enable : [__u8 ; 8usize] , pub rppp_max_rps : [__u32 ; 8usize] , pub rpg_time_reset : [__u32 ; 8usize] , pub rpg_byte_reset : [__u32 ; 8usize] , pub rpg_threshold : [__u32 ; 8usize] , pub rpg_max_rate : [__u32 ; 8usize] , pub rpg_ai_rate : [__u32 ; 8usize] , pub rpg_hai_rate : [__u32 ; 8usize] , pub rpg_gd : [__u32 ; 8usize] , pub rpg_min_dec_fac : [__u32 ; 8usize] , pub rpg_min_rate : [__u32 ; 8usize] , pub cndd_state_machine : [__u32 ; 8usize] , } # [test] fn bindgen_test_layout_ieee_qcn () { assert_eq ! (:: core :: mem :: size_of :: < ieee_qcn > () , 360usize , concat ! ("Size of: " , stringify ! (ieee_qcn))) ; assert_eq ! (:: core :: mem :: align_of :: < ieee_qcn > () , 4usize , concat ! ("Alignment of " , stringify ! (ieee_qcn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_enable as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rppp_max_rps as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rppp_max_rps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_time_reset as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_time_reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_byte_reset as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_byte_reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_threshold as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_max_rate as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_max_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_ai_rate as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_ai_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_hai_rate as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_hai_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_gd as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_gd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_min_dec_fac as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_min_dec_fac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . rpg_min_rate as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (rpg_min_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn > ())) . cndd_state_machine as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn) , "::" , stringify ! (cndd_state_machine))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ieee_qcn_stats { pub rppp_rp_centiseconds : [__u64 ; 8usize] , pub rppp_created_rps : [__u32 ; 8usize] , } # [test] fn bindgen_test_layout_ieee_qcn_stats () { assert_eq ! (:: core :: mem :: size_of :: < ieee_qcn_stats > () , 96usize , concat ! ("Size of: " , stringify ! (ieee_qcn_stats))) ; assert_eq ! (:: core :: mem :: align_of :: < ieee_qcn_stats > () , 8usize , concat ! ("Alignment of " , stringify ! (ieee_qcn_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn_stats > ())) . rppp_rp_centiseconds as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn_stats) , "::" , stringify ! (rppp_rp_centiseconds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_qcn_stats > ())) . rppp_created_rps as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ieee_qcn_stats) , "::" , stringify ! (rppp_created_rps))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ieee_pfc { pub pfc_cap : __u8 , pub pfc_en : __u8 , pub mbc : __u8 , pub delay : __u16 , pub requests : [__u64 ; 8usize] , pub indications : [__u64 ; 8usize] , } # [test] fn bindgen_test_layout_ieee_pfc () { assert_eq ! (:: core :: mem :: size_of :: < ieee_pfc > () , 136usize , concat ! ("Size of: " , stringify ! (ieee_pfc))) ; assert_eq ! (:: core :: mem :: align_of :: < ieee_pfc > () , 8usize , concat ! ("Alignment of " , stringify ! (ieee_pfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_pfc > ())) . pfc_cap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ieee_pfc) , "::" , stringify ! (pfc_cap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_pfc > ())) . pfc_en as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (ieee_pfc) , "::" , stringify ! (pfc_en))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_pfc > ())) . mbc as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (ieee_pfc) , "::" , stringify ! (mbc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_pfc > ())) . delay as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ieee_pfc) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_pfc > ())) . requests as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ieee_pfc) , "::" , stringify ! (requests))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ieee_pfc > ())) . indications as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ieee_pfc) , "::" , stringify ! (indications))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dcbnl_buffer { pub prio2buffer : [__u8 ; 8usize] , pub buffer_size : [__u32 ; 8usize] , pub total_size : __u32 , } # [test] fn bindgen_test_layout_dcbnl_buffer () { assert_eq ! (:: core :: mem :: size_of :: < dcbnl_buffer > () , 44usize , concat ! ("Size of: " , stringify ! (dcbnl_buffer))) ; assert_eq ! (:: core :: mem :: align_of :: < dcbnl_buffer > () , 4usize , concat ! ("Alignment of " , stringify ! (dcbnl_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_buffer > ())) . prio2buffer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dcbnl_buffer) , "::" , stringify ! (prio2buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_buffer > ())) . buffer_size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dcbnl_buffer) , "::" , stringify ! (buffer_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_buffer > ())) . total_size as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dcbnl_buffer) , "::" , stringify ! (total_size))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cee_pg { pub willing : __u8 , pub error : __u8 , pub pg_en : __u8 , pub tcs_supported : __u8 , pub pg_bw : [__u8 ; 8usize] , pub prio_pg : [__u8 ; 8usize] , } # [test] fn bindgen_test_layout_cee_pg () { assert_eq ! (:: core :: mem :: size_of :: < cee_pg > () , 20usize , concat ! ("Size of: " , stringify ! (cee_pg))) ; assert_eq ! (:: core :: mem :: align_of :: < cee_pg > () , 1usize , concat ! ("Alignment of " , stringify ! (cee_pg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pg > ())) . willing as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cee_pg) , "::" , stringify ! (willing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pg > ())) . error as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (cee_pg) , "::" , stringify ! (error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pg > ())) . pg_en as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (cee_pg) , "::" , stringify ! (pg_en))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pg > ())) . tcs_supported as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (cee_pg) , "::" , stringify ! (tcs_supported))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pg > ())) . pg_bw as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cee_pg) , "::" , stringify ! (pg_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pg > ())) . prio_pg as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cee_pg) , "::" , stringify ! (prio_pg))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cee_pfc { pub willing : __u8 , pub error : __u8 , pub pfc_en : __u8 , pub tcs_supported : __u8 , } # [test] fn bindgen_test_layout_cee_pfc () { assert_eq ! (:: core :: mem :: size_of :: < cee_pfc > () , 4usize , concat ! ("Size of: " , stringify ! (cee_pfc))) ; assert_eq ! (:: core :: mem :: align_of :: < cee_pfc > () , 1usize , concat ! ("Alignment of " , stringify ! (cee_pfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pfc > ())) . willing as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cee_pfc) , "::" , stringify ! (willing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pfc > ())) . error as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (cee_pfc) , "::" , stringify ! (error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pfc > ())) . pfc_en as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (cee_pfc) , "::" , stringify ! (pfc_en))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cee_pfc > ())) . tcs_supported as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (cee_pfc) , "::" , stringify ! (tcs_supported))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dcb_app { pub selector : __u8 , pub priority : __u8 , pub protocol : __u16 , } # [test] fn bindgen_test_layout_dcb_app () { assert_eq ! (:: core :: mem :: size_of :: < dcb_app > () , 4usize , concat ! ("Size of: " , stringify ! (dcb_app))) ; assert_eq ! (:: core :: mem :: align_of :: < dcb_app > () , 2usize , concat ! ("Alignment of " , stringify ! (dcb_app))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcb_app > ())) . selector as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dcb_app) , "::" , stringify ! (selector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcb_app > ())) . priority as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (dcb_app) , "::" , stringify ! (priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcb_app > ())) . protocol as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (dcb_app) , "::" , stringify ! (protocol))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dcb_peer_app_info { pub willing : __u8 , pub error : __u8 , } # [test] fn bindgen_test_layout_dcb_peer_app_info () { assert_eq ! (:: core :: mem :: size_of :: < dcb_peer_app_info > () , 2usize , concat ! ("Size of: " , stringify ! (dcb_peer_app_info))) ; assert_eq ! (:: core :: mem :: align_of :: < dcb_peer_app_info > () , 1usize , concat ! ("Alignment of " , stringify ! (dcb_peer_app_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcb_peer_app_info > ())) . willing as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dcb_peer_app_info) , "::" , stringify ! (willing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcb_peer_app_info > ())) . error as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (dcb_peer_app_info) , "::" , stringify ! (error))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dcbnl_rtnl_ops { pub ieee_getets : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_ets) -> :: cty :: c_int > , pub ieee_setets : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_ets) -> :: cty :: c_int > , pub ieee_getmaxrate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_maxrate) -> :: cty :: c_int > , pub ieee_setmaxrate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_maxrate) -> :: cty :: c_int > , pub ieee_getqcn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_qcn) -> :: cty :: c_int > , pub ieee_setqcn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_qcn) -> :: cty :: c_int > , pub ieee_getqcnstats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_qcn_stats) -> :: cty :: c_int > , pub ieee_getpfc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_pfc) -> :: cty :: c_int > , pub ieee_setpfc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_pfc) -> :: cty :: c_int > , pub ieee_getapp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcb_app) -> :: cty :: c_int > , pub ieee_setapp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcb_app) -> :: cty :: c_int > , pub ieee_delapp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcb_app) -> :: cty :: c_int > , pub ieee_peer_getets : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_ets) -> :: cty :: c_int > , pub ieee_peer_getpfc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ieee_pfc) -> :: cty :: c_int > , pub getstate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u8 > , pub setstate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u8) -> _cargo_bpf_u8 > , pub getpermhwaddr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut _cargo_bpf_u8) > , pub setpgtccfgtx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8 , arg4 : _cargo_bpf_u8 , arg5 : _cargo_bpf_u8 , arg6 : _cargo_bpf_u8) > , pub setpgbwgcfgtx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8) > , pub setpgtccfgrx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8 , arg4 : _cargo_bpf_u8 , arg5 : _cargo_bpf_u8 , arg6 : _cargo_bpf_u8) > , pub setpgbwgcfgrx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8) > , pub getpgtccfgtx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8 , arg4 : * mut _cargo_bpf_u8 , arg5 : * mut _cargo_bpf_u8 , arg6 : * mut _cargo_bpf_u8) > , pub getpgbwgcfgtx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) > , pub getpgtccfgrx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8 , arg4 : * mut _cargo_bpf_u8 , arg5 : * mut _cargo_bpf_u8 , arg6 : * mut _cargo_bpf_u8) > , pub getpgbwgcfgrx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) > , pub setpfccfg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8) > , pub getpfccfg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) > , pub setall : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u8 > , pub getcap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) -> _cargo_bpf_u8 > , pub getnumtcs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub setnumtcs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8) -> :: cty :: c_int > , pub getpfcstate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u8 > , pub setpfcstate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u8) > , pub getbcncfg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u32) > , pub setbcncfg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u32) > , pub getbcnrp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) > , pub setbcnrp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8) > , pub setapp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u8 , arg3 : _cargo_bpf_u16 , arg4 : _cargo_bpf_u8) -> :: cty :: c_int > , pub getapp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u8 , arg3 : _cargo_bpf_u16) -> :: cty :: c_int > , pub getfeatcfg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) -> _cargo_bpf_u8 > , pub setfeatcfg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u8) -> _cargo_bpf_u8 > , pub getdcbx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u8 > , pub setdcbx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u8) -> _cargo_bpf_u8 > , pub peer_getappinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcb_peer_app_info , arg3 : * mut _cargo_bpf_u16) -> :: cty :: c_int > , pub peer_getapptable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcb_app) -> :: cty :: c_int > , pub cee_peer_getpg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut cee_pg) -> :: cty :: c_int > , pub cee_peer_getpfc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut cee_pfc) -> :: cty :: c_int > , pub dcbnl_getbuffer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcbnl_buffer) -> :: cty :: c_int > , pub dcbnl_setbuffer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut dcbnl_buffer) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_dcbnl_rtnl_ops () { assert_eq ! (:: core :: mem :: size_of :: < dcbnl_rtnl_ops > () , 392usize , concat ! ("Size of: " , stringify ! (dcbnl_rtnl_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < dcbnl_rtnl_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (dcbnl_rtnl_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_getets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_getets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_setets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_setets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_getmaxrate as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_getmaxrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_setmaxrate as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_setmaxrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_getqcn as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_getqcn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_setqcn as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_setqcn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_getqcnstats as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_getqcnstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_getpfc as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_getpfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_setpfc as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_setpfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_getapp as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_getapp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_setapp as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_setapp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_delapp as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_delapp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_peer_getets as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_peer_getets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . ieee_peer_getpfc as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (ieee_peer_getpfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getstate as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setstate as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpermhwaddr as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpermhwaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setpgtccfgtx as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setpgtccfgtx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setpgbwgcfgtx as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setpgbwgcfgtx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setpgtccfgrx as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setpgtccfgrx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setpgbwgcfgrx as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setpgbwgcfgrx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpgtccfgtx as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpgtccfgtx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpgbwgcfgtx as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpgbwgcfgtx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpgtccfgrx as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpgtccfgrx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpgbwgcfgrx as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpgbwgcfgrx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setpfccfg as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setpfccfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpfccfg as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpfccfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setall as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setall))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getcap as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getcap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getnumtcs as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getnumtcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setnumtcs as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setnumtcs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getpfcstate as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getpfcstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setpfcstate as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setpfcstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getbcncfg as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getbcncfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setbcncfg as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setbcncfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getbcnrp as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getbcnrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setbcnrp as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setbcnrp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setapp as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setapp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getapp as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getapp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getfeatcfg as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getfeatcfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setfeatcfg as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setfeatcfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . getdcbx as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (getdcbx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . setdcbx as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (setdcbx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . peer_getappinfo as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (peer_getappinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . peer_getapptable as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (peer_getapptable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . cee_peer_getpg as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (cee_peer_getpg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . cee_peer_getpfc as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (cee_peer_getpfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . dcbnl_getbuffer as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (dcbnl_getbuffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dcbnl_rtnl_ops > ())) . dcbnl_setbuffer as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (dcbnl_rtnl_ops) , "::" , stringify ! (dcbnl_setbuffer))) ; } # [repr (C)] # [derive (Debug)] pub struct netprio_map { pub rcu : callback_head , pub priomap_len : _cargo_bpf_u32 , pub priomap : __IncompleteArrayField < _cargo_bpf_u32 > , } # [test] fn bindgen_test_layout_netprio_map () { assert_eq ! (:: core :: mem :: size_of :: < netprio_map > () , 24usize , concat ! ("Size of: " , stringify ! (netprio_map))) ; assert_eq ! (:: core :: mem :: align_of :: < netprio_map > () , 8usize , concat ! ("Alignment of " , stringify ! (netprio_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netprio_map > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netprio_map) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netprio_map > ())) . priomap_len as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netprio_map) , "::" , stringify ! (priomap_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netprio_map > ())) . priomap as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (netprio_map) , "::" , stringify ! (priomap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xdp_mem_info { pub type_ : _cargo_bpf_u32 , pub id : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_xdp_mem_info () { assert_eq ! (:: core :: mem :: size_of :: < xdp_mem_info > () , 8usize , concat ! ("Size of: " , stringify ! (xdp_mem_info))) ; assert_eq ! (:: core :: mem :: align_of :: < xdp_mem_info > () , 4usize , concat ! ("Alignment of " , stringify ! (xdp_mem_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_mem_info > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xdp_mem_info) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_mem_info > ())) . id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (xdp_mem_info) , "::" , stringify ! (id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xdp_rxq_info { pub dev : * mut net_device , pub queue_index : _cargo_bpf_u32 , pub reg_state : _cargo_bpf_u32 , pub mem : xdp_mem_info , pub napi_id : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [test] fn bindgen_test_layout_xdp_rxq_info () { assert_eq ! (:: core :: mem :: size_of :: < xdp_rxq_info > () , 64usize , concat ! ("Size of: " , stringify ! (xdp_rxq_info))) ; assert_eq ! (:: core :: mem :: align_of :: < xdp_rxq_info > () , 8usize , concat ! ("Alignment of " , stringify ! (xdp_rxq_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_rxq_info > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xdp_rxq_info) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_rxq_info > ())) . queue_index as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xdp_rxq_info) , "::" , stringify ! (queue_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_rxq_info > ())) . reg_state as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (xdp_rxq_info) , "::" , stringify ! (reg_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_rxq_info > ())) . mem as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xdp_rxq_info) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_rxq_info > ())) . napi_id as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xdp_rxq_info) , "::" , stringify ! (napi_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xdp_frame { pub data : * mut :: cty :: c_void , pub len : _cargo_bpf_u16 , pub headroom : _cargo_bpf_u16 , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub mem : xdp_mem_info , pub dev_rx : * mut net_device , } # [test] fn bindgen_test_layout_xdp_frame () { assert_eq ! (:: core :: mem :: size_of :: < xdp_frame > () , 32usize , concat ! ("Size of: " , stringify ! (xdp_frame))) ; assert_eq ! (:: core :: mem :: align_of :: < xdp_frame > () , 8usize , concat ! ("Alignment of " , stringify ! (xdp_frame))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_frame > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xdp_frame) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_frame > ())) . len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xdp_frame) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_frame > ())) . headroom as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (xdp_frame) , "::" , stringify ! (headroom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_frame > ())) . mem as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xdp_frame) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xdp_frame > ())) . dev_rx as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xdp_frame) , "::" , stringify ! (dev_rx))) ; } impl xdp_frame { # [inline] pub fn metasize (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_metasize (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn frame_sz (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 24u8) as u32) } } # [inline] pub fn set_frame_sz (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (metasize : _cargo_bpf_u32 , frame_sz : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let metasize : u32 = unsafe { :: core :: mem :: transmute (metasize) } ; metasize as u64 }) ; __bindgen_bitfield_unit . set (8usize , 24u8 , { let frame_sz : u32 = unsafe { :: core :: mem :: transmute (frame_sz) } ; frame_sz as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nlmsghdr { pub nlmsg_len : __u32 , pub nlmsg_type : __u16 , pub nlmsg_flags : __u16 , pub nlmsg_seq : __u32 , pub nlmsg_pid : __u32 , } # [test] fn bindgen_test_layout_nlmsghdr () { assert_eq ! (:: core :: mem :: size_of :: < nlmsghdr > () , 16usize , concat ! ("Size of: " , stringify ! (nlmsghdr))) ; assert_eq ! (:: core :: mem :: align_of :: < nlmsghdr > () , 4usize , concat ! ("Alignment of " , stringify ! (nlmsghdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlmsghdr > ())) . nlmsg_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nlmsghdr) , "::" , stringify ! (nlmsg_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlmsghdr > ())) . nlmsg_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nlmsghdr) , "::" , stringify ! (nlmsg_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlmsghdr > ())) . nlmsg_flags as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (nlmsghdr) , "::" , stringify ! (nlmsg_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlmsghdr > ())) . nlmsg_seq as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nlmsghdr) , "::" , stringify ! (nlmsg_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlmsghdr > ())) . nlmsg_pid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (nlmsghdr) , "::" , stringify ! (nlmsg_pid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nlattr { pub nla_len : __u16 , pub nla_type : __u16 , } # [test] fn bindgen_test_layout_nlattr () { assert_eq ! (:: core :: mem :: size_of :: < nlattr > () , 4usize , concat ! ("Size of: " , stringify ! (nlattr))) ; assert_eq ! (:: core :: mem :: align_of :: < nlattr > () , 2usize , concat ! ("Alignment of " , stringify ! (nlattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlattr > ())) . nla_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nlattr) , "::" , stringify ! (nla_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nlattr > ())) . nla_type as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (nlattr) , "::" , stringify ! (nla_type))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netlink_ext_ack { pub _msg : * const :: cty :: c_char , pub bad_attr : * const nlattr , pub policy : * const nla_policy , pub cookie : [_cargo_bpf_u8 ; 20usize] , pub cookie_len : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_netlink_ext_ack () { assert_eq ! (:: core :: mem :: size_of :: < netlink_ext_ack > () , 48usize , concat ! ("Size of: " , stringify ! (netlink_ext_ack))) ; assert_eq ! (:: core :: mem :: align_of :: < netlink_ext_ack > () , 8usize , concat ! ("Alignment of " , stringify ! (netlink_ext_ack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_ext_ack > ())) . _msg as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netlink_ext_ack) , "::" , stringify ! (_msg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_ext_ack > ())) . bad_attr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netlink_ext_ack) , "::" , stringify ! (bad_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_ext_ack > ())) . policy as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netlink_ext_ack) , "::" , stringify ! (policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_ext_ack > ())) . cookie as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netlink_ext_ack) , "::" , stringify ! (cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_ext_ack > ())) . cookie_len as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (netlink_ext_ack) , "::" , stringify ! (cookie_len))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nla_policy { pub type_ : _cargo_bpf_u8 , pub validation_type : _cargo_bpf_u8 , pub len : _cargo_bpf_u16 , pub __bindgen_anon_1 : nla_policy__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union nla_policy__bindgen_ty_1 { pub bitfield32_valid : _cargo_bpf_u32 , pub mask : _cargo_bpf_u32 , pub reject_message : * const :: cty :: c_char , pub nested_policy : * const nla_policy , pub range : * mut netlink_range_validation , pub range_signed : * mut netlink_range_validation_signed , pub __bindgen_anon_1 : nla_policy__bindgen_ty_1__bindgen_ty_1 , pub validate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const nlattr , arg2 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub strict_start_type : _cargo_bpf_u16 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nla_policy__bindgen_ty_1__bindgen_ty_1 { pub min : s16 , pub max : s16 , } # [test] fn bindgen_test_layout_nla_policy__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nla_policy__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (nla_policy__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nla_policy__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (nla_policy__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1__bindgen_ty_1 > ())) . min as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1__bindgen_ty_1 > ())) . max as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (max))) ; } # [test] fn bindgen_test_layout_nla_policy__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nla_policy__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (nla_policy__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nla_policy__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (nla_policy__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . bitfield32_valid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (bitfield32_valid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . mask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . reject_message as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (reject_message))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . nested_policy as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (nested_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . range as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . range_signed as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (range_signed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . validate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (validate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy__bindgen_ty_1 > ())) . strict_start_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy__bindgen_ty_1) , "::" , stringify ! (strict_start_type))) ; } # [test] fn bindgen_test_layout_nla_policy () { assert_eq ! (:: core :: mem :: size_of :: < nla_policy > () , 16usize , concat ! ("Size of: " , stringify ! (nla_policy))) ; assert_eq ! (:: core :: mem :: align_of :: < nla_policy > () , 8usize , concat ! ("Alignment of " , stringify ! (nla_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nla_policy) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy > ())) . validation_type as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (nla_policy) , "::" , stringify ! (validation_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nla_policy > ())) . len as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (nla_policy) , "::" , stringify ! (len))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netlink_callback { pub skb : * mut sk_buff , pub nlh : * const nlmsghdr , pub dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut netlink_callback) -> :: cty :: c_int > , pub done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut netlink_callback) -> :: cty :: c_int > , pub data : * mut :: cty :: c_void , pub module : * mut module , pub extack : * mut netlink_ext_ack , pub family : _cargo_bpf_u16 , pub answer_flags : _cargo_bpf_u16 , pub min_dump_alloc : _cargo_bpf_u32 , pub prev_seq : :: cty :: c_uint , pub seq : :: cty :: c_uint , pub strict_check : bool_ , pub __bindgen_anon_1 : netlink_callback__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union netlink_callback__bindgen_ty_1 { pub ctx : [_cargo_bpf_u8 ; 48usize] , pub args : [:: cty :: c_long ; 6usize] , } # [test] fn bindgen_test_layout_netlink_callback__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < netlink_callback__bindgen_ty_1 > () , 48usize , concat ! ("Size of: " , stringify ! (netlink_callback__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < netlink_callback__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (netlink_callback__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback__bindgen_ty_1 > ())) . ctx as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netlink_callback__bindgen_ty_1) , "::" , stringify ! (ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback__bindgen_ty_1 > ())) . args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netlink_callback__bindgen_ty_1) , "::" , stringify ! (args))) ; } # [test] fn bindgen_test_layout_netlink_callback () { assert_eq ! (:: core :: mem :: size_of :: < netlink_callback > () , 128usize , concat ! ("Size of: " , stringify ! (netlink_callback))) ; assert_eq ! (:: core :: mem :: align_of :: < netlink_callback > () , 8usize , concat ! ("Alignment of " , stringify ! (netlink_callback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . skb as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (skb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . nlh as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (nlh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . dump as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . done as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . data as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . module as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . extack as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (extack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . family as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . answer_flags as * const _ as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (answer_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . min_dump_alloc as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (min_dump_alloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . prev_seq as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (prev_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . seq as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_callback > ())) . strict_check as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (netlink_callback) , "::" , stringify ! (strict_check))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ndmsg { pub ndm_family : __u8 , pub ndm_pad1 : __u8 , pub ndm_pad2 : __u16 , pub ndm_ifindex : __s32 , pub ndm_state : __u16 , pub ndm_flags : __u8 , pub ndm_type : __u8 , } # [test] fn bindgen_test_layout_ndmsg () { assert_eq ! (:: core :: mem :: size_of :: < ndmsg > () , 12usize , concat ! ("Size of: " , stringify ! (ndmsg))) ; assert_eq ! (:: core :: mem :: align_of :: < ndmsg > () , 4usize , concat ! ("Alignment of " , stringify ! (ndmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_pad1 as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_pad1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_pad2 as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_pad2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_ifindex as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_state as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_flags as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndmsg > ())) . ndm_type as * const _ as usize } , 11usize , concat ! ("Offset of field: " , stringify ! (ndmsg) , "::" , stringify ! (ndm_type))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rtnl_link_stats64 { pub rx_packets : __u64 , pub tx_packets : __u64 , pub rx_bytes : __u64 , pub tx_bytes : __u64 , pub rx_errors : __u64 , pub tx_errors : __u64 , pub rx_dropped : __u64 , pub tx_dropped : __u64 , pub multicast : __u64 , pub collisions : __u64 , pub rx_length_errors : __u64 , pub rx_over_errors : __u64 , pub rx_crc_errors : __u64 , pub rx_frame_errors : __u64 , pub rx_fifo_errors : __u64 , pub rx_missed_errors : __u64 , pub tx_aborted_errors : __u64 , pub tx_carrier_errors : __u64 , pub tx_fifo_errors : __u64 , pub tx_heartbeat_errors : __u64 , pub tx_window_errors : __u64 , pub rx_compressed : __u64 , pub tx_compressed : __u64 , pub rx_nohandler : __u64 , } # [test] fn bindgen_test_layout_rtnl_link_stats64 () { assert_eq ! (:: core :: mem :: size_of :: < rtnl_link_stats64 > () , 192usize , concat ! ("Size of: " , stringify ! (rtnl_link_stats64))) ; assert_eq ! (:: core :: mem :: align_of :: < rtnl_link_stats64 > () , 8usize , concat ! ("Alignment of " , stringify ! (rtnl_link_stats64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_packets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_packets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_bytes as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_bytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_errors as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_errors as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_dropped as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_dropped as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . multicast as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (multicast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . collisions as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (collisions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_length_errors as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_length_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_over_errors as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_over_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_crc_errors as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_crc_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_frame_errors as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_frame_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_fifo_errors as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_fifo_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_missed_errors as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_missed_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_aborted_errors as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_aborted_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_carrier_errors as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_carrier_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_fifo_errors as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_fifo_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_heartbeat_errors as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_heartbeat_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_window_errors as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_window_errors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_compressed as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_compressed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . tx_compressed as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (tx_compressed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_stats64 > ())) . rx_nohandler as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_stats64) , "::" , stringify ! (rx_nohandler))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ifla_vf_guid { pub vf : __u32 , pub guid : __u64 , } # [test] fn bindgen_test_layout_ifla_vf_guid () { assert_eq ! (:: core :: mem :: size_of :: < ifla_vf_guid > () , 16usize , concat ! ("Size of: " , stringify ! (ifla_vf_guid))) ; assert_eq ! (:: core :: mem :: align_of :: < ifla_vf_guid > () , 8usize , concat ! ("Alignment of " , stringify ! (ifla_vf_guid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_guid > ())) . vf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_guid) , "::" , stringify ! (vf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_guid > ())) . guid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_guid) , "::" , stringify ! (guid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ifla_vf_stats { pub rx_packets : __u64 , pub tx_packets : __u64 , pub rx_bytes : __u64 , pub tx_bytes : __u64 , pub broadcast : __u64 , pub multicast : __u64 , pub rx_dropped : __u64 , pub tx_dropped : __u64 , } # [test] fn bindgen_test_layout_ifla_vf_stats () { assert_eq ! (:: core :: mem :: size_of :: < ifla_vf_stats > () , 64usize , concat ! ("Size of: " , stringify ! (ifla_vf_stats))) ; assert_eq ! (:: core :: mem :: align_of :: < ifla_vf_stats > () , 8usize , concat ! ("Alignment of " , stringify ! (ifla_vf_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . rx_packets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (rx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . tx_packets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (tx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . rx_bytes as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (rx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . tx_bytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (tx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . broadcast as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (broadcast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . multicast as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (multicast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . rx_dropped as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (rx_dropped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_stats > ())) . tx_dropped as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_stats) , "::" , stringify ! (tx_dropped))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ifla_vf_info { pub vf : __u32 , pub mac : [__u8 ; 32usize] , pub vlan : __u32 , pub qos : __u32 , pub spoofchk : __u32 , pub linkstate : __u32 , pub min_tx_rate : __u32 , pub max_tx_rate : __u32 , pub rss_query_en : __u32 , pub trusted : __u32 , pub vlan_proto : __be16 , } # [test] fn bindgen_test_layout_ifla_vf_info () { assert_eq ! (:: core :: mem :: size_of :: < ifla_vf_info > () , 72usize , concat ! ("Size of: " , stringify ! (ifla_vf_info))) ; assert_eq ! (:: core :: mem :: align_of :: < ifla_vf_info > () , 4usize , concat ! ("Alignment of " , stringify ! (ifla_vf_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . vf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (vf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . mac as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (mac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . vlan as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (vlan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . qos as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (qos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . spoofchk as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (spoofchk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . linkstate as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (linkstate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . min_tx_rate as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (min_tx_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . max_tx_rate as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (max_tx_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . rss_query_en as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (rss_query_en))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . trusted as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (trusted))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifla_vf_info > ())) . vlan_proto as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (ifla_vf_info) , "::" , stringify ! (vlan_proto))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tc_stats { pub bytes : __u64 , pub packets : __u32 , pub drops : __u32 , pub overlimits : __u32 , pub bps : __u32 , pub pps : __u32 , pub qlen : __u32 , pub backlog : __u32 , } # [test] fn bindgen_test_layout_tc_stats () { assert_eq ! (:: core :: mem :: size_of :: < tc_stats > () , 40usize , concat ! ("Size of: " , stringify ! (tc_stats))) ; assert_eq ! (:: core :: mem :: align_of :: < tc_stats > () , 8usize , concat ! ("Alignment of " , stringify ! (tc_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . bytes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . packets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . drops as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (drops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . overlimits as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (overlimits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . bps as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (bps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . pps as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (pps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . qlen as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (qlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_stats > ())) . backlog as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tc_stats) , "::" , stringify ! (backlog))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tc_sizespec { pub cell_log : :: cty :: c_uchar , pub size_log : :: cty :: c_uchar , pub cell_align : :: cty :: c_short , pub overhead : :: cty :: c_int , pub linklayer : :: cty :: c_uint , pub mpu : :: cty :: c_uint , pub mtu : :: cty :: c_uint , pub tsize : :: cty :: c_uint , } # [test] fn bindgen_test_layout_tc_sizespec () { assert_eq ! (:: core :: mem :: size_of :: < tc_sizespec > () , 24usize , concat ! ("Size of: " , stringify ! (tc_sizespec))) ; assert_eq ! (:: core :: mem :: align_of :: < tc_sizespec > () , 4usize , concat ! ("Alignment of " , stringify ! (tc_sizespec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . cell_log as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (cell_log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . size_log as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (size_log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . cell_align as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (cell_align))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . overhead as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (overhead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . linklayer as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (linklayer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . mpu as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (mpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . mtu as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tc_sizespec > ())) . tsize as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tc_sizespec) , "::" , stringify ! (tsize))) ; } pub const netdev_tx___NETDEV_TX_MIN : netdev_tx = 2147483648 ; pub const netdev_tx_NETDEV_TX_OK : netdev_tx = 0 ; pub const netdev_tx_NETDEV_TX_BUSY : netdev_tx = 16 ; pub type netdev_tx = :: cty :: c_uint ; pub use self :: netdev_tx as netdev_tx_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct header_ops { pub create : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut net_device , arg3 : :: cty :: c_ushort , arg4 : * const :: cty :: c_void , arg5 : * const :: cty :: c_void , arg6 : :: cty :: c_uint) -> :: cty :: c_int > , pub parse : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sk_buff , arg2 : * mut :: cty :: c_uchar) -> :: cty :: c_int > , pub cache : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const neighbour , arg2 : * mut hh_cache , arg3 : __be16) -> :: cty :: c_int > , pub cache_update : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut hh_cache , arg2 : * const net_device , arg3 : * const :: cty :: c_uchar) > , pub validate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_char , arg2 : :: cty :: c_uint) -> bool_ > , pub parse_protocol : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sk_buff) -> __be16 > , } # [test] fn bindgen_test_layout_header_ops () { assert_eq ! (:: core :: mem :: size_of :: < header_ops > () , 48usize , concat ! ("Size of: " , stringify ! (header_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < header_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (header_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < header_ops > ())) . create as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (header_ops) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < header_ops > ())) . parse as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (header_ops) , "::" , stringify ! (parse))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < header_ops > ())) . cache as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (header_ops) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < header_ops > ())) . cache_update as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (header_ops) , "::" , stringify ! (cache_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < header_ops > ())) . validate as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (header_ops) , "::" , stringify ! (validate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < header_ops > ())) . parse_protocol as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (header_ops) , "::" , stringify ! (parse_protocol))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct netdev_queue { pub dev : * mut net_device , pub qdisc : * mut Qdisc , pub qdisc_sleeping : * mut Qdisc , pub kobj : kobject , pub numa_node : :: cty :: c_int , pub tx_maxrate : :: cty :: c_ulong , pub trans_timeout : :: cty :: c_ulong , pub sb_dev : * mut net_device , pub pool : * mut xsk_buff_pool , pub _xmit_lock : spinlock_t , pub xmit_lock_owner : :: cty :: c_int , pub trans_start : :: cty :: c_ulong , pub state : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , pub dql : dql , } # [test] fn bindgen_test_layout_netdev_queue () { assert_eq ! (:: core :: mem :: size_of :: < netdev_queue > () , 320usize , concat ! ("Size of: " , stringify ! (netdev_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . qdisc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (qdisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . qdisc_sleeping as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (qdisc_sleeping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . kobj as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . numa_node as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (numa_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . tx_maxrate as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (tx_maxrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . trans_timeout as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (trans_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . sb_dev as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (sb_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . pool as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . _xmit_lock as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (_xmit_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . xmit_lock_owner as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (xmit_lock_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . trans_start as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (trans_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . state as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_queue > ())) . dql as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (netdev_queue) , "::" , stringify ! (dql))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct qdisc_skb_head { pub head : * mut sk_buff , pub tail : * mut sk_buff , pub qlen : __u32 , pub lock : spinlock_t , } # [test] fn bindgen_test_layout_qdisc_skb_head () { assert_eq ! (:: core :: mem :: size_of :: < qdisc_skb_head > () , 24usize , concat ! ("Size of: " , stringify ! (qdisc_skb_head))) ; assert_eq ! (:: core :: mem :: align_of :: < qdisc_skb_head > () , 8usize , concat ! ("Alignment of " , stringify ! (qdisc_skb_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_skb_head > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qdisc_skb_head) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_skb_head > ())) . tail as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (qdisc_skb_head) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_skb_head > ())) . qlen as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (qdisc_skb_head) , "::" , stringify ! (qlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_skb_head > ())) . lock as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (qdisc_skb_head) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct gnet_stats_basic_packed { pub bytes : __u64 , pub packets : __u64 , } # [test] fn bindgen_test_layout_gnet_stats_basic_packed () { assert_eq ! (:: core :: mem :: size_of :: < gnet_stats_basic_packed > () , 16usize , concat ! ("Size of: " , stringify ! (gnet_stats_basic_packed))) ; assert_eq ! (:: core :: mem :: align_of :: < gnet_stats_basic_packed > () , 8usize , concat ! ("Alignment of " , stringify ! (gnet_stats_basic_packed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_basic_packed > ())) . bytes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_basic_packed) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_basic_packed > ())) . packets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_basic_packed) , "::" , stringify ! (packets))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct gnet_stats_queue { pub qlen : __u32 , pub backlog : __u32 , pub drops : __u32 , pub requeues : __u32 , pub overlimits : __u32 , } # [test] fn bindgen_test_layout_gnet_stats_queue () { assert_eq ! (:: core :: mem :: size_of :: < gnet_stats_queue > () , 20usize , concat ! ("Size of: " , stringify ! (gnet_stats_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < gnet_stats_queue > () , 4usize , concat ! ("Alignment of " , stringify ! (gnet_stats_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_queue > ())) . qlen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_queue) , "::" , stringify ! (qlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_queue > ())) . backlog as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_queue) , "::" , stringify ! (backlog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_queue > ())) . drops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_queue) , "::" , stringify ! (drops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_queue > ())) . requeues as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_queue) , "::" , stringify ! (requeues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_queue > ())) . overlimits as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_queue) , "::" , stringify ! (overlimits))) ; } # [repr (C)] pub struct Qdisc { pub enqueue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut Qdisc , arg3 : * mut * mut sk_buff) -> :: cty :: c_int > , pub dequeue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) -> * mut sk_buff > , pub flags : :: cty :: c_uint , pub limit : _cargo_bpf_u32 , pub ops : * const Qdisc_ops , pub stab : * mut qdisc_size_table , pub hash : hlist_node , pub handle : _cargo_bpf_u32 , pub parent : _cargo_bpf_u32 , pub dev_queue : * mut netdev_queue , pub rate_est : * mut net_rate_estimator , pub cpu_bstats : * mut gnet_stats_basic_cpu , pub cpu_qstats : * mut gnet_stats_queue , pub pad : :: cty :: c_int , pub refcnt : refcount_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub gso_skb : sk_buff_head , pub q : qdisc_skb_head , pub bstats : gnet_stats_basic_packed , pub running : seqcount_t , pub qstats : gnet_stats_queue , pub state : :: cty :: c_ulong , pub next_sched : * mut Qdisc , pub skb_bad_txq : sk_buff_head , pub busylock : spinlock_t , pub seqlock : spinlock_t , pub empty : bool_ , pub rcu : callback_head , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub privdata : __IncompleteArrayField < :: cty :: c_long > , } # [test] fn bindgen_test_layout_Qdisc () { assert_eq ! (:: core :: mem :: size_of :: < Qdisc > () , 320usize , concat ! ("Size of: " , stringify ! (Qdisc))) ; assert_eq ! (:: core :: mem :: align_of :: < Qdisc > () , 8usize , concat ! ("Alignment of " , stringify ! (Qdisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . enqueue as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (enqueue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . dequeue as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (dequeue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . limit as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . stab as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (stab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . hash as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . handle as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (handle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . parent as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . dev_queue as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (dev_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . rate_est as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (rate_est))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . cpu_bstats as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (cpu_bstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . cpu_qstats as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (cpu_qstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . pad as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (pad))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . refcnt as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . gso_skb as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (gso_skb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . q as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . bstats as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (bstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . running as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . qstats as * const _ as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (qstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . state as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . next_sched as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (next_sched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . skb_bad_txq as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (skb_bad_txq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . busylock as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (busylock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . seqlock as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (seqlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . empty as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (empty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . rcu as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc > ())) . privdata as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (Qdisc) , "::" , stringify ! (privdata))) ; } impl Qdisc { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug)] pub struct rps_map { pub len : :: cty :: c_uint , pub rcu : callback_head , pub cpus : __IncompleteArrayField < _cargo_bpf_u16 > , } # [test] fn bindgen_test_layout_rps_map () { assert_eq ! (:: core :: mem :: size_of :: < rps_map > () , 24usize , concat ! ("Size of: " , stringify ! (rps_map))) ; assert_eq ! (:: core :: mem :: align_of :: < rps_map > () , 8usize , concat ! ("Alignment of " , stringify ! (rps_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_map > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rps_map) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_map > ())) . rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rps_map) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_map > ())) . cpus as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rps_map) , "::" , stringify ! (cpus))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rps_dev_flow { pub cpu : _cargo_bpf_u16 , pub filter : _cargo_bpf_u16 , pub last_qtail : :: cty :: c_uint , } # [test] fn bindgen_test_layout_rps_dev_flow () { assert_eq ! (:: core :: mem :: size_of :: < rps_dev_flow > () , 8usize , concat ! ("Size of: " , stringify ! (rps_dev_flow))) ; assert_eq ! (:: core :: mem :: align_of :: < rps_dev_flow > () , 4usize , concat ! ("Alignment of " , stringify ! (rps_dev_flow))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_dev_flow > ())) . cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rps_dev_flow) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_dev_flow > ())) . filter as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rps_dev_flow) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_dev_flow > ())) . last_qtail as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rps_dev_flow) , "::" , stringify ! (last_qtail))) ; } # [repr (C)] # [derive (Debug)] pub struct rps_dev_flow_table { pub mask : :: cty :: c_uint , pub rcu : callback_head , pub flows : __IncompleteArrayField < rps_dev_flow > , } # [test] fn bindgen_test_layout_rps_dev_flow_table () { assert_eq ! (:: core :: mem :: size_of :: < rps_dev_flow_table > () , 24usize , concat ! ("Size of: " , stringify ! (rps_dev_flow_table))) ; assert_eq ! (:: core :: mem :: align_of :: < rps_dev_flow_table > () , 8usize , concat ! ("Alignment of " , stringify ! (rps_dev_flow_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_dev_flow_table > ())) . mask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rps_dev_flow_table) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_dev_flow_table > ())) . rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rps_dev_flow_table) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rps_dev_flow_table > ())) . flows as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rps_dev_flow_table) , "::" , stringify ! (flows))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_rx_queue { pub rps_map : * mut rps_map , pub rps_flow_table : * mut rps_dev_flow_table , pub kobj : kobject , pub dev : * mut net_device , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , pub xdp_rxq : xdp_rxq_info , pub pool : * mut xsk_buff_pool , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 56usize] > , } # [test] fn bindgen_test_layout_netdev_rx_queue () { assert_eq ! (:: core :: mem :: size_of :: < netdev_rx_queue > () , 256usize , concat ! ("Size of: " , stringify ! (netdev_rx_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_rx_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_rx_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_rx_queue > ())) . rps_map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_rx_queue) , "::" , stringify ! (rps_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_rx_queue > ())) . rps_flow_table as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netdev_rx_queue) , "::" , stringify ! (rps_flow_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_rx_queue > ())) . kobj as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netdev_rx_queue) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_rx_queue > ())) . dev as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (netdev_rx_queue) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_rx_queue > ())) . xdp_rxq as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netdev_rx_queue) , "::" , stringify ! (xdp_rxq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_rx_queue > ())) . pool as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (netdev_rx_queue) , "::" , stringify ! (pool))) ; } # [repr (C)] # [derive (Debug)] pub struct xps_map { pub len : :: cty :: c_uint , pub alloc_len : :: cty :: c_uint , pub rcu : callback_head , pub queues : __IncompleteArrayField < _cargo_bpf_u16 > , } # [test] fn bindgen_test_layout_xps_map () { assert_eq ! (:: core :: mem :: size_of :: < xps_map > () , 24usize , concat ! ("Size of: " , stringify ! (xps_map))) ; assert_eq ! (:: core :: mem :: align_of :: < xps_map > () , 8usize , concat ! ("Alignment of " , stringify ! (xps_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_map > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xps_map) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_map > ())) . alloc_len as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (xps_map) , "::" , stringify ! (alloc_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_map > ())) . rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xps_map) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_map > ())) . queues as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xps_map) , "::" , stringify ! (queues))) ; } # [repr (C)] # [derive (Debug)] pub struct xps_dev_maps { pub rcu : callback_head , pub nr_ids : :: cty :: c_uint , pub num_tc : s16 , pub attr_map : __IncompleteArrayField < * mut xps_map > , } # [test] fn bindgen_test_layout_xps_dev_maps () { assert_eq ! (:: core :: mem :: size_of :: < xps_dev_maps > () , 24usize , concat ! ("Size of: " , stringify ! (xps_dev_maps))) ; assert_eq ! (:: core :: mem :: align_of :: < xps_dev_maps > () , 8usize , concat ! ("Alignment of " , stringify ! (xps_dev_maps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_dev_maps > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xps_dev_maps) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_dev_maps > ())) . nr_ids as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xps_dev_maps) , "::" , stringify ! (nr_ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_dev_maps > ())) . num_tc as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (xps_dev_maps) , "::" , stringify ! (num_tc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xps_dev_maps > ())) . attr_map as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xps_dev_maps) , "::" , stringify ! (attr_map))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_fcoe_hbainfo { pub manufacturer : [:: cty :: c_char ; 64usize] , pub serial_number : [:: cty :: c_char ; 64usize] , pub hardware_version : [:: cty :: c_char ; 64usize] , pub driver_version : [:: cty :: c_char ; 64usize] , pub optionrom_version : [:: cty :: c_char ; 64usize] , pub firmware_version : [:: cty :: c_char ; 64usize] , pub model : [:: cty :: c_char ; 256usize] , pub model_description : [:: cty :: c_char ; 256usize] , } # [test] fn bindgen_test_layout_netdev_fcoe_hbainfo () { assert_eq ! (:: core :: mem :: size_of :: < netdev_fcoe_hbainfo > () , 896usize , concat ! ("Size of: " , stringify ! (netdev_fcoe_hbainfo))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_fcoe_hbainfo > () , 1usize , concat ! ("Alignment of " , stringify ! (netdev_fcoe_hbainfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . manufacturer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (manufacturer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . serial_number as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (serial_number))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . hardware_version as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (hardware_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . driver_version as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (driver_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . optionrom_version as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (optionrom_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . firmware_version as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (firmware_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . model as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (model))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_fcoe_hbainfo > ())) . model_description as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (netdev_fcoe_hbainfo) , "::" , stringify ! (model_description))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_phys_item_id { pub id : [:: cty :: c_uchar ; 32usize] , pub id_len : :: cty :: c_uchar , } # [test] fn bindgen_test_layout_netdev_phys_item_id () { assert_eq ! (:: core :: mem :: size_of :: < netdev_phys_item_id > () , 33usize , concat ! ("Size of: " , stringify ! (netdev_phys_item_id))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_phys_item_id > () , 1usize , concat ! ("Alignment of " , stringify ! (netdev_phys_item_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_phys_item_id > ())) . id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_phys_item_id) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_phys_item_id > ())) . id_len as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netdev_phys_item_id) , "::" , stringify ! (id_len))) ; } pub const net_device_path_type_DEV_PATH_ETHERNET : net_device_path_type = 0 ; pub const net_device_path_type_DEV_PATH_VLAN : net_device_path_type = 1 ; pub const net_device_path_type_DEV_PATH_BRIDGE : net_device_path_type = 2 ; pub const net_device_path_type_DEV_PATH_PPPOE : net_device_path_type = 3 ; pub const net_device_path_type_DEV_PATH_DSA : net_device_path_type = 4 ; pub type net_device_path_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct net_device_path { pub type_ : net_device_path_type , pub dev : * const net_device , pub __bindgen_anon_1 : net_device_path__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union net_device_path__bindgen_ty_1 { pub encap : net_device_path__bindgen_ty_1__bindgen_ty_1 , pub bridge : net_device_path__bindgen_ty_1__bindgen_ty_2 , pub dsa : net_device_path__bindgen_ty_1__bindgen_ty_3 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_path__bindgen_ty_1__bindgen_ty_1 { pub id : _cargo_bpf_u16 , pub proto : __be16 , pub h_dest : [_cargo_bpf_u8 ; 6usize] , } # [test] fn bindgen_test_layout_net_device_path__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path__bindgen_ty_1__bindgen_ty_1 > () , 10usize , concat ! ("Size of: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path__bindgen_ty_1__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_1 > ())) . id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_1 > ())) . proto as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_1 > ())) . h_dest as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (h_dest))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_path__bindgen_ty_1__bindgen_ty_2 { pub vlan_mode : net_device_path__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 , pub vlan_id : _cargo_bpf_u16 , pub vlan_proto : __be16 , } pub const net_device_path__bindgen_ty_1__bindgen_ty_2_DEV_PATH_BR_VLAN_KEEP : :: cty :: c_uint = 0 ; pub const net_device_path__bindgen_ty_1__bindgen_ty_2_DEV_PATH_BR_VLAN_TAG : :: cty :: c_uint = 1 ; pub const net_device_path__bindgen_ty_1__bindgen_ty_2_DEV_PATH_BR_VLAN_UNTAG : :: cty :: c_uint = 2 ; pub const net_device_path__bindgen_ty_1__bindgen_ty_2_DEV_PATH_BR_VLAN_UNTAG_HW : :: cty :: c_uint = 3 ; pub type net_device_path__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 = :: cty :: c_uint ; # [test] fn bindgen_test_layout_net_device_path__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_2 > ())) . vlan_mode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (vlan_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_2 > ())) . vlan_id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (vlan_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_2 > ())) . vlan_proto as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (vlan_proto))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_path__bindgen_ty_1__bindgen_ty_3 { pub port : :: cty :: c_int , pub proto : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_net_device_path__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Size of: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path__bindgen_ty_1__bindgen_ty_3 > () , 4usize , concat ! ("Alignment of " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_3 > ())) . port as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1__bindgen_ty_3 > ())) . proto as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (proto))) ; } # [test] fn bindgen_test_layout_net_device_path__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path__bindgen_ty_1 > () , 12usize , concat ! ("Size of: " , stringify ! (net_device_path__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (net_device_path__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1 > ())) . encap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1) , "::" , stringify ! (encap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1 > ())) . bridge as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1) , "::" , stringify ! (bridge))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path__bindgen_ty_1 > ())) . dsa as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path__bindgen_ty_1) , "::" , stringify ! (dsa))) ; } # [test] fn bindgen_test_layout_net_device_path () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path > () , 32usize , concat ! ("Size of: " , stringify ! (net_device_path))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device_path))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path > ())) . dev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (net_device_path) , "::" , stringify ! (dev))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_path_ctx { pub dev : * const net_device , pub daddr : * const _cargo_bpf_u8 , pub num_vlans : :: cty :: c_int , pub vlan : [net_device_path_ctx__bindgen_ty_1 ; 2usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_path_ctx__bindgen_ty_1 { pub id : _cargo_bpf_u16 , pub proto : __be16 , } # [test] fn bindgen_test_layout_net_device_path_ctx__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path_ctx__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (net_device_path_ctx__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path_ctx__bindgen_ty_1 > () , 2usize , concat ! ("Alignment of " , stringify ! (net_device_path_ctx__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path_ctx__bindgen_ty_1 > ())) . id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path_ctx__bindgen_ty_1) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path_ctx__bindgen_ty_1 > ())) . proto as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (net_device_path_ctx__bindgen_ty_1) , "::" , stringify ! (proto))) ; } # [test] fn bindgen_test_layout_net_device_path_ctx () { assert_eq ! (:: core :: mem :: size_of :: < net_device_path_ctx > () , 32usize , concat ! ("Size of: " , stringify ! (net_device_path_ctx))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_path_ctx > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device_path_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path_ctx > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_path_ctx) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path_ctx > ())) . daddr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (net_device_path_ctx) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path_ctx > ())) . num_vlans as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (net_device_path_ctx) , "::" , stringify ! (num_vlans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_path_ctx > ())) . vlan as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (net_device_path_ctx) , "::" , stringify ! (vlan))) ; } pub const tc_setup_type_TC_SETUP_QDISC_MQPRIO : tc_setup_type = 0 ; pub const tc_setup_type_TC_SETUP_CLSU32 : tc_setup_type = 1 ; pub const tc_setup_type_TC_SETUP_CLSFLOWER : tc_setup_type = 2 ; pub const tc_setup_type_TC_SETUP_CLSMATCHALL : tc_setup_type = 3 ; pub const tc_setup_type_TC_SETUP_CLSBPF : tc_setup_type = 4 ; pub const tc_setup_type_TC_SETUP_BLOCK : tc_setup_type = 5 ; pub const tc_setup_type_TC_SETUP_QDISC_CBS : tc_setup_type = 6 ; pub const tc_setup_type_TC_SETUP_QDISC_RED : tc_setup_type = 7 ; pub const tc_setup_type_TC_SETUP_QDISC_PRIO : tc_setup_type = 8 ; pub const tc_setup_type_TC_SETUP_QDISC_MQ : tc_setup_type = 9 ; pub const tc_setup_type_TC_SETUP_QDISC_ETF : tc_setup_type = 10 ; pub const tc_setup_type_TC_SETUP_ROOT_QDISC : tc_setup_type = 11 ; pub const tc_setup_type_TC_SETUP_QDISC_GRED : tc_setup_type = 12 ; pub const tc_setup_type_TC_SETUP_QDISC_TAPRIO : tc_setup_type = 13 ; pub const tc_setup_type_TC_SETUP_FT : tc_setup_type = 14 ; pub const tc_setup_type_TC_SETUP_QDISC_ETS : tc_setup_type = 15 ; pub const tc_setup_type_TC_SETUP_QDISC_TBF : tc_setup_type = 16 ; pub const tc_setup_type_TC_SETUP_QDISC_FIFO : tc_setup_type = 17 ; pub const tc_setup_type_TC_SETUP_QDISC_HTB : tc_setup_type = 18 ; pub type tc_setup_type = :: cty :: c_uint ; pub const bpf_netdev_command_XDP_SETUP_PROG : bpf_netdev_command = 0 ; pub const bpf_netdev_command_XDP_SETUP_PROG_HW : bpf_netdev_command = 1 ; pub const bpf_netdev_command_BPF_OFFLOAD_MAP_ALLOC : bpf_netdev_command = 2 ; pub const bpf_netdev_command_BPF_OFFLOAD_MAP_FREE : bpf_netdev_command = 3 ; pub const bpf_netdev_command_XDP_SETUP_XSK_POOL : bpf_netdev_command = 4 ; pub type bpf_netdev_command = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct netdev_bpf { pub command : bpf_netdev_command , pub __bindgen_anon_1 : netdev_bpf__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union netdev_bpf__bindgen_ty_1 { pub __bindgen_anon_1 : netdev_bpf__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : netdev_bpf__bindgen_ty_1__bindgen_ty_2 , pub xsk : netdev_bpf__bindgen_ty_1__bindgen_ty_3 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_bpf__bindgen_ty_1__bindgen_ty_1 { pub flags : _cargo_bpf_u32 , pub prog : * mut bpf_prog , pub extack : * mut netlink_ext_ack , } # [test] fn bindgen_test_layout_netdev_bpf__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < netdev_bpf__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_bpf__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1__bindgen_ty_1 > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1__bindgen_ty_1 > ())) . prog as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1__bindgen_ty_1 > ())) . extack as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (extack))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_bpf__bindgen_ty_1__bindgen_ty_2 { pub offmap : * mut bpf_offloaded_map , } # [test] fn bindgen_test_layout_netdev_bpf__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < netdev_bpf__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_bpf__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1__bindgen_ty_2 > ())) . offmap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (offmap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_bpf__bindgen_ty_1__bindgen_ty_3 { pub pool : * mut xsk_buff_pool , pub queue_id : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_netdev_bpf__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < netdev_bpf__bindgen_ty_1__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_bpf__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1__bindgen_ty_3 > ())) . pool as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1__bindgen_ty_3 > ())) . queue_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (queue_id))) ; } # [test] fn bindgen_test_layout_netdev_bpf__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < netdev_bpf__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (netdev_bpf__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_bpf__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_bpf__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf__bindgen_ty_1 > ())) . xsk as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf__bindgen_ty_1) , "::" , stringify ! (xsk))) ; } # [test] fn bindgen_test_layout_netdev_bpf () { assert_eq ! (:: core :: mem :: size_of :: < netdev_bpf > () , 32usize , concat ! ("Size of: " , stringify ! (netdev_bpf))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_bpf > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_bpf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_bpf > ())) . command as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_bpf) , "::" , stringify ! (command))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct xfrmdev_ops { pub xdo_dev_state_add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut xfrm_state) -> :: cty :: c_int > , pub xdo_dev_state_delete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut xfrm_state) > , pub xdo_dev_state_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut xfrm_state) > , pub xdo_dev_offload_ok : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut xfrm_state) -> bool_ > , pub xdo_dev_state_advance_esn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut xfrm_state) > , } # [test] fn bindgen_test_layout_xfrmdev_ops () { assert_eq ! (:: core :: mem :: size_of :: < xfrmdev_ops > () , 40usize , concat ! ("Size of: " , stringify ! (xfrmdev_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < xfrmdev_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (xfrmdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrmdev_ops > ())) . xdo_dev_state_add as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (xfrmdev_ops) , "::" , stringify ! (xdo_dev_state_add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrmdev_ops > ())) . xdo_dev_state_delete as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (xfrmdev_ops) , "::" , stringify ! (xdo_dev_state_delete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrmdev_ops > ())) . xdo_dev_state_free as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (xfrmdev_ops) , "::" , stringify ! (xdo_dev_state_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrmdev_ops > ())) . xdo_dev_offload_ok as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (xfrmdev_ops) , "::" , stringify ! (xdo_dev_offload_ok))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < xfrmdev_ops > ())) . xdo_dev_state_advance_esn as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (xfrmdev_ops) , "::" , stringify ! (xdo_dev_state_advance_esn))) ; } # [repr (C)] # [derive (Debug)] pub struct dev_ifalias { pub rcuhead : callback_head , pub ifalias : __IncompleteArrayField < :: cty :: c_char > , } # [test] fn bindgen_test_layout_dev_ifalias () { assert_eq ! (:: core :: mem :: size_of :: < dev_ifalias > () , 16usize , concat ! ("Size of: " , stringify ! (dev_ifalias))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_ifalias > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_ifalias))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_ifalias > ())) . rcuhead as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_ifalias) , "::" , stringify ! (rcuhead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_ifalias > ())) . ifalias as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dev_ifalias) , "::" , stringify ! (ifalias))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netdev_name_node { pub hlist : hlist_node , pub list : list_head , pub dev : * mut net_device , pub name : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_netdev_name_node () { assert_eq ! (:: core :: mem :: size_of :: < netdev_name_node > () , 48usize , concat ! ("Size of: " , stringify ! (netdev_name_node))) ; assert_eq ! (:: core :: mem :: align_of :: < netdev_name_node > () , 8usize , concat ! ("Alignment of " , stringify ! (netdev_name_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_name_node > ())) . hlist as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netdev_name_node) , "::" , stringify ! (hlist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_name_node > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (netdev_name_node) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_name_node > ())) . dev as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (netdev_name_node) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netdev_name_node > ())) . name as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (netdev_name_node) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_device_ops { pub ndo_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub ndo_uninit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub ndo_open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub ndo_stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub ndo_start_xmit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut net_device) -> netdev_tx_t > , pub ndo_features_check : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut net_device , arg3 : netdev_features_t) -> netdev_features_t > , pub ndo_select_queue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sk_buff , arg3 : * mut net_device) -> _cargo_bpf_u16 > , pub ndo_change_rx_flags : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int) > , pub ndo_set_rx_mode : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub ndo_set_mac_address : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub ndo_validate_addr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub ndo_do_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ifreq , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_set_config : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ifmap) -> :: cty :: c_int > , pub ndo_change_mtu : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_neigh_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut neigh_parms) -> :: cty :: c_int > , pub ndo_tx_timeout : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_uint) > , pub ndo_get_stats64 : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut rtnl_link_stats64) > , pub ndo_has_offload_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : :: cty :: c_int) -> bool_ > , pub ndo_get_offload_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int , arg2 : * const net_device , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub ndo_get_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> * mut net_device_stats > , pub ndo_vlan_rx_add_vid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : __be16 , arg3 : _cargo_bpf_u16) -> :: cty :: c_int > , pub ndo_vlan_rx_kill_vid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : __be16 , arg3 : _cargo_bpf_u16) -> :: cty :: c_int > , pub ndo_poll_controller : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub ndo_netpoll_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut netpoll_info) -> :: cty :: c_int > , pub ndo_netpoll_cleanup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub ndo_set_vf_mac : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub ndo_set_vf_vlan : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u16 , arg4 : _cargo_bpf_u8 , arg5 : __be16) -> :: cty :: c_int > , pub ndo_set_vf_rate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_set_vf_spoofchk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : bool_) -> :: cty :: c_int > , pub ndo_set_vf_trust : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : bool_) -> :: cty :: c_int > , pub ndo_get_vf_config : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut ifla_vf_info) -> :: cty :: c_int > , pub ndo_set_vf_link_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_get_vf_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut ifla_vf_stats) -> :: cty :: c_int > , pub ndo_set_vf_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut * mut nlattr) -> :: cty :: c_int > , pub ndo_get_vf_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut sk_buff) -> :: cty :: c_int > , pub ndo_get_vf_guid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut ifla_vf_guid , arg4 : * mut ifla_vf_guid) -> :: cty :: c_int > , pub ndo_set_vf_guid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u64 , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_set_vf_rss_query_en : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : bool_) -> :: cty :: c_int > , pub ndo_setup_tc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : tc_setup_type , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub ndo_fcoe_enable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub ndo_fcoe_disable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub ndo_fcoe_ddp_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u16 , arg3 : * mut scatterlist , arg4 : :: cty :: c_uint) -> :: cty :: c_int > , pub ndo_fcoe_ddp_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u16) -> :: cty :: c_int > , pub ndo_fcoe_ddp_target : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u16 , arg3 : * mut scatterlist , arg4 : :: cty :: c_uint) -> :: cty :: c_int > , pub ndo_fcoe_get_hbainfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut netdev_fcoe_hbainfo) -> :: cty :: c_int > , pub ndo_fcoe_get_wwn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut _cargo_bpf_u64 , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_rx_flow_steer : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const sk_buff , arg3 : _cargo_bpf_u16 , arg4 : _cargo_bpf_u32) -> :: cty :: c_int > , pub ndo_add_slave : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut net_device , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub ndo_del_slave : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut net_device) -> :: cty :: c_int > , pub ndo_get_xmit_slave : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sk_buff , arg3 : bool_) -> * mut net_device > , pub ndo_sk_get_lower_dev : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sock) -> * mut net_device > , pub ndo_fix_features : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : netdev_features_t) -> netdev_features_t > , pub ndo_set_features : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : netdev_features_t) -> :: cty :: c_int > , pub ndo_neigh_construct : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut neighbour) -> :: cty :: c_int > , pub ndo_neigh_destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut neighbour) > , pub ndo_fdb_add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ndmsg , arg2 : * mut * mut nlattr , arg3 : * mut net_device , arg4 : * const :: cty :: c_uchar , arg5 : _cargo_bpf_u16 , arg6 : _cargo_bpf_u16 , arg7 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub ndo_fdb_del : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut ndmsg , arg2 : * mut * mut nlattr , arg3 : * mut net_device , arg4 : * const :: cty :: c_uchar , arg5 : _cargo_bpf_u16) -> :: cty :: c_int > , pub ndo_fdb_dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut netlink_callback , arg3 : * mut net_device , arg4 : * mut net_device , arg5 : * mut :: cty :: c_int) -> :: cty :: c_int > , pub ndo_fdb_get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut * mut nlattr , arg3 : * mut net_device , arg4 : * const :: cty :: c_uchar , arg5 : _cargo_bpf_u16 , arg6 : _cargo_bpf_u32 , arg7 : _cargo_bpf_u32 , arg8 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub ndo_bridge_setlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut nlmsghdr , arg3 : _cargo_bpf_u16 , arg4 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub ndo_bridge_getlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32 , arg4 : * mut net_device , arg5 : _cargo_bpf_u32 , arg6 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_bridge_dellink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut nlmsghdr , arg3 : _cargo_bpf_u16) -> :: cty :: c_int > , pub ndo_change_carrier : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : bool_) -> :: cty :: c_int > , pub ndo_get_phys_port_id : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut netdev_phys_item_id) -> :: cty :: c_int > , pub ndo_get_port_parent_id : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut netdev_phys_item_id) -> :: cty :: c_int > , pub ndo_get_phys_port_name : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut :: cty :: c_char , arg3 : size_t) -> :: cty :: c_int > , pub ndo_dfwd_add_station : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut net_device) -> * mut :: cty :: c_void > , pub ndo_dfwd_del_station : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut :: cty :: c_void) > , pub ndo_set_tx_maxrate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : _cargo_bpf_u32) -> :: cty :: c_int > , pub ndo_get_iflink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device) -> :: cty :: c_int > , pub ndo_change_proto_down : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : bool_) -> :: cty :: c_int > , pub ndo_fill_metadata_dst : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sk_buff) -> :: cty :: c_int > , pub ndo_set_rx_headroom : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int) > , pub ndo_bpf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut netdev_bpf) -> :: cty :: c_int > , pub ndo_xdp_xmit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int , arg3 : * mut * mut xdp_frame , arg4 : _cargo_bpf_u32) -> :: cty :: c_int > , pub ndo_xsk_wakeup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32) -> :: cty :: c_int > , pub ndo_get_devlink_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> * mut devlink_port > , pub ndo_tunnel_ctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ip_tunnel_parm , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub ndo_get_peer_dev : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> * mut net_device > , pub ndo_fill_forward_path : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device_path_ctx , arg2 : * mut net_device_path) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_net_device_ops () { assert_eq ! (:: core :: mem :: size_of :: < net_device_ops > () , 640usize , concat ! ("Size of: " , stringify ! (net_device_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < net_device_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (net_device_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_init as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_uninit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_uninit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_open as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_stop as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_start_xmit as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_start_xmit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_features_check as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_features_check))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_select_queue as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_select_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_change_rx_flags as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_change_rx_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_rx_mode as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_rx_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_mac_address as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_mac_address))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_validate_addr as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_validate_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_do_ioctl as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_do_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_config as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_config))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_change_mtu as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_change_mtu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_neigh_setup as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_neigh_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_tx_timeout as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_tx_timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_stats64 as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_stats64))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_has_offload_stats as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_has_offload_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_offload_stats as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_offload_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_stats as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_vlan_rx_add_vid as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_vlan_rx_add_vid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_vlan_rx_kill_vid as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_vlan_rx_kill_vid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_poll_controller as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_poll_controller))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_netpoll_setup as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_netpoll_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_netpoll_cleanup as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_netpoll_cleanup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_mac as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_mac))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_vlan as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_vlan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_rate as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_rate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_spoofchk as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_spoofchk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_trust as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_trust))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_vf_config as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_vf_config))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_link_state as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_link_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_vf_stats as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_vf_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_port as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_vf_port as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_vf_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_vf_guid as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_vf_guid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_guid as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_guid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_vf_rss_query_en as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_vf_rss_query_en))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_setup_tc as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_setup_tc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_enable as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_disable as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_ddp_setup as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_ddp_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_ddp_done as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_ddp_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_ddp_target as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_ddp_target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_get_hbainfo as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_get_hbainfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fcoe_get_wwn as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fcoe_get_wwn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_rx_flow_steer as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_rx_flow_steer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_add_slave as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_add_slave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_del_slave as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_del_slave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_xmit_slave as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_xmit_slave))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_sk_get_lower_dev as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_sk_get_lower_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fix_features as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fix_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_features as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_features))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_neigh_construct as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_neigh_construct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_neigh_destroy as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_neigh_destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fdb_add as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fdb_add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fdb_del as * const _ as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fdb_del))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fdb_dump as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fdb_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fdb_get as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fdb_get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_bridge_setlink as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_bridge_setlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_bridge_getlink as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_bridge_getlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_bridge_dellink as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_bridge_dellink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_change_carrier as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_change_carrier))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_phys_port_id as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_phys_port_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_port_parent_id as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_port_parent_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_phys_port_name as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_phys_port_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_dfwd_add_station as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_dfwd_add_station))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_dfwd_del_station as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_dfwd_del_station))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_tx_maxrate as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_tx_maxrate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_iflink as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_iflink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_change_proto_down as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_change_proto_down))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fill_metadata_dst as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fill_metadata_dst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_set_rx_headroom as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_set_rx_headroom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_bpf as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_bpf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_xdp_xmit as * const _ as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_xdp_xmit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_xsk_wakeup as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_xsk_wakeup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_devlink_port as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_devlink_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_tunnel_ctl as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_tunnel_ctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_get_peer_dev as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_get_peer_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_device_ops > ())) . ndo_fill_forward_path as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (net_device_ops) , "::" , stringify ! (ndo_fill_forward_path))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct neigh_parms { pub net : possible_net_t , pub dev : * mut net_device , pub list : list_head , pub neigh_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour) -> :: cty :: c_int > , pub tbl : * mut neigh_table , pub sysctl_table : * mut :: cty :: c_void , pub dead : :: cty :: c_int , pub refcnt : refcount_t , pub callback_head : callback_head , pub reachable_time : :: cty :: c_int , pub data : [:: cty :: c_int ; 13usize] , pub data_state : [:: cty :: c_ulong ; 1usize] , } # [test] fn bindgen_test_layout_neigh_parms () { assert_eq ! (:: core :: mem :: size_of :: < neigh_parms > () , 144usize , concat ! ("Size of: " , stringify ! (neigh_parms))) ; assert_eq ! (:: core :: mem :: align_of :: < neigh_parms > () , 8usize , concat ! ("Alignment of " , stringify ! (neigh_parms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . net as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . dev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . neigh_setup as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (neigh_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . tbl as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . sysctl_table as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (sysctl_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . dead as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . refcnt as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . callback_head as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (callback_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . reachable_time as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (reachable_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . data as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_parms > ())) . data_state as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (neigh_parms) , "::" , stringify ! (data_state))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pcpu_lstats { pub packets : u64_stats_t , pub bytes : u64_stats_t , pub syncp : u64_stats_sync , } # [test] fn bindgen_test_layout_pcpu_lstats () { assert_eq ! (:: core :: mem :: size_of :: < pcpu_lstats > () , 16usize , concat ! ("Size of: " , stringify ! (pcpu_lstats))) ; assert_eq ! (:: core :: mem :: align_of :: < pcpu_lstats > () , 8usize , concat ! ("Alignment of " , stringify ! (pcpu_lstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_lstats > ())) . packets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pcpu_lstats) , "::" , stringify ! (packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_lstats > ())) . bytes as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pcpu_lstats) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_lstats > ())) . syncp as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pcpu_lstats) , "::" , stringify ! (syncp))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pcpu_sw_netstats { pub rx_packets : _cargo_bpf_u64 , pub rx_bytes : _cargo_bpf_u64 , pub tx_packets : _cargo_bpf_u64 , pub tx_bytes : _cargo_bpf_u64 , pub syncp : u64_stats_sync , } # [test] fn bindgen_test_layout_pcpu_sw_netstats () { assert_eq ! (:: core :: mem :: size_of :: < pcpu_sw_netstats > () , 32usize , concat ! ("Size of: " , stringify ! (pcpu_sw_netstats))) ; assert_eq ! (:: core :: mem :: align_of :: < pcpu_sw_netstats > () , 8usize , concat ! ("Alignment of " , stringify ! (pcpu_sw_netstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_sw_netstats > ())) . rx_packets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pcpu_sw_netstats) , "::" , stringify ! (rx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_sw_netstats > ())) . rx_bytes as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pcpu_sw_netstats) , "::" , stringify ! (rx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_sw_netstats > ())) . tx_packets as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pcpu_sw_netstats) , "::" , stringify ! (tx_packets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_sw_netstats > ())) . tx_bytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pcpu_sw_netstats) , "::" , stringify ! (tx_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pcpu_sw_netstats > ())) . syncp as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pcpu_sw_netstats) , "::" , stringify ! (syncp))) ; } pub type iw_handler = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut iw_request_info , arg3 : * mut iwreq_data , arg4 : * mut :: cty :: c_char) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iw_handler_def { pub standard : * const iw_handler , pub num_standard : __u16 , pub num_private : __u16 , pub num_private_args : __u16 , pub private : * const iw_handler , pub private_args : * const iw_priv_args , pub get_wireless_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> * mut iw_statistics > , } # [test] fn bindgen_test_layout_iw_handler_def () { assert_eq ! (:: core :: mem :: size_of :: < iw_handler_def > () , 40usize , concat ! ("Size of: " , stringify ! (iw_handler_def))) ; assert_eq ! (:: core :: mem :: align_of :: < iw_handler_def > () , 8usize , concat ! ("Alignment of " , stringify ! (iw_handler_def))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . standard as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (standard))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . num_standard as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (num_standard))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . num_private as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (num_private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . num_private_args as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (num_private_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . private as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . private_args as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (private_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iw_handler_def > ())) . get_wireless_stats as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iw_handler_def) , "::" , stringify ! (get_wireless_stats))) ; } pub const ethtool_phys_id_state_ETHTOOL_ID_INACTIVE : ethtool_phys_id_state = 0 ; pub const ethtool_phys_id_state_ETHTOOL_ID_ACTIVE : ethtool_phys_id_state = 1 ; pub const ethtool_phys_id_state_ETHTOOL_ID_ON : ethtool_phys_id_state = 2 ; pub const ethtool_phys_id_state_ETHTOOL_ID_OFF : ethtool_phys_id_state = 3 ; pub type ethtool_phys_id_state = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ethtool_ops { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub supported_coalesce_params : _cargo_bpf_u32 , pub get_drvinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_drvinfo) > , pub get_regs_len : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub get_regs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_regs , arg3 : * mut :: cty :: c_void) > , pub get_wol : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_wolinfo) > , pub set_wol : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_wolinfo) -> :: cty :: c_int > , pub get_msglevel : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u32 > , pub set_msglevel : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u32) > , pub nway_reset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub get_link : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u32 > , pub get_link_ext_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_link_ext_state_info) -> :: cty :: c_int > , pub get_eeprom_len : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub get_eeprom : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eeprom , arg3 : * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub set_eeprom : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eeprom , arg3 : * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub get_coalesce : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_coalesce) -> :: cty :: c_int > , pub set_coalesce : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_coalesce) -> :: cty :: c_int > , pub get_ringparam : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_ringparam) > , pub set_ringparam : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_ringparam) -> :: cty :: c_int > , pub get_pause_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_pause_stats) > , pub get_pauseparam : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_pauseparam) > , pub set_pauseparam : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_pauseparam) -> :: cty :: c_int > , pub self_test : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_test , arg3 : * mut _cargo_bpf_u64) > , pub get_strings : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u32 , arg3 : * mut _cargo_bpf_u8) > , pub set_phys_id : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : ethtool_phys_id_state) -> :: cty :: c_int > , pub get_ethtool_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_stats , arg3 : * mut _cargo_bpf_u64) > , pub begin : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> :: cty :: c_int > , pub complete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub get_priv_flags : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u32 > , pub set_priv_flags : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u32) -> :: cty :: c_int > , pub get_sset_count : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub get_rxnfc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_rxnfc , arg3 : * mut _cargo_bpf_u32) -> :: cty :: c_int > , pub set_rxnfc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_rxnfc) -> :: cty :: c_int > , pub flash_device : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_flash) -> :: cty :: c_int > , pub reset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut _cargo_bpf_u32) -> :: cty :: c_int > , pub get_rxfh_key_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u32 > , pub get_rxfh_indir_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) -> _cargo_bpf_u32 > , pub get_rxfh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut _cargo_bpf_u32 , arg3 : * mut _cargo_bpf_u8 , arg4 : * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub set_rxfh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const _cargo_bpf_u32 , arg3 : * const _cargo_bpf_u8 , arg4 : _cargo_bpf_u8) -> :: cty :: c_int > , pub get_rxfh_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut _cargo_bpf_u32 , arg3 : * mut _cargo_bpf_u8 , arg4 : * mut _cargo_bpf_u8 , arg5 : _cargo_bpf_u32) -> :: cty :: c_int > , pub set_rxfh_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const _cargo_bpf_u32 , arg3 : * const _cargo_bpf_u8 , arg4 : _cargo_bpf_u8 , arg5 : * mut _cargo_bpf_u32 , arg6 : bool_) -> :: cty :: c_int > , pub get_channels : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_channels) > , pub set_channels : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_channels) -> :: cty :: c_int > , pub get_dump_flag : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_dump) -> :: cty :: c_int > , pub get_dump_data : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_dump , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub set_dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_dump) -> :: cty :: c_int > , pub get_ts_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_ts_info) -> :: cty :: c_int > , pub get_module_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_modinfo) -> :: cty :: c_int > , pub get_module_eeprom : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eeprom , arg3 : * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub get_eee : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eee) -> :: cty :: c_int > , pub set_eee : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eee) -> :: cty :: c_int > , pub get_tunable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const ethtool_tunable , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub set_tunable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const ethtool_tunable , arg3 : * const :: cty :: c_void) -> :: cty :: c_int > , pub get_per_queue_coalesce : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u32 , arg3 : * mut ethtool_coalesce) -> :: cty :: c_int > , pub set_per_queue_coalesce : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : _cargo_bpf_u32 , arg3 : * mut ethtool_coalesce) -> :: cty :: c_int > , pub get_link_ksettings : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_link_ksettings) -> :: cty :: c_int > , pub set_link_ksettings : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const ethtool_link_ksettings) -> :: cty :: c_int > , pub get_fec_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_fec_stats) > , pub get_fecparam : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_fecparam) -> :: cty :: c_int > , pub set_fecparam : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_fecparam) -> :: cty :: c_int > , pub get_ethtool_phy_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_stats , arg3 : * mut _cargo_bpf_u64) > , pub get_phy_tunable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const ethtool_tunable , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub set_phy_tunable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const ethtool_tunable , arg3 : * const :: cty :: c_void) -> :: cty :: c_int > , pub get_module_eeprom_by_page : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * const ethtool_module_eeprom , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub get_eth_phy_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eth_phy_stats) > , pub get_eth_mac_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eth_mac_stats) > , pub get_eth_ctrl_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_eth_ctrl_stats) > , pub get_rmon_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut ethtool_rmon_stats , arg3 : * mut * const ethtool_rmon_hist_range) > , } # [test] fn bindgen_test_layout_ethtool_ops () { assert_eq ! (:: core :: mem :: size_of :: < ethtool_ops > () , 536usize , concat ! ("Size of: " , stringify ! (ethtool_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < ethtool_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (ethtool_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . supported_coalesce_params as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (supported_coalesce_params))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_drvinfo as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_drvinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_regs_len as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_regs_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_regs as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_wol as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_wol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_wol as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_wol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_msglevel as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_msglevel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_msglevel as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_msglevel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . nway_reset as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (nway_reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_link as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_link_ext_state as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_link_ext_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_eeprom_len as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_eeprom_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_eeprom as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_eeprom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_eeprom as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_eeprom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_coalesce as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_coalesce))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_coalesce as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_coalesce))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_ringparam as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_ringparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_ringparam as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_ringparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_pause_stats as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_pause_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_pauseparam as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_pauseparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_pauseparam as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_pauseparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . self_test as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (self_test))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_strings as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_strings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_phys_id as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_phys_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_ethtool_stats as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_ethtool_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . begin as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (begin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . complete as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (complete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_priv_flags as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_priv_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_priv_flags as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_priv_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_sset_count as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_sset_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_rxnfc as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_rxnfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_rxnfc as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_rxnfc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . flash_device as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (flash_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . reset as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_rxfh_key_size as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_rxfh_key_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_rxfh_indir_size as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_rxfh_indir_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_rxfh as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_rxfh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_rxfh as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_rxfh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_rxfh_context as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_rxfh_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_rxfh_context as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_rxfh_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_channels as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_channels))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_channels as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_channels))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_dump_flag as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_dump_flag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_dump_data as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_dump_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_dump as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_ts_info as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_ts_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_module_info as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_module_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_module_eeprom as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_module_eeprom))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_eee as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_eee))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_eee as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_eee))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_tunable as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_tunable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_tunable as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_tunable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_per_queue_coalesce as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_per_queue_coalesce))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_per_queue_coalesce as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_per_queue_coalesce))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_link_ksettings as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_link_ksettings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_link_ksettings as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_link_ksettings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_fec_stats as * const _ as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_fec_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_fecparam as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_fecparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_fecparam as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_fecparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_ethtool_phy_stats as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_ethtool_phy_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_phy_tunable as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_phy_tunable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . set_phy_tunable as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (set_phy_tunable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_module_eeprom_by_page as * const _ as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_module_eeprom_by_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_eth_phy_stats as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_eth_phy_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_eth_mac_stats as * const _ as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_eth_mac_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_eth_ctrl_stats as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_eth_ctrl_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ethtool_ops > ())) . get_rmon_stats as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (ethtool_ops) , "::" , stringify ! (get_rmon_stats))) ; } impl ethtool_ops { # [inline] pub fn cap_link_lanes_supported (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_cap_link_lanes_supported (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (cap_link_lanes_supported : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let cap_link_lanes_supported : u32 = unsafe { :: core :: mem :: transmute (cap_link_lanes_supported) } ; cap_link_lanes_supported as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct l3mdev_ops { pub l3mdev_fib_table : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device) -> _cargo_bpf_u32 > , pub l3mdev_l3_rcv : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sk_buff , arg3 : _cargo_bpf_u16) -> * mut sk_buff > , pub l3mdev_l3_out : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sock , arg3 : * mut sk_buff , arg4 : _cargo_bpf_u16) -> * mut sk_buff > , pub l3mdev_link_scope_lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : * mut flowi6) -> * mut dst_entry > , } # [test] fn bindgen_test_layout_l3mdev_ops () { assert_eq ! (:: core :: mem :: size_of :: < l3mdev_ops > () , 32usize , concat ! ("Size of: " , stringify ! (l3mdev_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < l3mdev_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (l3mdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < l3mdev_ops > ())) . l3mdev_fib_table as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (l3mdev_ops) , "::" , stringify ! (l3mdev_fib_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < l3mdev_ops > ())) . l3mdev_l3_rcv as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (l3mdev_ops) , "::" , stringify ! (l3mdev_l3_rcv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < l3mdev_ops > ())) . l3mdev_l3_out as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (l3mdev_ops) , "::" , stringify ! (l3mdev_l3_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < l3mdev_ops > ())) . l3mdev_link_scope_lookup as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (l3mdev_ops) , "::" , stringify ! (l3mdev_link_scope_lookup))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ndisc_ops { pub is_useropt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : _cargo_bpf_u8) -> :: cty :: c_int > , pub parse_options : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : * mut nd_opt_hdr , arg3 : * mut ndisc_options) -> :: cty :: c_int > , pub update : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : * mut neighbour , arg3 : _cargo_bpf_u32 , arg4 : _cargo_bpf_u8 , arg5 : * const ndisc_options) > , pub opt_addr_space : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : _cargo_bpf_u8 , arg3 : * mut neighbour , arg4 : * mut _cargo_bpf_u8 , arg5 : * mut * mut _cargo_bpf_u8) -> :: cty :: c_int > , pub fill_addr_option : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : * mut sk_buff , arg3 : _cargo_bpf_u8 , arg4 : * const _cargo_bpf_u8) > , pub prefix_rcv_add_addr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut net_device , arg3 : * const prefix_info , arg4 : * mut inet6_dev , arg5 : * mut in6_addr , arg6 : :: cty :: c_int , arg7 : _cargo_bpf_u32 , arg8 : bool_ , arg9 : bool_ , arg10 : __u32 , arg11 : _cargo_bpf_u32 , arg12 : bool_) > , } # [test] fn bindgen_test_layout_ndisc_ops () { assert_eq ! (:: core :: mem :: size_of :: < ndisc_ops > () , 48usize , concat ! ("Size of: " , stringify ! (ndisc_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < ndisc_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (ndisc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_ops > ())) . is_useropt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ndisc_ops) , "::" , stringify ! (is_useropt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_ops > ())) . parse_options as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ndisc_ops) , "::" , stringify ! (parse_options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_ops > ())) . update as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ndisc_ops) , "::" , stringify ! (update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_ops > ())) . opt_addr_space as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ndisc_ops) , "::" , stringify ! (opt_addr_space))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_ops > ())) . fill_addr_option as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ndisc_ops) , "::" , stringify ! (fill_addr_option))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_ops > ())) . prefix_rcv_add_addr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ndisc_ops) , "::" , stringify ! (prefix_rcv_add_addr))) ; } pub const tls_offload_ctx_dir_TLS_OFFLOAD_CTX_DIR_RX : tls_offload_ctx_dir = 0 ; pub const tls_offload_ctx_dir_TLS_OFFLOAD_CTX_DIR_TX : tls_offload_ctx_dir = 1 ; pub type tls_offload_ctx_dir = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tlsdev_ops { pub tls_dev_add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sock , arg3 : tls_offload_ctx_dir , arg4 : * mut tls_crypto_info , arg5 : _cargo_bpf_u32) -> :: cty :: c_int > , pub tls_dev_del : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut tls_context , arg3 : tls_offload_ctx_dir) > , pub tls_dev_resync : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut sock , arg3 : _cargo_bpf_u32 , arg4 : * mut _cargo_bpf_u8 , arg5 : tls_offload_ctx_dir) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_tlsdev_ops () { assert_eq ! (:: core :: mem :: size_of :: < tlsdev_ops > () , 24usize , concat ! ("Size of: " , stringify ! (tlsdev_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < tlsdev_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (tlsdev_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tlsdev_ops > ())) . tls_dev_add as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tlsdev_ops) , "::" , stringify ! (tls_dev_add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tlsdev_ops > ())) . tls_dev_del as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tlsdev_ops) , "::" , stringify ! (tls_dev_del))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tlsdev_ops > ())) . tls_dev_resync as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tlsdev_ops) , "::" , stringify ! (tls_dev_resync))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ipv6_devstat { pub proc_dir_entry : * mut proc_dir_entry , pub ipv6 : * mut ipstats_mib , pub icmpv6dev : * mut icmpv6_mib_device , pub icmpv6msgdev : * mut icmpv6msg_mib_device , } # [test] fn bindgen_test_layout_ipv6_devstat () { assert_eq ! (:: core :: mem :: size_of :: < ipv6_devstat > () , 32usize , concat ! ("Size of: " , stringify ! (ipv6_devstat))) ; assert_eq ! (:: core :: mem :: align_of :: < ipv6_devstat > () , 8usize , concat ! ("Alignment of " , stringify ! (ipv6_devstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devstat > ())) . proc_dir_entry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipv6_devstat) , "::" , stringify ! (proc_dir_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devstat > ())) . ipv6 as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ipv6_devstat) , "::" , stringify ! (ipv6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devstat > ())) . icmpv6dev as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ipv6_devstat) , "::" , stringify ! (icmpv6dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipv6_devstat > ())) . icmpv6msgdev as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ipv6_devstat) , "::" , stringify ! (icmpv6msgdev))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct inet6_dev { pub dev : * mut net_device , pub addr_list : list_head , pub mc_list : * mut ifmcaddr6 , pub mc_tomb : * mut ifmcaddr6 , pub mc_qrv : :: cty :: c_uchar , pub mc_gq_running : :: cty :: c_uchar , pub mc_ifc_count : :: cty :: c_uchar , pub mc_dad_count : :: cty :: c_uchar , pub mc_v1_seen : :: cty :: c_ulong , pub mc_qi : :: cty :: c_ulong , pub mc_qri : :: cty :: c_ulong , pub mc_maxdelay : :: cty :: c_ulong , pub mc_gq_work : delayed_work , pub mc_ifc_work : delayed_work , pub mc_dad_work : delayed_work , pub mc_query_work : delayed_work , pub mc_report_work : delayed_work , pub mc_query_queue : sk_buff_head , pub mc_report_queue : sk_buff_head , pub mc_query_lock : spinlock_t , pub mc_report_lock : spinlock_t , pub mc_lock : mutex , pub ac_list : * mut ifacaddr6 , pub lock : rwlock_t , pub refcnt : refcount_t , pub if_flags : __u32 , pub dead : :: cty :: c_int , pub desync_factor : _cargo_bpf_u32 , pub tempaddr_list : list_head , pub token : in6_addr , pub nd_parms : * mut neigh_parms , pub cnf : ipv6_devconf , pub stats : ipv6_devstat , pub rs_timer : timer_list , pub rs_interval : __s32 , pub rs_probes : __u8 , pub tstamp : :: cty :: c_ulong , pub rcu : callback_head , } # [test] fn bindgen_test_layout_inet6_dev () { assert_eq ! (:: core :: mem :: size_of :: < inet6_dev > () , 1016usize , concat ! ("Size of: " , stringify ! (inet6_dev))) ; assert_eq ! (:: core :: mem :: align_of :: < inet6_dev > () , 8usize , concat ! ("Alignment of " , stringify ! (inet6_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . addr_list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (addr_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_tomb as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_tomb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_qrv as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_qrv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_gq_running as * const _ as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_gq_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_ifc_count as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_ifc_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_dad_count as * const _ as usize } , 43usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_dad_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_v1_seen as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_v1_seen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_qi as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_qi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_qri as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_qri))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_maxdelay as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_maxdelay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_gq_work as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_gq_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_ifc_work as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_ifc_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_dad_work as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_dad_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_query_work as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_query_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_report_work as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_report_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_query_queue as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_query_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_report_queue as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_report_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_query_lock as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_query_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_report_lock as * const _ as usize } , 572usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_report_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . mc_lock as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (mc_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . ac_list as * const _ as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (ac_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . lock as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . refcnt as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . if_flags as * const _ as usize } , 628usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (if_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . dead as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . desync_factor as * const _ as usize } , 636usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (desync_factor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . tempaddr_list as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (tempaddr_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . token as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (token))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . nd_parms as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (nd_parms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . cnf as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (cnf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . stats as * const _ as usize } , 912usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . rs_timer as * const _ as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (rs_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . rs_interval as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (rs_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . rs_probes as * const _ as usize } , 988usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (rs_probes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . tstamp as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < inet6_dev > ())) . rcu as * const _ as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (inet6_dev) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mini_Qdisc { pub filter_list : * mut tcf_proto , pub block : * mut tcf_block , pub cpu_bstats : * mut gnet_stats_basic_cpu , pub cpu_qstats : * mut gnet_stats_queue , pub rcu : callback_head , } # [test] fn bindgen_test_layout_mini_Qdisc () { assert_eq ! (:: core :: mem :: size_of :: < mini_Qdisc > () , 48usize , concat ! ("Size of: " , stringify ! (mini_Qdisc))) ; assert_eq ! (:: core :: mem :: align_of :: < mini_Qdisc > () , 8usize , concat ! ("Alignment of " , stringify ! (mini_Qdisc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mini_Qdisc > ())) . filter_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mini_Qdisc) , "::" , stringify ! (filter_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mini_Qdisc > ())) . block as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mini_Qdisc) , "::" , stringify ! (block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mini_Qdisc > ())) . cpu_bstats as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mini_Qdisc) , "::" , stringify ! (cpu_bstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mini_Qdisc > ())) . cpu_qstats as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (mini_Qdisc) , "::" , stringify ! (cpu_qstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mini_Qdisc > ())) . rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (mini_Qdisc) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rtnl_link_ops { pub list : list_head , pub kind : * const :: cty :: c_char , pub priv_size : size_t , pub setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device) > , pub netns_refund : bool_ , pub maxtype : :: cty :: c_uint , pub policy : * const nla_policy , pub validate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut * mut nlattr , arg2 : * mut * mut nlattr , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub newlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut net_device , arg3 : * mut * mut nlattr , arg4 : * mut * mut nlattr , arg5 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub changelink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut * mut nlattr , arg3 : * mut * mut nlattr , arg4 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub dellink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut list_head) > , pub get_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device) -> size_t > , pub fill_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * const net_device) -> :: cty :: c_int > , pub get_xstats_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device) -> size_t > , pub fill_xstats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * const net_device) -> :: cty :: c_int > , pub get_num_tx_queues : :: core :: option :: Option < unsafe extern "C" fn () -> :: cty :: c_uint > , pub get_num_rx_queues : :: core :: option :: Option < unsafe extern "C" fn () -> :: cty :: c_uint > , pub slave_maxtype : :: cty :: c_uint , pub slave_policy : * const nla_policy , pub slave_changelink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : * mut net_device , arg3 : * mut * mut nlattr , arg4 : * mut * mut nlattr , arg5 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub get_slave_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : * const net_device) -> size_t > , pub fill_slave_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * const net_device , arg3 : * const net_device) -> :: cty :: c_int > , pub get_link_net : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device) -> * mut net > , pub get_linkxstats_size : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : :: cty :: c_int) -> size_t > , pub fill_linkxstats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * const net_device , arg3 : * mut :: cty :: c_int , arg4 : :: cty :: c_int) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_rtnl_link_ops () { assert_eq ! (:: core :: mem :: size_of :: < rtnl_link_ops > () , 200usize , concat ! ("Size of: " , stringify ! (rtnl_link_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < rtnl_link_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (rtnl_link_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . kind as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . priv_size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (priv_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . setup as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . netns_refund as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (netns_refund))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . maxtype as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (maxtype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . policy as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . validate as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (validate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . newlink as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (newlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . changelink as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (changelink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . dellink as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (dellink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_size as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . fill_info as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (fill_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_xstats_size as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_xstats_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . fill_xstats as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (fill_xstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_num_tx_queues as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_num_tx_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_num_rx_queues as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_num_rx_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . slave_maxtype as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (slave_maxtype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . slave_policy as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (slave_policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . slave_changelink as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (slave_changelink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_slave_size as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_slave_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . fill_slave_info as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (fill_slave_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_link_net as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_link_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . get_linkxstats_size as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (get_linkxstats_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rtnl_link_ops > ())) . fill_linkxstats as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (rtnl_link_ops) , "::" , stringify ! (fill_linkxstats))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct udp_tunnel_nic_table_info { pub n_entries : :: cty :: c_uint , pub tunnel_types : :: cty :: c_uint , } # [test] fn bindgen_test_layout_udp_tunnel_nic_table_info () { assert_eq ! (:: core :: mem :: size_of :: < udp_tunnel_nic_table_info > () , 8usize , concat ! ("Size of: " , stringify ! (udp_tunnel_nic_table_info))) ; assert_eq ! (:: core :: mem :: align_of :: < udp_tunnel_nic_table_info > () , 4usize , concat ! ("Alignment of " , stringify ! (udp_tunnel_nic_table_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_table_info > ())) . n_entries as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_table_info) , "::" , stringify ! (n_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_table_info > ())) . tunnel_types as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_table_info) , "::" , stringify ! (tunnel_types))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct udp_tunnel_nic_info { pub set_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_uint , arg4 : * mut udp_tunnel_info) -> :: cty :: c_int > , pub unset_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_uint , arg4 : * mut udp_tunnel_info) -> :: cty :: c_int > , pub sync_table : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net_device , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub shared : * mut udp_tunnel_nic_shared , pub flags : :: cty :: c_uint , pub tables : [udp_tunnel_nic_table_info ; 4usize] , } # [test] fn bindgen_test_layout_udp_tunnel_nic_info () { assert_eq ! (:: core :: mem :: size_of :: < udp_tunnel_nic_info > () , 72usize , concat ! ("Size of: " , stringify ! (udp_tunnel_nic_info))) ; assert_eq ! (:: core :: mem :: align_of :: < udp_tunnel_nic_info > () , 8usize , concat ! ("Alignment of " , stringify ! (udp_tunnel_nic_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_info > ())) . set_port as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_info) , "::" , stringify ! (set_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_info > ())) . unset_port as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_info) , "::" , stringify ! (unset_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_info > ())) . sync_table as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_info) , "::" , stringify ! (sync_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_info > ())) . shared as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_info) , "::" , stringify ! (shared))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_info > ())) . flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < udp_tunnel_nic_info > ())) . tables as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (udp_tunnel_nic_info) , "::" , stringify ! (tables))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcmsg { pub tcm_family : :: cty :: c_uchar , pub tcm__pad1 : :: cty :: c_uchar , pub tcm__pad2 : :: cty :: c_ushort , pub tcm_ifindex : :: cty :: c_int , pub tcm_handle : __u32 , pub tcm_parent : __u32 , pub tcm_info : __u32 , } # [test] fn bindgen_test_layout_tcmsg () { assert_eq ! (:: core :: mem :: size_of :: < tcmsg > () , 20usize , concat ! ("Size of: " , stringify ! (tcmsg))) ; assert_eq ! (:: core :: mem :: align_of :: < tcmsg > () , 4usize , concat ! ("Alignment of " , stringify ! (tcmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm_family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm_family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm__pad1 as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm__pad1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm__pad2 as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm__pad2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm_ifindex as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm_ifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm_handle as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm_handle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm_parent as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm_parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcmsg > ())) . tcm_info as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcmsg) , "::" , stringify ! (tcm_info))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct gnet_stats_basic_cpu { pub bstats : gnet_stats_basic_packed , pub syncp : u64_stats_sync , } # [test] fn bindgen_test_layout_gnet_stats_basic_cpu () { assert_eq ! (:: core :: mem :: size_of :: < gnet_stats_basic_cpu > () , 16usize , concat ! ("Size of: " , stringify ! (gnet_stats_basic_cpu))) ; assert_eq ! (:: core :: mem :: align_of :: < gnet_stats_basic_cpu > () , 8usize , concat ! ("Alignment of " , stringify ! (gnet_stats_basic_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_basic_cpu > ())) . bstats as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_basic_cpu) , "::" , stringify ! (bstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_stats_basic_cpu > ())) . syncp as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (gnet_stats_basic_cpu) , "::" , stringify ! (syncp))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct gnet_dump { pub lock : * mut spinlock_t , pub skb : * mut sk_buff , pub tail : * mut nlattr , pub compat_tc_stats : :: cty :: c_int , pub compat_xstats : :: cty :: c_int , pub padattr : :: cty :: c_int , pub xstats : * mut :: cty :: c_void , pub xstats_len : :: cty :: c_int , pub tc_stats : tc_stats , } # [test] fn bindgen_test_layout_gnet_dump () { assert_eq ! (:: core :: mem :: size_of :: < gnet_dump > () , 96usize , concat ! ("Size of: " , stringify ! (gnet_dump))) ; assert_eq ! (:: core :: mem :: align_of :: < gnet_dump > () , 8usize , concat ! ("Alignment of " , stringify ! (gnet_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . skb as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (skb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . tail as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . compat_tc_stats as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (compat_tc_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . compat_xstats as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (compat_xstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . padattr as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (padattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . xstats as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (xstats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . xstats_len as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (xstats_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < gnet_dump > ())) . tc_stats as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (gnet_dump) , "::" , stringify ! (tc_stats))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netlink_range_validation { pub min : _cargo_bpf_u64 , pub max : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_netlink_range_validation () { assert_eq ! (:: core :: mem :: size_of :: < netlink_range_validation > () , 16usize , concat ! ("Size of: " , stringify ! (netlink_range_validation))) ; assert_eq ! (:: core :: mem :: align_of :: < netlink_range_validation > () , 8usize , concat ! ("Alignment of " , stringify ! (netlink_range_validation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_range_validation > ())) . min as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netlink_range_validation) , "::" , stringify ! (min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_range_validation > ())) . max as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netlink_range_validation) , "::" , stringify ! (max))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct netlink_range_validation_signed { pub min : s64 , pub max : s64 , } # [test] fn bindgen_test_layout_netlink_range_validation_signed () { assert_eq ! (:: core :: mem :: size_of :: < netlink_range_validation_signed > () , 16usize , concat ! ("Size of: " , stringify ! (netlink_range_validation_signed))) ; assert_eq ! (:: core :: mem :: align_of :: < netlink_range_validation_signed > () , 8usize , concat ! ("Alignment of " , stringify ! (netlink_range_validation_signed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_range_validation_signed > ())) . min as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (netlink_range_validation_signed) , "::" , stringify ! (min))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < netlink_range_validation_signed > ())) . max as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (netlink_range_validation_signed) , "::" , stringify ! (max))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct flow_block { pub cb_list : list_head , } # [test] fn bindgen_test_layout_flow_block () { assert_eq ! (:: core :: mem :: size_of :: < flow_block > () , 16usize , concat ! ("Size of: " , stringify ! (flow_block))) ; assert_eq ! (:: core :: mem :: align_of :: < flow_block > () , 8usize , concat ! ("Alignment of " , stringify ! (flow_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < flow_block > ())) . cb_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (flow_block) , "::" , stringify ! (cb_list))) ; } pub type flow_setup_cb_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : tc_setup_type , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug)] pub struct qdisc_size_table { pub rcu : callback_head , pub list : list_head , pub szopts : tc_sizespec , pub refcnt : :: cty :: c_int , pub data : __IncompleteArrayField < _cargo_bpf_u16 > , } # [test] fn bindgen_test_layout_qdisc_size_table () { assert_eq ! (:: core :: mem :: size_of :: < qdisc_size_table > () , 64usize , concat ! ("Size of: " , stringify ! (qdisc_size_table))) ; assert_eq ! (:: core :: mem :: align_of :: < qdisc_size_table > () , 8usize , concat ! ("Alignment of " , stringify ! (qdisc_size_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_size_table > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (qdisc_size_table) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_size_table > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (qdisc_size_table) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_size_table > ())) . szopts as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (qdisc_size_table) , "::" , stringify ! (szopts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_size_table > ())) . refcnt as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (qdisc_size_table) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < qdisc_size_table > ())) . data as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (qdisc_size_table) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct Qdisc_ops { pub next : * mut Qdisc_ops , pub cl_ops : * const Qdisc_class_ops , pub id : [:: cty :: c_char ; 16usize] , pub priv_size : :: cty :: c_int , pub static_flags : :: cty :: c_uint , pub enqueue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut Qdisc , arg3 : * mut * mut sk_buff) -> :: cty :: c_int > , pub dequeue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) -> * mut sk_buff > , pub peek : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) -> * mut sk_buff > , pub init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : * mut nlattr , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub reset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) > , pub change : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : * mut nlattr , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub attach : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) > , pub change_tx_queue_len : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub change_real_num_tx : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_uint) > , pub dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : * mut sk_buff) -> :: cty :: c_int > , pub dump_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : * mut gnet_dump) -> :: cty :: c_int > , pub ingress_block_set : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : _cargo_bpf_u32) > , pub egress_block_set : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : _cargo_bpf_u32) > , pub ingress_block_get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) -> _cargo_bpf_u32 > , pub egress_block_get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc) -> _cargo_bpf_u32 > , pub owner : * mut module , } # [test] fn bindgen_test_layout_Qdisc_ops () { assert_eq ! (:: core :: mem :: size_of :: < Qdisc_ops > () , 176usize , concat ! ("Size of: " , stringify ! (Qdisc_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < Qdisc_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (Qdisc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . cl_ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (cl_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . id as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . priv_size as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (priv_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . static_flags as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (static_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . enqueue as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (enqueue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . dequeue as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (dequeue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . peek as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (peek))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . init as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . reset as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . destroy as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . change as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . attach as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (attach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . change_tx_queue_len as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (change_tx_queue_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . change_real_num_tx as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (change_real_num_tx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . dump as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . dump_stats as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (dump_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . ingress_block_set as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (ingress_block_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . egress_block_set as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (egress_block_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . ingress_block_get as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (ingress_block_get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . egress_block_get as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (egress_block_get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_ops > ())) . owner as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (Qdisc_ops) , "::" , stringify ! (owner))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct Qdisc_class_ops { pub flags : :: cty :: c_uint , pub select_queue : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : * mut tcmsg) -> * mut netdev_queue > , pub graft : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong , arg3 : * mut Qdisc , arg4 : * mut * mut Qdisc , arg5 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub leaf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong) -> * mut Qdisc > , pub qlen_notify : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong) > , pub find : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : _cargo_bpf_u32) -> :: cty :: c_ulong > , pub change : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32 , arg4 : * mut * mut nlattr , arg5 : * mut :: cty :: c_ulong , arg6 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub delete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong , arg3 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub walk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : * mut qdisc_walker) > , pub tcf_block : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong , arg3 : * mut netlink_ext_ack) -> * mut tcf_block > , pub bind_tcf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong , arg3 : _cargo_bpf_u32) -> :: cty :: c_ulong > , pub unbind_tcf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong) > , pub dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong , arg3 : * mut sk_buff , arg4 : * mut tcmsg) -> :: cty :: c_int > , pub dump_stats : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut Qdisc , arg2 : :: cty :: c_ulong , arg3 : * mut gnet_dump) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_Qdisc_class_ops () { assert_eq ! (:: core :: mem :: size_of :: < Qdisc_class_ops > () , 112usize , concat ! ("Size of: " , stringify ! (Qdisc_class_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < Qdisc_class_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (Qdisc_class_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . select_queue as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (select_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . graft as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (graft))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . leaf as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (leaf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . qlen_notify as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (qlen_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . find as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (find))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . change as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . delete as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (delete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . walk as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (walk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . tcf_block as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (tcf_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . bind_tcf as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (bind_tcf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . unbind_tcf as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (unbind_tcf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . dump as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < Qdisc_class_ops > ())) . dump_stats as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (Qdisc_class_ops) , "::" , stringify ! (dump_stats))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct tcf_block { pub lock : mutex , pub chain_list : list_head , pub index : _cargo_bpf_u32 , pub classid : _cargo_bpf_u32 , pub refcnt : refcount_t , pub net : * mut net , pub q : * mut Qdisc , pub cb_lock : rw_semaphore , pub flow_block : flow_block , pub owner_list : list_head , pub keep_dst : bool_ , pub offloadcnt : atomic_t , pub nooffloaddevcnt : :: cty :: c_uint , pub lockeddevcnt : :: cty :: c_uint , pub chain0 : tcf_block__bindgen_ty_1 , pub rcu : callback_head , pub proto_destroy_ht : [hlist_head ; 128usize] , pub proto_destroy_lock : mutex , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcf_block__bindgen_ty_1 { pub chain : * mut tcf_chain , pub filter_chain_list : list_head , } # [test] fn bindgen_test_layout_tcf_block__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < tcf_block__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (tcf_block__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_block__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_block__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block__bindgen_ty_1 > ())) . chain as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_block__bindgen_ty_1) , "::" , stringify ! (chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block__bindgen_ty_1 > ())) . filter_chain_list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcf_block__bindgen_ty_1) , "::" , stringify ! (filter_chain_list))) ; } # [test] fn bindgen_test_layout_tcf_block () { assert_eq ! (:: core :: mem :: size_of :: < tcf_block > () , 1264usize , concat ! ("Size of: " , stringify ! (tcf_block))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_block > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . chain_list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (chain_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . index as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . classid as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (classid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . refcnt as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . net as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . q as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . cb_lock as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (cb_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . flow_block as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (flow_block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . owner_list as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (owner_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . keep_dst as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (keep_dst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . offloadcnt as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (offloadcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . nooffloaddevcnt as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (nooffloaddevcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . lockeddevcnt as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (lockeddevcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . chain0 as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (chain0))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . rcu as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . proto_destroy_ht as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (proto_destroy_ht))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_block > ())) . proto_destroy_lock as * const _ as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (tcf_block) , "::" , stringify ! (proto_destroy_lock))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct tcf_proto { pub next : * mut tcf_proto , pub root : * mut :: cty :: c_void , pub classify : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * const tcf_proto , arg3 : * mut tcf_result) -> :: cty :: c_int > , pub protocol : __be16 , pub prio : _cargo_bpf_u32 , pub data : * mut :: cty :: c_void , pub ops : * const tcf_proto_ops , pub chain : * mut tcf_chain , pub lock : spinlock_t , pub deleting : bool_ , pub refcnt : refcount_t , pub rcu : callback_head , pub destroy_ht_node : hlist_node , } # [test] fn bindgen_test_layout_tcf_proto () { assert_eq ! (:: core :: mem :: size_of :: < tcf_proto > () , 104usize , concat ! ("Size of: " , stringify ! (tcf_proto))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_proto > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . root as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . classify as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (classify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . protocol as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . prio as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . data as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . ops as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . chain as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . lock as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . deleting as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (deleting))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . refcnt as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . rcu as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto > ())) . destroy_ht_node as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcf_proto) , "::" , stringify ! (destroy_ht_node))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct tcf_result { pub __bindgen_anon_1 : tcf_result__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union tcf_result__bindgen_ty_1 { pub __bindgen_anon_1 : tcf_result__bindgen_ty_1__bindgen_ty_1 , pub goto_tp : * const tcf_proto , pub __bindgen_anon_2 : tcf_result__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcf_result__bindgen_ty_1__bindgen_ty_1 { pub class : :: cty :: c_ulong , pub classid : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_tcf_result__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < tcf_result__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_result__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_result__bindgen_ty_1__bindgen_ty_1 > ())) . class as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_result__bindgen_ty_1__bindgen_ty_1 > ())) . classid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (classid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcf_result__bindgen_ty_1__bindgen_ty_2 { pub ingress : bool_ , pub qstats : * mut gnet_stats_queue , } # [test] fn bindgen_test_layout_tcf_result__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < tcf_result__bindgen_ty_1__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_result__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_result__bindgen_ty_1__bindgen_ty_2 > ())) . ingress as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (ingress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_result__bindgen_ty_1__bindgen_ty_2 > ())) . qstats as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tcf_result__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (qstats))) ; } # [test] fn bindgen_test_layout_tcf_result__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < tcf_result__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (tcf_result__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_result__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_result__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_result__bindgen_ty_1 > ())) . goto_tp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_result__bindgen_ty_1) , "::" , stringify ! (goto_tp))) ; } # [test] fn bindgen_test_layout_tcf_result () { assert_eq ! (:: core :: mem :: size_of :: < tcf_result > () , 16usize , concat ! ("Size of: " , stringify ! (tcf_result))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_result > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_result))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tcf_proto_ops { pub head : list_head , pub kind : [:: cty :: c_char ; 16usize] , pub classify : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * const tcf_proto , arg3 : * mut tcf_result) -> :: cty :: c_int > , pub init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto) -> :: cty :: c_int > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : bool_ , arg3 : * mut netlink_ext_ack) > , pub get : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : _cargo_bpf_u32) -> * mut :: cty :: c_void > , pub put : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : * mut :: cty :: c_void) > , pub change : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut sk_buff , arg3 : * mut tcf_proto , arg4 : :: cty :: c_ulong , arg5 : _cargo_bpf_u32 , arg6 : * mut * mut nlattr , arg7 : * mut * mut :: cty :: c_void , arg8 : bool_ , arg9 : bool_ , arg10 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub delete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : * mut :: cty :: c_void , arg3 : * mut bool_ , arg4 : bool_ , arg5 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub delete_empty : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto) -> bool_ > , pub walk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : * mut tcf_walker , arg3 : bool_) > , pub reoffload : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : bool_ , arg3 : flow_setup_cb_t , arg4 : * mut :: cty :: c_void , arg5 : * mut netlink_ext_ack) -> :: cty :: c_int > , pub hw_add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : * mut :: cty :: c_void) > , pub hw_del : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut tcf_proto , arg2 : * mut :: cty :: c_void) > , pub bind_class : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : _cargo_bpf_u32 , arg3 : :: cty :: c_ulong , arg4 : * mut :: cty :: c_void , arg5 : :: cty :: c_ulong) > , pub tmplt_create : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut tcf_chain , arg3 : * mut * mut nlattr , arg4 : * mut netlink_ext_ack) -> * mut :: cty :: c_void > , pub tmplt_destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) > , pub dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut tcf_proto , arg3 : * mut :: cty :: c_void , arg4 : * mut sk_buff , arg5 : * mut tcmsg , arg6 : bool_) -> :: cty :: c_int > , pub terse_dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut net , arg2 : * mut tcf_proto , arg3 : * mut :: cty :: c_void , arg4 : * mut sk_buff , arg5 : * mut tcmsg , arg6 : bool_) -> :: cty :: c_int > , pub tmplt_dump : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut net , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub owner : * mut module , pub flags : :: cty :: c_int , } # [test] fn bindgen_test_layout_tcf_proto_ops () { assert_eq ! (:: core :: mem :: size_of :: < tcf_proto_ops > () , 192usize , concat ! ("Size of: " , stringify ! (tcf_proto_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_proto_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_proto_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . head as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . kind as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . classify as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (classify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . init as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . destroy as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . get as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . put as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (put))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . change as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (change))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . delete as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (delete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . delete_empty as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (delete_empty))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . walk as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (walk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . reoffload as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (reoffload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . hw_add as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (hw_add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . hw_del as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (hw_del))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . bind_class as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (bind_class))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . tmplt_create as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (tmplt_create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . tmplt_destroy as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (tmplt_destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . dump as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . terse_dump as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (terse_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . tmplt_dump as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (tmplt_dump))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . owner as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_proto_ops > ())) . flags as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (tcf_proto_ops) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct tcf_chain { pub filter_chain_lock : mutex , pub filter_chain : * mut tcf_proto , pub list : list_head , pub block : * mut tcf_block , pub index : _cargo_bpf_u32 , pub refcnt : :: cty :: c_uint , pub action_refcnt : :: cty :: c_uint , pub explicitly_created : bool_ , pub flushing : bool_ , pub tmplt_ops : * const tcf_proto_ops , pub tmplt_priv : * mut :: cty :: c_void , pub rcu : callback_head , } # [test] fn bindgen_test_layout_tcf_chain () { assert_eq ! (:: core :: mem :: size_of :: < tcf_chain > () , 112usize , concat ! ("Size of: " , stringify ! (tcf_chain))) ; assert_eq ! (:: core :: mem :: align_of :: < tcf_chain > () , 8usize , concat ! ("Alignment of " , stringify ! (tcf_chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . filter_chain_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (filter_chain_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . filter_chain as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (filter_chain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . list as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . block as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (block))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . index as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . refcnt as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . action_refcnt as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (action_refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . explicitly_created as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (explicitly_created))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . flushing as * const _ as usize } , 77usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (flushing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . tmplt_ops as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (tmplt_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . tmplt_priv as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (tmplt_priv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tcf_chain > ())) . rcu as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tcf_chain) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sock_fprog_kern { pub len : _cargo_bpf_u16 , pub filter : * mut sock_filter , } # [test] fn bindgen_test_layout_sock_fprog_kern () { assert_eq ! (:: core :: mem :: size_of :: < sock_fprog_kern > () , 16usize , concat ! ("Size of: " , stringify ! (sock_fprog_kern))) ; assert_eq ! (:: core :: mem :: align_of :: < sock_fprog_kern > () , 8usize , concat ! ("Alignment of " , stringify ! (sock_fprog_kern))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_fprog_kern > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sock_fprog_kern) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sock_fprog_kern > ())) . filter as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sock_fprog_kern) , "::" , stringify ! (filter))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_prog_stats { pub cnt : _cargo_bpf_u64 , pub nsecs : _cargo_bpf_u64 , pub misses : _cargo_bpf_u64 , pub syncp : u64_stats_sync , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_bpf_prog_stats () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_stats > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_prog_stats))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_stats > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_stats > ())) . cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_stats) , "::" , stringify ! (cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_stats > ())) . nsecs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_stats) , "::" , stringify ! (nsecs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_stats > ())) . misses as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_stats) , "::" , stringify ! (misses))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_stats > ())) . syncp as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_stats) , "::" , stringify ! (syncp))) ; } impl bpf_prog_stats { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sk_filter { pub refcnt : refcount_t , pub rcu : callback_head , pub prog : * mut bpf_prog , } # [test] fn bindgen_test_layout_sk_filter () { assert_eq ! (:: core :: mem :: size_of :: < sk_filter > () , 32usize , concat ! ("Size of: " , stringify ! (sk_filter))) ; assert_eq ! (:: core :: mem :: align_of :: < sk_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (sk_filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_filter > ())) . refcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sk_filter) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_filter > ())) . rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sk_filter) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sk_filter > ())) . prog as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sk_filter) , "::" , stringify ! (prog))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_nh_params { pub nh_family : _cargo_bpf_u32 , pub __bindgen_anon_1 : bpf_nh_params__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_nh_params__bindgen_ty_1 { pub ipv4_nh : _cargo_bpf_u32 , pub ipv6_nh : in6_addr , } # [test] fn bindgen_test_layout_bpf_nh_params__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_nh_params__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_nh_params__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_nh_params__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_nh_params__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_nh_params__bindgen_ty_1 > ())) . ipv4_nh as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_nh_params__bindgen_ty_1) , "::" , stringify ! (ipv4_nh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_nh_params__bindgen_ty_1 > ())) . ipv6_nh as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_nh_params__bindgen_ty_1) , "::" , stringify ! (ipv6_nh))) ; } # [test] fn bindgen_test_layout_bpf_nh_params () { assert_eq ! (:: core :: mem :: size_of :: < bpf_nh_params > () , 20usize , concat ! ("Size of: " , stringify ! (bpf_nh_params))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_nh_params > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_nh_params))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_nh_params > ())) . nh_family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_nh_params) , "::" , stringify ! (nh_family))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_redirect_info { pub flags : _cargo_bpf_u32 , pub tgt_index : _cargo_bpf_u32 , pub tgt_value : * mut :: cty :: c_void , pub map_id : _cargo_bpf_u32 , pub map_type : bpf_map_type , pub kern_flags : _cargo_bpf_u32 , pub nh : bpf_nh_params , } # [test] fn bindgen_test_layout_bpf_redirect_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_redirect_info > () , 48usize , concat ! ("Size of: " , stringify ! (bpf_redirect_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_redirect_info > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_redirect_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . tgt_index as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (tgt_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . tgt_value as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (tgt_value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . map_id as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (map_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . map_type as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (map_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . kern_flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (kern_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_redirect_info > ())) . nh as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (bpf_redirect_info) , "::" , stringify ! (nh))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct neigh_table { pub family : :: cty :: c_int , pub entry_size : :: cty :: c_uint , pub key_len : :: cty :: c_uint , pub protocol : __be16 , pub hash : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_void , arg2 : * const net_device , arg3 : * mut __u32) -> __u32 > , pub key_eq : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const neighbour , arg2 : * const :: cty :: c_void) -> bool_ > , pub constructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour) -> :: cty :: c_int > , pub pconstructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pneigh_entry) -> :: cty :: c_int > , pub pdestructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut pneigh_entry) > , pub proxy_redo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff) > , pub is_multicast : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_void) -> :: cty :: c_int > , pub allow_add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const net_device , arg2 : * mut netlink_ext_ack) -> bool_ > , pub id : * mut :: cty :: c_char , pub parms : neigh_parms , pub parms_list : list_head , pub gc_interval : :: cty :: c_int , pub gc_thresh1 : :: cty :: c_int , pub gc_thresh2 : :: cty :: c_int , pub gc_thresh3 : :: cty :: c_int , pub last_flush : :: cty :: c_ulong , pub gc_work : delayed_work , pub proxy_timer : timer_list , pub proxy_queue : sk_buff_head , pub entries : atomic_t , pub gc_entries : atomic_t , pub gc_list : list_head , pub lock : rwlock_t , pub last_rand : :: cty :: c_ulong , pub stats : * mut neigh_statistics , pub nht : * mut neigh_hash_table , pub phash_buckets : * mut * mut pneigh_entry , } # [test] fn bindgen_test_layout_neigh_table () { assert_eq ! (:: core :: mem :: size_of :: < neigh_table > () , 488usize , concat ! ("Size of: " , stringify ! (neigh_table))) ; assert_eq ! (:: core :: mem :: align_of :: < neigh_table > () , 8usize , concat ! ("Alignment of " , stringify ! (neigh_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . entry_size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (entry_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . key_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . protocol as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . hash as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . key_eq as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (key_eq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . constructor as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (constructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . pconstructor as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (pconstructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . pdestructor as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (pdestructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . proxy_redo as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (proxy_redo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . is_multicast as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (is_multicast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . allow_add as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (allow_add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . id as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . parms as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (parms))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . parms_list as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (parms_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_interval as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_thresh1 as * const _ as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_thresh1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_thresh2 as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_thresh2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_thresh3 as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_thresh3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . last_flush as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (last_flush))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_work as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . proxy_timer as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (proxy_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . proxy_queue as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (proxy_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . entries as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_entries as * const _ as usize } , 428usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . gc_list as * const _ as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (gc_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . lock as * const _ as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . last_rand as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (last_rand))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . stats as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . nht as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (nht))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_table > ())) . phash_buckets as * const _ as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (neigh_table) , "::" , stringify ! (phash_buckets))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct neigh_statistics { pub allocs : :: cty :: c_ulong , pub destroys : :: cty :: c_ulong , pub hash_grows : :: cty :: c_ulong , pub res_failed : :: cty :: c_ulong , pub lookups : :: cty :: c_ulong , pub hits : :: cty :: c_ulong , pub rcv_probes_mcast : :: cty :: c_ulong , pub rcv_probes_ucast : :: cty :: c_ulong , pub periodic_gc_runs : :: cty :: c_ulong , pub forced_gc_runs : :: cty :: c_ulong , pub unres_discards : :: cty :: c_ulong , pub table_fulls : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_neigh_statistics () { assert_eq ! (:: core :: mem :: size_of :: < neigh_statistics > () , 96usize , concat ! ("Size of: " , stringify ! (neigh_statistics))) ; assert_eq ! (:: core :: mem :: align_of :: < neigh_statistics > () , 8usize , concat ! ("Alignment of " , stringify ! (neigh_statistics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . allocs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (allocs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . destroys as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (destroys))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . hash_grows as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (hash_grows))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . res_failed as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (res_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . lookups as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (lookups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . hits as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (hits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . rcv_probes_mcast as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (rcv_probes_mcast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . rcv_probes_ucast as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (rcv_probes_ucast))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . periodic_gc_runs as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (periodic_gc_runs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . forced_gc_runs as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (forced_gc_runs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . unres_discards as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (unres_discards))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_statistics > ())) . table_fulls as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (neigh_statistics) , "::" , stringify ! (table_fulls))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct neigh_ops { pub family : :: cty :: c_int , pub solicit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour , arg2 : * mut sk_buff) > , pub error_report : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour , arg2 : * mut sk_buff) > , pub output : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour , arg2 : * mut sk_buff) -> :: cty :: c_int > , pub connected_output : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut neighbour , arg2 : * mut sk_buff) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_neigh_ops () { assert_eq ! (:: core :: mem :: size_of :: < neigh_ops > () , 40usize , concat ! ("Size of: " , stringify ! (neigh_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < neigh_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (neigh_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_ops > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (neigh_ops) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_ops > ())) . solicit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (neigh_ops) , "::" , stringify ! (solicit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_ops > ())) . error_report as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (neigh_ops) , "::" , stringify ! (error_report))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_ops > ())) . output as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (neigh_ops) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_ops > ())) . connected_output as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (neigh_ops) , "::" , stringify ! (connected_output))) ; } # [repr (C)] # [derive (Debug)] pub struct pneigh_entry { pub next : * mut pneigh_entry , pub net : possible_net_t , pub dev : * mut net_device , pub flags : _cargo_bpf_u8 , pub protocol : _cargo_bpf_u8 , pub key : __IncompleteArrayField < _cargo_bpf_u8 > , } # [test] fn bindgen_test_layout_pneigh_entry () { assert_eq ! (:: core :: mem :: size_of :: < pneigh_entry > () , 32usize , concat ! ("Size of: " , stringify ! (pneigh_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < pneigh_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (pneigh_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pneigh_entry > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pneigh_entry) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pneigh_entry > ())) . net as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pneigh_entry) , "::" , stringify ! (net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pneigh_entry > ())) . dev as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pneigh_entry) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pneigh_entry > ())) . flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pneigh_entry) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pneigh_entry > ())) . protocol as * const _ as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (pneigh_entry) , "::" , stringify ! (protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pneigh_entry > ())) . key as * const _ as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (pneigh_entry) , "::" , stringify ! (key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct neigh_hash_table { pub hash_buckets : * mut * mut neighbour , pub hash_shift : :: cty :: c_uint , pub hash_rnd : [__u32 ; 4usize] , pub rcu : callback_head , } # [test] fn bindgen_test_layout_neigh_hash_table () { assert_eq ! (:: core :: mem :: size_of :: < neigh_hash_table > () , 48usize , concat ! ("Size of: " , stringify ! (neigh_hash_table))) ; assert_eq ! (:: core :: mem :: align_of :: < neigh_hash_table > () , 8usize , concat ! ("Alignment of " , stringify ! (neigh_hash_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_hash_table > ())) . hash_buckets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (neigh_hash_table) , "::" , stringify ! (hash_buckets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_hash_table > ())) . hash_shift as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (neigh_hash_table) , "::" , stringify ! (hash_shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_hash_table > ())) . hash_rnd as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (neigh_hash_table) , "::" , stringify ! (hash_rnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < neigh_hash_table > ())) . rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (neigh_hash_table) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dst_metrics { pub metrics : [_cargo_bpf_u32 ; 17usize] , pub refcnt : refcount_t , } # [test] fn bindgen_test_layout_dst_metrics () { assert_eq ! (:: core :: mem :: size_of :: < dst_metrics > () , 72usize , concat ! ("Size of: " , stringify ! (dst_metrics))) ; assert_eq ! (:: core :: mem :: align_of :: < dst_metrics > () , 4usize , concat ! ("Alignment of " , stringify ! (dst_metrics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_metrics > ())) . metrics as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dst_metrics) , "::" , stringify ! (metrics))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dst_metrics > ())) . refcnt as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (dst_metrics) , "::" , stringify ! (refcnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_rule_hdr { pub family : __u8 , pub dst_len : __u8 , pub src_len : __u8 , pub tos : __u8 , pub table : __u8 , pub res1 : __u8 , pub res2 : __u8 , pub action : __u8 , pub flags : __u32 , } # [test] fn bindgen_test_layout_fib_rule_hdr () { assert_eq ! (:: core :: mem :: size_of :: < fib_rule_hdr > () , 12usize , concat ! ("Size of: " , stringify ! (fib_rule_hdr))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_rule_hdr > () , 4usize , concat ! ("Alignment of " , stringify ! (fib_rule_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . dst_len as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (dst_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . src_len as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (src_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . tos as * const _ as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (tos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . table as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . res1 as * const _ as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (res1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . res2 as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (res2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . action as * const _ as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (action))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_hdr > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fib_rule_hdr) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_rule_port_range { pub start : __u16 , pub end : __u16 , } # [test] fn bindgen_test_layout_fib_rule_port_range () { assert_eq ! (:: core :: mem :: size_of :: < fib_rule_port_range > () , 4usize , concat ! ("Size of: " , stringify ! (fib_rule_port_range))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_rule_port_range > () , 2usize , concat ! ("Alignment of " , stringify ! (fib_rule_port_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_port_range > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_rule_port_range) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule_port_range > ())) . end as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (fib_rule_port_range) , "::" , stringify ! (end))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_kuid_range { pub start : kuid_t , pub end : kuid_t , } # [test] fn bindgen_test_layout_fib_kuid_range () { assert_eq ! (:: core :: mem :: size_of :: < fib_kuid_range > () , 8usize , concat ! ("Size of: " , stringify ! (fib_kuid_range))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_kuid_range > () , 4usize , concat ! ("Alignment of " , stringify ! (fib_kuid_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_kuid_range > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_kuid_range) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_kuid_range > ())) . end as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fib_kuid_range) , "::" , stringify ! (end))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_rule { pub list : list_head , pub iifindex : :: cty :: c_int , pub oifindex : :: cty :: c_int , pub mark : _cargo_bpf_u32 , pub mark_mask : _cargo_bpf_u32 , pub flags : _cargo_bpf_u32 , pub table : _cargo_bpf_u32 , pub action : _cargo_bpf_u8 , pub l3mdev : _cargo_bpf_u8 , pub proto : _cargo_bpf_u8 , pub ip_proto : _cargo_bpf_u8 , pub target : _cargo_bpf_u32 , pub tun_id : __be64 , pub ctarget : * mut fib_rule , pub fr_net : * mut net , pub refcnt : refcount_t , pub pref : _cargo_bpf_u32 , pub suppress_ifgroup : :: cty :: c_int , pub suppress_prefixlen : :: cty :: c_int , pub iifname : [:: cty :: c_char ; 16usize] , pub oifname : [:: cty :: c_char ; 16usize] , pub uid_range : fib_kuid_range , pub sport_range : fib_rule_port_range , pub dport_range : fib_rule_port_range , pub rcu : callback_head , } # [test] fn bindgen_test_layout_fib_rule () { assert_eq ! (:: core :: mem :: size_of :: < fib_rule > () , 152usize , concat ! ("Size of: " , stringify ! (fib_rule))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_rule > () , 8usize , concat ! ("Alignment of " , stringify ! (fib_rule))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . iifindex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (iifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . oifindex as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (oifindex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . mark as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (mark))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . mark_mask as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (mark_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . table as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . action as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (action))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . l3mdev as * const _ as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (l3mdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . proto as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . ip_proto as * const _ as usize } , 43usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (ip_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . target as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . tun_id as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (tun_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . ctarget as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (ctarget))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . fr_net as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (fr_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . refcnt as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . pref as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (pref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . suppress_ifgroup as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (suppress_ifgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . suppress_prefixlen as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (suppress_prefixlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . iifname as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (iifname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . oifname as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (oifname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . uid_range as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (uid_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . sport_range as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (sport_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . dport_range as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (dport_range))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_rule > ())) . rcu as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (fib_rule) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fib_lookup_arg { pub lookup_ptr : * mut :: cty :: c_void , pub lookup_data : * const :: cty :: c_void , pub result : * mut :: cty :: c_void , pub rule : * mut fib_rule , pub table : _cargo_bpf_u32 , pub flags : :: cty :: c_int , } # [test] fn bindgen_test_layout_fib_lookup_arg () { assert_eq ! (:: core :: mem :: size_of :: < fib_lookup_arg > () , 40usize , concat ! ("Size of: " , stringify ! (fib_lookup_arg))) ; assert_eq ! (:: core :: mem :: align_of :: < fib_lookup_arg > () , 8usize , concat ! ("Alignment of " , stringify ! (fib_lookup_arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_lookup_arg > ())) . lookup_ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fib_lookup_arg) , "::" , stringify ! (lookup_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_lookup_arg > ())) . lookup_data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fib_lookup_arg) , "::" , stringify ! (lookup_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_lookup_arg > ())) . result as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fib_lookup_arg) , "::" , stringify ! (result))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_lookup_arg > ())) . rule as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fib_lookup_arg) , "::" , stringify ! (rule))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_lookup_arg > ())) . table as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fib_lookup_arg) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fib_lookup_arg > ())) . flags as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (fib_lookup_arg) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct smc_hashinfo { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct proto { pub close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_long) > , pub pre_connect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sockaddr , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub connect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sockaddr , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub disconnect : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub accept : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int , arg3 : * mut :: cty :: c_int , arg4 : bool_) -> * mut sock > , pub ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int , arg3 : :: cty :: c_ulong) -> :: cty :: c_int > , pub init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> :: cty :: c_int > , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int) > , pub setsockopt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int , arg4 : sockptr_t , arg5 : :: cty :: c_uint) -> :: cty :: c_int > , pub getsockopt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int , arg3 : :: cty :: c_int , arg4 : * mut :: cty :: c_char , arg5 : * mut :: cty :: c_int) -> :: cty :: c_int > , pub keepalive : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int) > , pub compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_int > , pub sendmsg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut msghdr , arg3 : size_t) -> :: cty :: c_int > , pub recvmsg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut msghdr , arg3 : size_t , arg4 : :: cty :: c_int , arg5 : :: cty :: c_int , arg6 : * mut :: cty :: c_int) -> :: cty :: c_int > , pub sendpage : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut page , arg3 : :: cty :: c_int , arg4 : size_t , arg5 : :: cty :: c_int) -> :: cty :: c_int > , pub bind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sockaddr , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub bind_add : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sockaddr , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub backlog_rcv : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sk_buff) -> :: cty :: c_int > , pub bpf_bypass_getsockopt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int , arg2 : :: cty :: c_int) -> bool_ > , pub release_cb : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub hash : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) -> :: cty :: c_int > , pub unhash : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub rehash : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub get_port : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_ushort) -> :: cty :: c_int > , pub psock_update_sk_prot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sk_psock , arg3 : bool_) -> :: cty :: c_int > , pub inuse_idx : :: cty :: c_uint , pub stream_memory_free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sock , arg2 : :: cty :: c_int) -> bool_ > , pub stream_memory_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sock) -> bool_ > , pub enter_memory_pressure : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub leave_memory_pressure : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , pub memory_allocated : * mut atomic_long_t , pub sockets_allocated : * mut percpu_counter , pub memory_pressure : * mut :: cty :: c_ulong , pub sysctl_mem : * mut :: cty :: c_long , pub sysctl_wmem : * mut :: cty :: c_int , pub sysctl_rmem : * mut :: cty :: c_int , pub sysctl_wmem_offset : _cargo_bpf_u32 , pub sysctl_rmem_offset : _cargo_bpf_u32 , pub max_header : :: cty :: c_int , pub no_autobind : bool_ , pub slab : * mut kmem_cache , pub obj_size : :: cty :: c_uint , pub slab_flags : slab_flags_t , pub useroffset : :: cty :: c_uint , pub usersize : :: cty :: c_uint , pub orphan_count : * mut :: cty :: c_uint , pub rsk_prot : * mut request_sock_ops , pub twsk_prot : * mut timewait_sock_ops , pub h : proto__bindgen_ty_1 , pub owner : * mut module , pub name : [:: cty :: c_char ; 32usize] , pub node : list_head , pub diag_destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : :: cty :: c_int) -> :: cty :: c_int > , } # [repr (C)] # [derive (Copy , Clone)] pub union proto__bindgen_ty_1 { pub hashinfo : * mut inet_hashinfo , pub udp_table : * mut udp_table , pub raw_hash : * mut raw_hashinfo , pub smc_hash : * mut smc_hashinfo , } # [test] fn bindgen_test_layout_proto__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < proto__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (proto__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < proto__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (proto__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto__bindgen_ty_1 > ())) . hashinfo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proto__bindgen_ty_1) , "::" , stringify ! (hashinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto__bindgen_ty_1 > ())) . udp_table as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proto__bindgen_ty_1) , "::" , stringify ! (udp_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto__bindgen_ty_1 > ())) . raw_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proto__bindgen_ty_1) , "::" , stringify ! (raw_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto__bindgen_ty_1 > ())) . smc_hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proto__bindgen_ty_1) , "::" , stringify ! (smc_hash))) ; } # [test] fn bindgen_test_layout_proto () { assert_eq ! (:: core :: mem :: size_of :: < proto > () , 432usize , concat ! ("Size of: " , stringify ! (proto))) ; assert_eq ! (:: core :: mem :: align_of :: < proto > () , 8usize , concat ! ("Alignment of " , stringify ! (proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . close as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . pre_connect as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (pre_connect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . connect as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (connect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . disconnect as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (disconnect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . accept as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (accept))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . ioctl as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . init as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . destroy as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . shutdown as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . setsockopt as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (setsockopt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . getsockopt as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (getsockopt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . keepalive as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (keepalive))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . compat_ioctl as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sendmsg as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sendmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . recvmsg as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (recvmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sendpage as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sendpage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . bind as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . bind_add as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (bind_add))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . backlog_rcv as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (backlog_rcv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . bpf_bypass_getsockopt as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (bpf_bypass_getsockopt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . release_cb as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (release_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . hash as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . unhash as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (unhash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . rehash as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (rehash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . get_port as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (get_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . psock_update_sk_prot as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (psock_update_sk_prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . inuse_idx as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (inuse_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . stream_memory_free as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (stream_memory_free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . stream_memory_read as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (stream_memory_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . enter_memory_pressure as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (enter_memory_pressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . leave_memory_pressure as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (leave_memory_pressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . memory_allocated as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (memory_allocated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sockets_allocated as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sockets_allocated))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . memory_pressure as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (memory_pressure))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sysctl_mem as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sysctl_mem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sysctl_wmem as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sysctl_wmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sysctl_rmem as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sysctl_rmem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sysctl_wmem_offset as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sysctl_wmem_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . sysctl_rmem_offset as * const _ as usize } , 300usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (sysctl_rmem_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . max_header as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (max_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . no_autobind as * const _ as usize } , 308usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (no_autobind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . slab as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (slab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . obj_size as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (obj_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . slab_flags as * const _ as usize } , 324usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (slab_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . useroffset as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (useroffset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . usersize as * const _ as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (usersize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . orphan_count as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (orphan_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . rsk_prot as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (rsk_prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . twsk_prot as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (twsk_prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . h as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . owner as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . name as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . node as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proto > ())) . diag_destroy as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (proto) , "::" , stringify ! (diag_destroy))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct request_sock_ops { pub family : :: cty :: c_int , pub obj_size : :: cty :: c_uint , pub slab : * mut kmem_cache , pub slab_name : * mut :: cty :: c_char , pub rtx_syn_ack : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sock , arg2 : * mut request_sock) -> :: cty :: c_int > , pub send_ack : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sock , arg2 : * mut sk_buff , arg3 : * mut request_sock) > , pub send_reset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const sock , arg2 : * mut sk_buff) > , pub destructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut request_sock) > , pub syn_ack_timeout : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const request_sock) > , } # [test] fn bindgen_test_layout_request_sock_ops () { assert_eq ! (:: core :: mem :: size_of :: < request_sock_ops > () , 64usize , concat ! ("Size of: " , stringify ! (request_sock_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < request_sock_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (request_sock_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . family as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . obj_size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (obj_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . slab as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (slab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . slab_name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (slab_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . rtx_syn_ack as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (rtx_syn_ack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . send_ack as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (send_ack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . send_reset as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (send_reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . destructor as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (destructor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock_ops > ())) . syn_ack_timeout as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (request_sock_ops) , "::" , stringify ! (syn_ack_timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timewait_sock_ops { pub twsk_slab : * mut kmem_cache , pub twsk_slab_name : * mut :: cty :: c_char , pub twsk_obj_size : :: cty :: c_uint , pub twsk_unique : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock , arg2 : * mut sock , arg3 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub twsk_destructor : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sock) > , } # [test] fn bindgen_test_layout_timewait_sock_ops () { assert_eq ! (:: core :: mem :: size_of :: < timewait_sock_ops > () , 40usize , concat ! ("Size of: " , stringify ! (timewait_sock_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < timewait_sock_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (timewait_sock_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timewait_sock_ops > ())) . twsk_slab as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timewait_sock_ops) , "::" , stringify ! (twsk_slab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timewait_sock_ops > ())) . twsk_slab_name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timewait_sock_ops) , "::" , stringify ! (twsk_slab_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timewait_sock_ops > ())) . twsk_obj_size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (timewait_sock_ops) , "::" , stringify ! (twsk_obj_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timewait_sock_ops > ())) . twsk_unique as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (timewait_sock_ops) , "::" , stringify ! (twsk_unique))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timewait_sock_ops > ())) . twsk_destructor as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (timewait_sock_ops) , "::" , stringify ! (twsk_destructor))) ; } # [repr (C)] pub struct request_sock { pub __req_common : sock_common , pub dl_next : * mut request_sock , pub mss : _cargo_bpf_u16 , pub num_retrans : _cargo_bpf_u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub ts_recent : _cargo_bpf_u32 , pub rsk_timer : timer_list , pub rsk_ops : * const request_sock_ops , pub sk : * mut sock , pub saved_syn : * mut saved_syn , pub secid : _cargo_bpf_u32 , pub peer_secid : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_request_sock () { assert_eq ! (:: core :: mem :: size_of :: < request_sock > () , 224usize , concat ! ("Size of: " , stringify ! (request_sock))) ; assert_eq ! (:: core :: mem :: align_of :: < request_sock > () , 8usize , concat ! ("Alignment of " , stringify ! (request_sock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . __req_common as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (__req_common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . dl_next as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (dl_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . mss as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (mss))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . num_retrans as * const _ as usize } , 146usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (num_retrans))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . ts_recent as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (ts_recent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . rsk_timer as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (rsk_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . rsk_ops as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (rsk_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . sk as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (sk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . saved_syn as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (saved_syn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . secid as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (secid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < request_sock > ())) . peer_secid as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (request_sock) , "::" , stringify ! (peer_secid))) ; } impl request_sock { # [inline] pub fn syncookie (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_syncookie (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn num_timeout (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 7u8) as u8) } } # [inline] pub fn set_num_timeout (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 7u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (syncookie : _cargo_bpf_u8 , num_timeout : _cargo_bpf_u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let syncookie : u8 = unsafe { :: core :: mem :: transmute (syncookie) } ; syncookie as u64 }) ; __bindgen_bitfield_unit . set (1usize , 7u8 , { let num_timeout : u8 = unsafe { :: core :: mem :: transmute (num_timeout) } ; num_timeout as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug)] pub struct saved_syn { pub mac_hdrlen : _cargo_bpf_u32 , pub network_hdrlen : _cargo_bpf_u32 , pub tcp_hdrlen : _cargo_bpf_u32 , pub data : __IncompleteArrayField < _cargo_bpf_u8 > , } # [test] fn bindgen_test_layout_saved_syn () { assert_eq ! (:: core :: mem :: size_of :: < saved_syn > () , 12usize , concat ! ("Size of: " , stringify ! (saved_syn))) ; assert_eq ! (:: core :: mem :: align_of :: < saved_syn > () , 4usize , concat ! ("Alignment of " , stringify ! (saved_syn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < saved_syn > ())) . mac_hdrlen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (saved_syn) , "::" , stringify ! (mac_hdrlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < saved_syn > ())) . network_hdrlen as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (saved_syn) , "::" , stringify ! (network_hdrlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < saved_syn > ())) . tcp_hdrlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (saved_syn) , "::" , stringify ! (tcp_hdrlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < saved_syn > ())) . data as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (saved_syn) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ip6_sf_list { pub sf_next : * mut ip6_sf_list , pub sf_addr : in6_addr , pub sf_count : [:: cty :: c_ulong ; 2usize] , pub sf_gsresp : :: cty :: c_uchar , pub sf_oldin : :: cty :: c_uchar , pub sf_crcount : :: cty :: c_uchar , pub rcu : callback_head , } # [test] fn bindgen_test_layout_ip6_sf_list () { assert_eq ! (:: core :: mem :: size_of :: < ip6_sf_list > () , 64usize , concat ! ("Size of: " , stringify ! (ip6_sf_list))) ; assert_eq ! (:: core :: mem :: align_of :: < ip6_sf_list > () , 8usize , concat ! ("Alignment of " , stringify ! (ip6_sf_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . sf_next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (sf_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . sf_addr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (sf_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . sf_count as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (sf_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . sf_gsresp as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (sf_gsresp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . sf_oldin as * const _ as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (sf_oldin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . sf_crcount as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (sf_crcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ip6_sf_list > ())) . rcu as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ip6_sf_list) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ifmcaddr6 { pub mca_addr : in6_addr , pub idev : * mut inet6_dev , pub next : * mut ifmcaddr6 , pub mca_sources : * mut ip6_sf_list , pub mca_tomb : * mut ip6_sf_list , pub mca_sfmode : :: cty :: c_uint , pub mca_crcount : :: cty :: c_uchar , pub mca_sfcount : [:: cty :: c_ulong ; 2usize] , pub mca_work : delayed_work , pub mca_flags : :: cty :: c_uint , pub mca_users : :: cty :: c_int , pub mca_refcnt : refcount_t , pub mca_cstamp : :: cty :: c_ulong , pub mca_tstamp : :: cty :: c_ulong , pub rcu : callback_head , } # [test] fn bindgen_test_layout_ifmcaddr6 () { assert_eq ! (:: core :: mem :: size_of :: < ifmcaddr6 > () , 208usize , concat ! ("Size of: " , stringify ! (ifmcaddr6))) ; assert_eq ! (:: core :: mem :: align_of :: < ifmcaddr6 > () , 8usize , concat ! ("Alignment of " , stringify ! (ifmcaddr6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . idev as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (idev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_sources as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_sources))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_tomb as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_tomb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_sfmode as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_sfmode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_crcount as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_crcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_sfcount as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_sfcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_work as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_flags as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_users as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_refcnt as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_cstamp as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_cstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . mca_tstamp as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (mca_tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifmcaddr6 > ())) . rcu as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (ifmcaddr6) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ifacaddr6 { pub aca_addr : in6_addr , pub aca_rt : * mut fib6_info , pub aca_next : * mut ifacaddr6 , pub aca_addr_lst : hlist_node , pub aca_users : :: cty :: c_int , pub aca_refcnt : refcount_t , pub aca_cstamp : :: cty :: c_ulong , pub aca_tstamp : :: cty :: c_ulong , pub rcu : callback_head , } # [test] fn bindgen_test_layout_ifacaddr6 () { assert_eq ! (:: core :: mem :: size_of :: < ifacaddr6 > () , 88usize , concat ! ("Size of: " , stringify ! (ifacaddr6))) ; assert_eq ! (:: core :: mem :: align_of :: < ifacaddr6 > () , 8usize , concat ! ("Alignment of " , stringify ! (ifacaddr6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_addr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_rt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_rt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_addr_lst as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_addr_lst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_users as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_refcnt as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_cstamp as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_cstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . aca_tstamp as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (aca_tstamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ifacaddr6 > ())) . rcu as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ifacaddr6) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nd_opt_hdr { pub nd_opt_type : __u8 , pub nd_opt_len : __u8 , } # [test] fn bindgen_test_layout_nd_opt_hdr () { assert_eq ! (:: core :: mem :: size_of :: < nd_opt_hdr > () , 2usize , concat ! ("Size of: " , stringify ! (nd_opt_hdr))) ; assert_eq ! (:: core :: mem :: align_of :: < nd_opt_hdr > () , 1usize , concat ! ("Alignment of " , stringify ! (nd_opt_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nd_opt_hdr > ())) . nd_opt_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nd_opt_hdr) , "::" , stringify ! (nd_opt_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nd_opt_hdr > ())) . nd_opt_len as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (nd_opt_hdr) , "::" , stringify ! (nd_opt_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ndisc_options { pub nd_opt_array : [* mut nd_opt_hdr ; 15usize] , pub nd_opts_ri : * mut nd_opt_hdr , pub nd_opts_ri_end : * mut nd_opt_hdr , pub nd_useropts : * mut nd_opt_hdr , pub nd_useropts_end : * mut nd_opt_hdr , pub nd_802154_opt_array : [* mut nd_opt_hdr ; 3usize] , } # [test] fn bindgen_test_layout_ndisc_options () { assert_eq ! (:: core :: mem :: size_of :: < ndisc_options > () , 176usize , concat ! ("Size of: " , stringify ! (ndisc_options))) ; assert_eq ! (:: core :: mem :: align_of :: < ndisc_options > () , 8usize , concat ! ("Alignment of " , stringify ! (ndisc_options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_options > ())) . nd_opt_array as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ndisc_options) , "::" , stringify ! (nd_opt_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_options > ())) . nd_opts_ri as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (ndisc_options) , "::" , stringify ! (nd_opts_ri))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_options > ())) . nd_opts_ri_end as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (ndisc_options) , "::" , stringify ! (nd_opts_ri_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_options > ())) . nd_useropts as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (ndisc_options) , "::" , stringify ! (nd_useropts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_options > ())) . nd_useropts_end as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (ndisc_options) , "::" , stringify ! (nd_useropts_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ndisc_options > ())) . nd_802154_opt_array as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (ndisc_options) , "::" , stringify ! (nd_802154_opt_array))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct prefix_info { pub type_ : __u8 , pub length : __u8 , pub prefix_len : __u8 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub valid : __be32 , pub prefered : __be32 , pub reserved2 : __be32 , pub prefix : in6_addr , } # [test] fn bindgen_test_layout_prefix_info () { assert_eq ! (:: core :: mem :: size_of :: < prefix_info > () , 32usize , concat ! ("Size of: " , stringify ! (prefix_info))) ; assert_eq ! (:: core :: mem :: align_of :: < prefix_info > () , 4usize , concat ! ("Alignment of " , stringify ! (prefix_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . length as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . prefix_len as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (prefix_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . valid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (valid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . prefered as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (prefered))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . reserved2 as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (reserved2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prefix_info > ())) . prefix as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (prefix_info) , "::" , stringify ! (prefix))) ; } impl prefix_info { # [inline] pub fn reserved (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 6u8) as u8) } } # [inline] pub fn set_reserved (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 6u8 , val as u64) } } # [inline] pub fn autoconf (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 1u8) as u8) } } # [inline] pub fn set_autoconf (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 1u8 , val as u64) } } # [inline] pub fn onlink (& self) -> __u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (7usize , 1u8) as u8) } } # [inline] pub fn set_onlink (& mut self , val : __u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reserved : __u8 , autoconf : __u8 , onlink : __u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 6u8 , { let reserved : u8 = unsafe { :: core :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit . set (6usize , 1u8 , { let autoconf : u8 = unsafe { :: core :: mem :: transmute (autoconf) } ; autoconf as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let onlink : u8 = unsafe { :: core :: mem :: transmute (onlink) } ; onlink as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_xprt_iter_ops { pub xpi_rewind : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt_iter) > , pub xpi_xprt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt_iter) -> * mut rpc_xprt > , pub xpi_next : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_xprt_iter) -> * mut rpc_xprt > , } # [test] fn bindgen_test_layout_rpc_xprt_iter_ops () { assert_eq ! (:: core :: mem :: size_of :: < rpc_xprt_iter_ops > () , 24usize , concat ! ("Size of: " , stringify ! (rpc_xprt_iter_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_xprt_iter_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_xprt_iter_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_iter_ops > ())) . xpi_rewind as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_iter_ops) , "::" , stringify ! (xpi_rewind))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_iter_ops > ())) . xpi_xprt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_iter_ops) , "::" , stringify ! (xpi_xprt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_xprt_iter_ops > ())) . xpi_next as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_xprt_iter_ops) , "::" , stringify ! (xpi_next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rpc_version { pub number : _cargo_bpf_u32 , pub nrprocs : :: cty :: c_uint , pub procs : * const rpc_procinfo , pub counts : * mut :: cty :: c_uint , } # [test] fn bindgen_test_layout_rpc_version () { assert_eq ! (:: core :: mem :: size_of :: < rpc_version > () , 24usize , concat ! ("Size of: " , stringify ! (rpc_version))) ; assert_eq ! (:: core :: mem :: align_of :: < rpc_version > () , 8usize , concat ! ("Alignment of " , stringify ! (rpc_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_version > ())) . number as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rpc_version) , "::" , stringify ! (number))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_version > ())) . nrprocs as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rpc_version) , "::" , stringify ! (nrprocs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_version > ())) . procs as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rpc_version) , "::" , stringify ! (procs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rpc_version > ())) . counts as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rpc_version) , "::" , stringify ! (counts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fh { pub size : :: cty :: c_ushort , pub data : [:: cty :: c_uchar ; 128usize] , } # [test] fn bindgen_test_layout_nfs_fh () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fh > () , 130usize , concat ! ("Size of: " , stringify ! (nfs_fh))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fh > () , 2usize , concat ! ("Alignment of " , stringify ! (nfs_fh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fh > ())) . size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fh) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fh > ())) . data as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (nfs_fh) , "::" , stringify ! (data))) ; } pub const nfs3_stable_how_NFS_UNSTABLE : nfs3_stable_how = 0 ; pub const nfs3_stable_how_NFS_DATA_SYNC : nfs3_stable_how = 1 ; pub const nfs3_stable_how_NFS_FILE_SYNC : nfs3_stable_how = 2 ; pub const nfs3_stable_how_NFS_INVALID_STABLE_HOW : nfs3_stable_how = 4294967295 ; pub type nfs3_stable_how = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_label { pub lfs : u32 , pub pi : u32 , pub len : _cargo_bpf_u32 , pub label : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_nfs4_label () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_label > () , 24usize , concat ! ("Size of: " , stringify ! (nfs4_label))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_label > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_label))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_label > ())) . lfs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_label) , "::" , stringify ! (lfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_label > ())) . pi as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs4_label) , "::" , stringify ! (pi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_label > ())) . len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs4_label) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_label > ())) . label as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs4_label) , "::" , stringify ! (label))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_verifier { pub data : [:: cty :: c_char ; 8usize] , } # [test] fn bindgen_test_layout_nfs4_verifier () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_verifier > () , 8usize , concat ! ("Size of: " , stringify ! (nfs4_verifier))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_verifier > () , 1usize , concat ! ("Alignment of " , stringify ! (nfs4_verifier))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_verifier > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_verifier) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs4_stateid_struct { pub __bindgen_anon_1 : nfs4_stateid_struct__bindgen_ty_1 , pub type_ : nfs4_stateid_struct__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union nfs4_stateid_struct__bindgen_ty_1 { pub data : [:: cty :: c_char ; 16usize] , pub __bindgen_anon_1 : nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 { pub seqid : __be32 , pub other : [:: cty :: c_char ; 12usize] , } # [test] fn bindgen_test_layout_nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 > ())) . seqid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (seqid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1 > ())) . other as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs4_stateid_struct__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (other))) ; } # [test] fn bindgen_test_layout_nfs4_stateid_struct__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_stateid_struct__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (nfs4_stateid_struct__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_stateid_struct__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs4_stateid_struct__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_stateid_struct__bindgen_ty_1 > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_stateid_struct__bindgen_ty_1) , "::" , stringify ! (data))) ; } pub const nfs4_stateid_struct_NFS4_INVALID_STATEID_TYPE : :: cty :: c_uint = 0 ; pub const nfs4_stateid_struct_NFS4_SPECIAL_STATEID_TYPE : :: cty :: c_uint = 1 ; pub const nfs4_stateid_struct_NFS4_OPEN_STATEID_TYPE : :: cty :: c_uint = 2 ; pub const nfs4_stateid_struct_NFS4_LOCK_STATEID_TYPE : :: cty :: c_uint = 3 ; pub const nfs4_stateid_struct_NFS4_DELEGATION_STATEID_TYPE : :: cty :: c_uint = 4 ; pub const nfs4_stateid_struct_NFS4_LAYOUT_STATEID_TYPE : :: cty :: c_uint = 5 ; pub const nfs4_stateid_struct_NFS4_PNFS_DS_STATEID_TYPE : :: cty :: c_uint = 6 ; pub const nfs4_stateid_struct_NFS4_REVOKED_STATEID_TYPE : :: cty :: c_uint = 7 ; pub type nfs4_stateid_struct__bindgen_ty_2 = :: cty :: c_uint ; # [test] fn bindgen_test_layout_nfs4_stateid_struct () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_stateid_struct > () , 20usize , concat ! ("Size of: " , stringify ! (nfs4_stateid_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_stateid_struct > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs4_stateid_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_stateid_struct > ())) . type_ as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs4_stateid_struct) , "::" , stringify ! (type_))) ; } pub type nfs4_stateid = nfs4_stateid_struct ; pub const nfs4_change_attr_type_NFS4_CHANGE_TYPE_IS_MONOTONIC_INCR : nfs4_change_attr_type = 0 ; pub const nfs4_change_attr_type_NFS4_CHANGE_TYPE_IS_VERSION_COUNTER : nfs4_change_attr_type = 1 ; pub const nfs4_change_attr_type_NFS4_CHANGE_TYPE_IS_VERSION_COUNTER_NOPNFS : nfs4_change_attr_type = 2 ; pub const nfs4_change_attr_type_NFS4_CHANGE_TYPE_IS_TIME_METADATA : nfs4_change_attr_type = 3 ; pub const nfs4_change_attr_type_NFS4_CHANGE_TYPE_IS_UNDEFINED : nfs4_change_attr_type = 4 ; pub type nfs4_change_attr_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_string { pub len : :: cty :: c_uint , pub data : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_nfs4_string () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_string > () , 16usize , concat ! ("Size of: " , stringify ! (nfs4_string))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_string > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_string))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_string > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_string) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_string > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs4_string) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fsid { pub major : u64 , pub minor : u64 , } # [test] fn bindgen_test_layout_nfs_fsid () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fsid > () , 16usize , concat ! ("Size of: " , stringify ! (nfs_fsid))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fsid > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_fsid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsid > ())) . major as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fsid) , "::" , stringify ! (major))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsid > ())) . minor as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_fsid) , "::" , stringify ! (minor))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_threshold { pub bm : __u32 , pub l_type : __u32 , pub rd_sz : __u64 , pub wr_sz : __u64 , pub rd_io_sz : __u64 , pub wr_io_sz : __u64 , } # [test] fn bindgen_test_layout_nfs4_threshold () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_threshold > () , 40usize , concat ! ("Size of: " , stringify ! (nfs4_threshold))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_threshold > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_threshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_threshold > ())) . bm as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_threshold) , "::" , stringify ! (bm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_threshold > ())) . l_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs4_threshold) , "::" , stringify ! (l_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_threshold > ())) . rd_sz as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs4_threshold) , "::" , stringify ! (rd_sz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_threshold > ())) . wr_sz as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs4_threshold) , "::" , stringify ! (wr_sz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_threshold > ())) . rd_io_sz as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs4_threshold) , "::" , stringify ! (rd_io_sz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_threshold > ())) . wr_io_sz as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs4_threshold) , "::" , stringify ! (wr_io_sz))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_fattr { pub valid : :: cty :: c_uint , pub mode : umode_t , pub nlink : __u32 , pub uid : kuid_t , pub gid : kgid_t , pub rdev : dev_t , pub size : __u64 , pub du : nfs_fattr__bindgen_ty_1 , pub fsid : nfs_fsid , pub fileid : __u64 , pub mounted_on_fileid : __u64 , pub atime : timespec64 , pub mtime : timespec64 , pub ctime : timespec64 , pub change_attr : __u64 , pub pre_change_attr : __u64 , pub pre_size : __u64 , pub pre_mtime : timespec64 , pub pre_ctime : timespec64 , pub time_start : :: cty :: c_ulong , pub gencount : :: cty :: c_ulong , pub owner_name : * mut nfs4_string , pub group_name : * mut nfs4_string , pub mdsthreshold : * mut nfs4_threshold , pub label : * mut nfs4_label , } # [repr (C)] # [derive (Copy , Clone)] pub union nfs_fattr__bindgen_ty_1 { pub nfs2 : nfs_fattr__bindgen_ty_1__bindgen_ty_1 , pub nfs3 : nfs_fattr__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fattr__bindgen_ty_1__bindgen_ty_1 { pub blocksize : __u32 , pub blocks : __u32 , } # [test] fn bindgen_test_layout_nfs_fattr__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fattr__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fattr__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr__bindgen_ty_1__bindgen_ty_1 > ())) . blocksize as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (blocksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr__bindgen_ty_1__bindgen_ty_1 > ())) . blocks as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (blocks))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fattr__bindgen_ty_1__bindgen_ty_2 { pub used : __u64 , } # [test] fn bindgen_test_layout_nfs_fattr__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fattr__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fattr__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr__bindgen_ty_1__bindgen_ty_2 > ())) . used as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (used))) ; } # [test] fn bindgen_test_layout_nfs_fattr__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fattr__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (nfs_fattr__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fattr__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_fattr__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr__bindgen_ty_1 > ())) . nfs2 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr__bindgen_ty_1) , "::" , stringify ! (nfs2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr__bindgen_ty_1 > ())) . nfs3 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr__bindgen_ty_1) , "::" , stringify ! (nfs3))) ; } # [test] fn bindgen_test_layout_nfs_fattr () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fattr > () , 224usize , concat ! ("Size of: " , stringify ! (nfs_fattr))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fattr > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . valid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (valid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . mode as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . nlink as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (nlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . uid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . gid as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . rdev as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (rdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . du as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (du))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . fsid as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (fsid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . fileid as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (fileid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . mounted_on_fileid as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (mounted_on_fileid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . atime as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (atime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . mtime as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (mtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . ctime as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (ctime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . change_attr as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (change_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . pre_change_attr as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (pre_change_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . pre_size as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (pre_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . pre_mtime as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (pre_mtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . pre_ctime as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (pre_ctime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . time_start as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (time_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . gencount as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (gencount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . owner_name as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (owner_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . group_name as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (group_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . mdsthreshold as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (mdsthreshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fattr > ())) . label as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (nfs_fattr) , "::" , stringify ! (label))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fsinfo { pub fattr : * mut nfs_fattr , pub rtmax : __u32 , pub rtpref : __u32 , pub rtmult : __u32 , pub wtmax : __u32 , pub wtpref : __u32 , pub wtmult : __u32 , pub dtpref : __u32 , pub maxfilesize : __u64 , pub time_delta : timespec64 , pub lease_time : __u32 , pub nlayouttypes : __u32 , pub layouttype : [__u32 ; 8usize] , pub blksize : __u32 , pub clone_blksize : __u32 , pub change_attr_type : nfs4_change_attr_type , pub xattr_support : __u32 , } # [test] fn bindgen_test_layout_nfs_fsinfo () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fsinfo > () , 120usize , concat ! ("Size of: " , stringify ! (nfs_fsinfo))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fsinfo > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_fsinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . fattr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . rtmax as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (rtmax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . rtpref as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (rtpref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . rtmult as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (rtmult))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . wtmax as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (wtmax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . wtpref as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (wtpref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . wtmult as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (wtmult))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . dtpref as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (dtpref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . maxfilesize as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (maxfilesize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . time_delta as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (time_delta))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . lease_time as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (lease_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . nlayouttypes as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (nlayouttypes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . layouttype as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (layouttype))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . blksize as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (blksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . clone_blksize as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (clone_blksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . change_attr_type as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (change_attr_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsinfo > ())) . xattr_support as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (nfs_fsinfo) , "::" , stringify ! (xattr_support))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fsstat { pub fattr : * mut nfs_fattr , pub tbytes : __u64 , pub fbytes : __u64 , pub abytes : __u64 , pub tfiles : __u64 , pub ffiles : __u64 , pub afiles : __u64 , } # [test] fn bindgen_test_layout_nfs_fsstat () { assert_eq ! (:: core :: mem :: size_of :: < nfs_fsstat > () , 56usize , concat ! ("Size of: " , stringify ! (nfs_fsstat))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_fsstat > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_fsstat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . fattr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . tbytes as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (tbytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . fbytes as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (fbytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . abytes as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (abytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . tfiles as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (tfiles))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . ffiles as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (ffiles))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_fsstat > ())) . afiles as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_fsstat) , "::" , stringify ! (afiles))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_pathconf { pub fattr : * mut nfs_fattr , pub max_link : __u32 , pub max_namelen : __u32 , } # [test] fn bindgen_test_layout_nfs_pathconf () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pathconf > () , 16usize , concat ! ("Size of: " , stringify ! (nfs_pathconf))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pathconf > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pathconf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pathconf > ())) . fattr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pathconf) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pathconf > ())) . max_link as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_pathconf) , "::" , stringify ! (max_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pathconf > ())) . max_namelen as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (nfs_pathconf) , "::" , stringify ! (max_namelen))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_change_info { pub atomic : _cargo_bpf_u32 , pub before : _cargo_bpf_u64 , pub after : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_nfs4_change_info () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_change_info > () , 24usize , concat ! ("Size of: " , stringify ! (nfs4_change_info))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_change_info > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_change_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_change_info > ())) . atomic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_change_info) , "::" , stringify ! (atomic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_change_info > ())) . before as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs4_change_info) , "::" , stringify ! (before))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_change_info > ())) . after as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs4_change_info) , "::" , stringify ! (after))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_slot { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_sequence_args { pub sa_slot : * mut nfs4_slot , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_nfs4_sequence_args () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_sequence_args > () , 16usize , concat ! ("Size of: " , stringify ! (nfs4_sequence_args))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_sequence_args > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_sequence_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_args > ())) . sa_slot as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_args) , "::" , stringify ! (sa_slot))) ; } impl nfs4_sequence_args { # [inline] pub fn sa_cache_this (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_sa_cache_this (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn sa_privileged (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u8) } } # [inline] pub fn set_sa_privileged (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (sa_cache_this : _cargo_bpf_u8 , sa_privileged : _cargo_bpf_u8) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let sa_cache_this : u8 = unsafe { :: core :: mem :: transmute (sa_cache_this) } ; sa_cache_this as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let sa_privileged : u8 = unsafe { :: core :: mem :: transmute (sa_privileged) } ; sa_privileged as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_sequence_res { pub sr_slot : * mut nfs4_slot , pub sr_timestamp : :: cty :: c_ulong , pub sr_status : :: cty :: c_int , pub sr_status_flags : _cargo_bpf_u32 , pub sr_highest_slotid : _cargo_bpf_u32 , pub sr_target_highest_slotid : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_nfs4_sequence_res () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_sequence_res > () , 32usize , concat ! ("Size of: " , stringify ! (nfs4_sequence_res))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_sequence_res > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_sequence_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_res > ())) . sr_slot as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_res) , "::" , stringify ! (sr_slot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_res > ())) . sr_timestamp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_res) , "::" , stringify ! (sr_timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_res > ())) . sr_status as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_res) , "::" , stringify ! (sr_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_res > ())) . sr_status_flags as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_res) , "::" , stringify ! (sr_status_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_res > ())) . sr_highest_slotid as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_res) , "::" , stringify ! (sr_highest_slotid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_sequence_res > ())) . sr_target_highest_slotid as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (nfs4_sequence_res) , "::" , stringify ! (sr_target_highest_slotid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_lock_context { pub count : refcount_t , pub list : list_head , pub open_context : * mut nfs_open_context , pub lockowner : fl_owner_t , pub io_count : atomic_t , pub callback_head : callback_head , } # [test] fn bindgen_test_layout_nfs_lock_context () { assert_eq ! (:: core :: mem :: size_of :: < nfs_lock_context > () , 64usize , concat ! ("Size of: " , stringify ! (nfs_lock_context))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_lock_context > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_lock_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_context > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_context) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_context > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_context) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_context > ())) . open_context as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_context) , "::" , stringify ! (open_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_context > ())) . lockowner as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_context) , "::" , stringify ! (lockowner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_context > ())) . io_count as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_context) , "::" , stringify ! (io_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_lock_context > ())) . callback_head as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_lock_context) , "::" , stringify ! (callback_head))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_open_context { pub lock_context : nfs_lock_context , pub flock_owner : fl_owner_t , pub dentry : * mut dentry , pub cred : * const cred , pub ll_cred : * mut rpc_cred , pub state : * mut nfs4_state , pub mode : fmode_t , pub flags : :: cty :: c_ulong , pub error : :: cty :: c_int , pub list : list_head , pub mdsthreshold : * mut nfs4_threshold , pub callback_head : callback_head , } # [test] fn bindgen_test_layout_nfs_open_context () { assert_eq ! (:: core :: mem :: size_of :: < nfs_open_context > () , 168usize , concat ! ("Size of: " , stringify ! (nfs_open_context))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_open_context > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_open_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . lock_context as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (lock_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . flock_owner as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (flock_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . dentry as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . cred as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . ll_cred as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (ll_cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . state as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . mode as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . flags as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . error as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . list as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . mdsthreshold as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (mdsthreshold))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_open_context > ())) . callback_head as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (nfs_open_context) , "::" , stringify ! (callback_head))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nlm_host { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_iostats { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_auth_info { pub flavor_len : :: cty :: c_uint , pub flavors : [rpc_authflavor_t ; 12usize] , } # [test] fn bindgen_test_layout_nfs_auth_info () { assert_eq ! (:: core :: mem :: size_of :: < nfs_auth_info > () , 52usize , concat ! ("Size of: " , stringify ! (nfs_auth_info))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_auth_info > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs_auth_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_auth_info > ())) . flavor_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_auth_info) , "::" , stringify ! (flavor_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_auth_info > ())) . flavors as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs_auth_info) , "::" , stringify ! (flavors))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_fscache_key { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fscache_cookie { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pnfs_layoutdriver_type { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_server { pub nfs_client : * mut nfs_client , pub client_link : list_head , pub master_link : list_head , pub client : * mut rpc_clnt , pub client_acl : * mut rpc_clnt , pub nlm_host : * mut nlm_host , pub io_stats : * mut nfs_iostats , pub writeback : atomic_long_t , pub flags : :: cty :: c_uint , pub fattr_valid : :: cty :: c_uint , pub caps : :: cty :: c_uint , pub rsize : :: cty :: c_uint , pub rpages : :: cty :: c_uint , pub wsize : :: cty :: c_uint , pub wpages : :: cty :: c_uint , pub wtmult : :: cty :: c_uint , pub dtsize : :: cty :: c_uint , pub port : :: cty :: c_ushort , pub bsize : :: cty :: c_uint , pub gxasize : :: cty :: c_uint , pub sxasize : :: cty :: c_uint , pub lxasize : :: cty :: c_uint , pub acregmin : :: cty :: c_uint , pub acregmax : :: cty :: c_uint , pub acdirmin : :: cty :: c_uint , pub acdirmax : :: cty :: c_uint , pub namelen : :: cty :: c_uint , pub options : :: cty :: c_uint , pub clone_blksize : :: cty :: c_uint , pub change_attr_type : nfs4_change_attr_type , pub fsid : nfs_fsid , pub maxfilesize : __u64 , pub time_delta : timespec64 , pub mount_time : :: cty :: c_ulong , pub super_ : * mut super_block , pub s_dev : dev_t , pub auth_info : nfs_auth_info , pub fscache_key : * mut nfs_fscache_key , pub fscache : * mut fscache_cookie , pub pnfs_blksize : _cargo_bpf_u32 , pub attr_bitmask : [_cargo_bpf_u32 ; 3usize] , pub attr_bitmask_nl : [_cargo_bpf_u32 ; 3usize] , pub exclcreat_bitmask : [_cargo_bpf_u32 ; 3usize] , pub cache_consistency_bitmask : [_cargo_bpf_u32 ; 3usize] , pub acl_bitmask : _cargo_bpf_u32 , pub fh_expire_type : _cargo_bpf_u32 , pub pnfs_curr_ld : * mut pnfs_layoutdriver_type , pub roc_rpcwaitq : rpc_wait_queue , pub pnfs_ld_data : * mut :: cty :: c_void , pub state_owners : rb_root , pub openowner_id : ida , pub lockowner_id : ida , pub state_owners_lru : list_head , pub layouts : list_head , pub delegations : list_head , pub ss_copies : list_head , pub mig_gen : :: cty :: c_ulong , pub mig_status : :: cty :: c_ulong , pub destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server) > , pub active : atomic_t , pub mountd_address : __kernel_sockaddr_storage , pub mountd_addrlen : size_t , pub mountd_version : _cargo_bpf_u32 , pub mountd_port : :: cty :: c_ushort , pub mountd_protocol : :: cty :: c_ushort , pub uoc_rpcwaitq : rpc_wait_queue , pub read_hdrsize : :: cty :: c_uint , pub cred : * const cred , pub has_sec_mnt_opts : bool_ , } # [test] fn bindgen_test_layout_nfs_server () { assert_eq ! (:: core :: mem :: size_of :: < nfs_server > () , 1080usize , concat ! ("Size of: " , stringify ! (nfs_server))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_server > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_server))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . nfs_client as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (nfs_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . client_link as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (client_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . master_link as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (master_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . client as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . client_acl as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (client_acl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . nlm_host as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (nlm_host))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . io_stats as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (io_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . writeback as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (writeback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . fattr_valid as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (fattr_valid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . caps as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (caps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . rsize as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (rsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . rpages as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (rpages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . wsize as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (wsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . wpages as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (wpages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . wtmult as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (wtmult))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . dtsize as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (dtsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . port as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . bsize as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (bsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . gxasize as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (gxasize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . sxasize as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (sxasize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . lxasize as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (lxasize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . acregmin as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (acregmin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . acregmax as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (acregmax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . acdirmin as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (acdirmin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . acdirmax as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (acdirmax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . namelen as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (namelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . options as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . clone_blksize as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (clone_blksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . change_attr_type as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (change_attr_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . fsid as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (fsid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . maxfilesize as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (maxfilesize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . time_delta as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (time_delta))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mount_time as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mount_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . super_ as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (super_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . s_dev as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (s_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . auth_info as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (auth_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . fscache_key as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (fscache_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . fscache as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (fscache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . pnfs_blksize as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (pnfs_blksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . attr_bitmask as * const _ as usize } , 300usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (attr_bitmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . attr_bitmask_nl as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (attr_bitmask_nl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . exclcreat_bitmask as * const _ as usize } , 324usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (exclcreat_bitmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . cache_consistency_bitmask as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (cache_consistency_bitmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . acl_bitmask as * const _ as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (acl_bitmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . fh_expire_type as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (fh_expire_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . pnfs_curr_ld as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (pnfs_curr_ld))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . roc_rpcwaitq as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (roc_rpcwaitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . pnfs_ld_data as * const _ as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (pnfs_ld_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . state_owners as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (state_owners))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . openowner_id as * const _ as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (openowner_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . lockowner_id as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (lockowner_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . state_owners_lru as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (state_owners_lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . layouts as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (layouts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . delegations as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (delegations))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . ss_copies as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (ss_copies))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mig_gen as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mig_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mig_status as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mig_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . destroy as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . active as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mountd_address as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mountd_address))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mountd_addrlen as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mountd_addrlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mountd_version as * const _ as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mountd_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mountd_port as * const _ as usize } , 852usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mountd_port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . mountd_protocol as * const _ as usize } , 854usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (mountd_protocol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . uoc_rpcwaitq as * const _ as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (uoc_rpcwaitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . read_hdrsize as * const _ as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (read_hdrsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . cred as * const _ as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_server > ())) . has_sec_mnt_opts as * const _ as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (nfs_server) , "::" , stringify ! (has_sec_mnt_opts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_subversion { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct idmap { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_slot_table { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_session { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_client { pub cl_count : refcount_t , pub cl_mds_count : atomic_t , pub cl_cons_state : :: cty :: c_int , pub cl_res_state : :: cty :: c_ulong , pub cl_flags : :: cty :: c_ulong , pub cl_addr : __kernel_sockaddr_storage , pub cl_addrlen : size_t , pub cl_hostname : * mut :: cty :: c_char , pub cl_acceptor : * mut :: cty :: c_char , pub cl_share_link : list_head , pub cl_superblocks : list_head , pub cl_rpcclient : * mut rpc_clnt , pub rpc_ops : * const nfs_rpc_ops , pub cl_proto : :: cty :: c_int , pub cl_nfs_mod : * mut nfs_subversion , pub cl_minorversion : _cargo_bpf_u32 , pub cl_nconnect : :: cty :: c_uint , pub cl_principal : * const :: cty :: c_char , pub cl_ds_clients : list_head , pub cl_clientid : _cargo_bpf_u64 , pub cl_confirm : nfs4_verifier , pub cl_state : :: cty :: c_ulong , pub cl_lock : spinlock_t , pub cl_lease_time : :: cty :: c_ulong , pub cl_last_renewal : :: cty :: c_ulong , pub cl_renewd : delayed_work , pub cl_rpcwaitq : rpc_wait_queue , pub cl_idmap : * mut idmap , pub cl_owner_id : * const :: cty :: c_char , pub cl_cb_ident : _cargo_bpf_u32 , pub cl_mvops : * const nfs4_minor_version_ops , pub cl_mig_gen : :: cty :: c_ulong , pub cl_slot_tbl : * mut nfs4_slot_table , pub cl_seqid : _cargo_bpf_u32 , pub cl_exchange_flags : _cargo_bpf_u32 , pub cl_session : * mut nfs4_session , pub cl_preserve_clid : bool_ , pub cl_serverowner : * mut nfs41_server_owner , pub cl_serverscope : * mut nfs41_server_scope , pub cl_implid : * mut nfs41_impl_id , pub cl_sp4_flags : :: cty :: c_ulong , pub cl_lock_waitq : wait_queue_head_t , pub cl_ipaddr : [:: cty :: c_char ; 48usize] , pub fscache : * mut fscache_cookie , pub cl_net : * mut net , pub pending_cb_stateids : list_head , } # [test] fn bindgen_test_layout_nfs_client () { assert_eq ! (:: core :: mem :: size_of :: < nfs_client > () , 824usize , concat ! ("Size of: " , stringify ! (nfs_client))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_client > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_mds_count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_mds_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_cons_state as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_cons_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_res_state as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_res_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_addr as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_addrlen as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_addrlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_hostname as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_hostname))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_acceptor as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_acceptor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_share_link as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_share_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_superblocks as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_superblocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_rpcclient as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_rpcclient))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . rpc_ops as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (rpc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_proto as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_proto))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_nfs_mod as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_nfs_mod))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_minorversion as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_minorversion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_nconnect as * const _ as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_nconnect))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_principal as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_principal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_ds_clients as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_ds_clients))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_clientid as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_clientid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_confirm as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_confirm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_state as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_lock as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_lease_time as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_lease_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_last_renewal as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_last_renewal))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_renewd as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_renewd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_rpcwaitq as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_rpcwaitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_idmap as * const _ as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_idmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_owner_id as * const _ as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_owner_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_cb_ident as * const _ as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_cb_ident))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_mvops as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_mvops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_mig_gen as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_mig_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_slot_tbl as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_slot_tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_seqid as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_seqid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_exchange_flags as * const _ as usize } , 668usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_exchange_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_session as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_session))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_preserve_clid as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_preserve_clid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_serverowner as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_serverowner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_serverscope as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_serverscope))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_implid as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_implid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_sp4_flags as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_sp4_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_lock_waitq as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_lock_waitq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_ipaddr as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_ipaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . fscache as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (fscache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . cl_net as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (cl_net))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_client > ())) . pending_cb_stateids as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (nfs_client) , "::" , stringify ! (pending_cb_stateids))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pnfs_layout_segment { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_write_verifier { pub data : [:: cty :: c_char ; 8usize] , } # [test] fn bindgen_test_layout_nfs_write_verifier () { assert_eq ! (:: core :: mem :: size_of :: < nfs_write_verifier > () , 8usize , concat ! ("Size of: " , stringify ! (nfs_write_verifier))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_write_verifier > () , 1usize , concat ! ("Alignment of " , stringify ! (nfs_write_verifier))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_write_verifier > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_write_verifier) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_writeverf { pub verifier : nfs_write_verifier , pub committed : nfs3_stable_how , } # [test] fn bindgen_test_layout_nfs_writeverf () { assert_eq ! (:: core :: mem :: size_of :: < nfs_writeverf > () , 12usize , concat ! ("Size of: " , stringify ! (nfs_writeverf))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_writeverf > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs_writeverf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_writeverf > ())) . verifier as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_writeverf) , "::" , stringify ! (verifier))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_writeverf > ())) . committed as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_writeverf) , "::" , stringify ! (committed))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_pgio_args { pub seq_args : nfs4_sequence_args , pub fh : * mut nfs_fh , pub context : * mut nfs_open_context , pub lock_context : * mut nfs_lock_context , pub stateid : nfs4_stateid , pub offset : __u64 , pub count : __u32 , pub pgbase : :: cty :: c_uint , pub pages : * mut * mut page , pub __bindgen_anon_1 : nfs_pgio_args__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union nfs_pgio_args__bindgen_ty_1 { pub replen : :: cty :: c_uint , pub __bindgen_anon_1 : nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 { pub bitmask : * const _cargo_bpf_u32 , pub bitmask_store : [_cargo_bpf_u32 ; 3usize] , pub stable : nfs3_stable_how , } # [test] fn bindgen_test_layout_nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (nfs_pgio_args__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_args__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 > ())) . bitmask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (bitmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 > ())) . bitmask_store as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (bitmask_store))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args__bindgen_ty_1__bindgen_ty_1 > ())) . stable as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (stable))) ; } # [test] fn bindgen_test_layout_nfs_pgio_args__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_args__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (nfs_pgio_args__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_args__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_args__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args__bindgen_ty_1 > ())) . replen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args__bindgen_ty_1) , "::" , stringify ! (replen))) ; } # [test] fn bindgen_test_layout_nfs_pgio_args () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_args > () , 112usize , concat ! ("Size of: " , stringify ! (nfs_pgio_args))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_args > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . seq_args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (seq_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . fh as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (fh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . context as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . lock_context as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (lock_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . stateid as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (stateid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . offset as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . count as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . pgbase as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (pgbase))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_args > ())) . pages as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_args) , "::" , stringify ! (pages))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_pgio_res { pub seq_res : nfs4_sequence_res , pub fattr : * mut nfs_fattr , pub count : __u64 , pub op_status : __u32 , pub __bindgen_anon_1 : nfs_pgio_res__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union nfs_pgio_res__bindgen_ty_1 { pub __bindgen_anon_1 : nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 { pub replen : :: cty :: c_uint , pub eof : :: cty :: c_int , } # [test] fn bindgen_test_layout_nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 > ())) . replen as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (replen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_1 > ())) . eof as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (eof))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 { pub verf : * mut nfs_writeverf , pub server : * const nfs_server , } # [test] fn bindgen_test_layout_nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 > ())) . verf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (verf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res__bindgen_ty_1__bindgen_ty_2 > ())) . server as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (server))) ; } # [test] fn bindgen_test_layout_nfs_pgio_res__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_res__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (nfs_pgio_res__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_res__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_res__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_nfs_pgio_res () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_res > () , 72usize , concat ! ("Size of: " , stringify ! (nfs_pgio_res))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_res > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res > ())) . seq_res as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res) , "::" , stringify ! (seq_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res > ())) . fattr as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res > ())) . count as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_res > ())) . op_status as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_res) , "::" , stringify ! (op_status))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_commitargs { pub seq_args : nfs4_sequence_args , pub fh : * mut nfs_fh , pub offset : __u64 , pub count : __u32 , pub bitmask : * const _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_nfs_commitargs () { assert_eq ! (:: core :: mem :: size_of :: < nfs_commitargs > () , 48usize , concat ! ("Size of: " , stringify ! (nfs_commitargs))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_commitargs > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_commitargs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitargs > ())) . seq_args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_commitargs) , "::" , stringify ! (seq_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitargs > ())) . fh as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_commitargs) , "::" , stringify ! (fh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitargs > ())) . offset as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_commitargs) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitargs > ())) . count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_commitargs) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitargs > ())) . bitmask as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_commitargs) , "::" , stringify ! (bitmask))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_commitres { pub seq_res : nfs4_sequence_res , pub op_status : __u32 , pub fattr : * mut nfs_fattr , pub verf : * mut nfs_writeverf , pub server : * const nfs_server , } # [test] fn bindgen_test_layout_nfs_commitres () { assert_eq ! (:: core :: mem :: size_of :: < nfs_commitres > () , 64usize , concat ! ("Size of: " , stringify ! (nfs_commitres))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_commitres > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_commitres))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitres > ())) . seq_res as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_commitres) , "::" , stringify ! (seq_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitres > ())) . op_status as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_commitres) , "::" , stringify ! (op_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitres > ())) . fattr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_commitres) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitres > ())) . verf as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_commitres) , "::" , stringify ! (verf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commitres > ())) . server as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_commitres) , "::" , stringify ! (server))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_removeargs { pub seq_args : nfs4_sequence_args , pub fh : * const nfs_fh , pub name : qstr , } # [test] fn bindgen_test_layout_nfs_removeargs () { assert_eq ! (:: core :: mem :: size_of :: < nfs_removeargs > () , 40usize , concat ! ("Size of: " , stringify ! (nfs_removeargs))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_removeargs > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_removeargs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeargs > ())) . seq_args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_removeargs) , "::" , stringify ! (seq_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeargs > ())) . fh as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_removeargs) , "::" , stringify ! (fh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeargs > ())) . name as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_removeargs) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_removeres { pub seq_res : nfs4_sequence_res , pub server : * mut nfs_server , pub dir_attr : * mut nfs_fattr , pub cinfo : nfs4_change_info , } # [test] fn bindgen_test_layout_nfs_removeres () { assert_eq ! (:: core :: mem :: size_of :: < nfs_removeres > () , 72usize , concat ! ("Size of: " , stringify ! (nfs_removeres))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_removeres > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_removeres))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeres > ())) . seq_res as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_removeres) , "::" , stringify ! (seq_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeres > ())) . server as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_removeres) , "::" , stringify ! (server))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeres > ())) . dir_attr as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_removeres) , "::" , stringify ! (dir_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_removeres > ())) . cinfo as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_removeres) , "::" , stringify ! (cinfo))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_renameargs { pub seq_args : nfs4_sequence_args , pub old_dir : * const nfs_fh , pub new_dir : * const nfs_fh , pub old_name : * const qstr , pub new_name : * const qstr , } # [test] fn bindgen_test_layout_nfs_renameargs () { assert_eq ! (:: core :: mem :: size_of :: < nfs_renameargs > () , 48usize , concat ! ("Size of: " , stringify ! (nfs_renameargs))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_renameargs > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_renameargs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameargs > ())) . seq_args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_renameargs) , "::" , stringify ! (seq_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameargs > ())) . old_dir as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_renameargs) , "::" , stringify ! (old_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameargs > ())) . new_dir as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_renameargs) , "::" , stringify ! (new_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameargs > ())) . old_name as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_renameargs) , "::" , stringify ! (old_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameargs > ())) . new_name as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_renameargs) , "::" , stringify ! (new_name))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_renameres { pub seq_res : nfs4_sequence_res , pub server : * mut nfs_server , pub old_cinfo : nfs4_change_info , pub old_fattr : * mut nfs_fattr , pub new_cinfo : nfs4_change_info , pub new_fattr : * mut nfs_fattr , } # [test] fn bindgen_test_layout_nfs_renameres () { assert_eq ! (:: core :: mem :: size_of :: < nfs_renameres > () , 104usize , concat ! ("Size of: " , stringify ! (nfs_renameres))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_renameres > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_renameres))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameres > ())) . seq_res as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_renameres) , "::" , stringify ! (seq_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameres > ())) . server as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_renameres) , "::" , stringify ! (server))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameres > ())) . old_cinfo as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_renameres) , "::" , stringify ! (old_cinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameres > ())) . old_fattr as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_renameres) , "::" , stringify ! (old_fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameres > ())) . new_cinfo as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_renameres) , "::" , stringify ! (new_cinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renameres > ())) . new_fattr as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (nfs_renameres) , "::" , stringify ! (new_fattr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_entry { pub ino : __u64 , pub cookie : __u64 , pub prev_cookie : __u64 , pub name : * const :: cty :: c_char , pub len : :: cty :: c_uint , pub eof : :: cty :: c_int , pub fh : * mut nfs_fh , pub fattr : * mut nfs_fattr , pub label : * mut nfs4_label , pub d_type : :: cty :: c_uchar , pub server : * mut nfs_server , } # [test] fn bindgen_test_layout_nfs_entry () { assert_eq ! (:: core :: mem :: size_of :: < nfs_entry > () , 80usize , concat ! ("Size of: " , stringify ! (nfs_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . ino as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (ino))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . cookie as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . prev_cookie as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (prev_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . name as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . len as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . eof as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (eof))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . fh as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (fh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . fattr as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . label as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (label))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . d_type as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (d_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_entry > ())) . server as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_entry) , "::" , stringify ! (server))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_readdir_arg { pub dentry : * mut dentry , pub cred : * const cred , pub verf : * mut __be32 , pub cookie : _cargo_bpf_u64 , pub pages : * mut * mut page , pub page_len : :: cty :: c_uint , pub plus : bool_ , } # [test] fn bindgen_test_layout_nfs_readdir_arg () { assert_eq ! (:: core :: mem :: size_of :: < nfs_readdir_arg > () , 48usize , concat ! ("Size of: " , stringify ! (nfs_readdir_arg))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_readdir_arg > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_readdir_arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . dentry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . cred as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . verf as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (verf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . cookie as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . pages as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . page_len as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (page_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_arg > ())) . plus as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_arg) , "::" , stringify ! (plus))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_readdir_res { pub verf : * mut __be32 , } # [test] fn bindgen_test_layout_nfs_readdir_res () { assert_eq ! (:: core :: mem :: size_of :: < nfs_readdir_res > () , 8usize , concat ! ("Size of: " , stringify ! (nfs_readdir_res))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_readdir_res > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_readdir_res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_readdir_res > ())) . verf as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_readdir_res) , "::" , stringify ! (verf))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfstime4 { pub seconds : _cargo_bpf_u64 , pub nseconds : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_nfstime4 () { assert_eq ! (:: core :: mem :: size_of :: < nfstime4 > () , 16usize , concat ! ("Size of: " , stringify ! (nfstime4))) ; assert_eq ! (:: core :: mem :: align_of :: < nfstime4 > () , 8usize , concat ! ("Alignment of " , stringify ! (nfstime4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfstime4 > ())) . seconds as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfstime4) , "::" , stringify ! (seconds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfstime4 > ())) . nseconds as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfstime4) , "::" , stringify ! (nseconds))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pnfs_commit_ops { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pnfs_ds_commit_info { pub commits : list_head , pub nwritten : :: cty :: c_uint , pub ncommitting : :: cty :: c_uint , pub ops : * const pnfs_commit_ops , } # [test] fn bindgen_test_layout_pnfs_ds_commit_info () { assert_eq ! (:: core :: mem :: size_of :: < pnfs_ds_commit_info > () , 32usize , concat ! ("Size of: " , stringify ! (pnfs_ds_commit_info))) ; assert_eq ! (:: core :: mem :: align_of :: < pnfs_ds_commit_info > () , 8usize , concat ! ("Alignment of " , stringify ! (pnfs_ds_commit_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pnfs_ds_commit_info > ())) . commits as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pnfs_ds_commit_info) , "::" , stringify ! (commits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pnfs_ds_commit_info > ())) . nwritten as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pnfs_ds_commit_info) , "::" , stringify ! (nwritten))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pnfs_ds_commit_info > ())) . ncommitting as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (pnfs_ds_commit_info) , "::" , stringify ! (ncommitting))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pnfs_ds_commit_info > ())) . ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pnfs_ds_commit_info) , "::" , stringify ! (ops))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs41_server_owner { pub minor_id : u64 , pub major_id_sz : u32 , pub major_id : [:: cty :: c_char ; 1024usize] , } # [test] fn bindgen_test_layout_nfs41_server_owner () { assert_eq ! (:: core :: mem :: size_of :: < nfs41_server_owner > () , 1040usize , concat ! ("Size of: " , stringify ! (nfs41_server_owner))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs41_server_owner > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs41_server_owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_server_owner > ())) . minor_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs41_server_owner) , "::" , stringify ! (minor_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_server_owner > ())) . major_id_sz as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs41_server_owner) , "::" , stringify ! (major_id_sz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_server_owner > ())) . major_id as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (nfs41_server_owner) , "::" , stringify ! (major_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs41_server_scope { pub server_scope_sz : u32 , pub server_scope : [:: cty :: c_char ; 1024usize] , } # [test] fn bindgen_test_layout_nfs41_server_scope () { assert_eq ! (:: core :: mem :: size_of :: < nfs41_server_scope > () , 1028usize , concat ! ("Size of: " , stringify ! (nfs41_server_scope))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs41_server_scope > () , 4usize , concat ! ("Alignment of " , stringify ! (nfs41_server_scope))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_server_scope > ())) . server_scope_sz as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs41_server_scope) , "::" , stringify ! (server_scope_sz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_server_scope > ())) . server_scope as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs41_server_scope) , "::" , stringify ! (server_scope))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs41_impl_id { pub domain : [:: cty :: c_char ; 1025usize] , pub name : [:: cty :: c_char ; 1025usize] , pub date : nfstime4 , } # [test] fn bindgen_test_layout_nfs41_impl_id () { assert_eq ! (:: core :: mem :: size_of :: < nfs41_impl_id > () , 2072usize , concat ! ("Size of: " , stringify ! (nfs41_impl_id))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs41_impl_id > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs41_impl_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_impl_id > ())) . domain as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs41_impl_id) , "::" , stringify ! (domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_impl_id > ())) . name as * const _ as usize } , 1025usize , concat ! ("Offset of field: " , stringify ! (nfs41_impl_id) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs41_impl_id > ())) . date as * const _ as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (nfs41_impl_id) , "::" , stringify ! (date))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_page_array { pub pagevec : * mut * mut page , pub npages : :: cty :: c_uint , pub page_array : [* mut page ; 8usize] , } # [test] fn bindgen_test_layout_nfs_page_array () { assert_eq ! (:: core :: mem :: size_of :: < nfs_page_array > () , 80usize , concat ! ("Size of: " , stringify ! (nfs_page_array))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_page_array > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_page_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_page_array > ())) . pagevec as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_page_array) , "::" , stringify ! (pagevec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_page_array > ())) . npages as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_page_array) , "::" , stringify ! (npages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_page_array > ())) . page_array as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_page_array) , "::" , stringify ! (page_array))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_page { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_rw_ops { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_io_completion { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_direct_req { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_pgio_header { pub inode : * mut inode , pub cred : * const cred , pub pages : list_head , pub req : * mut nfs_page , pub verf : nfs_writeverf , pub rw_mode : fmode_t , pub lseg : * mut pnfs_layout_segment , pub io_start : loff_t , pub mds_ops : * const rpc_call_ops , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_pgio_header) > , pub completion_ops : * const nfs_pgio_completion_ops , pub rw_ops : * const nfs_rw_ops , pub io_completion : * mut nfs_io_completion , pub dreq : * mut nfs_direct_req , pub pnfs_error : :: cty :: c_int , pub error : :: cty :: c_int , pub good_bytes : :: cty :: c_uint , pub flags : :: cty :: c_ulong , pub task : rpc_task , pub fattr : nfs_fattr , pub args : nfs_pgio_args , pub res : nfs_pgio_res , pub timestamp : :: cty :: c_ulong , pub pgio_done_cb : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_pgio_header) -> :: cty :: c_int > , pub mds_offset : __u64 , pub page_array : nfs_page_array , pub ds_clp : * mut nfs_client , pub ds_commit_idx : _cargo_bpf_u32 , pub pgio_mirror_idx : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_nfs_pgio_header () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_header > () , 904usize , concat ! ("Size of: " , stringify ! (nfs_pgio_header))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_header > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . inode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . cred as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . pages as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . req as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (req))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . verf as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (verf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . rw_mode as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (rw_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . lseg as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (lseg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . io_start as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (io_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . mds_ops as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (mds_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . release as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . completion_ops as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (completion_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . rw_ops as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (rw_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . io_completion as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (io_completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . dreq as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (dreq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . pnfs_error as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (pnfs_error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . error as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (error))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . good_bytes as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (good_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . flags as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . task as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . fattr as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . args as * const _ as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . res as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . timestamp as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . pgio_done_cb as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (pgio_done_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . mds_offset as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (mds_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . page_array as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (page_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . ds_clp as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (ds_clp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . ds_commit_idx as * const _ as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (ds_commit_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_header > ())) . pgio_mirror_idx as * const _ as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_header) , "::" , stringify ! (pgio_mirror_idx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_pgio_completion_ops { pub error_cleanup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut list_head , arg2 : :: cty :: c_int) > , pub init_hdr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_pgio_header) > , pub completion : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_pgio_header) > , pub reschedule_io : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_pgio_header) > , } # [test] fn bindgen_test_layout_nfs_pgio_completion_ops () { assert_eq ! (:: core :: mem :: size_of :: < nfs_pgio_completion_ops > () , 32usize , concat ! ("Size of: " , stringify ! (nfs_pgio_completion_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_pgio_completion_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_pgio_completion_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_completion_ops > ())) . error_cleanup as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_completion_ops) , "::" , stringify ! (error_cleanup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_completion_ops > ())) . init_hdr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_completion_ops) , "::" , stringify ! (init_hdr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_completion_ops > ())) . completion as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_completion_ops) , "::" , stringify ! (completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_pgio_completion_ops > ())) . reschedule_io as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_pgio_completion_ops) , "::" , stringify ! (reschedule_io))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_mds_commit_info { pub rpcs_out : atomic_t , pub ncommit : atomic_long_t , pub list : list_head , } # [test] fn bindgen_test_layout_nfs_mds_commit_info () { assert_eq ! (:: core :: mem :: size_of :: < nfs_mds_commit_info > () , 32usize , concat ! ("Size of: " , stringify ! (nfs_mds_commit_info))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_mds_commit_info > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_mds_commit_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_mds_commit_info > ())) . rpcs_out as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_mds_commit_info) , "::" , stringify ! (rpcs_out))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_mds_commit_info > ())) . ncommit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_mds_commit_info) , "::" , stringify ! (ncommit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_mds_commit_info > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_mds_commit_info) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_commit_completion_ops { pub completion : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_commit_data) > , pub resched_write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_commit_info , arg2 : * mut nfs_page) > , } # [test] fn bindgen_test_layout_nfs_commit_completion_ops () { assert_eq ! (:: core :: mem :: size_of :: < nfs_commit_completion_ops > () , 16usize , concat ! ("Size of: " , stringify ! (nfs_commit_completion_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_commit_completion_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_commit_completion_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_completion_ops > ())) . completion as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_completion_ops) , "::" , stringify ! (completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_completion_ops > ())) . resched_write as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_completion_ops) , "::" , stringify ! (resched_write))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_commit_data { pub task : rpc_task , pub inode : * mut inode , pub cred : * const cred , pub fattr : nfs_fattr , pub verf : nfs_writeverf , pub pages : list_head , pub list : list_head , pub dreq : * mut nfs_direct_req , pub args : nfs_commitargs , pub res : nfs_commitres , pub context : * mut nfs_open_context , pub lseg : * mut pnfs_layout_segment , pub ds_clp : * mut nfs_client , pub ds_commit_index : :: cty :: c_int , pub lwb : loff_t , pub mds_ops : * const rpc_call_ops , pub completion_ops : * const nfs_commit_completion_ops , pub commit_done_cb : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_commit_data) -> :: cty :: c_int > , pub flags : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_nfs_commit_data () { assert_eq ! (:: core :: mem :: size_of :: < nfs_commit_data > () , 712usize , concat ! ("Size of: " , stringify ! (nfs_commit_data))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_commit_data > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_commit_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . task as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . inode as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . cred as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . fattr as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . verf as * const _ as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (verf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . pages as * const _ as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . list as * const _ as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . dreq as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (dreq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . args as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . res as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . context as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . lseg as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (lseg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . ds_clp as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (ds_clp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . ds_commit_index as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (ds_commit_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . lwb as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (lwb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . mds_ops as * const _ as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (mds_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . completion_ops as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (completion_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . commit_done_cb as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (commit_done_cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_data > ())) . flags as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_data) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_commit_info { pub inode : * mut inode , pub mds : * mut nfs_mds_commit_info , pub ds : * mut pnfs_ds_commit_info , pub dreq : * mut nfs_direct_req , pub completion_ops : * const nfs_commit_completion_ops , } # [test] fn bindgen_test_layout_nfs_commit_info () { assert_eq ! (:: core :: mem :: size_of :: < nfs_commit_info > () , 40usize , concat ! ("Size of: " , stringify ! (nfs_commit_info))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_commit_info > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_commit_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_info > ())) . inode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_info) , "::" , stringify ! (inode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_info > ())) . mds as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_info) , "::" , stringify ! (mds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_info > ())) . ds as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_info) , "::" , stringify ! (ds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_info > ())) . dreq as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_info) , "::" , stringify ! (dreq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_commit_info > ())) . completion_ops as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_commit_info) , "::" , stringify ! (completion_ops))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_unlinkdata { pub args : nfs_removeargs , pub res : nfs_removeres , pub dentry : * mut dentry , pub wq : wait_queue_head_t , pub cred : * const cred , pub dir_attr : nfs_fattr , pub timeout : :: cty :: c_long , } # [test] fn bindgen_test_layout_nfs_unlinkdata () { assert_eq ! (:: core :: mem :: size_of :: < nfs_unlinkdata > () , 384usize , concat ! ("Size of: " , stringify ! (nfs_unlinkdata))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_unlinkdata > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_unlinkdata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . res as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . dentry as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . wq as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . cred as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . dir_attr as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (dir_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_unlinkdata > ())) . timeout as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (nfs_unlinkdata) , "::" , stringify ! (timeout))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct nfs_renamedata { pub args : nfs_renameargs , pub res : nfs_renameres , pub cred : * const cred , pub old_dir : * mut inode , pub old_dentry : * mut dentry , pub old_fattr : nfs_fattr , pub new_dir : * mut inode , pub new_dentry : * mut dentry , pub new_fattr : nfs_fattr , pub complete : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_renamedata) > , pub timeout : :: cty :: c_long , pub cancelled : bool_ , } # [test] fn bindgen_test_layout_nfs_renamedata () { assert_eq ! (:: core :: mem :: size_of :: < nfs_renamedata > () , 664usize , concat ! ("Size of: " , stringify ! (nfs_renamedata))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_renamedata > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_renamedata))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . res as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (res))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . cred as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . old_dir as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (old_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . old_dentry as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (old_dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . old_fattr as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (old_fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . new_dir as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (new_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . new_dentry as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (new_dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . new_fattr as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (new_fattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . complete as * const _ as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (complete))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . timeout as * const _ as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_renamedata > ())) . cancelled as * const _ as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (nfs_renamedata) , "::" , stringify ! (cancelled))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nlmclnt_operations { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_client_initdata { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_rpc_ops { pub version : _cargo_bpf_u32 , pub dentry_ops : * const dentry_operations , pub dir_inode_ops : * const inode_operations , pub file_inode_ops : * const inode_operations , pub file_ops : * const file_operations , pub nlmclnt_ops : * const nlmclnt_operations , pub getroot : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_fsinfo) -> :: cty :: c_int > , pub submount : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context , arg2 : * mut nfs_server) -> :: cty :: c_int > , pub try_get_tree : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context) -> :: cty :: c_int > , pub getattr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_fattr , arg4 : * mut nfs4_label , arg5 : * mut inode) -> :: cty :: c_int > , pub setattr : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry , arg2 : * mut nfs_fattr , arg3 : * mut iattr) -> :: cty :: c_int > , pub lookup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : * mut nfs_fh , arg4 : * mut nfs_fattr , arg5 : * mut nfs4_label) -> :: cty :: c_int > , pub lookupp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut nfs_fh , arg3 : * mut nfs_fattr , arg4 : * mut nfs4_label) -> :: cty :: c_int > , pub access : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut nfs_access_entry) -> :: cty :: c_int > , pub readlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut page , arg3 : :: cty :: c_uint , arg4 : :: cty :: c_uint) -> :: cty :: c_int > , pub create : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : * mut iattr , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub remove : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry) -> :: cty :: c_int > , pub unlink_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_message , arg2 : * mut dentry , arg3 : * mut inode) > , pub unlink_rpc_prepare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_unlinkdata) > , pub unlink_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut inode) -> :: cty :: c_int > , pub rename_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_message , arg2 : * mut dentry , arg3 : * mut dentry) > , pub rename_rpc_prepare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_renamedata) > , pub rename_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut inode , arg3 : * mut inode) -> :: cty :: c_int > , pub link : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut inode , arg3 : * const qstr) -> :: cty :: c_int > , pub symlink : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : * mut page , arg4 : :: cty :: c_uint , arg5 : * mut iattr) -> :: cty :: c_int > , pub mkdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : * mut iattr) -> :: cty :: c_int > , pub rmdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * const qstr) -> :: cty :: c_int > , pub readdir : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_readdir_arg , arg2 : * mut nfs_readdir_res) -> :: cty :: c_int > , pub mknod : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut dentry , arg3 : * mut iattr , arg4 : dev_t) -> :: cty :: c_int > , pub statfs : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_fsstat) -> :: cty :: c_int > , pub fsinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_fsinfo) -> :: cty :: c_int > , pub pathconf : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_pathconf) -> :: cty :: c_int > , pub set_capabilities : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh) -> :: cty :: c_int > , pub decode_dirent : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut xdr_stream , arg2 : * mut nfs_entry , arg3 : bool_) -> :: cty :: c_int > , pub pgio_rpc_prepare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_pgio_header) -> :: cty :: c_int > , pub read_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_pgio_header , arg2 : * mut rpc_message) > , pub read_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_pgio_header) -> :: cty :: c_int > , pub write_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_pgio_header , arg2 : * mut rpc_message , arg3 : * mut * mut rpc_clnt) > , pub write_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_pgio_header) -> :: cty :: c_int > , pub commit_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_commit_data , arg2 : * mut rpc_message , arg3 : * mut * mut rpc_clnt) > , pub commit_rpc_prepare : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_commit_data) > , pub commit_done : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_task , arg2 : * mut nfs_commit_data) -> :: cty :: c_int > , pub lock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_int , arg3 : * mut file_lock) -> :: cty :: c_int > , pub lock_check_bounds : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const file_lock) -> :: cty :: c_int > , pub clear_acl_cache : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode) > , pub close_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_open_context , arg2 : :: cty :: c_int) > , pub open_context : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut nfs_open_context , arg3 : :: cty :: c_int , arg4 : * mut iattr , arg5 : * mut :: cty :: c_int) -> * mut inode > , pub have_delegation : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : fmode_t) -> :: cty :: c_int > , pub alloc_client : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const nfs_client_initdata) -> * mut nfs_client > , pub init_client : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_client , arg2 : * const nfs_client_initdata) -> * mut nfs_client > , pub free_client : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_client) > , pub create_server : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_context) -> * mut nfs_server > , pub clone_server : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_fattr , arg4 : rpc_authflavor_t) -> * mut nfs_server > , } # [test] fn bindgen_test_layout_nfs_rpc_ops () { assert_eq ! (:: core :: mem :: size_of :: < nfs_rpc_ops > () , 424usize , concat ! ("Size of: " , stringify ! (nfs_rpc_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_rpc_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_rpc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . version as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . dentry_ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (dentry_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . dir_inode_ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (dir_inode_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . file_inode_ops as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (file_inode_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . file_ops as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (file_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . nlmclnt_ops as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (nlmclnt_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . getroot as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (getroot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . submount as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (submount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . try_get_tree as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (try_get_tree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . getattr as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (getattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . setattr as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (setattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . lookup as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (lookup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . lookupp as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (lookupp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . access as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (access))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . readlink as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (readlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . create as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . remove as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (remove))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . unlink_setup as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (unlink_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . unlink_rpc_prepare as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (unlink_rpc_prepare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . unlink_done as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (unlink_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . rename_setup as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (rename_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . rename_rpc_prepare as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (rename_rpc_prepare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . rename_done as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (rename_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . link as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . symlink as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (symlink))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . mkdir as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (mkdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . rmdir as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (rmdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . readdir as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (readdir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . mknod as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (mknod))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . statfs as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (statfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . fsinfo as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (fsinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . pathconf as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (pathconf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . set_capabilities as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (set_capabilities))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . decode_dirent as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (decode_dirent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . pgio_rpc_prepare as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (pgio_rpc_prepare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . read_setup as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (read_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . read_done as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (read_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . write_setup as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (write_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . write_done as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (write_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . commit_setup as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (commit_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . commit_rpc_prepare as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (commit_rpc_prepare))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . commit_done as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (commit_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . lock as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . lock_check_bounds as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (lock_check_bounds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . clear_acl_cache as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (clear_acl_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . close_context as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (close_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . open_context as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (open_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . have_delegation as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (have_delegation))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . alloc_client as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (alloc_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . init_client as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (init_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . free_client as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (free_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . create_server as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (create_server))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_rpc_ops > ())) . clone_server as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (nfs_rpc_ops) , "::" , stringify ! (clone_server))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs_access_entry { pub rb_node : rb_node , pub lru : list_head , pub cred : * const cred , pub mask : __u32 , pub callback_head : callback_head , } # [test] fn bindgen_test_layout_nfs_access_entry () { assert_eq ! (:: core :: mem :: size_of :: < nfs_access_entry > () , 72usize , concat ! ("Size of: " , stringify ! (nfs_access_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs_access_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs_access_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_access_entry > ())) . rb_node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs_access_entry) , "::" , stringify ! (rb_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_access_entry > ())) . lru as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs_access_entry) , "::" , stringify ! (lru))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_access_entry > ())) . cred as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs_access_entry) , "::" , stringify ! (cred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_access_entry > ())) . mask as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs_access_entry) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs_access_entry > ())) . callback_head as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs_access_entry) , "::" , stringify ! (callback_head))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct nfs4_minor_version_ops { pub minor_version : _cargo_bpf_u32 , pub init_caps : :: cty :: c_uint , pub init_client : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_client) -> :: cty :: c_int > , pub shutdown_client : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_client) > , pub match_stateid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const nfs4_stateid , arg2 : * const nfs4_stateid) -> bool_ > , pub find_root_sec : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs_fh , arg3 : * mut nfs_fsinfo) -> :: cty :: c_int > , pub free_lock_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs4_lock_state) > , pub test_and_free_expired : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_server , arg2 : * mut nfs4_stateid , arg3 : * const cred) -> :: cty :: c_int > , pub alloc_seqid : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut nfs_seqid_counter , arg2 : gfp_t) -> * mut nfs_seqid > , pub session_trunk : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rpc_clnt , arg2 : * mut rpc_xprt , arg3 : * mut :: cty :: c_void) > , pub call_sync_ops : * const rpc_call_ops , pub reboot_recovery_ops : * const nfs4_state_recovery_ops , pub nograce_recovery_ops : * const nfs4_state_recovery_ops , pub state_renewal_ops : * const nfs4_state_maintenance_ops , pub mig_recovery_ops : * const nfs4_mig_recovery_ops , } # [test] fn bindgen_test_layout_nfs4_minor_version_ops () { assert_eq ! (:: core :: mem :: size_of :: < nfs4_minor_version_ops > () , 112usize , concat ! ("Size of: " , stringify ! (nfs4_minor_version_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < nfs4_minor_version_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (nfs4_minor_version_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . minor_version as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (minor_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . init_caps as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (init_caps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . init_client as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (init_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . shutdown_client as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (shutdown_client))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . match_stateid as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (match_stateid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . find_root_sec as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (find_root_sec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . free_lock_state as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (free_lock_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . test_and_free_expired as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (test_and_free_expired))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . alloc_seqid as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (alloc_seqid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . session_trunk as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (session_trunk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . call_sync_ops as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (call_sync_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . reboot_recovery_ops as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (reboot_recovery_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . nograce_recovery_ops as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (nograce_recovery_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . state_renewal_ops as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (state_renewal_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < nfs4_minor_version_ops > ())) . mig_recovery_ops as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (nfs4_minor_version_ops) , "::" , stringify ! (mig_recovery_ops))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct io_bitmap { pub sequence : _cargo_bpf_u64 , pub refcnt : refcount_t , pub max : :: cty :: c_uint , pub bitmap : [:: cty :: c_ulong ; 1024usize] , } # [test] fn bindgen_test_layout_io_bitmap () { assert_eq ! (:: core :: mem :: size_of :: < io_bitmap > () , 8208usize , concat ! ("Size of: " , stringify ! (io_bitmap))) ; assert_eq ! (:: core :: mem :: align_of :: < io_bitmap > () , 8usize , concat ! ("Alignment of " , stringify ! (io_bitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_bitmap > ())) . sequence as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (io_bitmap) , "::" , stringify ! (sequence))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_bitmap > ())) . refcnt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (io_bitmap) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_bitmap > ())) . max as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (io_bitmap) , "::" , stringify ! (max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < io_bitmap > ())) . bitmap as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (io_bitmap) , "::" , stringify ! (bitmap))) ; } pub const irqreturn_IRQ_NONE : irqreturn = 0 ; pub const irqreturn_IRQ_HANDLED : irqreturn = 1 ; pub const irqreturn_IRQ_WAKE_THREAD : irqreturn = 2 ; pub type irqreturn = :: cty :: c_uint ; pub use self :: irqreturn as irqreturn_t ; pub type irq_handler_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : :: cty :: c_int , arg2 : * mut :: cty :: c_void) -> irqreturn_t > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irqaction { pub handler : irq_handler_t , pub dev_id : * mut :: cty :: c_void , pub percpu_dev_id : * mut :: cty :: c_void , pub next : * mut irqaction , pub thread_fn : irq_handler_t , pub thread : * mut task_struct , pub secondary : * mut irqaction , pub irq : :: cty :: c_uint , pub flags : :: cty :: c_uint , pub thread_flags : :: cty :: c_ulong , pub thread_mask : :: cty :: c_ulong , pub name : * const :: cty :: c_char , pub dir : * mut proc_dir_entry , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [test] fn bindgen_test_layout_irqaction () { assert_eq ! (:: core :: mem :: size_of :: < irqaction > () , 128usize , concat ! ("Size of: " , stringify ! (irqaction))) ; assert_eq ! (:: core :: mem :: align_of :: < irqaction > () , 8usize , concat ! ("Alignment of " , stringify ! (irqaction))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . handler as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . dev_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (dev_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . percpu_dev_id as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (percpu_dev_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . thread_fn as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (thread_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . thread as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . secondary as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (secondary))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . irq as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . flags as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . thread_flags as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (thread_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . thread_mask as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (thread_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . name as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irqaction > ())) . dir as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (irqaction) , "::" , stringify ! (dir))) ; } impl irqaction { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_affinity_notify { pub irq : :: cty :: c_uint , pub kref : kref , pub work : work_struct , pub notify : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_affinity_notify , arg2 : * const cpumask_t) > , pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kref) > , } # [test] fn bindgen_test_layout_irq_affinity_notify () { assert_eq ! (:: core :: mem :: size_of :: < irq_affinity_notify > () , 56usize , concat ! ("Size of: " , stringify ! (irq_affinity_notify))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_affinity_notify > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_affinity_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_affinity_notify > ())) . irq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_affinity_notify) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_affinity_notify > ())) . kref as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (irq_affinity_notify) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_affinity_notify > ())) . work as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_affinity_notify) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_affinity_notify > ())) . notify as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_affinity_notify) , "::" , stringify ! (notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_affinity_notify > ())) . release as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_affinity_notify) , "::" , stringify ! (release))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_affinity_desc { pub mask : cpumask , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [test] fn bindgen_test_layout_irq_affinity_desc () { assert_eq ! (:: core :: mem :: size_of :: < irq_affinity_desc > () , 1032usize , concat ! ("Size of: " , stringify ! (irq_affinity_desc))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_affinity_desc > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_affinity_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_affinity_desc > ())) . mask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_affinity_desc) , "::" , stringify ! (mask))) ; } impl irq_affinity_desc { # [inline] pub fn is_managed (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_is_managed (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_managed : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_managed : u32 = unsafe { :: core :: mem :: transmute (is_managed) } ; is_managed as u64 }) ; __bindgen_bitfield_unit } } pub const irqchip_irq_state_IRQCHIP_STATE_PENDING : irqchip_irq_state = 0 ; pub const irqchip_irq_state_IRQCHIP_STATE_ACTIVE : irqchip_irq_state = 1 ; pub const irqchip_irq_state_IRQCHIP_STATE_MASKED : irqchip_irq_state = 2 ; pub const irqchip_irq_state_IRQCHIP_STATE_LINE_LEVEL : irqchip_irq_state = 3 ; pub type irqchip_irq_state = :: cty :: c_uint ; pub type irq_flow_handler_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_desc) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_common_data { pub state_use_accessors : :: cty :: c_uint , pub node : :: cty :: c_uint , pub handler_data : * mut :: cty :: c_void , pub msi_desc : * mut msi_desc , pub affinity : cpumask_var_t , pub effective_affinity : cpumask_var_t , } # [test] fn bindgen_test_layout_irq_common_data () { assert_eq ! (:: core :: mem :: size_of :: < irq_common_data > () , 40usize , concat ! ("Size of: " , stringify ! (irq_common_data))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_common_data > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_common_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_common_data > ())) . state_use_accessors as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_common_data) , "::" , stringify ! (state_use_accessors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_common_data > ())) . node as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (irq_common_data) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_common_data > ())) . handler_data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_common_data) , "::" , stringify ! (handler_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_common_data > ())) . msi_desc as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_common_data) , "::" , stringify ! (msi_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_common_data > ())) . affinity as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_common_data) , "::" , stringify ! (affinity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_common_data > ())) . effective_affinity as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_common_data) , "::" , stringify ! (effective_affinity))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_data { pub mask : _cargo_bpf_u32 , pub irq : :: cty :: c_uint , pub hwirq : :: cty :: c_ulong , pub common : * mut irq_common_data , pub chip : * mut irq_chip , pub domain : * mut irq_domain , pub parent_data : * mut irq_data , pub chip_data : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_irq_data () { assert_eq ! (:: core :: mem :: size_of :: < irq_data > () , 56usize , concat ! ("Size of: " , stringify ! (irq_data))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_data > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . mask as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . irq as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . hwirq as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (hwirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . common as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (common))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . chip as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (chip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . domain as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . parent_data as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (parent_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_data > ())) . chip_data as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_data) , "::" , stringify ! (chip_data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct irq_desc { pub irq_common_data : irq_common_data , pub irq_data : irq_data , pub kstat_irqs : * mut :: cty :: c_uint , pub handle_irq : irq_flow_handler_t , pub action : * mut irqaction , pub status_use_accessors : :: cty :: c_uint , pub core_internal_state__do_not_mess_with_it : :: cty :: c_uint , pub depth : :: cty :: c_uint , pub wake_depth : :: cty :: c_uint , pub tot_count : :: cty :: c_uint , pub irq_count : :: cty :: c_uint , pub last_unhandled : :: cty :: c_ulong , pub irqs_unhandled : :: cty :: c_uint , pub threads_handled : atomic_t , pub threads_handled_last : :: cty :: c_int , pub lock : raw_spinlock_t , pub percpu_enabled : * mut cpumask , pub percpu_affinity : * const cpumask , pub affinity_hint : * const cpumask , pub affinity_notify : * mut irq_affinity_notify , pub pending_mask : cpumask_var_t , pub threads_oneshot : :: cty :: c_ulong , pub threads_active : atomic_t , pub wait_for_threads : wait_queue_head_t , pub nr_actions : :: cty :: c_uint , pub no_suspend_depth : :: cty :: c_uint , pub cond_suspend_depth : :: cty :: c_uint , pub force_resume_depth : :: cty :: c_uint , pub dir : * mut proc_dir_entry , pub rcu : callback_head , pub kobj : kobject , pub request_mutex : mutex , pub parent_irq : :: cty :: c_int , pub owner : * mut module , pub name : * const :: cty :: c_char , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [test] fn bindgen_test_layout_irq_desc () { assert_eq ! (:: core :: mem :: size_of :: < irq_desc > () , 448usize , concat ! ("Size of: " , stringify ! (irq_desc))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_desc > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . irq_common_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (irq_common_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . irq_data as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (irq_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . kstat_irqs as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (kstat_irqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . handle_irq as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (handle_irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . action as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (action))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . status_use_accessors as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (status_use_accessors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . core_internal_state__do_not_mess_with_it as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (core_internal_state__do_not_mess_with_it))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . depth as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . wake_depth as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (wake_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . tot_count as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (tot_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . irq_count as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (irq_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . last_unhandled as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (last_unhandled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . irqs_unhandled as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (irqs_unhandled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . threads_handled as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (threads_handled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . threads_handled_last as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (threads_handled_last))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . lock as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . percpu_enabled as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (percpu_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . percpu_affinity as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (percpu_affinity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . affinity_hint as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (affinity_hint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . affinity_notify as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (affinity_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . pending_mask as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (pending_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . threads_oneshot as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (threads_oneshot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . threads_active as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (threads_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . wait_for_threads as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (wait_for_threads))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . nr_actions as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (nr_actions))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . no_suspend_depth as * const _ as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (no_suspend_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . cond_suspend_depth as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (cond_suspend_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . force_resume_depth as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (force_resume_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . dir as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . rcu as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . kobj as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . request_mutex as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (request_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . parent_irq as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (parent_irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . owner as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_desc > ())) . name as * const _ as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (irq_desc) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct x86_msi_addr_lo { pub __bindgen_anon_1 : x86_msi_addr_lo__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union x86_msi_addr_lo__bindgen_ty_1 { pub __bindgen_anon_1 : x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_2 : x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1 { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1))) ; } impl x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn reserved_0 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 2u8) as u32) } } # [inline] pub fn set_reserved_0 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 2u8 , val as u64) } } # [inline] pub fn dest_mode_logical (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_dest_mode_logical (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn redirect_hint (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_redirect_hint (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn reserved_1 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_reserved_1 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn virt_destid_8_14 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 7u8) as u32) } } # [inline] pub fn set_virt_destid_8_14 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 7u8 , val as u64) } } # [inline] pub fn destid_0_7 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (12usize , 8u8) as u32) } } # [inline] pub fn set_destid_0_7 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 8u8 , val as u64) } } # [inline] pub fn base_address (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (20usize , 12u8) as u32) } } # [inline] pub fn set_base_address (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (20usize , 12u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reserved_0 : _cargo_bpf_u32 , dest_mode_logical : _cargo_bpf_u32 , redirect_hint : _cargo_bpf_u32 , reserved_1 : _cargo_bpf_u32 , virt_destid_8_14 : _cargo_bpf_u32 , destid_0_7 : _cargo_bpf_u32 , base_address : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 2u8 , { let reserved_0 : u32 = unsafe { :: core :: mem :: transmute (reserved_0) } ; reserved_0 as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let dest_mode_logical : u32 = unsafe { :: core :: mem :: transmute (dest_mode_logical) } ; dest_mode_logical as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let redirect_hint : u32 = unsafe { :: core :: mem :: transmute (redirect_hint) } ; redirect_hint as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let reserved_1 : u32 = unsafe { :: core :: mem :: transmute (reserved_1) } ; reserved_1 as u64 }) ; __bindgen_bitfield_unit . set (5usize , 7u8 , { let virt_destid_8_14 : u32 = unsafe { :: core :: mem :: transmute (virt_destid_8_14) } ; virt_destid_8_14 as u64 }) ; __bindgen_bitfield_unit . set (12usize , 8u8 , { let destid_0_7 : u32 = unsafe { :: core :: mem :: transmute (destid_0_7) } ; destid_0_7 as u64 }) ; __bindgen_bitfield_unit . set (20usize , 12u8 , { let base_address : u32 = unsafe { :: core :: mem :: transmute (base_address) } ; base_address as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2 { pub _bitfield_align_1 : [u16 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2))) ; } impl x86_msi_addr_lo__bindgen_ty_1__bindgen_ty_2 { # [inline] pub fn dmar_reserved_0 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 2u8) as u32) } } # [inline] pub fn set_dmar_reserved_0 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 2u8 , val as u64) } } # [inline] pub fn dmar_index_15 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_dmar_index_15 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn dmar_subhandle_valid (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u32) } } # [inline] pub fn set_dmar_subhandle_valid (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn dmar_format (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u32) } } # [inline] pub fn set_dmar_format (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn dmar_index_0_14 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 15u8) as u32) } } # [inline] pub fn set_dmar_index_0_14 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 15u8 , val as u64) } } # [inline] pub fn dmar_base_address (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (20usize , 12u8) as u32) } } # [inline] pub fn set_dmar_base_address (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (20usize , 12u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (dmar_reserved_0 : _cargo_bpf_u32 , dmar_index_15 : _cargo_bpf_u32 , dmar_subhandle_valid : _cargo_bpf_u32 , dmar_format : _cargo_bpf_u32 , dmar_index_0_14 : _cargo_bpf_u32 , dmar_base_address : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 2u8 , { let dmar_reserved_0 : u32 = unsafe { :: core :: mem :: transmute (dmar_reserved_0) } ; dmar_reserved_0 as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let dmar_index_15 : u32 = unsafe { :: core :: mem :: transmute (dmar_index_15) } ; dmar_index_15 as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let dmar_subhandle_valid : u32 = unsafe { :: core :: mem :: transmute (dmar_subhandle_valid) } ; dmar_subhandle_valid as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let dmar_format : u32 = unsafe { :: core :: mem :: transmute (dmar_format) } ; dmar_format as u64 }) ; __bindgen_bitfield_unit . set (5usize , 15u8 , { let dmar_index_0_14 : u32 = unsafe { :: core :: mem :: transmute (dmar_index_0_14) } ; dmar_index_0_14 as u64 }) ; __bindgen_bitfield_unit . set (20usize , 12u8 , { let dmar_base_address : u32 = unsafe { :: core :: mem :: transmute (dmar_base_address) } ; dmar_base_address as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_x86_msi_addr_lo__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < x86_msi_addr_lo__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (x86_msi_addr_lo__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < x86_msi_addr_lo__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (x86_msi_addr_lo__bindgen_ty_1))) ; } # [test] fn bindgen_test_layout_x86_msi_addr_lo () { assert_eq ! (:: core :: mem :: size_of :: < x86_msi_addr_lo > () , 4usize , concat ! ("Size of: " , stringify ! (x86_msi_addr_lo))) ; assert_eq ! (:: core :: mem :: align_of :: < x86_msi_addr_lo > () , 4usize , concat ! ("Alignment of " , stringify ! (x86_msi_addr_lo))) ; } pub type arch_msi_msg_addr_lo_t = x86_msi_addr_lo ; # [repr (C)] # [repr (align (4))] # [derive (Debug , Copy , Clone)] pub struct x86_msi_addr_hi { pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , } # [test] fn bindgen_test_layout_x86_msi_addr_hi () { assert_eq ! (:: core :: mem :: size_of :: < x86_msi_addr_hi > () , 4usize , concat ! ("Size of: " , stringify ! (x86_msi_addr_hi))) ; assert_eq ! (:: core :: mem :: align_of :: < x86_msi_addr_hi > () , 4usize , concat ! ("Alignment of " , stringify ! (x86_msi_addr_hi))) ; } impl x86_msi_addr_hi { # [inline] pub fn reserved (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn destid_8_31 (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 24u8) as u32) } } # [inline] pub fn set_destid_8_31 (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (reserved : _cargo_bpf_u32 , destid_8_31 : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let reserved : u32 = unsafe { :: core :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit . set (8usize , 24u8 , { let destid_8_31 : u32 = unsafe { :: core :: mem :: transmute (destid_8_31) } ; destid_8_31 as u64 }) ; __bindgen_bitfield_unit } } pub type arch_msi_msg_addr_hi_t = x86_msi_addr_hi ; # [repr (C , packed)] # [derive (Debug , Copy , Clone)] pub struct x86_msi_data { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub dmar_subhandle : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_x86_msi_data () { assert_eq ! (:: core :: mem :: size_of :: < x86_msi_data > () , 6usize , concat ! ("Size of: " , stringify ! (x86_msi_data))) ; assert_eq ! (:: core :: mem :: align_of :: < x86_msi_data > () , 1usize , concat ! ("Alignment of " , stringify ! (x86_msi_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < x86_msi_data > ())) . dmar_subhandle as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (x86_msi_data) , "::" , stringify ! (dmar_subhandle))) ; } impl x86_msi_data { # [inline] pub fn vector (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_vector (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn delivery_mode (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 3u8) as u32) } } # [inline] pub fn set_delivery_mode (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 3u8 , val as u64) } } # [inline] pub fn dest_mode_logical (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (11usize , 1u8) as u32) } } # [inline] pub fn set_dest_mode_logical (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (11usize , 1u8 , val as u64) } } # [inline] pub fn reserved (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (12usize , 2u8) as u32) } } # [inline] pub fn set_reserved (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (12usize , 2u8 , val as u64) } } # [inline] pub fn active_low (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (14usize , 1u8) as u32) } } # [inline] pub fn set_active_low (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (14usize , 1u8 , val as u64) } } # [inline] pub fn is_level (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (15usize , 1u8) as u32) } } # [inline] pub fn set_is_level (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (15usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (vector : _cargo_bpf_u32 , delivery_mode : _cargo_bpf_u32 , dest_mode_logical : _cargo_bpf_u32 , reserved : _cargo_bpf_u32 , active_low : _cargo_bpf_u32 , is_level : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let vector : u32 = unsafe { :: core :: mem :: transmute (vector) } ; vector as u64 }) ; __bindgen_bitfield_unit . set (8usize , 3u8 , { let delivery_mode : u32 = unsafe { :: core :: mem :: transmute (delivery_mode) } ; delivery_mode as u64 }) ; __bindgen_bitfield_unit . set (11usize , 1u8 , { let dest_mode_logical : u32 = unsafe { :: core :: mem :: transmute (dest_mode_logical) } ; dest_mode_logical as u64 }) ; __bindgen_bitfield_unit . set (12usize , 2u8 , { let reserved : u32 = unsafe { :: core :: mem :: transmute (reserved) } ; reserved as u64 }) ; __bindgen_bitfield_unit . set (14usize , 1u8 , { let active_low : u32 = unsafe { :: core :: mem :: transmute (active_low) } ; active_low as u64 }) ; __bindgen_bitfield_unit . set (15usize , 1u8 , { let is_level : u32 = unsafe { :: core :: mem :: transmute (is_level) } ; is_level as u64 }) ; __bindgen_bitfield_unit } } pub type arch_msi_msg_data_t = x86_msi_data ; # [repr (C)] # [derive (Copy , Clone)] pub struct msi_msg { pub __bindgen_anon_1 : msi_msg__bindgen_ty_1 , pub __bindgen_anon_2 : msi_msg__bindgen_ty_2 , pub __bindgen_anon_3 : msi_msg__bindgen_ty_3 , } # [repr (C)] # [derive (Copy , Clone)] pub union msi_msg__bindgen_ty_1 { pub address_lo : _cargo_bpf_u32 , pub arch_addr_lo : arch_msi_msg_addr_lo_t , } # [test] fn bindgen_test_layout_msi_msg__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < msi_msg__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (msi_msg__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_msg__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (msi_msg__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_msg__bindgen_ty_1 > ())) . address_lo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_msg__bindgen_ty_1) , "::" , stringify ! (address_lo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_msg__bindgen_ty_1 > ())) . arch_addr_lo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_msg__bindgen_ty_1) , "::" , stringify ! (arch_addr_lo))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union msi_msg__bindgen_ty_2 { pub address_hi : _cargo_bpf_u32 , pub arch_addr_hi : arch_msi_msg_addr_hi_t , } # [test] fn bindgen_test_layout_msi_msg__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < msi_msg__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (msi_msg__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_msg__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (msi_msg__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_msg__bindgen_ty_2 > ())) . address_hi as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_msg__bindgen_ty_2) , "::" , stringify ! (address_hi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_msg__bindgen_ty_2 > ())) . arch_addr_hi as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_msg__bindgen_ty_2) , "::" , stringify ! (arch_addr_hi))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union msi_msg__bindgen_ty_3 { pub data : _cargo_bpf_u32 , pub arch_data : arch_msi_msg_data_t , } # [test] fn bindgen_test_layout_msi_msg__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < msi_msg__bindgen_ty_3 > () , 8usize , concat ! ("Size of: " , stringify ! (msi_msg__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_msg__bindgen_ty_3 > () , 4usize , concat ! ("Alignment of " , stringify ! (msi_msg__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_msg__bindgen_ty_3 > ())) . data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_msg__bindgen_ty_3) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_msg__bindgen_ty_3 > ())) . arch_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_msg__bindgen_ty_3) , "::" , stringify ! (arch_data))) ; } # [test] fn bindgen_test_layout_msi_msg () { assert_eq ! (:: core :: mem :: size_of :: < msi_msg > () , 16usize , concat ! ("Size of: " , stringify ! (msi_msg))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_msg > () , 4usize , concat ! ("Alignment of " , stringify ! (msi_msg))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct platform_msi_desc { pub msi_priv_data : * mut platform_msi_priv_data , pub msi_index : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_platform_msi_desc () { assert_eq ! (:: core :: mem :: size_of :: < platform_msi_desc > () , 16usize , concat ! ("Size of: " , stringify ! (platform_msi_desc))) ; assert_eq ! (:: core :: mem :: align_of :: < platform_msi_desc > () , 8usize , concat ! ("Alignment of " , stringify ! (platform_msi_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < platform_msi_desc > ())) . msi_priv_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (platform_msi_desc) , "::" , stringify ! (msi_priv_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < platform_msi_desc > ())) . msi_index as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (platform_msi_desc) , "::" , stringify ! (msi_index))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fsl_mc_msi_desc { pub msi_index : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_fsl_mc_msi_desc () { assert_eq ! (:: core :: mem :: size_of :: < fsl_mc_msi_desc > () , 2usize , concat ! ("Size of: " , stringify ! (fsl_mc_msi_desc))) ; assert_eq ! (:: core :: mem :: align_of :: < fsl_mc_msi_desc > () , 2usize , concat ! ("Alignment of " , stringify ! (fsl_mc_msi_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsl_mc_msi_desc > ())) . msi_index as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fsl_mc_msi_desc) , "::" , stringify ! (msi_index))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ti_sci_inta_msi_desc { pub dev_index : _cargo_bpf_u16 , } # [test] fn bindgen_test_layout_ti_sci_inta_msi_desc () { assert_eq ! (:: core :: mem :: size_of :: < ti_sci_inta_msi_desc > () , 2usize , concat ! ("Size of: " , stringify ! (ti_sci_inta_msi_desc))) ; assert_eq ! (:: core :: mem :: align_of :: < ti_sci_inta_msi_desc > () , 2usize , concat ! ("Alignment of " , stringify ! (ti_sci_inta_msi_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ti_sci_inta_msi_desc > ())) . dev_index as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ti_sci_inta_msi_desc) , "::" , stringify ! (dev_index))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct msi_desc { pub list : list_head , pub irq : :: cty :: c_uint , pub nvec_used : :: cty :: c_uint , pub dev : * mut device , pub msg : msi_msg , pub affinity : * mut irq_affinity_desc , pub iommu_cookie : * const :: cty :: c_void , pub write_msi_msg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut msi_desc , arg2 : * mut :: cty :: c_void) > , pub write_msi_msg_data : * mut :: cty :: c_void , pub __bindgen_anon_1 : msi_desc__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union msi_desc__bindgen_ty_1 { pub __bindgen_anon_1 : msi_desc__bindgen_ty_1__bindgen_ty_1 , pub platform : platform_msi_desc , pub fsl_mc : fsl_mc_msi_desc , pub inta : ti_sci_inta_msi_desc , } # [repr (C)] # [derive (Copy , Clone)] pub struct msi_desc__bindgen_ty_1__bindgen_ty_1 { pub masked : _cargo_bpf_u32 , pub msi_attrib : msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 , pub __bindgen_anon_1 : msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 2usize] > , pub entry_nr : _cargo_bpf_u16 , pub default_irq : :: cty :: c_uint , } # [test] fn bindgen_test_layout_msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > ())) . entry_nr as * const _ as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (entry_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 > ())) . default_irq as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (default_irq))) ; } impl msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn is_msix (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u8) } } # [inline] pub fn set_is_msix (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn multiple (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 3u8) as u8) } } # [inline] pub fn set_multiple (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 3u8 , val as u64) } } # [inline] pub fn multi_cap (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 3u8) as u8) } } # [inline] pub fn set_multi_cap (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 3u8 , val as u64) } } # [inline] pub fn maskbit (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (7usize , 1u8) as u8) } } # [inline] pub fn set_maskbit (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (7usize , 1u8 , val as u64) } } # [inline] pub fn is_64 (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (8usize , 1u8) as u8) } } # [inline] pub fn set_is_64 (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (8usize , 1u8 , val as u64) } } # [inline] pub fn is_virtual (& self) -> _cargo_bpf_u8 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (9usize , 1u8) as u8) } } # [inline] pub fn set_is_virtual (& mut self , val : _cargo_bpf_u8) { unsafe { let val : u8 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (9usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_msix : _cargo_bpf_u8 , multiple : _cargo_bpf_u8 , multi_cap : _cargo_bpf_u8 , maskbit : _cargo_bpf_u8 , is_64 : _cargo_bpf_u8 , is_virtual : _cargo_bpf_u8) -> __BindgenBitfieldUnit < [u8 ; 2usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 2usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_msix : u8 = unsafe { :: core :: mem :: transmute (is_msix) } ; is_msix as u64 }) ; __bindgen_bitfield_unit . set (1usize , 3u8 , { let multiple : u8 = unsafe { :: core :: mem :: transmute (multiple) } ; multiple as u64 }) ; __bindgen_bitfield_unit . set (4usize , 3u8 , { let multi_cap : u8 = unsafe { :: core :: mem :: transmute (multi_cap) } ; multi_cap as u64 }) ; __bindgen_bitfield_unit . set (7usize , 1u8 , { let maskbit : u8 = unsafe { :: core :: mem :: transmute (maskbit) } ; maskbit as u64 }) ; __bindgen_bitfield_unit . set (8usize , 1u8 , { let is_64 : u8 = unsafe { :: core :: mem :: transmute (is_64) } ; is_64 as u64 }) ; __bindgen_bitfield_unit . set (9usize , 1u8 , { let is_virtual : u8 = unsafe { :: core :: mem :: transmute (is_virtual) } ; is_virtual as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub union msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 { pub mask_pos : _cargo_bpf_u8 , pub mask_base : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 > ())) . mask_pos as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (mask_pos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2 > ())) . mask_base as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (mask_base))) ; } # [test] fn bindgen_test_layout_msi_desc__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < msi_desc__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_desc__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1__bindgen_ty_1 > ())) . masked as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (masked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1__bindgen_ty_1 > ())) . msi_attrib as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (msi_attrib))) ; } # [test] fn bindgen_test_layout_msi_desc__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < msi_desc__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (msi_desc__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_desc__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (msi_desc__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1 > ())) . platform as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1) , "::" , stringify ! (platform))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1 > ())) . fsl_mc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1) , "::" , stringify ! (fsl_mc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc__bindgen_ty_1 > ())) . inta as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc__bindgen_ty_1) , "::" , stringify ! (inta))) ; } # [test] fn bindgen_test_layout_msi_desc () { assert_eq ! (:: core :: mem :: size_of :: < msi_desc > () , 104usize , concat ! ("Size of: " , stringify ! (msi_desc))) ; assert_eq ! (:: core :: mem :: align_of :: < msi_desc > () , 8usize , concat ! ("Alignment of " , stringify ! (msi_desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . irq as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . nvec_used as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (nvec_used))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . dev as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . msg as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (msg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . affinity as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (affinity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . iommu_cookie as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (iommu_cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . write_msi_msg as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (write_msi_msg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < msi_desc > ())) . write_msi_msg_data as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (msi_desc) , "::" , stringify ! (write_msi_msg_data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_chip { pub parent_device : * mut device , pub name : * const :: cty :: c_char , pub irq_startup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) -> :: cty :: c_uint > , pub irq_shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_enable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_disable : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_ack : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_mask : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_mask_ack : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_unmask : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_eoi : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_set_affinity : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : * const cpumask , arg3 : bool_) -> :: cty :: c_int > , pub irq_retrigger : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) -> :: cty :: c_int > , pub irq_set_type : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub irq_set_wake : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : :: cty :: c_uint) -> :: cty :: c_int > , pub irq_bus_lock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_bus_sync_unlock : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_cpu_online : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_cpu_offline : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_suspend : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_resume : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_pm_shutdown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_calc_mask : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_print_chip : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : * mut seq_file) > , pub irq_request_resources : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) -> :: cty :: c_int > , pub irq_release_resources : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub irq_compose_msi_msg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : * mut msi_msg) > , pub irq_write_msi_msg : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : * mut msi_msg) > , pub irq_get_irqchip_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : irqchip_irq_state , arg3 : * mut bool_) -> :: cty :: c_int > , pub irq_set_irqchip_state : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : irqchip_irq_state , arg3 : bool_) -> :: cty :: c_int > , pub irq_set_vcpu_affinity : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > , pub ipi_send_single : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : :: cty :: c_uint) > , pub ipi_send_mask : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data , arg2 : * const cpumask) > , pub irq_nmi_setup : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) -> :: cty :: c_int > , pub irq_nmi_teardown : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_data) > , pub flags : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_irq_chip () { assert_eq ! (:: core :: mem :: size_of :: < irq_chip > () , 288usize , concat ! ("Size of: " , stringify ! (irq_chip))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_chip > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_chip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . parent_device as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (parent_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . name as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_startup as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_startup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_shutdown as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_enable as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_disable as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_ack as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_ack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_mask as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_mask_ack as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_mask_ack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_unmask as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_unmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_eoi as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_eoi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_set_affinity as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_set_affinity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_retrigger as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_retrigger))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_set_type as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_set_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_set_wake as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_set_wake))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_bus_lock as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_bus_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_bus_sync_unlock as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_bus_sync_unlock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_cpu_online as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_cpu_online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_cpu_offline as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_cpu_offline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_suspend as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_suspend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_resume as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_resume))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_pm_shutdown as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_pm_shutdown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_calc_mask as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_calc_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_print_chip as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_print_chip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_request_resources as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_request_resources))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_release_resources as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_release_resources))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_compose_msi_msg as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_compose_msi_msg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_write_msi_msg as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_write_msi_msg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_get_irqchip_state as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_get_irqchip_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_set_irqchip_state as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_set_irqchip_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_set_vcpu_affinity as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_set_vcpu_affinity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . ipi_send_single as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (ipi_send_single))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . ipi_send_mask as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (ipi_send_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_nmi_setup as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_nmi_setup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . irq_nmi_teardown as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (irq_nmi_teardown))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip > ())) . flags as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (irq_chip) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_chip_regs { pub enable : :: cty :: c_ulong , pub disable : :: cty :: c_ulong , pub mask : :: cty :: c_ulong , pub ack : :: cty :: c_ulong , pub eoi : :: cty :: c_ulong , pub type_ : :: cty :: c_ulong , pub polarity : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_irq_chip_regs () { assert_eq ! (:: core :: mem :: size_of :: < irq_chip_regs > () , 56usize , concat ! ("Size of: " , stringify ! (irq_chip_regs))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_chip_regs > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_chip_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . enable as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (enable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . disable as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . mask as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . ack as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (ack))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . eoi as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (eoi))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . type_ as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_regs > ())) . polarity as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_chip_regs) , "::" , stringify ! (polarity))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct irq_chip_type { pub chip : irq_chip , pub regs : irq_chip_regs , pub handler : irq_flow_handler_t , pub type_ : _cargo_bpf_u32 , pub mask_cache_priv : _cargo_bpf_u32 , pub mask_cache : * mut _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_irq_chip_type () { assert_eq ! (:: core :: mem :: size_of :: < irq_chip_type > () , 368usize , concat ! ("Size of: " , stringify ! (irq_chip_type))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_chip_type > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_chip_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_type > ())) . chip as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_chip_type) , "::" , stringify ! (chip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_type > ())) . regs as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (irq_chip_type) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_type > ())) . handler as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (irq_chip_type) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_type > ())) . type_ as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (irq_chip_type) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_type > ())) . mask_cache_priv as * const _ as usize } , 356usize , concat ! ("Offset of field: " , stringify ! (irq_chip_type) , "::" , stringify ! (mask_cache_priv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_type > ())) . mask_cache as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (irq_chip_type) , "::" , stringify ! (mask_cache))) ; } # [repr (C)] pub struct irq_chip_generic { pub lock : raw_spinlock_t , pub reg_base : * mut :: cty :: c_void , pub reg_readl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) -> _cargo_bpf_u32 > , pub reg_writel : :: core :: option :: Option < unsafe extern "C" fn (arg1 : _cargo_bpf_u32 , arg2 : * mut :: cty :: c_void) > , pub suspend : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_chip_generic) > , pub resume : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut irq_chip_generic) > , pub irq_base : :: cty :: c_uint , pub irq_cnt : :: cty :: c_uint , pub mask_cache : _cargo_bpf_u32 , pub type_cache : _cargo_bpf_u32 , pub polarity_cache : _cargo_bpf_u32 , pub wake_enabled : _cargo_bpf_u32 , pub wake_active : _cargo_bpf_u32 , pub num_ct : :: cty :: c_uint , pub private : * mut :: cty :: c_void , pub installed : :: cty :: c_ulong , pub unused : :: cty :: c_ulong , pub domain : * mut irq_domain , pub list : list_head , pub chip_types : __IncompleteArrayField < irq_chip_type > , } # [test] fn bindgen_test_layout_irq_chip_generic () { assert_eq ! (:: core :: mem :: size_of :: < irq_chip_generic > () , 128usize , concat ! ("Size of: " , stringify ! (irq_chip_generic))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_chip_generic > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_chip_generic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . reg_base as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (reg_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . reg_readl as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (reg_readl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . reg_writel as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (reg_writel))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . suspend as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (suspend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . resume as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (resume))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . irq_base as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (irq_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . irq_cnt as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (irq_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . mask_cache as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (mask_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . type_cache as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (type_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . polarity_cache as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (polarity_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . wake_enabled as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (wake_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . wake_active as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (wake_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . num_ct as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (num_ct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . private as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . installed as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (installed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . unused as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (unused))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . domain as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . list as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_chip_generic > ())) . chip_types as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (irq_chip_generic) , "::" , stringify ! (chip_types))) ; } pub const irq_gc_flags_IRQ_GC_INIT_MASK_CACHE : irq_gc_flags = 1 ; pub const irq_gc_flags_IRQ_GC_INIT_NESTED_LOCK : irq_gc_flags = 2 ; pub const irq_gc_flags_IRQ_GC_MASK_CACHE_PER_TYPE : irq_gc_flags = 4 ; pub const irq_gc_flags_IRQ_GC_NO_MASK : irq_gc_flags = 8 ; pub const irq_gc_flags_IRQ_GC_BE_IO : irq_gc_flags = 16 ; pub type irq_gc_flags = :: cty :: c_uint ; # [repr (C)] # [derive (Debug)] pub struct irq_domain_chip_generic { pub irqs_per_chip : :: cty :: c_uint , pub num_chips : :: cty :: c_uint , pub irq_flags_to_clear : :: cty :: c_uint , pub irq_flags_to_set : :: cty :: c_uint , pub gc_flags : irq_gc_flags , pub gc : __IncompleteArrayField < * mut irq_chip_generic > , } # [test] fn bindgen_test_layout_irq_domain_chip_generic () { assert_eq ! (:: core :: mem :: size_of :: < irq_domain_chip_generic > () , 24usize , concat ! ("Size of: " , stringify ! (irq_domain_chip_generic))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_domain_chip_generic > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_domain_chip_generic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_chip_generic > ())) . irqs_per_chip as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_domain_chip_generic) , "::" , stringify ! (irqs_per_chip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_chip_generic > ())) . num_chips as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (irq_domain_chip_generic) , "::" , stringify ! (num_chips))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_chip_generic > ())) . irq_flags_to_clear as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_domain_chip_generic) , "::" , stringify ! (irq_flags_to_clear))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_chip_generic > ())) . irq_flags_to_set as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (irq_domain_chip_generic) , "::" , stringify ! (irq_flags_to_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_chip_generic > ())) . gc_flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_domain_chip_generic) , "::" , stringify ! (gc_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_domain_chip_generic > ())) . gc as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_domain_chip_generic) , "::" , stringify ! (gc))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vm_special_mapping { pub name : * const :: cty :: c_char , pub pages : * mut * mut page , pub fault : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const vm_special_mapping , arg2 : * mut vm_area_struct , arg3 : * mut vm_fault) -> vm_fault_t > , pub mremap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const vm_special_mapping , arg2 : * mut vm_area_struct) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_vm_special_mapping () { assert_eq ! (:: core :: mem :: size_of :: < vm_special_mapping > () , 32usize , concat ! ("Size of: " , stringify ! (vm_special_mapping))) ; assert_eq ! (:: core :: mem :: align_of :: < vm_special_mapping > () , 8usize , concat ! ("Alignment of " , stringify ! (vm_special_mapping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_special_mapping > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vm_special_mapping) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_special_mapping > ())) . pages as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vm_special_mapping) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_special_mapping > ())) . fault as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (vm_special_mapping) , "::" , stringify ! (fault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < vm_special_mapping > ())) . mremap as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (vm_special_mapping) , "::" , stringify ! (mremap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct timens_offsets { pub monotonic : timespec64 , pub boottime : timespec64 , } # [test] fn bindgen_test_layout_timens_offsets () { assert_eq ! (:: core :: mem :: size_of :: < timens_offsets > () , 32usize , concat ! ("Size of: " , stringify ! (timens_offsets))) ; assert_eq ! (:: core :: mem :: align_of :: < timens_offsets > () , 8usize , concat ! ("Alignment of " , stringify ! (timens_offsets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timens_offsets > ())) . monotonic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timens_offsets) , "::" , stringify ! (monotonic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < timens_offsets > ())) . boottime as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (timens_offsets) , "::" , stringify ! (boottime))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct time_namespace { pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub ns : ns_common , pub offsets : timens_offsets , pub vvar_page : * mut page , pub frozen_offsets : bool_ , } # [test] fn bindgen_test_layout_time_namespace () { assert_eq ! (:: core :: mem :: size_of :: < time_namespace > () , 88usize , concat ! ("Size of: " , stringify ! (time_namespace))) ; assert_eq ! (:: core :: mem :: align_of :: < time_namespace > () , 8usize , concat ! ("Alignment of " , stringify ! (time_namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < time_namespace > ())) . user_ns as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (time_namespace) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < time_namespace > ())) . ucounts as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (time_namespace) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < time_namespace > ())) . ns as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (time_namespace) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < time_namespace > ())) . offsets as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (time_namespace) , "::" , stringify ! (offsets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < time_namespace > ())) . vvar_page as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (time_namespace) , "::" , stringify ! (vvar_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < time_namespace > ())) . frozen_offsets as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (time_namespace) , "::" , stringify ! (frozen_offsets))) ; } pub const bpf_cgroup_storage_type_BPF_CGROUP_STORAGE_SHARED : bpf_cgroup_storage_type = 0 ; pub const bpf_cgroup_storage_type_BPF_CGROUP_STORAGE_PERCPU : bpf_cgroup_storage_type = 1 ; pub const bpf_cgroup_storage_type___BPF_CGROUP_STORAGE_MAX : bpf_cgroup_storage_type = 2 ; pub type bpf_cgroup_storage_type = :: cty :: c_uint ; pub const bpf_tramp_prog_type_BPF_TRAMP_FENTRY : bpf_tramp_prog_type = 0 ; pub const bpf_tramp_prog_type_BPF_TRAMP_FEXIT : bpf_tramp_prog_type = 1 ; pub const bpf_tramp_prog_type_BPF_TRAMP_MODIFY_RETURN : bpf_tramp_prog_type = 2 ; pub const bpf_tramp_prog_type_BPF_TRAMP_MAX : bpf_tramp_prog_type = 3 ; pub const bpf_tramp_prog_type_BPF_TRAMP_REPLACE : bpf_tramp_prog_type = 4 ; pub type bpf_tramp_prog_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct perf_event_mmap_page { pub version : __u32 , pub compat_version : __u32 , pub lock : __u32 , pub index : __u32 , pub offset : __s64 , pub time_enabled : __u64 , pub time_running : __u64 , pub __bindgen_anon_1 : perf_event_mmap_page__bindgen_ty_1 , pub pmc_width : __u16 , pub time_shift : __u16 , pub time_mult : __u32 , pub time_offset : __u64 , pub time_zero : __u64 , pub size : __u32 , pub __reserved_1 : __u32 , pub time_cycles : __u64 , pub time_mask : __u64 , pub __reserved : [__u8 ; 928usize] , pub data_head : __u64 , pub data_tail : __u64 , pub data_offset : __u64 , pub data_size : __u64 , pub aux_head : __u64 , pub aux_tail : __u64 , pub aux_offset : __u64 , pub aux_size : __u64 , } # [repr (C)] # [derive (Copy , Clone)] pub union perf_event_mmap_page__bindgen_ty_1 { pub capabilities : __u64 , pub __bindgen_anon_1 : perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [repr (align (8))] # [derive (Debug , Copy , Clone)] pub struct perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 { pub _bitfield_align_1 : [u64 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1))) ; } impl perf_event_mmap_page__bindgen_ty_1__bindgen_ty_1 { # [inline] pub fn cap_bit0 (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u64) } } # [inline] pub fn set_cap_bit0 (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn cap_bit0_is_deprecated (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u64) } } # [inline] pub fn set_cap_bit0_is_deprecated (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn cap_user_rdpmc (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u64) } } # [inline] pub fn set_cap_user_rdpmc (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn cap_user_time (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (3usize , 1u8) as u64) } } # [inline] pub fn set_cap_user_time (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (3usize , 1u8 , val as u64) } } # [inline] pub fn cap_user_time_zero (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (4usize , 1u8) as u64) } } # [inline] pub fn set_cap_user_time_zero (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (4usize , 1u8 , val as u64) } } # [inline] pub fn cap_user_time_short (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (5usize , 1u8) as u64) } } # [inline] pub fn set_cap_user_time_short (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (5usize , 1u8 , val as u64) } } # [inline] pub fn cap_____res (& self) -> __u64 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (6usize , 58u8) as u64) } } # [inline] pub fn set_cap_____res (& mut self , val : __u64) { unsafe { let val : u64 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (6usize , 58u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (cap_bit0 : __u64 , cap_bit0_is_deprecated : __u64 , cap_user_rdpmc : __u64 , cap_user_time : __u64 , cap_user_time_zero : __u64 , cap_user_time_short : __u64 , cap_____res : __u64) -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let cap_bit0 : u64 = unsafe { :: core :: mem :: transmute (cap_bit0) } ; cap_bit0 as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let cap_bit0_is_deprecated : u64 = unsafe { :: core :: mem :: transmute (cap_bit0_is_deprecated) } ; cap_bit0_is_deprecated as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let cap_user_rdpmc : u64 = unsafe { :: core :: mem :: transmute (cap_user_rdpmc) } ; cap_user_rdpmc as u64 }) ; __bindgen_bitfield_unit . set (3usize , 1u8 , { let cap_user_time : u64 = unsafe { :: core :: mem :: transmute (cap_user_time) } ; cap_user_time as u64 }) ; __bindgen_bitfield_unit . set (4usize , 1u8 , { let cap_user_time_zero : u64 = unsafe { :: core :: mem :: transmute (cap_user_time_zero) } ; cap_user_time_zero as u64 }) ; __bindgen_bitfield_unit . set (5usize , 1u8 , { let cap_user_time_short : u64 = unsafe { :: core :: mem :: transmute (cap_user_time_short) } ; cap_user_time_short as u64 }) ; __bindgen_bitfield_unit . set (6usize , 58u8 , { let cap_____res : u64 = unsafe { :: core :: mem :: transmute (cap_____res) } ; cap_____res as u64 }) ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_perf_event_mmap_page__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_mmap_page__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (perf_event_mmap_page__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_mmap_page__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_mmap_page__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page__bindgen_ty_1 > ())) . capabilities as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page__bindgen_ty_1) , "::" , stringify ! (capabilities))) ; } # [test] fn bindgen_test_layout_perf_event_mmap_page () { assert_eq ! (:: core :: mem :: size_of :: < perf_event_mmap_page > () , 1088usize , concat ! ("Size of: " , stringify ! (perf_event_mmap_page))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_event_mmap_page > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_event_mmap_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . version as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . compat_version as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (compat_version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . index as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . offset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_enabled as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_running as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . pmc_width as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (pmc_width))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_shift as * const _ as usize } , 50usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_mult as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_mult))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_offset as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_zero as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_zero))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . size as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . __reserved_1 as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (__reserved_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_cycles as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_cycles))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . time_mask as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (time_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . __reserved as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (__reserved))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . data_head as * const _ as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (data_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . data_tail as * const _ as usize } , 1032usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (data_tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . data_offset as * const _ as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (data_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . data_size as * const _ as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (data_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . aux_head as * const _ as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (aux_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . aux_tail as * const _ as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (aux_tail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . aux_offset as * const _ as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (aux_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_event_mmap_page > ())) . aux_size as * const _ as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (perf_event_mmap_page) , "::" , stringify ! (aux_size))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ldt_struct { pub entries : * mut desc_struct , pub nr_entries : :: cty :: c_uint , pub slot : :: cty :: c_int , } # [test] fn bindgen_test_layout_ldt_struct () { assert_eq ! (:: core :: mem :: size_of :: < ldt_struct > () , 16usize , concat ! ("Size of: " , stringify ! (ldt_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < ldt_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (ldt_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ldt_struct > ())) . entries as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ldt_struct) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ldt_struct > ())) . nr_entries as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ldt_struct) , "::" , stringify ! (nr_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ldt_struct > ())) . slot as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (ldt_struct) , "::" , stringify ! (slot))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct plist_head { pub node_list : list_head , } # [test] fn bindgen_test_layout_plist_head () { assert_eq ! (:: core :: mem :: size_of :: < plist_head > () , 16usize , concat ! ("Size of: " , stringify ! (plist_head))) ; assert_eq ! (:: core :: mem :: align_of :: < plist_head > () , 8usize , concat ! ("Alignment of " , stringify ! (plist_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < plist_head > ())) . node_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (plist_head) , "::" , stringify ! (node_list))) ; } pub const pm_qos_type_PM_QOS_UNITIALIZED : pm_qos_type = 0 ; pub const pm_qos_type_PM_QOS_MAX : pm_qos_type = 1 ; pub const pm_qos_type_PM_QOS_MIN : pm_qos_type = 2 ; pub type pm_qos_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pm_qos_constraints { pub list : plist_head , pub target_value : s32 , pub default_value : s32 , pub no_constraint_value : s32 , pub type_ : pm_qos_type , pub notifiers : * mut blocking_notifier_head , } # [test] fn bindgen_test_layout_pm_qos_constraints () { assert_eq ! (:: core :: mem :: size_of :: < pm_qos_constraints > () , 40usize , concat ! ("Size of: " , stringify ! (pm_qos_constraints))) ; assert_eq ! (:: core :: mem :: align_of :: < pm_qos_constraints > () , 8usize , concat ! ("Alignment of " , stringify ! (pm_qos_constraints))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_constraints > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pm_qos_constraints) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_constraints > ())) . target_value as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pm_qos_constraints) , "::" , stringify ! (target_value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_constraints > ())) . default_value as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (pm_qos_constraints) , "::" , stringify ! (default_value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_constraints > ())) . no_constraint_value as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pm_qos_constraints) , "::" , stringify ! (no_constraint_value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_constraints > ())) . type_ as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (pm_qos_constraints) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_constraints > ())) . notifiers as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (pm_qos_constraints) , "::" , stringify ! (notifiers))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct freq_constraints { pub min_freq : pm_qos_constraints , pub min_freq_notifiers : blocking_notifier_head , pub max_freq : pm_qos_constraints , pub max_freq_notifiers : blocking_notifier_head , } # [test] fn bindgen_test_layout_freq_constraints () { assert_eq ! (:: core :: mem :: size_of :: < freq_constraints > () , 176usize , concat ! ("Size of: " , stringify ! (freq_constraints))) ; assert_eq ! (:: core :: mem :: align_of :: < freq_constraints > () , 8usize , concat ! ("Alignment of " , stringify ! (freq_constraints))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_constraints > ())) . min_freq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (freq_constraints) , "::" , stringify ! (min_freq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_constraints > ())) . min_freq_notifiers as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (freq_constraints) , "::" , stringify ! (min_freq_notifiers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_constraints > ())) . max_freq as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (freq_constraints) , "::" , stringify ! (max_freq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_constraints > ())) . max_freq_notifiers as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (freq_constraints) , "::" , stringify ! (max_freq_notifiers))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pm_qos_flags { pub list : list_head , pub effective_flags : s32 , } # [test] fn bindgen_test_layout_pm_qos_flags () { assert_eq ! (:: core :: mem :: size_of :: < pm_qos_flags > () , 24usize , concat ! ("Size of: " , stringify ! (pm_qos_flags))) ; assert_eq ! (:: core :: mem :: align_of :: < pm_qos_flags > () , 8usize , concat ! ("Alignment of " , stringify ! (pm_qos_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_flags > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pm_qos_flags) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_flags > ())) . effective_flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pm_qos_flags) , "::" , stringify ! (effective_flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct dev_pm_qos { pub resume_latency : pm_qos_constraints , pub latency_tolerance : pm_qos_constraints , pub freq : freq_constraints , pub flags : pm_qos_flags , pub resume_latency_req : * mut dev_pm_qos_request , pub latency_tolerance_req : * mut dev_pm_qos_request , pub flags_req : * mut dev_pm_qos_request , } # [test] fn bindgen_test_layout_dev_pm_qos () { assert_eq ! (:: core :: mem :: size_of :: < dev_pm_qos > () , 304usize , concat ! ("Size of: " , stringify ! (dev_pm_qos))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pm_qos > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pm_qos))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . resume_latency as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (resume_latency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . latency_tolerance as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (latency_tolerance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . freq as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (freq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . flags as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . resume_latency_req as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (resume_latency_req))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . latency_tolerance_req as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (latency_tolerance_req))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos > ())) . flags_req as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos) , "::" , stringify ! (flags_req))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpuidle_state_usage { pub disable : :: cty :: c_ulonglong , pub usage : :: cty :: c_ulonglong , pub time_ns : _cargo_bpf_u64 , pub above : :: cty :: c_ulonglong , pub below : :: cty :: c_ulonglong , pub rejected : :: cty :: c_ulonglong , pub s2idle_usage : :: cty :: c_ulonglong , pub s2idle_time : :: cty :: c_ulonglong , } # [test] fn bindgen_test_layout_cpuidle_state_usage () { assert_eq ! (:: core :: mem :: size_of :: < cpuidle_state_usage > () , 64usize , concat ! ("Size of: " , stringify ! (cpuidle_state_usage))) ; assert_eq ! (:: core :: mem :: align_of :: < cpuidle_state_usage > () , 8usize , concat ! ("Alignment of " , stringify ! (cpuidle_state_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . disable as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (disable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . usage as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . time_ns as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (time_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . above as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (above))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . below as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (below))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . rejected as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (rejected))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . s2idle_usage as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (s2idle_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state_usage > ())) . s2idle_time as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state_usage) , "::" , stringify ! (s2idle_time))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpuidle_driver_kobj { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpuidle_device { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub cpu : :: cty :: c_uint , pub next_hrtimer : ktime_t , pub last_state_idx : :: cty :: c_int , pub last_residency_ns : _cargo_bpf_u64 , pub poll_limit_ns : _cargo_bpf_u64 , pub forced_idle_latency_limit_ns : _cargo_bpf_u64 , pub states_usage : [cpuidle_state_usage ; 10usize] , pub kobjs : [* mut cpuidle_state_kobj ; 10usize] , pub kobj_driver : * mut cpuidle_driver_kobj , pub kobj_dev : * mut cpuidle_device_kobj , pub device_list : list_head , } # [test] fn bindgen_test_layout_cpuidle_device () { assert_eq ! (:: core :: mem :: size_of :: < cpuidle_device > () , 800usize , concat ! ("Size of: " , stringify ! (cpuidle_device))) ; assert_eq ! (:: core :: mem :: align_of :: < cpuidle_device > () , 8usize , concat ! ("Alignment of " , stringify ! (cpuidle_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . cpu as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . next_hrtimer as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (next_hrtimer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . last_state_idx as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (last_state_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . last_residency_ns as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (last_residency_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . poll_limit_ns as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (poll_limit_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . forced_idle_latency_limit_ns as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (forced_idle_latency_limit_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . states_usage as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (states_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . kobjs as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (kobjs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . kobj_driver as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (kobj_driver))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . kobj_dev as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (kobj_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_device > ())) . device_list as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (cpuidle_device) , "::" , stringify ! (device_list))) ; } impl cpuidle_device { # [inline] pub fn registered (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_registered (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn enabled (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_enabled (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn poll_time_limit (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_poll_time_limit (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (registered : :: cty :: c_uint , enabled : :: cty :: c_uint , poll_time_limit : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let registered : u32 = unsafe { :: core :: mem :: transmute (registered) } ; registered as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let enabled : u32 = unsafe { :: core :: mem :: transmute (enabled) } ; enabled as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let poll_time_limit : u32 = unsafe { :: core :: mem :: transmute (poll_time_limit) } ; poll_time_limit as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pm_qos_flags_request { pub node : list_head , pub flags : s32 , } # [test] fn bindgen_test_layout_pm_qos_flags_request () { assert_eq ! (:: core :: mem :: size_of :: < pm_qos_flags_request > () , 24usize , concat ! ("Size of: " , stringify ! (pm_qos_flags_request))) ; assert_eq ! (:: core :: mem :: align_of :: < pm_qos_flags_request > () , 8usize , concat ! ("Alignment of " , stringify ! (pm_qos_flags_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_flags_request > ())) . node as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pm_qos_flags_request) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pm_qos_flags_request > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pm_qos_flags_request) , "::" , stringify ! (flags))) ; } pub const freq_qos_req_type_FREQ_QOS_MIN : freq_qos_req_type = 1 ; pub const freq_qos_req_type_FREQ_QOS_MAX : freq_qos_req_type = 2 ; pub type freq_qos_req_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct freq_qos_request { pub type_ : freq_qos_req_type , pub pnode : plist_node , pub qos : * mut freq_constraints , } # [test] fn bindgen_test_layout_freq_qos_request () { assert_eq ! (:: core :: mem :: size_of :: < freq_qos_request > () , 56usize , concat ! ("Size of: " , stringify ! (freq_qos_request))) ; assert_eq ! (:: core :: mem :: align_of :: < freq_qos_request > () , 8usize , concat ! ("Alignment of " , stringify ! (freq_qos_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_qos_request > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (freq_qos_request) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_qos_request > ())) . pnode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (freq_qos_request) , "::" , stringify ! (pnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < freq_qos_request > ())) . qos as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (freq_qos_request) , "::" , stringify ! (qos))) ; } pub const dev_pm_qos_req_type_DEV_PM_QOS_RESUME_LATENCY : dev_pm_qos_req_type = 1 ; pub const dev_pm_qos_req_type_DEV_PM_QOS_LATENCY_TOLERANCE : dev_pm_qos_req_type = 2 ; pub const dev_pm_qos_req_type_DEV_PM_QOS_MIN_FREQUENCY : dev_pm_qos_req_type = 3 ; pub const dev_pm_qos_req_type_DEV_PM_QOS_MAX_FREQUENCY : dev_pm_qos_req_type = 4 ; pub const dev_pm_qos_req_type_DEV_PM_QOS_FLAGS : dev_pm_qos_req_type = 5 ; pub type dev_pm_qos_req_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct dev_pm_qos_request { pub type_ : dev_pm_qos_req_type , pub data : dev_pm_qos_request__bindgen_ty_1 , pub dev : * mut device , } # [repr (C)] # [derive (Copy , Clone)] pub union dev_pm_qos_request__bindgen_ty_1 { pub pnode : plist_node , pub flr : pm_qos_flags_request , pub freq : freq_qos_request , } # [test] fn bindgen_test_layout_dev_pm_qos_request__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < dev_pm_qos_request__bindgen_ty_1 > () , 56usize , concat ! ("Size of: " , stringify ! (dev_pm_qos_request__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pm_qos_request__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pm_qos_request__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos_request__bindgen_ty_1 > ())) . pnode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos_request__bindgen_ty_1) , "::" , stringify ! (pnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos_request__bindgen_ty_1 > ())) . flr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos_request__bindgen_ty_1) , "::" , stringify ! (flr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos_request__bindgen_ty_1 > ())) . freq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos_request__bindgen_ty_1) , "::" , stringify ! (freq))) ; } # [test] fn bindgen_test_layout_dev_pm_qos_request () { assert_eq ! (:: core :: mem :: size_of :: < dev_pm_qos_request > () , 72usize , concat ! ("Size of: " , stringify ! (dev_pm_qos_request))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pm_qos_request > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pm_qos_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos_request > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos_request) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos_request > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos_request) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pm_qos_request > ())) . dev as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dev_pm_qos_request) , "::" , stringify ! (dev))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sg_table { pub sgl : * mut scatterlist , pub nents : :: cty :: c_uint , pub orig_nents : :: cty :: c_uint , } # [test] fn bindgen_test_layout_sg_table () { assert_eq ! (:: core :: mem :: size_of :: < sg_table > () , 16usize , concat ! ("Size of: " , stringify ! (sg_table))) ; assert_eq ! (:: core :: mem :: align_of :: < sg_table > () , 8usize , concat ! ("Alignment of " , stringify ! (sg_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_table > ())) . sgl as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sg_table) , "::" , stringify ! (sgl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_table > ())) . nents as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sg_table) , "::" , stringify ! (nents))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sg_table > ())) . orig_nents as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (sg_table) , "::" , stringify ! (orig_nents))) ; } pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_IOAPIC : irq_alloc_type = 1 ; pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_HPET : irq_alloc_type = 2 ; pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_PCI_MSI : irq_alloc_type = 3 ; pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_PCI_MSIX : irq_alloc_type = 4 ; pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_DMAR : irq_alloc_type = 5 ; pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_AMDVI : irq_alloc_type = 6 ; pub const irq_alloc_type_X86_IRQ_ALLOC_TYPE_UV : irq_alloc_type = 7 ; pub type irq_alloc_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ioapic_alloc_info { pub pin : :: cty :: c_int , pub node : :: cty :: c_int , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 3usize] , } # [test] fn bindgen_test_layout_ioapic_alloc_info () { assert_eq ! (:: core :: mem :: size_of :: < ioapic_alloc_info > () , 12usize , concat ! ("Size of: " , stringify ! (ioapic_alloc_info))) ; assert_eq ! (:: core :: mem :: align_of :: < ioapic_alloc_info > () , 4usize , concat ! ("Alignment of " , stringify ! (ioapic_alloc_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ioapic_alloc_info > ())) . pin as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ioapic_alloc_info) , "::" , stringify ! (pin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ioapic_alloc_info > ())) . node as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ioapic_alloc_info) , "::" , stringify ! (node))) ; } impl ioapic_alloc_info { # [inline] pub fn is_level (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_is_level (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn active_low (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_active_low (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn valid (& self) -> _cargo_bpf_u32 { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (2usize , 1u8) as u32) } } # [inline] pub fn set_valid (& mut self , val : _cargo_bpf_u32) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (2usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (is_level : _cargo_bpf_u32 , active_low : _cargo_bpf_u32 , valid : _cargo_bpf_u32) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let is_level : u32 = unsafe { :: core :: mem :: transmute (is_level) } ; is_level as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let active_low : u32 = unsafe { :: core :: mem :: transmute (active_low) } ; active_low as u64 }) ; __bindgen_bitfield_unit . set (2usize , 1u8 , { let valid : u32 = unsafe { :: core :: mem :: transmute (valid) } ; valid as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uv_alloc_info { pub limit : :: cty :: c_int , pub blade : :: cty :: c_int , pub offset : :: cty :: c_ulong , pub name : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_uv_alloc_info () { assert_eq ! (:: core :: mem :: size_of :: < uv_alloc_info > () , 24usize , concat ! ("Size of: " , stringify ! (uv_alloc_info))) ; assert_eq ! (:: core :: mem :: align_of :: < uv_alloc_info > () , 8usize , concat ! ("Alignment of " , stringify ! (uv_alloc_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uv_alloc_info > ())) . limit as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uv_alloc_info) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uv_alloc_info > ())) . blade as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (uv_alloc_info) , "::" , stringify ! (blade))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uv_alloc_info > ())) . offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (uv_alloc_info) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uv_alloc_info > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (uv_alloc_info) , "::" , stringify ! (name))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct irq_alloc_info { pub type_ : irq_alloc_type , pub flags : _cargo_bpf_u32 , pub devid : _cargo_bpf_u32 , pub hwirq : irq_hw_number_t , pub mask : * const cpumask , pub desc : * mut msi_desc , pub data : * mut :: cty :: c_void , pub __bindgen_anon_1 : irq_alloc_info__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union irq_alloc_info__bindgen_ty_1 { pub ioapic : ioapic_alloc_info , pub uv : uv_alloc_info , } # [test] fn bindgen_test_layout_irq_alloc_info__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < irq_alloc_info__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (irq_alloc_info__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_alloc_info__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_alloc_info__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info__bindgen_ty_1 > ())) . ioapic as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info__bindgen_ty_1) , "::" , stringify ! (ioapic))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info__bindgen_ty_1 > ())) . uv as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info__bindgen_ty_1) , "::" , stringify ! (uv))) ; } # [test] fn bindgen_test_layout_irq_alloc_info () { assert_eq ! (:: core :: mem :: size_of :: < irq_alloc_info > () , 72usize , concat ! ("Size of: " , stringify ! (irq_alloc_info))) ; assert_eq ! (:: core :: mem :: align_of :: < irq_alloc_info > () , 8usize , concat ! ("Alignment of " , stringify ! (irq_alloc_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . devid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (devid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . hwirq as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (hwirq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . mask as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . desc as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < irq_alloc_info > ())) . data as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (irq_alloc_info) , "::" , stringify ! (data))) ; } pub type msi_alloc_info_t = irq_alloc_info ; pub type compat_size_t = _cargo_bpf_u32 ; pub type compat_int_t = s32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __kernel_fsid_t { pub val : [:: cty :: c_int ; 2usize] , } # [test] fn bindgen_test_layout___kernel_fsid_t () { assert_eq ! (:: core :: mem :: size_of :: < __kernel_fsid_t > () , 8usize , concat ! ("Size of: " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (:: core :: mem :: align_of :: < __kernel_fsid_t > () , 4usize , concat ! ("Alignment of " , stringify ! (__kernel_fsid_t))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < __kernel_fsid_t > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__kernel_fsid_t) , "::" , stringify ! (val))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kstatfs { pub f_type : :: cty :: c_long , pub f_bsize : :: cty :: c_long , pub f_blocks : _cargo_bpf_u64 , pub f_bfree : _cargo_bpf_u64 , pub f_bavail : _cargo_bpf_u64 , pub f_files : _cargo_bpf_u64 , pub f_ffree : _cargo_bpf_u64 , pub f_fsid : __kernel_fsid_t , pub f_namelen : :: cty :: c_long , pub f_frsize : :: cty :: c_long , pub f_flags : :: cty :: c_long , pub f_spare : [:: cty :: c_long ; 4usize] , } # [test] fn bindgen_test_layout_kstatfs () { assert_eq ! (:: core :: mem :: size_of :: < kstatfs > () , 120usize , concat ! ("Size of: " , stringify ! (kstatfs))) ; assert_eq ! (:: core :: mem :: align_of :: < kstatfs > () , 8usize , concat ! ("Alignment of " , stringify ! (kstatfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_bsize as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_bsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_blocks as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_blocks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_bfree as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_bfree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_bavail as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_bavail))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_files as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_ffree as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_ffree))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_fsid as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_fsid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_namelen as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_namelen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_frsize as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_frsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_flags as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kstatfs > ())) . f_spare as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (kstatfs) , "::" , stringify ! (f_spare))) ; } pub const ip_conntrack_dir_IP_CT_DIR_ORIGINAL : ip_conntrack_dir = 0 ; pub const ip_conntrack_dir_IP_CT_DIR_REPLY : ip_conntrack_dir = 1 ; pub const ip_conntrack_dir_IP_CT_DIR_MAX : ip_conntrack_dir = 2 ; pub type ip_conntrack_dir = :: cty :: c_uint ; pub const sctp_conntrack_SCTP_CONNTRACK_NONE : sctp_conntrack = 0 ; pub const sctp_conntrack_SCTP_CONNTRACK_CLOSED : sctp_conntrack = 1 ; pub const sctp_conntrack_SCTP_CONNTRACK_COOKIE_WAIT : sctp_conntrack = 2 ; pub const sctp_conntrack_SCTP_CONNTRACK_COOKIE_ECHOED : sctp_conntrack = 3 ; pub const sctp_conntrack_SCTP_CONNTRACK_ESTABLISHED : sctp_conntrack = 4 ; pub const sctp_conntrack_SCTP_CONNTRACK_SHUTDOWN_SENT : sctp_conntrack = 5 ; pub const sctp_conntrack_SCTP_CONNTRACK_SHUTDOWN_RECD : sctp_conntrack = 6 ; pub const sctp_conntrack_SCTP_CONNTRACK_SHUTDOWN_ACK_SENT : sctp_conntrack = 7 ; pub const sctp_conntrack_SCTP_CONNTRACK_HEARTBEAT_SENT : sctp_conntrack = 8 ; pub const sctp_conntrack_SCTP_CONNTRACK_HEARTBEAT_ACKED : sctp_conntrack = 9 ; pub const sctp_conntrack_SCTP_CONNTRACK_MAX : sctp_conntrack = 10 ; pub type sctp_conntrack = :: cty :: c_uint ; pub const netns_bpf_attach_type_NETNS_BPF_INVALID : netns_bpf_attach_type = 4294967295 ; pub const netns_bpf_attach_type_NETNS_BPF_FLOW_DISSECTOR : netns_bpf_attach_type = 0 ; pub const netns_bpf_attach_type_NETNS_BPF_SK_LOOKUP : netns_bpf_attach_type = 1 ; pub const netns_bpf_attach_type_MAX_NETNS_BPF_ATTACH_TYPE : netns_bpf_attach_type = 2 ; pub type netns_bpf_attach_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iopf_device_param { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Copy , Clone)] pub struct dev_iommu { pub lock : mutex , pub fault_param : * mut iommu_fault_param , pub iopf_param : * mut iopf_device_param , pub fwspec : * mut iommu_fwspec , pub iommu_dev : * mut iommu_device , pub priv_ : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_dev_iommu () { assert_eq ! (:: core :: mem :: size_of :: < dev_iommu > () , 72usize , concat ! ("Size of: " , stringify ! (dev_iommu))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_iommu > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_iommu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_iommu > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_iommu) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_iommu > ())) . fault_param as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dev_iommu) , "::" , stringify ! (fault_param))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_iommu > ())) . iopf_param as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dev_iommu) , "::" , stringify ! (iopf_param))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_iommu > ())) . fwspec as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dev_iommu) , "::" , stringify ! (fwspec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_iommu > ())) . iommu_dev as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dev_iommu) , "::" , stringify ! (iommu_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_iommu > ())) . priv_ as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (dev_iommu) , "::" , stringify ! (priv_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct of_phandle_args { pub np : * mut device_node , pub args_count : :: cty :: c_int , pub args : [u32 ; 16usize] , } # [test] fn bindgen_test_layout_of_phandle_args () { assert_eq ! (:: core :: mem :: size_of :: < of_phandle_args > () , 80usize , concat ! ("Size of: " , stringify ! (of_phandle_args))) ; assert_eq ! (:: core :: mem :: align_of :: < of_phandle_args > () , 8usize , concat ! ("Alignment of " , stringify ! (of_phandle_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_phandle_args > ())) . np as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (of_phandle_args) , "::" , stringify ! (np))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_phandle_args > ())) . args_count as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (of_phandle_args) , "::" , stringify ! (args_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < of_phandle_args > ())) . args as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (of_phandle_args) , "::" , stringify ! (args))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_fault_unrecoverable { pub reason : __u32 , pub flags : __u32 , pub pasid : __u32 , pub perm : __u32 , pub addr : __u64 , pub fetch_addr : __u64 , } # [test] fn bindgen_test_layout_iommu_fault_unrecoverable () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fault_unrecoverable > () , 32usize , concat ! ("Size of: " , stringify ! (iommu_fault_unrecoverable))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fault_unrecoverable > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fault_unrecoverable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_unrecoverable > ())) . reason as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_unrecoverable) , "::" , stringify ! (reason))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_unrecoverable > ())) . flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_unrecoverable) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_unrecoverable > ())) . pasid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_unrecoverable) , "::" , stringify ! (pasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_unrecoverable > ())) . perm as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_unrecoverable) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_unrecoverable > ())) . addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_unrecoverable) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_unrecoverable > ())) . fetch_addr as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_unrecoverable) , "::" , stringify ! (fetch_addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_fault_page_request { pub flags : __u32 , pub pasid : __u32 , pub grpid : __u32 , pub perm : __u32 , pub addr : __u64 , pub private_data : [__u64 ; 2usize] , } # [test] fn bindgen_test_layout_iommu_fault_page_request () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fault_page_request > () , 40usize , concat ! ("Size of: " , stringify ! (iommu_fault_page_request))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fault_page_request > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fault_page_request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_page_request > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_page_request) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_page_request > ())) . pasid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_page_request) , "::" , stringify ! (pasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_page_request > ())) . grpid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_page_request) , "::" , stringify ! (grpid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_page_request > ())) . perm as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_page_request) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_page_request > ())) . addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_page_request) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_page_request > ())) . private_data as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_page_request) , "::" , stringify ! (private_data))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct iommu_fault { pub type_ : __u32 , pub padding : __u32 , pub __bindgen_anon_1 : iommu_fault__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union iommu_fault__bindgen_ty_1 { pub event : iommu_fault_unrecoverable , pub prm : iommu_fault_page_request , pub padding2 : [__u8 ; 56usize] , } # [test] fn bindgen_test_layout_iommu_fault__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fault__bindgen_ty_1 > () , 56usize , concat ! ("Size of: " , stringify ! (iommu_fault__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fault__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fault__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault__bindgen_ty_1 > ())) . event as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault__bindgen_ty_1) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault__bindgen_ty_1 > ())) . prm as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault__bindgen_ty_1) , "::" , stringify ! (prm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault__bindgen_ty_1 > ())) . padding2 as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault__bindgen_ty_1) , "::" , stringify ! (padding2))) ; } # [test] fn bindgen_test_layout_iommu_fault () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fault > () , 64usize , concat ! ("Size of: " , stringify ! (iommu_fault))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fault > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault > ())) . padding as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_fault) , "::" , stringify ! (padding))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_page_response { pub argsz : __u32 , pub version : __u32 , pub flags : __u32 , pub pasid : __u32 , pub grpid : __u32 , pub code : __u32 , } # [test] fn bindgen_test_layout_iommu_page_response () { assert_eq ! (:: core :: mem :: size_of :: < iommu_page_response > () , 24usize , concat ! ("Size of: " , stringify ! (iommu_page_response))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_page_response > () , 4usize , concat ! ("Alignment of " , stringify ! (iommu_page_response))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_page_response > ())) . argsz as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_page_response) , "::" , stringify ! (argsz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_page_response > ())) . version as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_page_response) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_page_response > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_page_response) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_page_response > ())) . pasid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iommu_page_response) , "::" , stringify ! (pasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_page_response > ())) . grpid as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_page_response) , "::" , stringify ! (grpid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_page_response > ())) . code as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (iommu_page_response) , "::" , stringify ! (code))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_inv_addr_info { pub flags : __u32 , pub archid : __u32 , pub pasid : __u64 , pub addr : __u64 , pub granule_size : __u64 , pub nb_granules : __u64 , } # [test] fn bindgen_test_layout_iommu_inv_addr_info () { assert_eq ! (:: core :: mem :: size_of :: < iommu_inv_addr_info > () , 40usize , concat ! ("Size of: " , stringify ! (iommu_inv_addr_info))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_inv_addr_info > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_inv_addr_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_addr_info > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_addr_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_addr_info > ())) . archid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_addr_info) , "::" , stringify ! (archid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_addr_info > ())) . pasid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_addr_info) , "::" , stringify ! (pasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_addr_info > ())) . addr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_addr_info) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_addr_info > ())) . granule_size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_addr_info) , "::" , stringify ! (granule_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_addr_info > ())) . nb_granules as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_addr_info) , "::" , stringify ! (nb_granules))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_inv_pasid_info { pub flags : __u32 , pub archid : __u32 , pub pasid : __u64 , } # [test] fn bindgen_test_layout_iommu_inv_pasid_info () { assert_eq ! (:: core :: mem :: size_of :: < iommu_inv_pasid_info > () , 16usize , concat ! ("Size of: " , stringify ! (iommu_inv_pasid_info))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_inv_pasid_info > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_inv_pasid_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_pasid_info > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_pasid_info) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_pasid_info > ())) . archid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_pasid_info) , "::" , stringify ! (archid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_inv_pasid_info > ())) . pasid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_inv_pasid_info) , "::" , stringify ! (pasid))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct iommu_cache_invalidate_info { pub argsz : __u32 , pub version : __u32 , pub cache : __u8 , pub granularity : __u8 , pub padding : [__u8 ; 6usize] , pub granu : iommu_cache_invalidate_info__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union iommu_cache_invalidate_info__bindgen_ty_1 { pub pasid_info : iommu_inv_pasid_info , pub addr_info : iommu_inv_addr_info , } # [test] fn bindgen_test_layout_iommu_cache_invalidate_info__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < iommu_cache_invalidate_info__bindgen_ty_1 > () , 40usize , concat ! ("Size of: " , stringify ! (iommu_cache_invalidate_info__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_cache_invalidate_info__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_cache_invalidate_info__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info__bindgen_ty_1 > ())) . pasid_info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info__bindgen_ty_1) , "::" , stringify ! (pasid_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info__bindgen_ty_1 > ())) . addr_info as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info__bindgen_ty_1) , "::" , stringify ! (addr_info))) ; } # [test] fn bindgen_test_layout_iommu_cache_invalidate_info () { assert_eq ! (:: core :: mem :: size_of :: < iommu_cache_invalidate_info > () , 56usize , concat ! ("Size of: " , stringify ! (iommu_cache_invalidate_info))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_cache_invalidate_info > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_cache_invalidate_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info > ())) . argsz as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info) , "::" , stringify ! (argsz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info > ())) . version as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info > ())) . cache as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info > ())) . granularity as * const _ as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info) , "::" , stringify ! (granularity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info > ())) . padding as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info) , "::" , stringify ! (padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_cache_invalidate_info > ())) . granu as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_cache_invalidate_info) , "::" , stringify ! (granu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_gpasid_bind_data_vtd { pub flags : __u64 , pub pat : __u32 , pub emt : __u32 , } # [test] fn bindgen_test_layout_iommu_gpasid_bind_data_vtd () { assert_eq ! (:: core :: mem :: size_of :: < iommu_gpasid_bind_data_vtd > () , 16usize , concat ! ("Size of: " , stringify ! (iommu_gpasid_bind_data_vtd))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_gpasid_bind_data_vtd > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_gpasid_bind_data_vtd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data_vtd > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data_vtd) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data_vtd > ())) . pat as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data_vtd) , "::" , stringify ! (pat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data_vtd > ())) . emt as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data_vtd) , "::" , stringify ! (emt))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct iommu_gpasid_bind_data { pub argsz : __u32 , pub version : __u32 , pub format : __u32 , pub addr_width : __u32 , pub flags : __u64 , pub gpgd : __u64 , pub hpasid : __u64 , pub gpasid : __u64 , pub padding : [__u8 ; 8usize] , pub vendor : iommu_gpasid_bind_data__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union iommu_gpasid_bind_data__bindgen_ty_1 { pub vtd : iommu_gpasid_bind_data_vtd , } # [test] fn bindgen_test_layout_iommu_gpasid_bind_data__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < iommu_gpasid_bind_data__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (iommu_gpasid_bind_data__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_gpasid_bind_data__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_gpasid_bind_data__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data__bindgen_ty_1 > ())) . vtd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data__bindgen_ty_1) , "::" , stringify ! (vtd))) ; } # [test] fn bindgen_test_layout_iommu_gpasid_bind_data () { assert_eq ! (:: core :: mem :: size_of :: < iommu_gpasid_bind_data > () , 72usize , concat ! ("Size of: " , stringify ! (iommu_gpasid_bind_data))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_gpasid_bind_data > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_gpasid_bind_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . argsz as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (argsz))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . version as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . format as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (format))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . addr_width as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (addr_width))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . gpgd as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (gpgd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . hpasid as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (hpasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . gpasid as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (gpasid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . padding as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_gpasid_bind_data > ())) . vendor as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (iommu_gpasid_bind_data) , "::" , stringify ! (vendor))) ; } pub type iommu_fault_handler_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_domain , arg2 : * mut device , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_int , arg5 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_domain_geometry { pub aperture_start : dma_addr_t , pub aperture_end : dma_addr_t , pub force_aperture : bool_ , } # [test] fn bindgen_test_layout_iommu_domain_geometry () { assert_eq ! (:: core :: mem :: size_of :: < iommu_domain_geometry > () , 24usize , concat ! ("Size of: " , stringify ! (iommu_domain_geometry))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_domain_geometry > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_domain_geometry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain_geometry > ())) . aperture_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_domain_geometry) , "::" , stringify ! (aperture_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain_geometry > ())) . aperture_end as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_domain_geometry) , "::" , stringify ! (aperture_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain_geometry > ())) . force_aperture as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_domain_geometry) , "::" , stringify ! (force_aperture))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_domain { pub type_ : :: cty :: c_uint , pub ops : * const iommu_ops , pub pgsize_bitmap : :: cty :: c_ulong , pub handler : iommu_fault_handler_t , pub handler_token : * mut :: cty :: c_void , pub geometry : iommu_domain_geometry , pub iova_cookie : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_iommu_domain () { assert_eq ! (:: core :: mem :: size_of :: < iommu_domain > () , 72usize , concat ! ("Size of: " , stringify ! (iommu_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . ops as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . pgsize_bitmap as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (pgsize_bitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . handler as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . handler_token as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (handler_token))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . geometry as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (geometry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_domain > ())) . iova_cookie as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (iommu_domain) , "::" , stringify ! (iova_cookie))) ; } pub type iommu_dev_fault_handler_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut iommu_fault , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > ; pub const iommu_resv_type_IOMMU_RESV_DIRECT : iommu_resv_type = 0 ; pub const iommu_resv_type_IOMMU_RESV_DIRECT_RELAXABLE : iommu_resv_type = 1 ; pub const iommu_resv_type_IOMMU_RESV_RESERVED : iommu_resv_type = 2 ; pub const iommu_resv_type_IOMMU_RESV_MSI : iommu_resv_type = 3 ; pub const iommu_resv_type_IOMMU_RESV_SW_MSI : iommu_resv_type = 4 ; pub type iommu_resv_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_resv_region { pub list : list_head , pub start : phys_addr_t , pub length : size_t , pub prot : :: cty :: c_int , pub type_ : iommu_resv_type , } # [test] fn bindgen_test_layout_iommu_resv_region () { assert_eq ! (:: core :: mem :: size_of :: < iommu_resv_region > () , 40usize , concat ! ("Size of: " , stringify ! (iommu_resv_region))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_resv_region > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_resv_region))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_resv_region > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_resv_region) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_resv_region > ())) . start as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_resv_region) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_resv_region > ())) . length as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_resv_region) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_resv_region > ())) . prot as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_resv_region) , "::" , stringify ! (prot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_resv_region > ())) . type_ as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (iommu_resv_region) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_iotlb_gather { pub start : :: cty :: c_ulong , pub end : :: cty :: c_ulong , pub pgsize : size_t , pub freelist : * mut page , } # [test] fn bindgen_test_layout_iommu_iotlb_gather () { assert_eq ! (:: core :: mem :: size_of :: < iommu_iotlb_gather > () , 32usize , concat ! ("Size of: " , stringify ! (iommu_iotlb_gather))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_iotlb_gather > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_iotlb_gather))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_iotlb_gather > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_iotlb_gather) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_iotlb_gather > ())) . end as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_iotlb_gather) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_iotlb_gather > ())) . pgsize as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_iotlb_gather) , "::" , stringify ! (pgsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_iotlb_gather > ())) . freelist as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_iotlb_gather) , "::" , stringify ! (freelist))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_device { pub list : list_head , pub ops : * const iommu_ops , pub fwnode : * mut fwnode_handle , pub dev : * mut device , } # [test] fn bindgen_test_layout_iommu_device () { assert_eq ! (:: core :: mem :: size_of :: < iommu_device > () , 40usize , concat ! ("Size of: " , stringify ! (iommu_device))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_device > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_device > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_device) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_device > ())) . ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_device) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_device > ())) . fwnode as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_device) , "::" , stringify ! (fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_device > ())) . dev as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_device) , "::" , stringify ! (dev))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct iommu_sva { pub dev : * mut device , } # [test] fn bindgen_test_layout_iommu_sva () { assert_eq ! (:: core :: mem :: size_of :: < iommu_sva > () , 8usize , concat ! ("Size of: " , stringify ! (iommu_sva))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_sva > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_sva))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_sva > ())) . dev as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_sva) , "::" , stringify ! (dev))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct iommu_fault_event { pub fault : iommu_fault , pub list : list_head , } # [test] fn bindgen_test_layout_iommu_fault_event () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fault_event > () , 80usize , concat ! ("Size of: " , stringify ! (iommu_fault_event))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fault_event > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fault_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_event > ())) . fault as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_event) , "::" , stringify ! (fault))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_event > ())) . list as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_event) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct iommu_fault_param { pub handler : iommu_dev_fault_handler_t , pub data : * mut :: cty :: c_void , pub faults : list_head , pub lock : mutex , } # [test] fn bindgen_test_layout_iommu_fault_param () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fault_param > () , 64usize , concat ! ("Size of: " , stringify ! (iommu_fault_param))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fault_param > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fault_param))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_param > ())) . handler as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_param) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_param > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_param) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_param > ())) . faults as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_param) , "::" , stringify ! (faults))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fault_param > ())) . lock as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (iommu_fault_param) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Debug)] pub struct iommu_fwspec { pub ops : * const iommu_ops , pub iommu_fwnode : * mut fwnode_handle , pub flags : _cargo_bpf_u32 , pub num_ids : :: cty :: c_uint , pub ids : __IncompleteArrayField < _cargo_bpf_u32 > , } # [test] fn bindgen_test_layout_iommu_fwspec () { assert_eq ! (:: core :: mem :: size_of :: < iommu_fwspec > () , 24usize , concat ! ("Size of: " , stringify ! (iommu_fwspec))) ; assert_eq ! (:: core :: mem :: align_of :: < iommu_fwspec > () , 8usize , concat ! ("Alignment of " , stringify ! (iommu_fwspec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fwspec > ())) . ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (iommu_fwspec) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fwspec > ())) . iommu_fwnode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (iommu_fwspec) , "::" , stringify ! (iommu_fwnode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fwspec > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (iommu_fwspec) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fwspec > ())) . num_ids as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (iommu_fwspec) , "::" , stringify ! (num_ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < iommu_fwspec > ())) . ids as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (iommu_fwspec) , "::" , stringify ! (ids))) ; } pub type cycles_t = :: cty :: c_ulonglong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct proc_ops { pub proc_flags : :: cty :: c_uint , pub proc_open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut file) -> :: cty :: c_int > , pub proc_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut :: cty :: c_char , arg3 : size_t , arg4 : * mut loff_t) -> ssize_t > , pub proc_read_iter : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut kiocb , arg2 : * mut iov_iter) -> ssize_t > , pub proc_write : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * const :: cty :: c_char , arg3 : size_t , arg4 : * mut loff_t) -> ssize_t > , pub proc_lseek : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : loff_t , arg3 : :: cty :: c_int) -> loff_t > , pub proc_release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut inode , arg2 : * mut file) -> :: cty :: c_int > , pub proc_poll : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut poll_table_struct) -> __poll_t > , pub proc_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_long > , pub proc_compat_ioctl : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_uint , arg3 : :: cty :: c_ulong) -> :: cty :: c_long > , pub proc_mmap : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : * mut vm_area_struct) -> :: cty :: c_int > , pub proc_get_unmapped_area : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut file , arg2 : :: cty :: c_ulong , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_ulong , arg5 : :: cty :: c_ulong) -> :: cty :: c_ulong > , } # [test] fn bindgen_test_layout_proc_ops () { assert_eq ! (:: core :: mem :: size_of :: < proc_ops > () , 96usize , concat ! ("Size of: " , stringify ! (proc_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < proc_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (proc_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_open as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_read as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_read_iter as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_read_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_write as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_lseek as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_lseek))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_release as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_poll as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_poll))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_ioctl as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_compat_ioctl as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_compat_ioctl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_mmap as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < proc_ops > ())) . proc_get_unmapped_area as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (proc_ops) , "::" , stringify ! (proc_get_unmapped_area))) ; } pub type compat_uint_t = _cargo_bpf_u32 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct firmware { pub size : size_t , pub data : * const _cargo_bpf_u8 , pub priv_ : * mut :: cty :: c_void , } # [test] fn bindgen_test_layout_firmware () { assert_eq ! (:: core :: mem :: size_of :: < firmware > () , 24usize , concat ! ("Size of: " , stringify ! (firmware))) ; assert_eq ! (:: core :: mem :: align_of :: < firmware > () , 8usize , concat ! ("Alignment of " , stringify ! (firmware))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < firmware > ())) . size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (firmware) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < firmware > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (firmware) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < firmware > ())) . priv_ as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (firmware) , "::" , stringify ! (priv_))) ; } # [repr (C)] # [derive (Debug)] pub struct crypto_tfm { pub crt_flags : _cargo_bpf_u32 , pub node : :: cty :: c_int , pub exit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm) > , pub __crt_alg : * mut crypto_alg , pub __crt_ctx : __IncompleteArrayField < * mut :: cty :: c_void > , } # [test] fn bindgen_test_layout_crypto_tfm () { assert_eq ! (:: core :: mem :: size_of :: < crypto_tfm > () , 24usize , concat ! ("Size of: " , stringify ! (crypto_tfm))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_tfm > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_tfm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_tfm > ())) . crt_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_tfm) , "::" , stringify ! (crt_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_tfm > ())) . node as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (crypto_tfm) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_tfm > ())) . exit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_tfm) , "::" , stringify ! (exit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_tfm > ())) . __crt_alg as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_tfm) , "::" , stringify ! (__crt_alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_tfm > ())) . __crt_ctx as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_tfm) , "::" , stringify ! (__crt_ctx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cipher_alg { pub cia_min_keysize : :: cty :: c_uint , pub cia_max_keysize : :: cty :: c_uint , pub cia_setkey : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm , arg2 : * const _cargo_bpf_u8 , arg3 : :: cty :: c_uint) -> :: cty :: c_int > , pub cia_encrypt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm , arg2 : * mut _cargo_bpf_u8 , arg3 : * const _cargo_bpf_u8) > , pub cia_decrypt : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm , arg2 : * mut _cargo_bpf_u8 , arg3 : * const _cargo_bpf_u8) > , } # [test] fn bindgen_test_layout_cipher_alg () { assert_eq ! (:: core :: mem :: size_of :: < cipher_alg > () , 32usize , concat ! ("Size of: " , stringify ! (cipher_alg))) ; assert_eq ! (:: core :: mem :: align_of :: < cipher_alg > () , 8usize , concat ! ("Alignment of " , stringify ! (cipher_alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cipher_alg > ())) . cia_min_keysize as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cipher_alg) , "::" , stringify ! (cia_min_keysize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cipher_alg > ())) . cia_max_keysize as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cipher_alg) , "::" , stringify ! (cia_max_keysize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cipher_alg > ())) . cia_setkey as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cipher_alg) , "::" , stringify ! (cia_setkey))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cipher_alg > ())) . cia_encrypt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cipher_alg) , "::" , stringify ! (cia_encrypt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cipher_alg > ())) . cia_decrypt as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cipher_alg) , "::" , stringify ! (cia_decrypt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct compress_alg { pub coa_compress : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm , arg2 : * const _cargo_bpf_u8 , arg3 : :: cty :: c_uint , arg4 : * mut _cargo_bpf_u8 , arg5 : * mut :: cty :: c_uint) -> :: cty :: c_int > , pub coa_decompress : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm , arg2 : * const _cargo_bpf_u8 , arg3 : :: cty :: c_uint , arg4 : * mut _cargo_bpf_u8 , arg5 : * mut :: cty :: c_uint) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_compress_alg () { assert_eq ! (:: core :: mem :: size_of :: < compress_alg > () , 16usize , concat ! ("Size of: " , stringify ! (compress_alg))) ; assert_eq ! (:: core :: mem :: align_of :: < compress_alg > () , 8usize , concat ! ("Alignment of " , stringify ! (compress_alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < compress_alg > ())) . coa_compress as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (compress_alg) , "::" , stringify ! (coa_compress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < compress_alg > ())) . coa_decompress as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (compress_alg) , "::" , stringify ! (coa_decompress))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_aead { pub encrypt_cnt : atomic64_t , pub encrypt_tlen : atomic64_t , pub decrypt_cnt : atomic64_t , pub decrypt_tlen : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_aead () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_aead > () , 40usize , concat ! ("Size of: " , stringify ! (crypto_istat_aead))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_aead > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_aead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_aead > ())) . encrypt_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_aead) , "::" , stringify ! (encrypt_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_aead > ())) . encrypt_tlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_aead) , "::" , stringify ! (encrypt_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_aead > ())) . decrypt_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_aead) , "::" , stringify ! (decrypt_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_aead > ())) . decrypt_tlen as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_aead) , "::" , stringify ! (decrypt_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_aead > ())) . err_cnt as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_aead) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_akcipher { pub encrypt_cnt : atomic64_t , pub encrypt_tlen : atomic64_t , pub decrypt_cnt : atomic64_t , pub decrypt_tlen : atomic64_t , pub verify_cnt : atomic64_t , pub sign_cnt : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_akcipher () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_akcipher > () , 56usize , concat ! ("Size of: " , stringify ! (crypto_istat_akcipher))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_akcipher > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_akcipher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . encrypt_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (encrypt_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . encrypt_tlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (encrypt_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . decrypt_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (decrypt_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . decrypt_tlen as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (decrypt_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . verify_cnt as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (verify_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . sign_cnt as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (sign_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_akcipher > ())) . err_cnt as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_akcipher) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_cipher { pub encrypt_cnt : atomic64_t , pub encrypt_tlen : atomic64_t , pub decrypt_cnt : atomic64_t , pub decrypt_tlen : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_cipher () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_cipher > () , 40usize , concat ! ("Size of: " , stringify ! (crypto_istat_cipher))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_cipher > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_cipher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_cipher > ())) . encrypt_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_cipher) , "::" , stringify ! (encrypt_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_cipher > ())) . encrypt_tlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_cipher) , "::" , stringify ! (encrypt_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_cipher > ())) . decrypt_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_cipher) , "::" , stringify ! (decrypt_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_cipher > ())) . decrypt_tlen as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_cipher) , "::" , stringify ! (decrypt_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_cipher > ())) . err_cnt as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_cipher) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_compress { pub compress_cnt : atomic64_t , pub compress_tlen : atomic64_t , pub decompress_cnt : atomic64_t , pub decompress_tlen : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_compress () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_compress > () , 40usize , concat ! ("Size of: " , stringify ! (crypto_istat_compress))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_compress > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_compress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_compress > ())) . compress_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_compress) , "::" , stringify ! (compress_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_compress > ())) . compress_tlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_compress) , "::" , stringify ! (compress_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_compress > ())) . decompress_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_compress) , "::" , stringify ! (decompress_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_compress > ())) . decompress_tlen as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_compress) , "::" , stringify ! (decompress_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_compress > ())) . err_cnt as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_compress) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_hash { pub hash_cnt : atomic64_t , pub hash_tlen : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_hash () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_hash > () , 24usize , concat ! ("Size of: " , stringify ! (crypto_istat_hash))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_hash > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_hash > ())) . hash_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_hash) , "::" , stringify ! (hash_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_hash > ())) . hash_tlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_hash) , "::" , stringify ! (hash_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_hash > ())) . err_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_hash) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_kpp { pub setsecret_cnt : atomic64_t , pub generate_public_key_cnt : atomic64_t , pub compute_shared_secret_cnt : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_kpp () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_kpp > () , 32usize , concat ! ("Size of: " , stringify ! (crypto_istat_kpp))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_kpp > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_kpp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_kpp > ())) . setsecret_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_kpp) , "::" , stringify ! (setsecret_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_kpp > ())) . generate_public_key_cnt as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_kpp) , "::" , stringify ! (generate_public_key_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_kpp > ())) . compute_shared_secret_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_kpp) , "::" , stringify ! (compute_shared_secret_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_kpp > ())) . err_cnt as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_kpp) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_istat_rng { pub generate_cnt : atomic64_t , pub generate_tlen : atomic64_t , pub seed_cnt : atomic64_t , pub err_cnt : atomic64_t , } # [test] fn bindgen_test_layout_crypto_istat_rng () { assert_eq ! (:: core :: mem :: size_of :: < crypto_istat_rng > () , 32usize , concat ! ("Size of: " , stringify ! (crypto_istat_rng))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_istat_rng > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_istat_rng))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_rng > ())) . generate_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_rng) , "::" , stringify ! (generate_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_rng > ())) . generate_tlen as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_rng) , "::" , stringify ! (generate_tlen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_rng > ())) . seed_cnt as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_rng) , "::" , stringify ! (seed_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_istat_rng > ())) . err_cnt as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_istat_rng) , "::" , stringify ! (err_cnt))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct crypto_alg { pub cra_list : list_head , pub cra_users : list_head , pub cra_flags : _cargo_bpf_u32 , pub cra_blocksize : :: cty :: c_uint , pub cra_ctxsize : :: cty :: c_uint , pub cra_alignmask : :: cty :: c_uint , pub cra_priority : :: cty :: c_int , pub cra_refcnt : refcount_t , pub cra_name : [:: cty :: c_char ; 128usize] , pub cra_driver_name : [:: cty :: c_char ; 128usize] , pub cra_type : * const crypto_type , pub cra_u : crypto_alg__bindgen_ty_1 , pub cra_init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm) -> :: cty :: c_int > , pub cra_exit : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm) > , pub cra_destroy : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_alg) > , pub cra_module : * mut module , pub stats : crypto_alg__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union crypto_alg__bindgen_ty_1 { pub cipher : cipher_alg , pub compress : compress_alg , } # [test] fn bindgen_test_layout_crypto_alg__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < crypto_alg__bindgen_ty_1 > () , 32usize , concat ! ("Size of: " , stringify ! (crypto_alg__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_alg__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_alg__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_1 > ())) . cipher as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_1) , "::" , stringify ! (cipher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_1 > ())) . compress as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_1) , "::" , stringify ! (compress))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union crypto_alg__bindgen_ty_2 { pub aead : crypto_istat_aead , pub akcipher : crypto_istat_akcipher , pub cipher : crypto_istat_cipher , pub compress : crypto_istat_compress , pub hash : crypto_istat_hash , pub rng : crypto_istat_rng , pub kpp : crypto_istat_kpp , } # [test] fn bindgen_test_layout_crypto_alg__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < crypto_alg__bindgen_ty_2 > () , 56usize , concat ! ("Size of: " , stringify ! (crypto_alg__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_alg__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_alg__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . aead as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (aead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . akcipher as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (akcipher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . cipher as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (cipher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . compress as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (compress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . hash as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . rng as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (rng))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg__bindgen_ty_2 > ())) . kpp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg__bindgen_ty_2) , "::" , stringify ! (kpp))) ; } # [test] fn bindgen_test_layout_crypto_alg () { assert_eq ! (:: core :: mem :: size_of :: < crypto_alg > () , 440usize , concat ! ("Size of: " , stringify ! (crypto_alg))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_alg > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_users as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_flags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_blocksize as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_blocksize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_ctxsize as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_ctxsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_alignmask as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_alignmask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_priority as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_refcnt as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_name as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_driver_name as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_driver_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_type as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_u as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_u))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_init as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_exit as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_exit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_destroy as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_destroy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . cra_module as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (cra_module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_alg > ())) . stats as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (crypto_alg) , "::" , stringify ! (stats))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_type { pub ctxsize : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_alg , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32) -> :: cty :: c_uint > , pub extsize : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_alg) -> :: cty :: c_uint > , pub init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32) -> :: cty :: c_int > , pub init_tfm : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_tfm) -> :: cty :: c_int > , pub show : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file , arg2 : * mut crypto_alg) > , pub report : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut sk_buff , arg2 : * mut crypto_alg) -> :: cty :: c_int > , pub free : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_instance) > , pub type_ : :: cty :: c_uint , pub maskclear : :: cty :: c_uint , pub maskset : :: cty :: c_uint , pub tfmsize : :: cty :: c_uint , } # [test] fn bindgen_test_layout_crypto_type () { assert_eq ! (:: core :: mem :: size_of :: < crypto_type > () , 72usize , concat ! ("Size of: " , stringify ! (crypto_type))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_type > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . ctxsize as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (ctxsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . extsize as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (extsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . init as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . init_tfm as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (init_tfm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . show as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (show))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . report as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (report))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . free as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . type_ as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . maskclear as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (maskclear))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . maskset as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (maskset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_type > ())) . tfmsize as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (crypto_type) , "::" , stringify ! (tfmsize))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct gpio_desc { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct serial_icounter_struct { pub cts : :: cty :: c_int , pub dsr : :: cty :: c_int , pub rng : :: cty :: c_int , pub dcd : :: cty :: c_int , pub rx : :: cty :: c_int , pub tx : :: cty :: c_int , pub frame : :: cty :: c_int , pub overrun : :: cty :: c_int , pub parity : :: cty :: c_int , pub brk : :: cty :: c_int , pub buf_overrun : :: cty :: c_int , pub reserved : [:: cty :: c_int ; 9usize] , } # [test] fn bindgen_test_layout_serial_icounter_struct () { assert_eq ! (:: core :: mem :: size_of :: < serial_icounter_struct > () , 80usize , concat ! ("Size of: " , stringify ! (serial_icounter_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < serial_icounter_struct > () , 4usize , concat ! ("Alignment of " , stringify ! (serial_icounter_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . cts as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (cts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . dsr as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (dsr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . rng as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (rng))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . dcd as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (dcd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . rx as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (rx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . tx as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (tx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . frame as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (frame))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . overrun as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . parity as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (parity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . brk as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (brk))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . buf_overrun as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (buf_overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_icounter_struct > ())) . reserved as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (serial_icounter_struct) , "::" , stringify ! (reserved))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct serial_struct { pub type_ : :: cty :: c_int , pub line : :: cty :: c_int , pub port : :: cty :: c_uint , pub irq : :: cty :: c_int , pub flags : :: cty :: c_int , pub xmit_fifo_size : :: cty :: c_int , pub custom_divisor : :: cty :: c_int , pub baud_base : :: cty :: c_int , pub close_delay : :: cty :: c_ushort , pub io_type : :: cty :: c_char , pub reserved_char : [:: cty :: c_char ; 1usize] , pub hub6 : :: cty :: c_int , pub closing_wait : :: cty :: c_ushort , pub closing_wait2 : :: cty :: c_ushort , pub iomem_base : * mut :: cty :: c_uchar , pub iomem_reg_shift : :: cty :: c_ushort , pub port_high : :: cty :: c_uint , pub iomap_base : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_serial_struct () { assert_eq ! (:: core :: mem :: size_of :: < serial_struct > () , 72usize , concat ! ("Size of: " , stringify ! (serial_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < serial_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (serial_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . line as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . port as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . irq as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (irq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . xmit_fifo_size as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (xmit_fifo_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . custom_divisor as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (custom_divisor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . baud_base as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (baud_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . close_delay as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (close_delay))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . io_type as * const _ as usize } , 34usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (io_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . reserved_char as * const _ as usize } , 35usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (reserved_char))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . hub6 as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (hub6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . closing_wait as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (closing_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . closing_wait2 as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (closing_wait2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . iomem_base as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (iomem_base))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . iomem_reg_shift as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (iomem_reg_shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . port_high as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (port_high))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < serial_struct > ())) . iomap_base as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (serial_struct) , "::" , stringify ! (iomap_base))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dev_pin_info { pub p : * mut pinctrl , pub default_state : * mut pinctrl_state , pub init_state : * mut pinctrl_state , pub sleep_state : * mut pinctrl_state , pub idle_state : * mut pinctrl_state , } # [test] fn bindgen_test_layout_dev_pin_info () { assert_eq ! (:: core :: mem :: size_of :: < dev_pin_info > () , 40usize , concat ! ("Size of: " , stringify ! (dev_pin_info))) ; assert_eq ! (:: core :: mem :: align_of :: < dev_pin_info > () , 8usize , concat ! ("Alignment of " , stringify ! (dev_pin_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pin_info > ())) . p as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dev_pin_info) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pin_info > ())) . default_state as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dev_pin_info) , "::" , stringify ! (default_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pin_info > ())) . init_state as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dev_pin_info) , "::" , stringify ! (init_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pin_info > ())) . sleep_state as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dev_pin_info) , "::" , stringify ! (sleep_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dev_pin_info > ())) . idle_state as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (dev_pin_info) , "::" , stringify ! (idle_state))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sched_domain_shared { pub ref_ : atomic_t , pub nr_busy_cpus : atomic_t , pub has_idle_cores : :: cty :: c_int , } # [test] fn bindgen_test_layout_sched_domain_shared () { assert_eq ! (:: core :: mem :: size_of :: < sched_domain_shared > () , 12usize , concat ! ("Size of: " , stringify ! (sched_domain_shared))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_domain_shared > () , 4usize , concat ! ("Alignment of " , stringify ! (sched_domain_shared))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain_shared > ())) . ref_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_domain_shared) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain_shared > ())) . nr_busy_cpus as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sched_domain_shared) , "::" , stringify ! (nr_busy_cpus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain_shared > ())) . has_idle_cores as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_domain_shared) , "::" , stringify ! (has_idle_cores))) ; } # [repr (C)] pub struct sched_domain { pub parent : * mut sched_domain , pub child : * mut sched_domain , pub groups : * mut sched_group , pub min_interval : :: cty :: c_ulong , pub max_interval : :: cty :: c_ulong , pub busy_factor : :: cty :: c_uint , pub imbalance_pct : :: cty :: c_uint , pub cache_nice_tries : :: cty :: c_uint , pub nohz_idle : :: cty :: c_int , pub flags : :: cty :: c_int , pub level : :: cty :: c_int , pub last_balance : :: cty :: c_ulong , pub balance_interval : :: cty :: c_uint , pub nr_balance_failed : :: cty :: c_uint , pub max_newidle_lb_cost : _cargo_bpf_u64 , pub next_decay_max_lb_cost : :: cty :: c_ulong , pub avg_scan_cost : _cargo_bpf_u64 , pub lb_count : [:: cty :: c_uint ; 3usize] , pub lb_failed : [:: cty :: c_uint ; 3usize] , pub lb_balanced : [:: cty :: c_uint ; 3usize] , pub lb_imbalance : [:: cty :: c_uint ; 3usize] , pub lb_gained : [:: cty :: c_uint ; 3usize] , pub lb_hot_gained : [:: cty :: c_uint ; 3usize] , pub lb_nobusyg : [:: cty :: c_uint ; 3usize] , pub lb_nobusyq : [:: cty :: c_uint ; 3usize] , pub alb_count : :: cty :: c_uint , pub alb_failed : :: cty :: c_uint , pub alb_pushed : :: cty :: c_uint , pub sbe_count : :: cty :: c_uint , pub sbe_balanced : :: cty :: c_uint , pub sbe_pushed : :: cty :: c_uint , pub sbf_count : :: cty :: c_uint , pub sbf_balanced : :: cty :: c_uint , pub sbf_pushed : :: cty :: c_uint , pub ttwu_wake_remote : :: cty :: c_uint , pub ttwu_move_affine : :: cty :: c_uint , pub ttwu_move_balance : :: cty :: c_uint , pub name : * mut :: cty :: c_char , pub __bindgen_anon_1 : sched_domain__bindgen_ty_1 , pub shared : * mut sched_domain_shared , pub span_weight : :: cty :: c_uint , pub span : __IncompleteArrayField < :: cty :: c_ulong > , } # [repr (C)] # [derive (Copy , Clone)] pub union sched_domain__bindgen_ty_1 { pub private : * mut :: cty :: c_void , pub rcu : callback_head , } # [test] fn bindgen_test_layout_sched_domain__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < sched_domain__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (sched_domain__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_domain__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_domain__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain__bindgen_ty_1 > ())) . private as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_domain__bindgen_ty_1) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_domain__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_sched_domain () { assert_eq ! (:: core :: mem :: size_of :: < sched_domain > () , 288usize , concat ! ("Size of: " , stringify ! (sched_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . parent as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . child as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (child))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . groups as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (groups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . min_interval as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (min_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . max_interval as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (max_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . busy_factor as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (busy_factor))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . imbalance_pct as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (imbalance_pct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . cache_nice_tries as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (cache_nice_tries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . nohz_idle as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (nohz_idle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . flags as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . level as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . last_balance as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (last_balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . balance_interval as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (balance_interval))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . nr_balance_failed as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (nr_balance_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . max_newidle_lb_cost as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (max_newidle_lb_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . next_decay_max_lb_cost as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (next_decay_max_lb_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . avg_scan_cost as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (avg_scan_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_count as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_failed as * const _ as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_balanced as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_balanced))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_imbalance as * const _ as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_imbalance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_gained as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_gained))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_hot_gained as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_hot_gained))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_nobusyg as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_nobusyg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . lb_nobusyq as * const _ as usize } , 188usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (lb_nobusyq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . alb_count as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (alb_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . alb_failed as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (alb_failed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . alb_pushed as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (alb_pushed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . sbe_count as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (sbe_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . sbe_balanced as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (sbe_balanced))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . sbe_pushed as * const _ as usize } , 220usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (sbe_pushed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . sbf_count as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (sbf_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . sbf_balanced as * const _ as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (sbf_balanced))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . sbf_pushed as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (sbf_pushed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . ttwu_wake_remote as * const _ as usize } , 236usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (ttwu_wake_remote))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . ttwu_move_affine as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (ttwu_move_affine))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . ttwu_move_balance as * const _ as usize } , 244usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (ttwu_move_balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . name as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . shared as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (shared))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . span_weight as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (span_weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_domain > ())) . span as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (sched_domain) , "::" , stringify ! (span))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpuidle_state { pub name : [:: cty :: c_char ; 16usize] , pub desc : [:: cty :: c_char ; 32usize] , pub exit_latency_ns : s64 , pub target_residency_ns : s64 , pub flags : :: cty :: c_uint , pub exit_latency : :: cty :: c_uint , pub power_usage : :: cty :: c_int , pub target_residency : :: cty :: c_uint , pub enter : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cpuidle_device , arg2 : * mut cpuidle_driver___2 , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub enter_dead : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cpuidle_device , arg2 : :: cty :: c_int) -> :: cty :: c_int > , pub enter_s2idle : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut cpuidle_device , arg2 : * mut cpuidle_driver___2 , arg3 : :: cty :: c_int) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_cpuidle_state () { assert_eq ! (:: core :: mem :: size_of :: < cpuidle_state > () , 104usize , concat ! ("Size of: " , stringify ! (cpuidle_state))) ; assert_eq ! (:: core :: mem :: align_of :: < cpuidle_state > () , 8usize , concat ! ("Alignment of " , stringify ! (cpuidle_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . desc as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . exit_latency_ns as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (exit_latency_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . target_residency_ns as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (target_residency_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . flags as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . exit_latency as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (exit_latency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . power_usage as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (power_usage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . target_residency as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (target_residency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . enter as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (enter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . enter_dead as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (enter_dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_state > ())) . enter_s2idle as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cpuidle_state) , "::" , stringify ! (enter_s2idle))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpuidle_driver___2 { pub name : * const :: cty :: c_char , pub owner : * mut module , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub states : [cpuidle_state ; 10usize] , pub state_count : :: cty :: c_int , pub safe_state_index : :: cty :: c_int , pub cpumask : * mut cpumask , pub governor : * const :: cty :: c_char , } # [test] fn bindgen_test_layout_cpuidle_driver___2 () { assert_eq ! (:: core :: mem :: size_of :: < cpuidle_driver___2 > () , 1088usize , concat ! ("Size of: " , stringify ! (cpuidle_driver___2))) ; assert_eq ! (:: core :: mem :: align_of :: < cpuidle_driver___2 > () , 8usize , concat ! ("Alignment of " , stringify ! (cpuidle_driver___2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . owner as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . states as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (states))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . state_count as * const _ as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (state_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . safe_state_index as * const _ as usize } , 1068usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (safe_state_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . cpumask as * const _ as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (cpumask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpuidle_driver___2 > ())) . governor as * const _ as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (cpuidle_driver___2) , "::" , stringify ! (governor))) ; } impl cpuidle_driver___2 { # [inline] pub fn bctimer (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_bctimer (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (bctimer : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let bctimer : u32 = unsafe { :: core :: mem :: transmute (bctimer) } ; bctimer as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct arch_uprobe { pub __bindgen_anon_1 : arch_uprobe__bindgen_ty_1 , pub ops : * const uprobe_xol_ops , pub __bindgen_anon_2 : arch_uprobe__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union arch_uprobe__bindgen_ty_1 { pub insn : [_cargo_bpf_u8 ; 16usize] , pub ixol : [_cargo_bpf_u8 ; 16usize] , } # [test] fn bindgen_test_layout_arch_uprobe__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (arch_uprobe__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe__bindgen_ty_1 > () , 1usize , concat ! ("Alignment of " , stringify ! (arch_uprobe__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_1 > ())) . insn as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_1) , "::" , stringify ! (insn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_1 > ())) . ixol as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_1) , "::" , stringify ! (ixol))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union arch_uprobe__bindgen_ty_2 { pub branch : arch_uprobe__bindgen_ty_2__bindgen_ty_1 , pub defparam : arch_uprobe__bindgen_ty_2__bindgen_ty_2 , pub push : arch_uprobe__bindgen_ty_2__bindgen_ty_3 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct arch_uprobe__bindgen_ty_2__bindgen_ty_1 { pub offs : s32 , pub ilen : _cargo_bpf_u8 , pub opc1 : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_arch_uprobe__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe__bindgen_ty_2__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_1 > ())) . offs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (offs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_1 > ())) . ilen as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (ilen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_1 > ())) . opc1 as * const _ as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (opc1))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct arch_uprobe__bindgen_ty_2__bindgen_ty_2 { pub fixups : _cargo_bpf_u8 , pub ilen : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_arch_uprobe__bindgen_ty_2__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe__bindgen_ty_2__bindgen_ty_2 > () , 2usize , concat ! ("Size of: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe__bindgen_ty_2__bindgen_ty_2 > () , 1usize , concat ! ("Alignment of " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_2 > ())) . fixups as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_2) , "::" , stringify ! (fixups))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_2 > ())) . ilen as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_2) , "::" , stringify ! (ilen))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct arch_uprobe__bindgen_ty_2__bindgen_ty_3 { pub reg_offset : _cargo_bpf_u8 , pub ilen : _cargo_bpf_u8 , } # [test] fn bindgen_test_layout_arch_uprobe__bindgen_ty_2__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe__bindgen_ty_2__bindgen_ty_3 > () , 2usize , concat ! ("Size of: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe__bindgen_ty_2__bindgen_ty_3 > () , 1usize , concat ! ("Alignment of " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_3 > ())) . reg_offset as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_3) , "::" , stringify ! (reg_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2__bindgen_ty_3 > ())) . ilen as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2__bindgen_ty_3) , "::" , stringify ! (ilen))) ; } # [test] fn bindgen_test_layout_arch_uprobe__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe__bindgen_ty_2 > () , 8usize , concat ! ("Size of: " , stringify ! (arch_uprobe__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (arch_uprobe__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2 > ())) . branch as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2) , "::" , stringify ! (branch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2 > ())) . defparam as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2) , "::" , stringify ! (defparam))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe__bindgen_ty_2 > ())) . push as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe__bindgen_ty_2) , "::" , stringify ! (push))) ; } # [test] fn bindgen_test_layout_arch_uprobe () { assert_eq ! (:: core :: mem :: size_of :: < arch_uprobe > () , 32usize , concat ! ("Size of: " , stringify ! (arch_uprobe))) ; assert_eq ! (:: core :: mem :: align_of :: < arch_uprobe > () , 8usize , concat ! ("Alignment of " , stringify ! (arch_uprobe))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < arch_uprobe > ())) . ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (arch_uprobe) , "::" , stringify ! (ops))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uprobe_xol_ops { pub emulate : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut arch_uprobe , arg2 : * mut pt_regs) -> bool_ > , pub pre_xol : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut arch_uprobe , arg2 : * mut pt_regs) -> :: cty :: c_int > , pub post_xol : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut arch_uprobe , arg2 : * mut pt_regs) -> :: cty :: c_int > , pub abort : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut arch_uprobe , arg2 : * mut pt_regs) > , } # [test] fn bindgen_test_layout_uprobe_xol_ops () { assert_eq ! (:: core :: mem :: size_of :: < uprobe_xol_ops > () , 32usize , concat ! ("Size of: " , stringify ! (uprobe_xol_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobe_xol_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobe_xol_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_xol_ops > ())) . emulate as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uprobe_xol_ops) , "::" , stringify ! (emulate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_xol_ops > ())) . pre_xol as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (uprobe_xol_ops) , "::" , stringify ! (pre_xol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_xol_ops > ())) . post_xol as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (uprobe_xol_ops) , "::" , stringify ! (post_xol))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_xol_ops > ())) . abort as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (uprobe_xol_ops) , "::" , stringify ! (abort))) ; } # [repr (C)] pub struct crypto_instance { pub alg : crypto_alg , pub tmpl : * mut crypto_template , pub __bindgen_anon_1 : crypto_instance__bindgen_ty_1 , pub __ctx : __IncompleteArrayField < * mut :: cty :: c_void > , } # [repr (C)] # [derive (Copy , Clone)] pub union crypto_instance__bindgen_ty_1 { pub list : hlist_node , pub spawns : * mut crypto_spawn , } # [test] fn bindgen_test_layout_crypto_instance__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < crypto_instance__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (crypto_instance__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_instance__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_instance__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_instance__bindgen_ty_1 > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_instance__bindgen_ty_1) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_instance__bindgen_ty_1 > ())) . spawns as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_instance__bindgen_ty_1) , "::" , stringify ! (spawns))) ; } # [test] fn bindgen_test_layout_crypto_instance () { assert_eq ! (:: core :: mem :: size_of :: < crypto_instance > () , 464usize , concat ! ("Size of: " , stringify ! (crypto_instance))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_instance > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_instance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_instance > ())) . alg as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_instance) , "::" , stringify ! (alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_instance > ())) . tmpl as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (crypto_instance) , "::" , stringify ! (tmpl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_instance > ())) . __ctx as * const _ as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (crypto_instance) , "::" , stringify ! (__ctx))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct crypto_spawn { pub list : list_head , pub alg : * mut crypto_alg , pub __bindgen_anon_1 : crypto_spawn__bindgen_ty_1 , pub frontend : * const crypto_type , pub mask : _cargo_bpf_u32 , pub dead : bool_ , pub registered : bool_ , } # [repr (C)] # [derive (Copy , Clone)] pub union crypto_spawn__bindgen_ty_1 { pub inst : * mut crypto_instance , pub next : * mut crypto_spawn , } # [test] fn bindgen_test_layout_crypto_spawn__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < crypto_spawn__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (crypto_spawn__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_spawn__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_spawn__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn__bindgen_ty_1 > ())) . inst as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn__bindgen_ty_1) , "::" , stringify ! (inst))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn__bindgen_ty_1 > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn__bindgen_ty_1) , "::" , stringify ! (next))) ; } # [test] fn bindgen_test_layout_crypto_spawn () { assert_eq ! (:: core :: mem :: size_of :: < crypto_spawn > () , 48usize , concat ! ("Size of: " , stringify ! (crypto_spawn))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_spawn > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_spawn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn > ())) . alg as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn) , "::" , stringify ! (alg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn > ())) . frontend as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn) , "::" , stringify ! (frontend))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn > ())) . mask as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn > ())) . dead as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn) , "::" , stringify ! (dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_spawn > ())) . registered as * const _ as usize } , 45usize , concat ! ("Offset of field: " , stringify ! (crypto_spawn) , "::" , stringify ! (registered))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct crypto_template { pub list : list_head , pub instances : hlist_head , pub module : * mut module , pub create : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut crypto_template , arg2 : * mut * mut rtattr) -> :: cty :: c_int > , pub name : [:: cty :: c_char ; 128usize] , } # [test] fn bindgen_test_layout_crypto_template () { assert_eq ! (:: core :: mem :: size_of :: < crypto_template > () , 168usize , concat ! ("Size of: " , stringify ! (crypto_template))) ; assert_eq ! (:: core :: mem :: align_of :: < crypto_template > () , 8usize , concat ! ("Alignment of " , stringify ! (crypto_template))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_template > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (crypto_template) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_template > ())) . instances as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (crypto_template) , "::" , stringify ! (instances))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_template > ())) . module as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (crypto_template) , "::" , stringify ! (module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_template > ())) . create as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (crypto_template) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < crypto_template > ())) . name as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (crypto_template) , "::" , stringify ! (name))) ; } pub const BPF_REG_0 : :: cty :: c_uint = 0 ; pub const BPF_REG_1 : :: cty :: c_uint = 1 ; pub const BPF_REG_2 : :: cty :: c_uint = 2 ; pub const BPF_REG_3 : :: cty :: c_uint = 3 ; pub const BPF_REG_4 : :: cty :: c_uint = 4 ; pub const BPF_REG_5 : :: cty :: c_uint = 5 ; pub const BPF_REG_6 : :: cty :: c_uint = 6 ; pub const BPF_REG_7 : :: cty :: c_uint = 7 ; pub const BPF_REG_8 : :: cty :: c_uint = 8 ; pub const BPF_REG_9 : :: cty :: c_uint = 9 ; pub const BPF_REG_10 : :: cty :: c_uint = 10 ; pub const __MAX_BPF_REG : :: cty :: c_uint = 11 ; pub type _bindgen_ty_99 = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_tramp_progs { pub progs : [* mut bpf_prog ; 38usize] , pub nr_progs : :: cty :: c_int , } # [test] fn bindgen_test_layout_bpf_tramp_progs () { assert_eq ! (:: core :: mem :: size_of :: < bpf_tramp_progs > () , 312usize , concat ! ("Size of: " , stringify ! (bpf_tramp_progs))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_tramp_progs > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_tramp_progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_progs > ())) . progs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_progs) , "::" , stringify ! (progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_tramp_progs > ())) . nr_progs as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (bpf_tramp_progs) , "::" , stringify ! (nr_progs))) ; } pub const bpf_jit_poke_reason_BPF_POKE_REASON_TAIL_CALL : bpf_jit_poke_reason = 0 ; pub type bpf_jit_poke_reason = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_array_aux { pub owner : bpf_array_aux__bindgen_ty_1 , pub poke_progs : list_head , pub map : * mut bpf_map , pub poke_mutex : mutex , pub work : work_struct , } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_array_aux__bindgen_ty_1 { pub lock : spinlock_t , pub type_ : bpf_prog_type , pub jited : bool_ , } # [test] fn bindgen_test_layout_bpf_array_aux__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_array_aux__bindgen_ty_1 > () , 12usize , concat ! ("Size of: " , stringify ! (bpf_array_aux__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_array_aux__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_array_aux__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux__bindgen_ty_1 > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux__bindgen_ty_1) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux__bindgen_ty_1 > ())) . type_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux__bindgen_ty_1) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux__bindgen_ty_1 > ())) . jited as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux__bindgen_ty_1) , "::" , stringify ! (jited))) ; } # [test] fn bindgen_test_layout_bpf_array_aux () { assert_eq ! (:: core :: mem :: size_of :: < bpf_array_aux > () , 104usize , concat ! ("Size of: " , stringify ! (bpf_array_aux))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_array_aux > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_array_aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux > ())) . owner as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux > ())) . poke_progs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux) , "::" , stringify ! (poke_progs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux > ())) . map as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux > ())) . poke_mutex as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux) , "::" , stringify ! (poke_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array_aux > ())) . work as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_array_aux) , "::" , stringify ! (work))) ; } # [repr (C)] pub struct bpf_array { pub map : bpf_map , pub elem_size : _cargo_bpf_u32 , pub index_mask : _cargo_bpf_u32 , pub aux : * mut bpf_array_aux , pub __bindgen_anon_1 : bpf_array__bindgen_ty_1 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , } # [repr (C)] pub struct bpf_array__bindgen_ty_1 { pub value : __BindgenUnionField < [:: cty :: c_char ; 0usize] > , pub ptrs : __BindgenUnionField < [* mut :: cty :: c_void ; 0usize] > , pub pptrs : __BindgenUnionField < [* mut :: cty :: c_void ; 0usize] > , pub bindgen_union_field : [u64 ; 0usize] , } # [test] fn bindgen_test_layout_bpf_array__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_array__bindgen_ty_1 > () , 0usize , concat ! ("Size of: " , stringify ! (bpf_array__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_array__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_array__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array__bindgen_ty_1 > ())) . value as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_array__bindgen_ty_1) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array__bindgen_ty_1 > ())) . ptrs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_array__bindgen_ty_1) , "::" , stringify ! (ptrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array__bindgen_ty_1 > ())) . pptrs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_array__bindgen_ty_1) , "::" , stringify ! (pptrs))) ; } # [test] fn bindgen_test_layout_bpf_array () { assert_eq ! (:: core :: mem :: size_of :: < bpf_array > () , 320usize , concat ! ("Size of: " , stringify ! (bpf_array))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_array > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_array) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array > ())) . elem_size as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (bpf_array) , "::" , stringify ! (elem_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array > ())) . index_mask as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (bpf_array) , "::" , stringify ! (index_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_array > ())) . aux as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (bpf_array) , "::" , stringify ! (aux))) ; } pub const bpf_text_poke_type_BPF_MOD_CALL : bpf_text_poke_type = 0 ; pub const bpf_text_poke_type_BPF_MOD_JUMP : bpf_text_poke_type = 1 ; pub type bpf_text_poke_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug)] pub struct bpf_binary_header { pub pages : _cargo_bpf_u32 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 4usize] > , pub image : __IncompleteArrayField < _cargo_bpf_u8 > , } # [test] fn bindgen_test_layout_bpf_binary_header () { assert_eq ! (:: core :: mem :: size_of :: < bpf_binary_header > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_binary_header))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_binary_header > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_binary_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_binary_header > ())) . pages as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_binary_header) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_binary_header > ())) . image as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_binary_header) , "::" , stringify ! (image))) ; } impl bpf_binary_header { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 4usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 4usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct fdtable { pub max_fds : :: cty :: c_uint , pub fd : * mut * mut file , pub close_on_exec : * mut :: cty :: c_ulong , pub open_fds : * mut :: cty :: c_ulong , pub full_fds_bits : * mut :: cty :: c_ulong , pub rcu : callback_head , } # [test] fn bindgen_test_layout_fdtable () { assert_eq ! (:: core :: mem :: size_of :: < fdtable > () , 56usize , concat ! ("Size of: " , stringify ! (fdtable))) ; assert_eq ! (:: core :: mem :: align_of :: < fdtable > () , 8usize , concat ! ("Alignment of " , stringify ! (fdtable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fdtable > ())) . max_fds as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fdtable) , "::" , stringify ! (max_fds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fdtable > ())) . fd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fdtable) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fdtable > ())) . close_on_exec as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (fdtable) , "::" , stringify ! (close_on_exec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fdtable > ())) . open_fds as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fdtable) , "::" , stringify ! (open_fds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fdtable > ())) . full_fds_bits as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fdtable) , "::" , stringify ! (full_fds_bits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fdtable > ())) . rcu as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (fdtable) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct files_struct { pub count : atomic_t , pub resize_in_progress : bool_ , pub resize_wait : wait_queue_head_t , pub fdt : * mut fdtable , pub fdtab : fdtable , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub file_lock : spinlock_t , pub next_fd : :: cty :: c_uint , pub close_on_exec_init : [:: cty :: c_ulong ; 1usize] , pub open_fds_init : [:: cty :: c_ulong ; 1usize] , pub full_fds_bits_init : [:: cty :: c_ulong ; 1usize] , pub fd_array : [* mut file ; 64usize] , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [test] fn bindgen_test_layout_files_struct () { assert_eq ! (:: core :: mem :: size_of :: < files_struct > () , 704usize , concat ! ("Size of: " , stringify ! (files_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < files_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (files_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . resize_in_progress as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (resize_in_progress))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . resize_wait as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (resize_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . fdt as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (fdt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . fdtab as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (fdtab))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . file_lock as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (file_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . next_fd as * const _ as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (next_fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . close_on_exec_init as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (close_on_exec_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . open_fds_init as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (open_fds_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . full_fds_bits_init as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (full_fds_bits_init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < files_struct > ())) . fd_array as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (files_struct) , "::" , stringify ! (fd_array))) ; } impl files_struct { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct robust_list { pub next : * mut robust_list , } # [test] fn bindgen_test_layout_robust_list () { assert_eq ! (:: core :: mem :: size_of :: < robust_list > () , 8usize , concat ! ("Size of: " , stringify ! (robust_list))) ; assert_eq ! (:: core :: mem :: align_of :: < robust_list > () , 8usize , concat ! ("Alignment of " , stringify ! (robust_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < robust_list > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (robust_list) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct robust_list_head { pub list : robust_list , pub futex_offset : :: cty :: c_long , pub list_op_pending : * mut robust_list , } # [test] fn bindgen_test_layout_robust_list_head () { assert_eq ! (:: core :: mem :: size_of :: < robust_list_head > () , 24usize , concat ! ("Size of: " , stringify ! (robust_list_head))) ; assert_eq ! (:: core :: mem :: align_of :: < robust_list_head > () , 8usize , concat ! ("Alignment of " , stringify ! (robust_list_head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < robust_list_head > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (robust_list_head) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < robust_list_head > ())) . futex_offset as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (robust_list_head) , "::" , stringify ! (futex_offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < robust_list_head > ())) . list_op_pending as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (robust_list_head) , "::" , stringify ! (list_op_pending))) ; } # [repr (C)] pub struct workqueue_struct { pub pwqs : list_head , pub list : list_head , pub mutex : mutex , pub work_color : :: cty :: c_int , pub flush_color : :: cty :: c_int , pub nr_pwqs_to_flush : atomic_t , pub first_flusher : * mut wq_flusher , pub flusher_queue : list_head , pub flusher_overflow : list_head , pub maydays : list_head , pub rescuer : * mut worker , pub nr_drainers : :: cty :: c_int , pub saved_max_active : :: cty :: c_int , pub unbound_attrs : * mut workqueue_attrs , pub dfl_pwq : * mut pool_workqueue , pub wq_dev : * mut wq_device , pub name : [:: cty :: c_char ; 24usize] , pub rcu : callback_head , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 40usize] > , pub flags : :: cty :: c_uint , pub cpu_pwqs : * mut pool_workqueue , pub numa_pwq_tbl : __IncompleteArrayField < * mut pool_workqueue > , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 48usize] > , } # [test] fn bindgen_test_layout_workqueue_struct () { assert_eq ! (:: core :: mem :: size_of :: < workqueue_struct > () , 320usize , concat ! ("Size of: " , stringify ! (workqueue_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < workqueue_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (workqueue_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . pwqs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (pwqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . list as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . mutex as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . work_color as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (work_color))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . flush_color as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (flush_color))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . nr_pwqs_to_flush as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (nr_pwqs_to_flush))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . first_flusher as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (first_flusher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . flusher_queue as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (flusher_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . flusher_overflow as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (flusher_overflow))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . maydays as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (maydays))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . rescuer as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (rescuer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . nr_drainers as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (nr_drainers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . saved_max_active as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (saved_max_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . unbound_attrs as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (unbound_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . dfl_pwq as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (dfl_pwq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . wq_dev as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (wq_dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . name as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . rcu as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . flags as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . cpu_pwqs as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (cpu_pwqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_struct > ())) . numa_pwq_tbl as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (workqueue_struct) , "::" , stringify ! (numa_pwq_tbl))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct workqueue_attrs { pub nice : :: cty :: c_int , pub cpumask : cpumask_var_t , pub no_numa : bool_ , } # [test] fn bindgen_test_layout_workqueue_attrs () { assert_eq ! (:: core :: mem :: size_of :: < workqueue_attrs > () , 24usize , concat ! ("Size of: " , stringify ! (workqueue_attrs))) ; assert_eq ! (:: core :: mem :: align_of :: < workqueue_attrs > () , 8usize , concat ! ("Alignment of " , stringify ! (workqueue_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_attrs > ())) . nice as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (workqueue_attrs) , "::" , stringify ! (nice))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_attrs > ())) . cpumask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (workqueue_attrs) , "::" , stringify ! (cpumask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < workqueue_attrs > ())) . no_numa as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (workqueue_attrs) , "::" , stringify ! (no_numa))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct worker { pub __bindgen_anon_1 : worker__bindgen_ty_1 , pub current_work : * mut work_struct , pub current_func : work_func_t , pub current_pwq : * mut pool_workqueue , pub scheduled : list_head , pub task : * mut task_struct , pub pool : * mut worker_pool , pub node : list_head , pub last_active : :: cty :: c_ulong , pub flags : :: cty :: c_uint , pub id : :: cty :: c_int , pub sleeping : :: cty :: c_int , pub desc : [:: cty :: c_char ; 24usize] , pub rescue_wq : * mut workqueue_struct , pub last_func : work_func_t , } # [repr (C)] # [derive (Copy , Clone)] pub union worker__bindgen_ty_1 { pub entry : list_head , pub hentry : hlist_node , } # [test] fn bindgen_test_layout_worker__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < worker__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (worker__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < worker__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (worker__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker__bindgen_ty_1 > ())) . entry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (worker__bindgen_ty_1) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker__bindgen_ty_1 > ())) . hentry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (worker__bindgen_ty_1) , "::" , stringify ! (hentry))) ; } # [test] fn bindgen_test_layout_worker () { assert_eq ! (:: core :: mem :: size_of :: < worker > () , 152usize , concat ! ("Size of: " , stringify ! (worker))) ; assert_eq ! (:: core :: mem :: align_of :: < worker > () , 8usize , concat ! ("Alignment of " , stringify ! (worker))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . current_work as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (current_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . current_func as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (current_func))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . current_pwq as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (current_pwq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . scheduled as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (scheduled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . task as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . pool as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . node as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . last_active as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (last_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . flags as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . id as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . sleeping as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (sleeping))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . desc as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . rescue_wq as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (rescue_wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker > ())) . last_func as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (worker) , "::" , stringify ! (last_func))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pool_workqueue { pub pool : * mut worker_pool , pub wq : * mut workqueue_struct , pub work_color : :: cty :: c_int , pub flush_color : :: cty :: c_int , pub refcnt : :: cty :: c_int , pub nr_in_flight : [:: cty :: c_int ; 15usize] , pub nr_active : :: cty :: c_int , pub max_active : :: cty :: c_int , pub delayed_works : list_head , pub pwqs_node : list_head , pub mayday_node : list_head , pub unbound_release_work : work_struct , pub rcu : callback_head , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 64usize] > , } # [test] fn bindgen_test_layout_pool_workqueue () { assert_eq ! (:: core :: mem :: size_of :: < pool_workqueue > () , 256usize , concat ! ("Size of: " , stringify ! (pool_workqueue))) ; assert_eq ! (:: core :: mem :: align_of :: < pool_workqueue > () , 8usize , concat ! ("Alignment of " , stringify ! (pool_workqueue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . pool as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . wq as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . work_color as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (work_color))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . flush_color as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (flush_color))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . refcnt as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . nr_in_flight as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (nr_in_flight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . nr_active as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (nr_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . max_active as * const _ as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (max_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . delayed_works as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (delayed_works))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . pwqs_node as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (pwqs_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . mayday_node as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (mayday_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . unbound_release_work as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (unbound_release_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < pool_workqueue > ())) . rcu as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (pool_workqueue) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct worker_pool { pub lock : raw_spinlock_t , pub cpu : :: cty :: c_int , pub node : :: cty :: c_int , pub id : :: cty :: c_int , pub flags : :: cty :: c_uint , pub watchdog_ts : :: cty :: c_ulong , pub worklist : list_head , pub nr_workers : :: cty :: c_int , pub nr_idle : :: cty :: c_int , pub idle_list : list_head , pub idle_timer : timer_list , pub mayday_timer : timer_list , pub busy_hash : [hlist_head ; 64usize] , pub manager : * mut worker , pub workers : list_head , pub detach_completion : * mut completion , pub worker_ida : ida , pub attrs : * mut workqueue_attrs , pub hash_node : hlist_node , pub refcnt : :: cty :: c_int , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub nr_running : atomic_t , pub rcu : callback_head , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [test] fn bindgen_test_layout_worker_pool () { assert_eq ! (:: core :: mem :: size_of :: < worker_pool > () , 832usize , concat ! ("Size of: " , stringify ! (worker_pool))) ; assert_eq ! (:: core :: mem :: align_of :: < worker_pool > () , 8usize , concat ! ("Alignment of " , stringify ! (worker_pool))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . cpu as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . node as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . id as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . watchdog_ts as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (watchdog_ts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . worklist as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (worklist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . nr_workers as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (nr_workers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . nr_idle as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (nr_idle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . idle_list as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (idle_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . idle_timer as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (idle_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . mayday_timer as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (mayday_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . busy_hash as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (busy_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . manager as * const _ as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (manager))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . workers as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (workers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . detach_completion as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (detach_completion))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . worker_ida as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (worker_ida))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . attrs as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . hash_node as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (hash_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . refcnt as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . nr_running as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < worker_pool > ())) . rcu as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (worker_pool) , "::" , stringify ! (rcu))) ; } impl worker_pool { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct wq_flusher { pub list : list_head , pub flush_color : :: cty :: c_int , pub done : completion , } # [test] fn bindgen_test_layout_wq_flusher () { assert_eq ! (:: core :: mem :: size_of :: < wq_flusher > () , 56usize , concat ! ("Size of: " , stringify ! (wq_flusher))) ; assert_eq ! (:: core :: mem :: align_of :: < wq_flusher > () , 8usize , concat ! ("Alignment of " , stringify ! (wq_flusher))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wq_flusher > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wq_flusher) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wq_flusher > ())) . flush_color as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (wq_flusher) , "::" , stringify ! (flush_color))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wq_flusher > ())) . done as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (wq_flusher) , "::" , stringify ! (done))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct wq_device { pub wq : * mut workqueue_struct , pub dev : device , } # [test] fn bindgen_test_layout_wq_device () { assert_eq ! (:: core :: mem :: size_of :: < wq_device > () , 736usize , concat ! ("Size of: " , stringify ! (wq_device))) ; assert_eq ! (:: core :: mem :: align_of :: < wq_device > () , 8usize , concat ! ("Alignment of " , stringify ! (wq_device))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wq_device > ())) . wq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (wq_device) , "::" , stringify ! (wq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < wq_device > ())) . dev as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (wq_device) , "::" , stringify ! (dev))) ; } pub type task_work_func_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut callback_head) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct param_attribute { pub mattr : module_attribute , pub param : * const kernel_param , } # [test] fn bindgen_test_layout_param_attribute () { assert_eq ! (:: core :: mem :: size_of :: < param_attribute > () , 64usize , concat ! ("Size of: " , stringify ! (param_attribute))) ; assert_eq ! (:: core :: mem :: align_of :: < param_attribute > () , 8usize , concat ! ("Alignment of " , stringify ! (param_attribute))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < param_attribute > ())) . mattr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (param_attribute) , "::" , stringify ! (mattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < param_attribute > ())) . param as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (param_attribute) , "::" , stringify ! (param))) ; } # [repr (C)] # [derive (Debug)] pub struct module_param_attrs { pub num : :: cty :: c_uint , pub grp : attribute_group , pub attrs : __IncompleteArrayField < param_attribute > , } # [test] fn bindgen_test_layout_module_param_attrs () { assert_eq ! (:: core :: mem :: size_of :: < module_param_attrs > () , 48usize , concat ! ("Size of: " , stringify ! (module_param_attrs))) ; assert_eq ! (:: core :: mem :: align_of :: < module_param_attrs > () , 8usize , concat ! ("Alignment of " , stringify ! (module_param_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_param_attrs > ())) . num as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_param_attrs) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_param_attrs > ())) . grp as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (module_param_attrs) , "::" , stringify ! (grp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_param_attrs > ())) . attrs as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (module_param_attrs) , "::" , stringify ! (attrs))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipc_ids { pub in_use : :: cty :: c_int , pub seq : :: cty :: c_ushort , pub rwsem : rw_semaphore , pub ipcs_idr : idr , pub max_idx : :: cty :: c_int , pub last_idx : :: cty :: c_int , pub next_id : :: cty :: c_int , pub key_ht : rhashtable , } # [test] fn bindgen_test_layout_ipc_ids () { assert_eq ! (:: core :: mem :: size_of :: < ipc_ids > () , 224usize , concat ! ("Size of: " , stringify ! (ipc_ids))) ; assert_eq ! (:: core :: mem :: align_of :: < ipc_ids > () , 8usize , concat ! ("Alignment of " , stringify ! (ipc_ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . in_use as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (in_use))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . seq as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . rwsem as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (rwsem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . ipcs_idr as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (ipcs_idr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . max_idx as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (max_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . last_idx as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (last_idx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . next_id as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (next_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_ids > ())) . key_ht as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (ipc_ids) , "::" , stringify ! (key_ht))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct ipc_namespace { pub ids : [ipc_ids ; 3usize] , pub sem_ctls : [:: cty :: c_int ; 4usize] , pub used_sems : :: cty :: c_int , pub msg_ctlmax : :: cty :: c_uint , pub msg_ctlmnb : :: cty :: c_uint , pub msg_ctlmni : :: cty :: c_uint , pub msg_bytes : atomic_t , pub msg_hdrs : atomic_t , pub shm_ctlmax : size_t , pub shm_ctlall : size_t , pub shm_tot : :: cty :: c_ulong , pub shm_ctlmni : :: cty :: c_int , pub shm_rmid_forced : :: cty :: c_int , pub ipcns_nb : notifier_block , pub mq_mnt : * mut vfsmount , pub mq_queues_count : :: cty :: c_uint , pub mq_queues_max : :: cty :: c_uint , pub mq_msg_max : :: cty :: c_uint , pub mq_msgsize_max : :: cty :: c_uint , pub mq_msg_default : :: cty :: c_uint , pub mq_msgsize_default : :: cty :: c_uint , pub user_ns : * mut user_namespace , pub ucounts : * mut ucounts , pub mnt_llist : llist_node , pub ns : ns_common , } # [test] fn bindgen_test_layout_ipc_namespace () { assert_eq ! (:: core :: mem :: size_of :: < ipc_namespace > () , 848usize , concat ! ("Size of: " , stringify ! (ipc_namespace))) ; assert_eq ! (:: core :: mem :: align_of :: < ipc_namespace > () , 8usize , concat ! ("Alignment of " , stringify ! (ipc_namespace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . ids as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (ids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . sem_ctls as * const _ as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (sem_ctls))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . used_sems as * const _ as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (used_sems))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . msg_ctlmax as * const _ as usize } , 692usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (msg_ctlmax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . msg_ctlmnb as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (msg_ctlmnb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . msg_ctlmni as * const _ as usize } , 700usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (msg_ctlmni))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . msg_bytes as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (msg_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . msg_hdrs as * const _ as usize } , 708usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (msg_hdrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . shm_ctlmax as * const _ as usize } , 712usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (shm_ctlmax))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . shm_ctlall as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (shm_ctlall))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . shm_tot as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (shm_tot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . shm_ctlmni as * const _ as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (shm_ctlmni))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . shm_rmid_forced as * const _ as usize } , 740usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (shm_rmid_forced))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . ipcns_nb as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (ipcns_nb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_mnt as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_mnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_queues_count as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_queues_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_queues_max as * const _ as usize } , 780usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_queues_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_msg_max as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_msg_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_msgsize_max as * const _ as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_msgsize_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_msg_default as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_msg_default))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mq_msgsize_default as * const _ as usize } , 796usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mq_msgsize_default))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . user_ns as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (user_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . ucounts as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (ucounts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . mnt_llist as * const _ as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (mnt_llist))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ipc_namespace > ())) . ns as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (ipc_namespace) , "::" , stringify ! (ns))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct lsmblob { pub secid : [_cargo_bpf_u32 ; 3usize] , } # [test] fn bindgen_test_layout_lsmblob () { assert_eq ! (:: core :: mem :: size_of :: < lsmblob > () , 12usize , concat ! ("Size of: " , stringify ! (lsmblob))) ; assert_eq ! (:: core :: mem :: align_of :: < lsmblob > () , 4usize , concat ! ("Alignment of " , stringify ! (lsmblob))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < lsmblob > ())) . secid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (lsmblob) , "::" , stringify ! (secid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct umd_info { pub driver_name : * const :: cty :: c_char , pub pipe_to_umh : * mut file , pub pipe_from_umh : * mut file , pub wd : path , pub tgid : * mut pid , } # [test] fn bindgen_test_layout_umd_info () { assert_eq ! (:: core :: mem :: size_of :: < umd_info > () , 48usize , concat ! ("Size of: " , stringify ! (umd_info))) ; assert_eq ! (:: core :: mem :: align_of :: < umd_info > () , 8usize , concat ! ("Alignment of " , stringify ! (umd_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < umd_info > ())) . driver_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (umd_info) , "::" , stringify ! (driver_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < umd_info > ())) . pipe_to_umh as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (umd_info) , "::" , stringify ! (pipe_to_umh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < umd_info > ())) . pipe_from_umh as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (umd_info) , "::" , stringify ! (pipe_from_umh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < umd_info > ())) . wd as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (umd_info) , "::" , stringify ! (wd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < umd_info > ())) . tgid as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (umd_info) , "::" , stringify ! (tgid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pin_cookie { } # [test] fn bindgen_test_layout_pin_cookie () { assert_eq ! (:: core :: mem :: size_of :: < pin_cookie > () , 0usize , concat ! ("Size of: " , stringify ! (pin_cookie))) ; assert_eq ! (:: core :: mem :: align_of :: < pin_cookie > () , 1usize , concat ! ("Alignment of " , stringify ! (pin_cookie))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct dl_bw { pub lock : raw_spinlock_t , pub bw : _cargo_bpf_u64 , pub total_bw : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_dl_bw () { assert_eq ! (:: core :: mem :: size_of :: < dl_bw > () , 24usize , concat ! ("Size of: " , stringify ! (dl_bw))) ; assert_eq ! (:: core :: mem :: align_of :: < dl_bw > () , 8usize , concat ! ("Alignment of " , stringify ! (dl_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_bw > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dl_bw) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_bw > ())) . bw as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dl_bw) , "::" , stringify ! (bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_bw > ())) . total_bw as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dl_bw) , "::" , stringify ! (total_bw))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct cpudl { pub lock : raw_spinlock_t , pub size : :: cty :: c_int , pub free_cpus : cpumask_var_t , pub elements : * mut cpudl_item , } # [test] fn bindgen_test_layout_cpudl () { assert_eq ! (:: core :: mem :: size_of :: < cpudl > () , 24usize , concat ! ("Size of: " , stringify ! (cpudl))) ; assert_eq ! (:: core :: mem :: align_of :: < cpudl > () , 8usize , concat ! ("Alignment of " , stringify ! (cpudl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpudl) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl > ())) . size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cpudl) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl > ())) . free_cpus as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpudl) , "::" , stringify ! (free_cpus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl > ())) . elements as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cpudl) , "::" , stringify ! (elements))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpupri_vec { pub count : atomic_t , pub mask : cpumask_var_t , } # [test] fn bindgen_test_layout_cpupri_vec () { assert_eq ! (:: core :: mem :: size_of :: < cpupri_vec > () , 16usize , concat ! ("Size of: " , stringify ! (cpupri_vec))) ; assert_eq ! (:: core :: mem :: align_of :: < cpupri_vec > () , 8usize , concat ! ("Alignment of " , stringify ! (cpupri_vec))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpupri_vec > ())) . count as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpupri_vec) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpupri_vec > ())) . mask as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpupri_vec) , "::" , stringify ! (mask))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpupri { pub pri_to_cpu : [cpupri_vec ; 101usize] , pub cpu_to_pri : * mut :: cty :: c_int , } # [test] fn bindgen_test_layout_cpupri () { assert_eq ! (:: core :: mem :: size_of :: < cpupri > () , 1624usize , concat ! ("Size of: " , stringify ! (cpupri))) ; assert_eq ! (:: core :: mem :: align_of :: < cpupri > () , 8usize , concat ! ("Alignment of " , stringify ! (cpupri))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpupri > ())) . pri_to_cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpupri) , "::" , stringify ! (pri_to_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpupri > ())) . cpu_to_pri as * const _ as usize } , 1616usize , concat ! ("Offset of field: " , stringify ! (cpupri) , "::" , stringify ! (cpu_to_pri))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct root_domain___2 { pub refcount : atomic_t , pub rto_count : atomic_t , pub rcu : callback_head , pub span : cpumask_var_t , pub online : cpumask_var_t , pub overload : :: cty :: c_int , pub overutilized : :: cty :: c_int , pub dlo_mask : cpumask_var_t , pub dlo_count : atomic_t , pub dl_bw : dl_bw , pub cpudl : cpudl , pub visit_gen : _cargo_bpf_u64 , pub rto_push_work : irq_work , pub rto_lock : raw_spinlock_t , pub rto_loop : :: cty :: c_int , pub rto_cpu : :: cty :: c_int , pub rto_loop_next : atomic_t , pub rto_loop_start : atomic_t , pub rto_mask : cpumask_var_t , pub cpupri : cpupri , pub max_cpu_capacity : :: cty :: c_ulong , pub pd : * mut perf_domain , } # [test] fn bindgen_test_layout_root_domain___2 () { assert_eq ! (:: core :: mem :: size_of :: < root_domain___2 > () , 1816usize , concat ! ("Size of: " , stringify ! (root_domain___2))) ; assert_eq ! (:: core :: mem :: align_of :: < root_domain___2 > () , 8usize , concat ! ("Alignment of " , stringify ! (root_domain___2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . refcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . span as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (span))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . online as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . overload as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (overload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . overutilized as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (overutilized))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . dlo_mask as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (dlo_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . dlo_count as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (dlo_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . dl_bw as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (dl_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . cpudl as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (cpudl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . visit_gen as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (visit_gen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_push_work as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_push_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_lock as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_loop as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_loop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_cpu as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_loop_next as * const _ as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_loop_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_loop_start as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_loop_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . rto_mask as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (rto_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . cpupri as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (cpupri))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . max_cpu_capacity as * const _ as usize } , 1800usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (max_cpu_capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < root_domain___2 > ())) . pd as * const _ as usize } , 1808usize , concat ! ("Offset of field: " , stringify ! (root_domain___2) , "::" , stringify ! (pd))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct cfs_rq { pub load : load_weight , pub nr_running : :: cty :: c_uint , pub h_nr_running : :: cty :: c_uint , pub idle_h_nr_running : :: cty :: c_uint , pub exec_clock : _cargo_bpf_u64 , pub min_vruntime : _cargo_bpf_u64 , pub tasks_timeline : rb_root_cached , pub curr : * mut sched_entity , pub next : * mut sched_entity , pub last : * mut sched_entity , pub skip : * mut sched_entity , pub nr_spread_over : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub avg : sched_avg , pub removed : cfs_rq__bindgen_ty_1 , pub tg_load_avg_contrib : :: cty :: c_ulong , pub propagate : :: cty :: c_long , pub prop_runnable_sum : :: cty :: c_long , pub h_load : :: cty :: c_ulong , pub last_h_load_update : _cargo_bpf_u64 , pub h_load_next : * mut sched_entity , pub rq : * mut rq , pub on_list : :: cty :: c_int , pub leaf_cfs_rq_list : list_head , pub tg : * mut task_group , pub runtime_enabled : :: cty :: c_int , pub runtime_remaining : s64 , pub throttled_clock : _cargo_bpf_u64 , pub throttled_clock_task : _cargo_bpf_u64 , pub throttled_clock_task_time : _cargo_bpf_u64 , pub throttled : :: cty :: c_int , pub throttle_count : :: cty :: c_int , pub throttled_list : list_head , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 40usize] > , } # [repr (C)] # [derive (Copy , Clone)] pub struct cfs_rq__bindgen_ty_1 { pub lock : raw_spinlock_t , pub nr : :: cty :: c_int , pub load_avg : :: cty :: c_ulong , pub util_avg : :: cty :: c_ulong , pub runnable_avg : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [test] fn bindgen_test_layout_cfs_rq__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < cfs_rq__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (cfs_rq__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < cfs_rq__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (cfs_rq__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq__bindgen_ty_1 > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cfs_rq__bindgen_ty_1) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq__bindgen_ty_1 > ())) . nr as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cfs_rq__bindgen_ty_1) , "::" , stringify ! (nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq__bindgen_ty_1 > ())) . load_avg as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cfs_rq__bindgen_ty_1) , "::" , stringify ! (load_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq__bindgen_ty_1 > ())) . util_avg as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cfs_rq__bindgen_ty_1) , "::" , stringify ! (util_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq__bindgen_ty_1 > ())) . runnable_avg as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cfs_rq__bindgen_ty_1) , "::" , stringify ! (runnable_avg))) ; } impl cfs_rq__bindgen_ty_1 { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_cfs_rq () { assert_eq ! (:: core :: mem :: size_of :: < cfs_rq > () , 448usize , concat ! ("Size of: " , stringify ! (cfs_rq))) ; assert_eq ! (:: core :: mem :: align_of :: < cfs_rq > () , 8usize , concat ! ("Alignment of " , stringify ! (cfs_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . load as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . nr_running as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . h_nr_running as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (h_nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . idle_h_nr_running as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (idle_h_nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . exec_clock as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (exec_clock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . min_vruntime as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (min_vruntime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . tasks_timeline as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (tasks_timeline))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . curr as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (curr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . next as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . last as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . skip as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (skip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . nr_spread_over as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (nr_spread_over))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . avg as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . removed as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (removed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . tg_load_avg_contrib as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (tg_load_avg_contrib))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . propagate as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (propagate))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . prop_runnable_sum as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (prop_runnable_sum))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . h_load as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (h_load))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . last_h_load_update as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (last_h_load_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . h_load_next as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (h_load_next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . rq as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . on_list as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (on_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . leaf_cfs_rq_list as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (leaf_cfs_rq_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . tg as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (tg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . runtime_enabled as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (runtime_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . runtime_remaining as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (runtime_remaining))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . throttled_clock as * const _ as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (throttled_clock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . throttled_clock_task as * const _ as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (throttled_clock_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . throttled_clock_task_time as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (throttled_clock_task_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . throttled as * const _ as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (throttled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . throttle_count as * const _ as usize } , 388usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (throttle_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_rq > ())) . throttled_list as * const _ as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (cfs_rq) , "::" , stringify ! (throttled_list))) ; } impl cfs_rq { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct cfs_bandwidth { pub lock : raw_spinlock_t , pub period : ktime_t , pub quota : _cargo_bpf_u64 , pub runtime : _cargo_bpf_u64 , pub hierarchical_quota : s64 , pub idle : _cargo_bpf_u8 , pub period_active : _cargo_bpf_u8 , pub slack_started : _cargo_bpf_u8 , pub period_timer : hrtimer , pub slack_timer : hrtimer , pub throttled_cfs_rq : list_head , pub nr_periods : :: cty :: c_int , pub nr_throttled : :: cty :: c_int , pub throttled_time : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_cfs_bandwidth () { assert_eq ! (:: core :: mem :: size_of :: < cfs_bandwidth > () , 208usize , concat ! ("Size of: " , stringify ! (cfs_bandwidth))) ; assert_eq ! (:: core :: mem :: align_of :: < cfs_bandwidth > () , 8usize , concat ! ("Alignment of " , stringify ! (cfs_bandwidth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . period as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . quota as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (quota))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . runtime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . hierarchical_quota as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (hierarchical_quota))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . idle as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (idle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . period_active as * const _ as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (period_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . slack_started as * const _ as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (slack_started))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . period_timer as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (period_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . slack_timer as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (slack_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . throttled_cfs_rq as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (throttled_cfs_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . nr_periods as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (nr_periods))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . nr_throttled as * const _ as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (nr_throttled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cfs_bandwidth > ())) . throttled_time as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (cfs_bandwidth) , "::" , stringify ! (throttled_time))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct task_group { pub css : cgroup_subsys_state , pub se : * mut * mut sched_entity , pub cfs_rq : * mut * mut cfs_rq , pub shares : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub load_avg : atomic_long_t , pub rcu : callback_head , pub list : list_head , pub parent : * mut task_group , pub siblings : list_head , pub children : list_head , pub autogroup : * mut autogroup , pub cfs_bandwidth : cfs_bandwidth , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [test] fn bindgen_test_layout_task_group () { assert_eq ! (:: core :: mem :: size_of :: < task_group > () , 576usize , concat ! ("Size of: " , stringify ! (task_group))) ; assert_eq ! (:: core :: mem :: align_of :: < task_group > () , 8usize , concat ! ("Alignment of " , stringify ! (task_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . css as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (css))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . se as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (se))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . cfs_rq as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (cfs_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . shares as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (shares))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . load_avg as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (load_avg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . rcu as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . list as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . parent as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . siblings as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (siblings))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . children as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (children))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . autogroup as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (autogroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < task_group > ())) . cfs_bandwidth as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (task_group) , "::" , stringify ! (cfs_bandwidth))) ; } impl task_group { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug)] pub struct sched_group { pub next : * mut sched_group , pub ref_ : atomic_t , pub group_weight : :: cty :: c_uint , pub sgc : * mut sched_group_capacity , pub asym_prefer_cpu : :: cty :: c_int , pub cpumask : __IncompleteArrayField < :: cty :: c_ulong > , } # [test] fn bindgen_test_layout_sched_group () { assert_eq ! (:: core :: mem :: size_of :: < sched_group > () , 32usize , concat ! ("Size of: " , stringify ! (sched_group))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_group > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_group) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group > ())) . ref_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_group) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group > ())) . group_weight as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (sched_group) , "::" , stringify ! (group_weight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group > ())) . sgc as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_group) , "::" , stringify ! (sgc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group > ())) . asym_prefer_cpu as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_group) , "::" , stringify ! (asym_prefer_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group > ())) . cpumask as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_group) , "::" , stringify ! (cpumask))) ; } # [repr (C)] # [derive (Debug)] pub struct sched_group_capacity { pub ref_ : atomic_t , pub capacity : :: cty :: c_ulong , pub min_capacity : :: cty :: c_ulong , pub max_capacity : :: cty :: c_ulong , pub next_update : :: cty :: c_ulong , pub imbalance : :: cty :: c_int , pub id : :: cty :: c_int , pub cpumask : __IncompleteArrayField < :: cty :: c_ulong > , } # [test] fn bindgen_test_layout_sched_group_capacity () { assert_eq ! (:: core :: mem :: size_of :: < sched_group_capacity > () , 48usize , concat ! ("Size of: " , stringify ! (sched_group_capacity))) ; assert_eq ! (:: core :: mem :: align_of :: < sched_group_capacity > () , 8usize , concat ! ("Alignment of " , stringify ! (sched_group_capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . ref_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . capacity as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . min_capacity as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (min_capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . max_capacity as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (max_capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . next_update as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (next_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . imbalance as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (imbalance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . id as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sched_group_capacity > ())) . cpumask as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sched_group_capacity) , "::" , stringify ! (cpumask))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct em_perf_state { pub frequency : :: cty :: c_ulong , pub power : :: cty :: c_ulong , pub cost : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_em_perf_state () { assert_eq ! (:: core :: mem :: size_of :: < em_perf_state > () , 24usize , concat ! ("Size of: " , stringify ! (em_perf_state))) ; assert_eq ! (:: core :: mem :: align_of :: < em_perf_state > () , 8usize , concat ! ("Alignment of " , stringify ! (em_perf_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_state > ())) . frequency as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (em_perf_state) , "::" , stringify ! (frequency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_state > ())) . power as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (em_perf_state) , "::" , stringify ! (power))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_state > ())) . cost as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (em_perf_state) , "::" , stringify ! (cost))) ; } # [repr (C)] # [derive (Debug)] pub struct em_perf_domain { pub table : * mut em_perf_state , pub nr_perf_states : :: cty :: c_int , pub milliwatts : :: cty :: c_int , pub cpus : __IncompleteArrayField < :: cty :: c_ulong > , } # [test] fn bindgen_test_layout_em_perf_domain () { assert_eq ! (:: core :: mem :: size_of :: < em_perf_domain > () , 16usize , concat ! ("Size of: " , stringify ! (em_perf_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < em_perf_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (em_perf_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_domain > ())) . table as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (em_perf_domain) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_domain > ())) . nr_perf_states as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (em_perf_domain) , "::" , stringify ! (nr_perf_states))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_domain > ())) . milliwatts as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (em_perf_domain) , "::" , stringify ! (milliwatts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < em_perf_domain > ())) . cpus as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (em_perf_domain) , "::" , stringify ! (cpus))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct autogroup { pub kref : kref , pub tg : * mut task_group , pub lock : rw_semaphore , pub id : :: cty :: c_ulong , pub nice : :: cty :: c_int , } # [test] fn bindgen_test_layout_autogroup () { assert_eq ! (:: core :: mem :: size_of :: < autogroup > () , 72usize , concat ! ("Size of: " , stringify ! (autogroup))) ; assert_eq ! (:: core :: mem :: align_of :: < autogroup > () , 8usize , concat ! ("Alignment of " , stringify ! (autogroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < autogroup > ())) . kref as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (autogroup) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < autogroup > ())) . tg as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (autogroup) , "::" , stringify ! (tg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < autogroup > ())) . lock as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (autogroup) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < autogroup > ())) . id as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (autogroup) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < autogroup > ())) . nice as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (autogroup) , "::" , stringify ! (nice))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rt_prio_array { pub bitmap : [:: cty :: c_ulong ; 2usize] , pub queue : [list_head ; 100usize] , } # [test] fn bindgen_test_layout_rt_prio_array () { assert_eq ! (:: core :: mem :: size_of :: < rt_prio_array > () , 1616usize , concat ! ("Size of: " , stringify ! (rt_prio_array))) ; assert_eq ! (:: core :: mem :: align_of :: < rt_prio_array > () , 8usize , concat ! ("Alignment of " , stringify ! (rt_prio_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_prio_array > ())) . bitmap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rt_prio_array) , "::" , stringify ! (bitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_prio_array > ())) . queue as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rt_prio_array) , "::" , stringify ! (queue))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rt_rq { pub active : rt_prio_array , pub rt_nr_running : :: cty :: c_uint , pub rr_nr_running : :: cty :: c_uint , pub highest_prio : rt_rq__bindgen_ty_1 , pub rt_nr_migratory : :: cty :: c_ulong , pub rt_nr_total : :: cty :: c_ulong , pub overloaded : :: cty :: c_int , pub pushable_tasks : plist_head , pub rt_queued : :: cty :: c_int , pub rt_throttled : :: cty :: c_int , pub rt_time : _cargo_bpf_u64 , pub rt_runtime : _cargo_bpf_u64 , pub rt_runtime_lock : raw_spinlock_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rt_rq__bindgen_ty_1 { pub curr : :: cty :: c_int , pub next : :: cty :: c_int , } # [test] fn bindgen_test_layout_rt_rq__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < rt_rq__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (rt_rq__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < rt_rq__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (rt_rq__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq__bindgen_ty_1 > ())) . curr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rt_rq__bindgen_ty_1) , "::" , stringify ! (curr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq__bindgen_ty_1 > ())) . next as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rt_rq__bindgen_ty_1) , "::" , stringify ! (next))) ; } # [test] fn bindgen_test_layout_rt_rq () { assert_eq ! (:: core :: mem :: size_of :: < rt_rq > () , 1704usize , concat ! ("Size of: " , stringify ! (rt_rq))) ; assert_eq ! (:: core :: mem :: align_of :: < rt_rq > () , 8usize , concat ! ("Alignment of " , stringify ! (rt_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . active as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_nr_running as * const _ as usize } , 1616usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rr_nr_running as * const _ as usize } , 1620usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rr_nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . highest_prio as * const _ as usize } , 1624usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (highest_prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_nr_migratory as * const _ as usize } , 1632usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_nr_migratory))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_nr_total as * const _ as usize } , 1640usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_nr_total))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . overloaded as * const _ as usize } , 1648usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (overloaded))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . pushable_tasks as * const _ as usize } , 1656usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (pushable_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_queued as * const _ as usize } , 1672usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_queued))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_throttled as * const _ as usize } , 1676usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_throttled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_time as * const _ as usize } , 1680usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_runtime as * const _ as usize } , 1688usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_runtime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_rq > ())) . rt_runtime_lock as * const _ as usize } , 1696usize , concat ! ("Offset of field: " , stringify ! (rt_rq) , "::" , stringify ! (rt_runtime_lock))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dl_rq { pub root : rb_root_cached , pub dl_nr_running : :: cty :: c_ulong , pub earliest_dl : dl_rq__bindgen_ty_1 , pub dl_nr_migratory : :: cty :: c_ulong , pub overloaded : :: cty :: c_int , pub pushable_dl_tasks_root : rb_root_cached , pub running_bw : _cargo_bpf_u64 , pub this_bw : _cargo_bpf_u64 , pub extra_bw : _cargo_bpf_u64 , pub bw_ratio : _cargo_bpf_u64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dl_rq__bindgen_ty_1 { pub curr : _cargo_bpf_u64 , pub next : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_dl_rq__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < dl_rq__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dl_rq__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < dl_rq__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dl_rq__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq__bindgen_ty_1 > ())) . curr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dl_rq__bindgen_ty_1) , "::" , stringify ! (curr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq__bindgen_ty_1 > ())) . next as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dl_rq__bindgen_ty_1) , "::" , stringify ! (next))) ; } # [test] fn bindgen_test_layout_dl_rq () { assert_eq ! (:: core :: mem :: size_of :: < dl_rq > () , 104usize , concat ! ("Size of: " , stringify ! (dl_rq))) ; assert_eq ! (:: core :: mem :: align_of :: < dl_rq > () , 8usize , concat ! ("Alignment of " , stringify ! (dl_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . root as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . dl_nr_running as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (dl_nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . earliest_dl as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (earliest_dl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . dl_nr_migratory as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (dl_nr_migratory))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . overloaded as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (overloaded))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . pushable_dl_tasks_root as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (pushable_dl_tasks_root))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . running_bw as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (running_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . this_bw as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (this_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . extra_bw as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (extra_bw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < dl_rq > ())) . bw_ratio as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (dl_rq) , "::" , stringify ! (bw_ratio))) ; } pub type cpu_stop_fn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpu_stop_work { pub list : list_head , pub fn_ : cpu_stop_fn_t , pub caller : :: cty :: c_ulong , pub arg : * mut :: cty :: c_void , pub done : * mut cpu_stop_done , } # [test] fn bindgen_test_layout_cpu_stop_work () { assert_eq ! (:: core :: mem :: size_of :: < cpu_stop_work > () , 48usize , concat ! ("Size of: " , stringify ! (cpu_stop_work))) ; assert_eq ! (:: core :: mem :: align_of :: < cpu_stop_work > () , 8usize , concat ! ("Alignment of " , stringify ! (cpu_stop_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_work > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_work) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_work > ())) . fn_ as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_work) , "::" , stringify ! (fn_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_work > ())) . caller as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_work) , "::" , stringify ! (caller))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_work > ())) . arg as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_work) , "::" , stringify ! (arg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_work > ())) . done as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_work) , "::" , stringify ! (done))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rq { pub lock : raw_spinlock_t , pub nr_running : :: cty :: c_uint , pub nr_numa_running : :: cty :: c_uint , pub nr_preferred_running : :: cty :: c_uint , pub numa_migrate_on : :: cty :: c_uint , pub last_blocked_load_update_tick : :: cty :: c_ulong , pub has_blocked_load : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , pub nohz_csd : call_single_data_t , pub nohz_tick_stopped : :: cty :: c_uint , pub nohz_flags : atomic_t , pub ttwu_pending : :: cty :: c_uint , pub nr_switches : _cargo_bpf_u64 , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub cfs : cfs_rq , pub rt : rt_rq , pub dl : dl_rq , pub leaf_cfs_rq_list : list_head , pub tmp_alone_branch : * mut list_head , pub nr_uninterruptible : :: cty :: c_ulong , pub curr : * mut task_struct , pub idle : * mut task_struct , pub stop : * mut task_struct , pub next_balance : :: cty :: c_ulong , pub prev_mm : * mut mm_struct , pub clock_update_flags : :: cty :: c_uint , pub clock : _cargo_bpf_u64 , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 24usize] > , pub clock_task : _cargo_bpf_u64 , pub clock_pelt : _cargo_bpf_u64 , pub lost_idle_time : :: cty :: c_ulong , pub nr_iowait : atomic_t , pub last_seen_need_resched_ns : _cargo_bpf_u64 , pub ticks_without_resched : :: cty :: c_int , pub membarrier_state : :: cty :: c_int , pub rd : * mut root_domain___2 , pub sd : * mut sched_domain , pub cpu_capacity : :: cty :: c_ulong , pub cpu_capacity_orig : :: cty :: c_ulong , pub balance_callback : * mut callback_head , pub nohz_idle_balance : :: cty :: c_uchar , pub idle_balance : :: cty :: c_uchar , pub misfit_task_load : :: cty :: c_ulong , pub active_balance : :: cty :: c_int , pub push_cpu : :: cty :: c_int , pub active_balance_work : cpu_stop_work , pub cpu : :: cty :: c_int , pub online : :: cty :: c_int , pub cfs_tasks : list_head , pub _bitfield_align_4 : [u8 ; 0] , pub _bitfield_4 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub avg_rt : sched_avg , pub avg_dl : sched_avg , pub idle_stamp : _cargo_bpf_u64 , pub avg_idle : _cargo_bpf_u64 , pub max_idle_balance_cost : _cargo_bpf_u64 , pub hotplug_wait : rcuwait , pub prev_steal_time : _cargo_bpf_u64 , pub calc_load_update : :: cty :: c_ulong , pub calc_load_active : :: cty :: c_long , pub _bitfield_align_5 : [u8 ; 0] , pub _bitfield_5 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub hrtick_csd : call_single_data_t , pub hrtick_timer : hrtimer , pub hrtick_time : ktime_t , pub rq_sched_info : sched_info , pub rq_cpu_time : :: cty :: c_ulonglong , pub yld_count : :: cty :: c_uint , pub sched_count : :: cty :: c_uint , pub sched_goidle : :: cty :: c_uint , pub ttwu_count : :: cty :: c_uint , pub ttwu_local : :: cty :: c_uint , pub idle_state : * mut cpuidle_state , pub nr_pinned : :: cty :: c_uint , pub push_busy : :: cty :: c_uint , pub push_work : cpu_stop_work , pub _bitfield_align_6 : [u8 ; 0] , pub _bitfield_6 : __BindgenBitfieldUnit < [u8 ; 24usize] > , } # [test] fn bindgen_test_layout_rq () { assert_eq ! (:: core :: mem :: size_of :: < rq > () , 3136usize , concat ! ("Size of: " , stringify ! (rq))) ; assert_eq ! (:: core :: mem :: align_of :: < rq > () , 8usize , concat ! ("Alignment of " , stringify ! (rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_running as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_numa_running as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_numa_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_preferred_running as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_preferred_running))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . numa_migrate_on as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (numa_migrate_on))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . last_blocked_load_update_tick as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (last_blocked_load_update_tick))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . has_blocked_load as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (has_blocked_load))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nohz_csd as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nohz_csd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nohz_tick_stopped as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nohz_tick_stopped))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nohz_flags as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nohz_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . ttwu_pending as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (ttwu_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_switches as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_switches))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . cfs as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (cfs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . rt as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (rt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . dl as * const _ as usize } , 2280usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (dl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . leaf_cfs_rq_list as * const _ as usize } , 2384usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (leaf_cfs_rq_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . tmp_alone_branch as * const _ as usize } , 2400usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (tmp_alone_branch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_uninterruptible as * const _ as usize } , 2408usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_uninterruptible))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . curr as * const _ as usize } , 2416usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (curr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . idle as * const _ as usize } , 2424usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (idle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . stop as * const _ as usize } , 2432usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . next_balance as * const _ as usize } , 2440usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (next_balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . prev_mm as * const _ as usize } , 2448usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (prev_mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . clock_update_flags as * const _ as usize } , 2456usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (clock_update_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . clock as * const _ as usize } , 2464usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (clock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . clock_task as * const _ as usize } , 2496usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (clock_task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . clock_pelt as * const _ as usize } , 2504usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (clock_pelt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . lost_idle_time as * const _ as usize } , 2512usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (lost_idle_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_iowait as * const _ as usize } , 2520usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_iowait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . last_seen_need_resched_ns as * const _ as usize } , 2528usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (last_seen_need_resched_ns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . ticks_without_resched as * const _ as usize } , 2536usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (ticks_without_resched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . membarrier_state as * const _ as usize } , 2540usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (membarrier_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . rd as * const _ as usize } , 2544usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (rd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . sd as * const _ as usize } , 2552usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (sd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . cpu_capacity as * const _ as usize } , 2560usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (cpu_capacity))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . cpu_capacity_orig as * const _ as usize } , 2568usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (cpu_capacity_orig))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . balance_callback as * const _ as usize } , 2576usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (balance_callback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nohz_idle_balance as * const _ as usize } , 2584usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nohz_idle_balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . idle_balance as * const _ as usize } , 2585usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (idle_balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . misfit_task_load as * const _ as usize } , 2592usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (misfit_task_load))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . active_balance as * const _ as usize } , 2600usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (active_balance))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . push_cpu as * const _ as usize } , 2604usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (push_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . active_balance_work as * const _ as usize } , 2608usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (active_balance_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . cpu as * const _ as usize } , 2656usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . online as * const _ as usize } , 2660usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . cfs_tasks as * const _ as usize } , 2664usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (cfs_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . avg_rt as * const _ as usize } , 2688usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (avg_rt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . avg_dl as * const _ as usize } , 2752usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (avg_dl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . idle_stamp as * const _ as usize } , 2816usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (idle_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . avg_idle as * const _ as usize } , 2824usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (avg_idle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . max_idle_balance_cost as * const _ as usize } , 2832usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (max_idle_balance_cost))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . hotplug_wait as * const _ as usize } , 2840usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (hotplug_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . prev_steal_time as * const _ as usize } , 2848usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (prev_steal_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . calc_load_update as * const _ as usize } , 2856usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (calc_load_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . calc_load_active as * const _ as usize } , 2864usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (calc_load_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . hrtick_csd as * const _ as usize } , 2880usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (hrtick_csd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . hrtick_timer as * const _ as usize } , 2912usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (hrtick_timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . hrtick_time as * const _ as usize } , 2976usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (hrtick_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . rq_sched_info as * const _ as usize } , 2984usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (rq_sched_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . rq_cpu_time as * const _ as usize } , 3016usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (rq_cpu_time))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . yld_count as * const _ as usize } , 3024usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (yld_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . sched_count as * const _ as usize } , 3028usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (sched_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . sched_goidle as * const _ as usize } , 3032usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (sched_goidle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . ttwu_count as * const _ as usize } , 3036usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (ttwu_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . ttwu_local as * const _ as usize } , 3040usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (ttwu_local))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . idle_state as * const _ as usize } , 3048usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (idle_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . nr_pinned as * const _ as usize } , 3056usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (nr_pinned))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . push_busy as * const _ as usize } , 3060usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (push_busy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq > ())) . push_work as * const _ as usize } , 3064usize , concat ! ("Offset of field: " , stringify ! (rq) , "::" , stringify ! (push_work))) ; } impl rq { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_2 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_3 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_4 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_5 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } # [inline] pub fn new_bitfield_6 () -> __BindgenBitfieldUnit < [u8 ; 24usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 24usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cpudl_item { pub dl : _cargo_bpf_u64 , pub cpu : :: cty :: c_int , pub idx : :: cty :: c_int , } # [test] fn bindgen_test_layout_cpudl_item () { assert_eq ! (:: core :: mem :: size_of :: < cpudl_item > () , 16usize , concat ! ("Size of: " , stringify ! (cpudl_item))) ; assert_eq ! (:: core :: mem :: align_of :: < cpudl_item > () , 8usize , concat ! ("Alignment of " , stringify ! (cpudl_item))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl_item > ())) . dl as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpudl_item) , "::" , stringify ! (dl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl_item > ())) . cpu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpudl_item) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpudl_item > ())) . idx as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cpudl_item) , "::" , stringify ! (idx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct perf_domain { pub em_pd : * mut em_perf_domain , pub next : * mut perf_domain , pub rcu : callback_head , } # [test] fn bindgen_test_layout_perf_domain () { assert_eq ! (:: core :: mem :: size_of :: < perf_domain > () , 32usize , concat ! ("Size of: " , stringify ! (perf_domain))) ; assert_eq ! (:: core :: mem :: align_of :: < perf_domain > () , 8usize , concat ! ("Alignment of " , stringify ! (perf_domain))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_domain > ())) . em_pd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (perf_domain) , "::" , stringify ! (em_pd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_domain > ())) . next as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (perf_domain) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < perf_domain > ())) . rcu as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (perf_domain) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rq_flags { pub flags : :: cty :: c_ulong , pub cookie : pin_cookie , pub clock_update_flags : :: cty :: c_uint , } # [test] fn bindgen_test_layout_rq_flags () { assert_eq ! (:: core :: mem :: size_of :: < rq_flags > () , 16usize , concat ! ("Size of: " , stringify ! (rq_flags))) ; assert_eq ! (:: core :: mem :: align_of :: < rq_flags > () , 8usize , concat ! ("Alignment of " , stringify ! (rq_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq_flags > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rq_flags) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq_flags > ())) . cookie as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rq_flags) , "::" , stringify ! (cookie))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rq_flags > ())) . clock_update_flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rq_flags) , "::" , stringify ! (clock_update_flags))) ; } # [repr (C)] pub struct numa_group { pub refcount : refcount_t , pub lock : spinlock_t , pub nr_tasks : :: cty :: c_int , pub gid : pid_t , pub active_nodes : :: cty :: c_int , pub rcu : callback_head , pub total_faults : :: cty :: c_ulong , pub max_faults_cpu : :: cty :: c_ulong , pub faults_cpu : * mut :: cty :: c_ulong , pub faults : __IncompleteArrayField < :: cty :: c_ulong > , } # [test] fn bindgen_test_layout_numa_group () { assert_eq ! (:: core :: mem :: size_of :: < numa_group > () , 64usize , concat ! ("Size of: " , stringify ! (numa_group))) ; assert_eq ! (:: core :: mem :: align_of :: < numa_group > () , 8usize , concat ! ("Alignment of " , stringify ! (numa_group))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . refcount as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . lock as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . nr_tasks as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (nr_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . gid as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . active_nodes as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (active_nodes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . rcu as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . total_faults as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (total_faults))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . max_faults_cpu as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (max_faults_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . faults_cpu as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (faults_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < numa_group > ())) . faults as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (numa_group) , "::" , stringify ! (faults))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct semaphore { pub lock : raw_spinlock_t , pub count : :: cty :: c_uint , pub wait_list : list_head , } # [test] fn bindgen_test_layout_semaphore () { assert_eq ! (:: core :: mem :: size_of :: < semaphore > () , 24usize , concat ! ("Size of: " , stringify ! (semaphore))) ; assert_eq ! (:: core :: mem :: align_of :: < semaphore > () , 8usize , concat ! ("Alignment of " , stringify ! (semaphore))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < semaphore > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (semaphore) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < semaphore > ())) . count as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (semaphore) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < semaphore > ())) . wait_list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (semaphore) , "::" , stringify ! (wait_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rt_mutex_waiter { pub tree_entry : rb_node , pub pi_tree_entry : rb_node , pub task : * mut task_struct , pub lock : * mut rt_mutex , pub prio : :: cty :: c_int , pub deadline : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_rt_mutex_waiter () { assert_eq ! (:: core :: mem :: size_of :: < rt_mutex_waiter > () , 80usize , concat ! ("Size of: " , stringify ! (rt_mutex_waiter))) ; assert_eq ! (:: core :: mem :: align_of :: < rt_mutex_waiter > () , 8usize , concat ! ("Alignment of " , stringify ! (rt_mutex_waiter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex_waiter > ())) . tree_entry as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rt_mutex_waiter) , "::" , stringify ! (tree_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex_waiter > ())) . pi_tree_entry as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rt_mutex_waiter) , "::" , stringify ! (pi_tree_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex_waiter > ())) . task as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rt_mutex_waiter) , "::" , stringify ! (task))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex_waiter > ())) . lock as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rt_mutex_waiter) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex_waiter > ())) . prio as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rt_mutex_waiter) , "::" , stringify ! (prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex_waiter > ())) . deadline as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rt_mutex_waiter) , "::" , stringify ! (deadline))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rt_mutex { pub wait_lock : raw_spinlock_t , pub waiters : rb_root_cached , pub owner : * mut task_struct , } # [test] fn bindgen_test_layout_rt_mutex () { assert_eq ! (:: core :: mem :: size_of :: < rt_mutex > () , 32usize , concat ! ("Size of: " , stringify ! (rt_mutex))) ; assert_eq ! (:: core :: mem :: align_of :: < rt_mutex > () , 8usize , concat ! ("Alignment of " , stringify ! (rt_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex > ())) . wait_lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rt_mutex) , "::" , stringify ! (wait_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex > ())) . waiters as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rt_mutex) , "::" , stringify ! (waiters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rt_mutex > ())) . owner as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rt_mutex) , "::" , stringify ! (owner))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union futex_key { pub shared : futex_key__bindgen_ty_1 , pub private : futex_key__bindgen_ty_2 , pub both : futex_key__bindgen_ty_3 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct futex_key__bindgen_ty_1 { pub i_seq : _cargo_bpf_u64 , pub pgoff : :: cty :: c_ulong , pub offset : :: cty :: c_uint , } # [test] fn bindgen_test_layout_futex_key__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < futex_key__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (futex_key__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < futex_key__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (futex_key__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_1 > ())) . i_seq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_1) , "::" , stringify ! (i_seq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_1 > ())) . pgoff as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_1) , "::" , stringify ! (pgoff))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_1 > ())) . offset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_1) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct futex_key__bindgen_ty_2 { pub __bindgen_anon_1 : futex_key__bindgen_ty_2__bindgen_ty_1 , pub address : :: cty :: c_ulong , pub offset : :: cty :: c_uint , } # [repr (C)] # [derive (Copy , Clone)] pub union futex_key__bindgen_ty_2__bindgen_ty_1 { pub mm : * mut mm_struct , pub __tmp : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_futex_key__bindgen_ty_2__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < futex_key__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (futex_key__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < futex_key__bindgen_ty_2__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (futex_key__bindgen_ty_2__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_2__bindgen_ty_1 > ())) . mm as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (mm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_2__bindgen_ty_1 > ())) . __tmp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_2__bindgen_ty_1) , "::" , stringify ! (__tmp))) ; } # [test] fn bindgen_test_layout_futex_key__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < futex_key__bindgen_ty_2 > () , 24usize , concat ! ("Size of: " , stringify ! (futex_key__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < futex_key__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (futex_key__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_2 > ())) . address as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_2) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_2 > ())) . offset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_2) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct futex_key__bindgen_ty_3 { pub ptr : _cargo_bpf_u64 , pub word : :: cty :: c_ulong , pub offset : :: cty :: c_uint , } # [test] fn bindgen_test_layout_futex_key__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < futex_key__bindgen_ty_3 > () , 24usize , concat ! ("Size of: " , stringify ! (futex_key__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < futex_key__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (futex_key__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_3 > ())) . ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_3) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_3 > ())) . word as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_3) , "::" , stringify ! (word))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key__bindgen_ty_3 > ())) . offset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (futex_key__bindgen_ty_3) , "::" , stringify ! (offset))) ; } # [test] fn bindgen_test_layout_futex_key () { assert_eq ! (:: core :: mem :: size_of :: < futex_key > () , 24usize , concat ! ("Size of: " , stringify ! (futex_key))) ; assert_eq ! (:: core :: mem :: align_of :: < futex_key > () , 8usize , concat ! ("Alignment of " , stringify ! (futex_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key > ())) . shared as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key) , "::" , stringify ! (shared))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key > ())) . private as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key) , "::" , stringify ! (private))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_key > ())) . both as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_key) , "::" , stringify ! (both))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct futex_pi_state { pub list : list_head , pub pi_mutex : rt_mutex , pub owner : * mut task_struct , pub refcount : refcount_t , pub key : futex_key , } # [test] fn bindgen_test_layout_futex_pi_state () { assert_eq ! (:: core :: mem :: size_of :: < futex_pi_state > () , 88usize , concat ! ("Size of: " , stringify ! (futex_pi_state))) ; assert_eq ! (:: core :: mem :: align_of :: < futex_pi_state > () , 8usize , concat ! ("Alignment of " , stringify ! (futex_pi_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_pi_state > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (futex_pi_state) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_pi_state > ())) . pi_mutex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (futex_pi_state) , "::" , stringify ! (pi_mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_pi_state > ())) . owner as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (futex_pi_state) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_pi_state > ())) . refcount as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (futex_pi_state) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < futex_pi_state > ())) . key as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (futex_pi_state) , "::" , stringify ! (key))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct module_sect_attr { pub battr : bin_attribute , pub address : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_module_sect_attr () { assert_eq ! (:: core :: mem :: size_of :: < module_sect_attr > () , 72usize , concat ! ("Size of: " , stringify ! (module_sect_attr))) ; assert_eq ! (:: core :: mem :: align_of :: < module_sect_attr > () , 8usize , concat ! ("Alignment of " , stringify ! (module_sect_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_sect_attr > ())) . battr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_sect_attr) , "::" , stringify ! (battr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_sect_attr > ())) . address as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (module_sect_attr) , "::" , stringify ! (address))) ; } # [repr (C)] # [derive (Debug)] pub struct module_sect_attrs { pub grp : attribute_group , pub nsections : :: cty :: c_uint , pub attrs : __IncompleteArrayField < module_sect_attr > , } # [test] fn bindgen_test_layout_module_sect_attrs () { assert_eq ! (:: core :: mem :: size_of :: < module_sect_attrs > () , 48usize , concat ! ("Size of: " , stringify ! (module_sect_attrs))) ; assert_eq ! (:: core :: mem :: align_of :: < module_sect_attrs > () , 8usize , concat ! ("Alignment of " , stringify ! (module_sect_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_sect_attrs > ())) . grp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_sect_attrs) , "::" , stringify ! (grp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_sect_attrs > ())) . nsections as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (module_sect_attrs) , "::" , stringify ! (nsections))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_sect_attrs > ())) . attrs as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (module_sect_attrs) , "::" , stringify ! (attrs))) ; } # [repr (C)] # [derive (Debug)] pub struct module_notes_attrs { pub dir : * mut kobject , pub notes : :: cty :: c_uint , pub attrs : __IncompleteArrayField < bin_attribute > , } # [test] fn bindgen_test_layout_module_notes_attrs () { assert_eq ! (:: core :: mem :: size_of :: < module_notes_attrs > () , 16usize , concat ! ("Size of: " , stringify ! (module_notes_attrs))) ; assert_eq ! (:: core :: mem :: align_of :: < module_notes_attrs > () , 8usize , concat ! ("Alignment of " , stringify ! (module_notes_attrs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_notes_attrs > ())) . dir as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (module_notes_attrs) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_notes_attrs > ())) . notes as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (module_notes_attrs) , "::" , stringify ! (notes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < module_notes_attrs > ())) . attrs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (module_notes_attrs) , "::" , stringify ! (attrs))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct fs_pin { pub wait : wait_queue_head_t , pub done : :: cty :: c_int , pub s_list : hlist_node , pub m_list : hlist_node , pub kill : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut fs_pin) > , } # [test] fn bindgen_test_layout_fs_pin () { assert_eq ! (:: core :: mem :: size_of :: < fs_pin > () , 72usize , concat ! ("Size of: " , stringify ! (fs_pin))) ; assert_eq ! (:: core :: mem :: align_of :: < fs_pin > () , 8usize , concat ! ("Alignment of " , stringify ! (fs_pin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_pin > ())) . wait as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fs_pin) , "::" , stringify ! (wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_pin > ())) . done as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fs_pin) , "::" , stringify ! (done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_pin > ())) . s_list as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (fs_pin) , "::" , stringify ! (s_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_pin > ())) . m_list as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (fs_pin) , "::" , stringify ! (m_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fs_pin > ())) . kill as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (fs_pin) , "::" , stringify ! (kill))) ; } pub const bpf_link_type_BPF_LINK_TYPE_UNSPEC : bpf_link_type = 0 ; pub const bpf_link_type_BPF_LINK_TYPE_RAW_TRACEPOINT : bpf_link_type = 1 ; pub const bpf_link_type_BPF_LINK_TYPE_TRACING : bpf_link_type = 2 ; pub const bpf_link_type_BPF_LINK_TYPE_CGROUP : bpf_link_type = 3 ; pub const bpf_link_type_BPF_LINK_TYPE_ITER : bpf_link_type = 4 ; pub const bpf_link_type_BPF_LINK_TYPE_NETNS : bpf_link_type = 5 ; pub const bpf_link_type_BPF_LINK_TYPE_XDP : bpf_link_type = 6 ; pub const bpf_link_type_MAX_BPF_LINK_TYPE : bpf_link_type = 7 ; pub type bpf_link_type = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_link_info { pub type_ : __u32 , pub id : __u32 , pub prog_id : __u32 , pub __bindgen_anon_1 : bpf_link_info__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_link_info__bindgen_ty_1 { pub raw_tracepoint : bpf_link_info__bindgen_ty_1__bindgen_ty_1 , pub tracing : bpf_link_info__bindgen_ty_1__bindgen_ty_2 , pub cgroup : bpf_link_info__bindgen_ty_1__bindgen_ty_3 , pub iter : bpf_link_info__bindgen_ty_1__bindgen_ty_4 , pub netns : bpf_link_info__bindgen_ty_1__bindgen_ty_5 , pub xdp : bpf_link_info__bindgen_ty_1__bindgen_ty_6 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_1 { pub tp_name : __u64 , pub tp_name_len : __u32 , } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_1 > ())) . tp_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (tp_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_1 > ())) . tp_name_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (tp_name_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_2 { pub attach_type : __u32 , pub target_obj_id : __u32 , pub target_btf_id : __u32 , } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_2 > () , 12usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_2 > ())) . attach_type as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (attach_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_2 > ())) . target_obj_id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (target_obj_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_2 > ())) . target_btf_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (target_btf_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_3 { pub cgroup_id : __u64 , pub attach_type : __u32 , } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_3 > ())) . cgroup_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (cgroup_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_3 > ())) . attach_type as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (attach_type))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4 { pub target_name : __u64 , pub target_name_len : __u32 , pub __bindgen_anon_1 : bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 { pub map : bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 { pub map_id : __u32 , } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1 > ())) . map_id as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (map_id))) ; } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1 > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4__bindgen_ty_1) , "::" , stringify ! (map))) ; } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4 > ())) . target_name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (target_name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_4 > ())) . target_name_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (target_name_len))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_5 { pub netns_ino : __u32 , pub attach_type : __u32 , } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_5 > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_5 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_5 > ())) . netns_ino as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (netns_ino))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_5 > ())) . attach_type as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (attach_type))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_info__bindgen_ty_1__bindgen_ty_6 { pub ifindex : __u32 , } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_6 > () , 4usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1__bindgen_ty_6 > () , 4usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1__bindgen_ty_6 > ())) . ifindex as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (ifindex))) ; } # [test] fn bindgen_test_layout_bpf_link_info__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_link_info__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link_info__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1 > ())) . raw_tracepoint as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1) , "::" , stringify ! (raw_tracepoint))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1 > ())) . tracing as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1) , "::" , stringify ! (tracing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1 > ())) . cgroup as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1) , "::" , stringify ! (cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1 > ())) . iter as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1) , "::" , stringify ! (iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1 > ())) . netns as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1) , "::" , stringify ! (netns))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info__bindgen_ty_1 > ())) . xdp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info__bindgen_ty_1) , "::" , stringify ! (xdp))) ; } # [test] fn bindgen_test_layout_bpf_link_info () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_info > () , 32usize , concat ! ("Size of: " , stringify ! (bpf_link_info))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_info > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link_info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info > ())) . type_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info > ())) . id as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_info > ())) . prog_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link_info) , "::" , stringify ! (prog_id))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link { pub refcnt : atomic64_t , pub id : _cargo_bpf_u32 , pub type_ : bpf_link_type , pub ops : * const bpf_link_ops , pub prog : * mut bpf_prog , pub work : work_struct , } # [test] fn bindgen_test_layout_bpf_link () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link > () , 64usize , concat ! ("Size of: " , stringify ! (bpf_link))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link > ())) . refcnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link) , "::" , stringify ! (refcnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link > ())) . id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link > ())) . type_ as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (bpf_link) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link > ())) . ops as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_link) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link > ())) . prog as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_link) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link > ())) . work as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_link) , "::" , stringify ! (work))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_link_ops { pub release : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_link) > , pub dealloc : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_link) > , pub detach : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_link) -> :: cty :: c_int > , pub update_prog : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut bpf_link , arg2 : * mut bpf_prog , arg3 : * mut bpf_prog) -> :: cty :: c_int > , pub show_fdinfo : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_link , arg2 : * mut seq_file) > , pub fill_link_info : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const bpf_link , arg2 : * mut bpf_link_info) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_bpf_link_ops () { assert_eq ! (:: core :: mem :: size_of :: < bpf_link_ops > () , 48usize , concat ! ("Size of: " , stringify ! (bpf_link_ops))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_link_ops > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_link_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_ops > ())) . release as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_link_ops) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_ops > ())) . dealloc as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_link_ops) , "::" , stringify ! (dealloc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_ops > ())) . detach as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_link_ops) , "::" , stringify ! (detach))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_ops > ())) . update_prog as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_link_ops) , "::" , stringify ! (update_prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_ops > ())) . show_fdinfo as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bpf_link_ops) , "::" , stringify ! (show_fdinfo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_link_ops > ())) . fill_link_info as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (bpf_link_ops) , "::" , stringify ! (fill_link_info))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_cgroup_link { pub link : bpf_link , pub cgroup : * mut cgroup , pub type_ : bpf_attach_type , } # [test] fn bindgen_test_layout_bpf_cgroup_link () { assert_eq ! (:: core :: mem :: size_of :: < bpf_cgroup_link > () , 80usize , concat ! ("Size of: " , stringify ! (bpf_cgroup_link))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_cgroup_link > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_cgroup_link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_link > ())) . link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_link) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_link > ())) . cgroup as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_link) , "::" , stringify ! (cgroup))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_cgroup_link > ())) . type_ as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (bpf_cgroup_link) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cgroup_taskset { pub src_csets : list_head , pub dst_csets : list_head , pub nr_tasks : :: cty :: c_int , pub ssid : :: cty :: c_int , pub csets : * mut list_head , pub cur_cset : * mut css_set , pub cur_task : * mut task_struct , } # [test] fn bindgen_test_layout_cgroup_taskset () { assert_eq ! (:: core :: mem :: size_of :: < cgroup_taskset > () , 64usize , concat ! ("Size of: " , stringify ! (cgroup_taskset))) ; assert_eq ! (:: core :: mem :: align_of :: < cgroup_taskset > () , 8usize , concat ! ("Alignment of " , stringify ! (cgroup_taskset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . src_csets as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (src_csets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . dst_csets as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (dst_csets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . nr_tasks as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (nr_tasks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . ssid as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (ssid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . csets as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (csets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . cur_cset as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (cur_cset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cgroup_taskset > ())) . cur_task as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (cgroup_taskset) , "::" , stringify ! (cur_task))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct kernel_pkey_query { pub supported_ops : __u32 , pub key_size : __u32 , pub max_data_size : __u16 , pub max_sig_size : __u16 , pub max_enc_size : __u16 , pub max_dec_size : __u16 , } # [test] fn bindgen_test_layout_kernel_pkey_query () { assert_eq ! (:: core :: mem :: size_of :: < kernel_pkey_query > () , 16usize , concat ! ("Size of: " , stringify ! (kernel_pkey_query))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_pkey_query > () , 4usize , concat ! ("Alignment of " , stringify ! (kernel_pkey_query))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_query > ())) . supported_ops as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_query) , "::" , stringify ! (supported_ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_query > ())) . key_size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_query) , "::" , stringify ! (key_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_query > ())) . max_data_size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_query) , "::" , stringify ! (max_data_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_query > ())) . max_sig_size as * const _ as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_query) , "::" , stringify ! (max_sig_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_query > ())) . max_enc_size as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_query) , "::" , stringify ! (max_enc_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_query > ())) . max_dec_size as * const _ as usize } , 14usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_query) , "::" , stringify ! (max_dec_size))) ; } pub const kernel_pkey_operation_kernel_pkey_encrypt : kernel_pkey_operation = 0 ; pub const kernel_pkey_operation_kernel_pkey_decrypt : kernel_pkey_operation = 1 ; pub const kernel_pkey_operation_kernel_pkey_sign : kernel_pkey_operation = 2 ; pub const kernel_pkey_operation_kernel_pkey_verify : kernel_pkey_operation = 3 ; pub type kernel_pkey_operation = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct kernel_pkey_params { pub key : * mut key , pub encoding : * const :: cty :: c_char , pub hash_algo : * const :: cty :: c_char , pub info : * mut :: cty :: c_char , pub in_len : __u32 , pub __bindgen_anon_1 : kernel_pkey_params__bindgen_ty_1 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub __bindgen_padding_0 : [u8 ; 7usize] , } # [repr (C)] # [derive (Copy , Clone)] pub union kernel_pkey_params__bindgen_ty_1 { pub out_len : __u32 , pub in2_len : __u32 , } # [test] fn bindgen_test_layout_kernel_pkey_params__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < kernel_pkey_params__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (kernel_pkey_params__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_pkey_params__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (kernel_pkey_params__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params__bindgen_ty_1 > ())) . out_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params__bindgen_ty_1) , "::" , stringify ! (out_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params__bindgen_ty_1 > ())) . in2_len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params__bindgen_ty_1) , "::" , stringify ! (in2_len))) ; } # [test] fn bindgen_test_layout_kernel_pkey_params () { assert_eq ! (:: core :: mem :: size_of :: < kernel_pkey_params > () , 48usize , concat ! ("Size of: " , stringify ! (kernel_pkey_params))) ; assert_eq ! (:: core :: mem :: align_of :: < kernel_pkey_params > () , 8usize , concat ! ("Alignment of " , stringify ! (kernel_pkey_params))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params > ())) . key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params > ())) . encoding as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params) , "::" , stringify ! (encoding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params > ())) . hash_algo as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params) , "::" , stringify ! (hash_algo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params > ())) . info as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < kernel_pkey_params > ())) . in_len as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (kernel_pkey_params) , "::" , stringify ! (in_len))) ; } impl kernel_pkey_params { # [inline] pub fn op (& self) -> kernel_pkey_operation { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 8u8) as u32) } } # [inline] pub fn set_op (& mut self , val : kernel_pkey_operation) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 8u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (op : kernel_pkey_operation) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 8u8 , { let op : u32 = unsafe { :: core :: mem :: transmute (op) } ; op as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct key_preparsed_payload { pub orig_description : * const :: cty :: c_char , pub description : * mut :: cty :: c_char , pub payload : key_payload , pub data : * const :: cty :: c_void , pub datalen : size_t , pub quotalen : size_t , pub expiry : time64_t , } # [test] fn bindgen_test_layout_key_preparsed_payload () { assert_eq ! (:: core :: mem :: size_of :: < key_preparsed_payload > () , 80usize , concat ! ("Size of: " , stringify ! (key_preparsed_payload))) ; assert_eq ! (:: core :: mem :: align_of :: < key_preparsed_payload > () , 8usize , concat ! ("Alignment of " , stringify ! (key_preparsed_payload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . orig_description as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (orig_description))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . description as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (description))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . payload as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (payload))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . data as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . datalen as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (datalen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . quotalen as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (quotalen))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_preparsed_payload > ())) . expiry as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (key_preparsed_payload) , "::" , stringify ! (expiry))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct key_match_data { pub cmp : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const key , arg2 : * const key_match_data) -> bool_ > , pub raw_data : * const :: cty :: c_void , pub preparsed : * mut :: cty :: c_void , pub lookup_type : :: cty :: c_uint , } # [test] fn bindgen_test_layout_key_match_data () { assert_eq ! (:: core :: mem :: size_of :: < key_match_data > () , 32usize , concat ! ("Size of: " , stringify ! (key_match_data))) ; assert_eq ! (:: core :: mem :: align_of :: < key_match_data > () , 8usize , concat ! ("Alignment of " , stringify ! (key_match_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_match_data > ())) . cmp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (key_match_data) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_match_data > ())) . raw_data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (key_match_data) , "::" , stringify ! (raw_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_match_data > ())) . preparsed as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (key_match_data) , "::" , stringify ! (preparsed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < key_match_data > ())) . lookup_type as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (key_match_data) , "::" , stringify ! (lookup_type))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct cpu_stop_done { pub nr_todo : atomic_t , pub ret : :: cty :: c_int , pub completion : completion , } # [test] fn bindgen_test_layout_cpu_stop_done () { assert_eq ! (:: core :: mem :: size_of :: < cpu_stop_done > () , 40usize , concat ! ("Size of: " , stringify ! (cpu_stop_done))) ; assert_eq ! (:: core :: mem :: align_of :: < cpu_stop_done > () , 8usize , concat ! ("Alignment of " , stringify ! (cpu_stop_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_done > ())) . nr_todo as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_done) , "::" , stringify ! (nr_todo))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_done > ())) . ret as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_done) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cpu_stop_done > ())) . completion as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cpu_stop_done) , "::" , stringify ! (completion))) ; } pub type __kernel_mqd_t = :: cty :: c_int ; pub type mqd_t = __kernel_mqd_t ; pub const audit_state_AUDIT_DISABLED : audit_state = 0 ; pub const audit_state_AUDIT_BUILD_CONTEXT : audit_state = 1 ; pub const audit_state_AUDIT_RECORD_CONTEXT : audit_state = 2 ; pub type audit_state = :: cty :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct audit_cap_data { pub permitted : kernel_cap_t , pub inheritable : kernel_cap_t , pub __bindgen_anon_1 : audit_cap_data__bindgen_ty_1 , pub ambient : kernel_cap_t , pub rootid : kuid_t , } # [repr (C)] # [derive (Copy , Clone)] pub union audit_cap_data__bindgen_ty_1 { pub fE : :: cty :: c_uint , pub effective : kernel_cap_t , } # [test] fn bindgen_test_layout_audit_cap_data__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < audit_cap_data__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (audit_cap_data__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_cap_data__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (audit_cap_data__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_cap_data__bindgen_ty_1 > ())) . fE as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_cap_data__bindgen_ty_1) , "::" , stringify ! (fE))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_cap_data__bindgen_ty_1 > ())) . effective as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_cap_data__bindgen_ty_1) , "::" , stringify ! (effective))) ; } # [test] fn bindgen_test_layout_audit_cap_data () { assert_eq ! (:: core :: mem :: size_of :: < audit_cap_data > () , 36usize , concat ! ("Size of: " , stringify ! (audit_cap_data))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_cap_data > () , 4usize , concat ! ("Alignment of " , stringify ! (audit_cap_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_cap_data > ())) . permitted as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_cap_data) , "::" , stringify ! (permitted))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_cap_data > ())) . inheritable as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_cap_data) , "::" , stringify ! (inheritable))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_cap_data > ())) . ambient as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (audit_cap_data) , "::" , stringify ! (ambient))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_cap_data > ())) . rootid as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (audit_cap_data) , "::" , stringify ! (rootid))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct audit_names { pub list : list_head , pub name : * mut filename , pub name_len : :: cty :: c_int , pub hidden : bool_ , pub ino : :: cty :: c_ulong , pub dev : dev_t , pub mode : umode_t , pub uid : kuid_t , pub gid : kgid_t , pub rdev : dev_t , pub oblob : lsmblob , pub fcap : audit_cap_data , pub fcap_ver : :: cty :: c_uint , pub type_ : :: cty :: c_uchar , pub should_free : bool_ , } # [test] fn bindgen_test_layout_audit_names () { assert_eq ! (:: core :: mem :: size_of :: < audit_names > () , 120usize , concat ! ("Size of: " , stringify ! (audit_names))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_names > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_names))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . name_len as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (name_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . hidden as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (hidden))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . ino as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (ino))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . dev as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . mode as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . uid as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . gid as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . rdev as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (rdev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . oblob as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (oblob))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . fcap as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (fcap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . fcap_ver as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (fcap_ver))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . type_ as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_names > ())) . should_free as * const _ as usize } , 113usize , concat ! ("Offset of field: " , stringify ! (audit_names) , "::" , stringify ! (should_free))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct mq_attr { pub mq_flags : __kernel_long_t , pub mq_maxmsg : __kernel_long_t , pub mq_msgsize : __kernel_long_t , pub mq_curmsgs : __kernel_long_t , pub __reserved : [__kernel_long_t ; 4usize] , } # [test] fn bindgen_test_layout_mq_attr () { assert_eq ! (:: core :: mem :: size_of :: < mq_attr > () , 64usize , concat ! ("Size of: " , stringify ! (mq_attr))) ; assert_eq ! (:: core :: mem :: align_of :: < mq_attr > () , 8usize , concat ! ("Alignment of " , stringify ! (mq_attr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mq_attr > ())) . mq_flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (mq_attr) , "::" , stringify ! (mq_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mq_attr > ())) . mq_maxmsg as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (mq_attr) , "::" , stringify ! (mq_maxmsg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mq_attr > ())) . mq_msgsize as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (mq_attr) , "::" , stringify ! (mq_msgsize))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mq_attr > ())) . mq_curmsgs as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (mq_attr) , "::" , stringify ! (mq_curmsgs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < mq_attr > ())) . __reserved as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (mq_attr) , "::" , stringify ! (__reserved))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_proctitle { pub len : :: cty :: c_int , pub value : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_audit_proctitle () { assert_eq ! (:: core :: mem :: size_of :: < audit_proctitle > () , 16usize , concat ! ("Size of: " , stringify ! (audit_proctitle))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_proctitle > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_proctitle))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_proctitle > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_proctitle) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_proctitle > ())) . value as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_proctitle) , "::" , stringify ! (value))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct audit_context { pub dummy : :: cty :: c_int , pub in_syscall : :: cty :: c_int , pub state : audit_state , pub current_state : audit_state , pub serial : :: cty :: c_uint , pub major : :: cty :: c_int , pub ctime : timespec64 , pub argv : [:: cty :: c_ulong ; 4usize] , pub return_code : :: cty :: c_long , pub prio : _cargo_bpf_u64 , pub return_valid : :: cty :: c_int , pub preallocated_names : [audit_names ; 5usize] , pub name_count : :: cty :: c_int , pub names_list : list_head , pub filterkey : * mut :: cty :: c_char , pub pwd : path , pub aux : * mut audit_aux_data , pub aux_pids : * mut audit_aux_data , pub sockaddr : * mut __kernel_sockaddr_storage , pub sockaddr_len : size_t , pub pid : pid_t , pub ppid : pid_t , pub uid : kuid_t , pub euid : kuid_t , pub suid : kuid_t , pub fsuid : kuid_t , pub gid : kgid_t , pub egid : kgid_t , pub sgid : kgid_t , pub fsgid : kgid_t , pub personality : :: cty :: c_ulong , pub arch : :: cty :: c_int , pub target_pid : pid_t , pub target_auid : kuid_t , pub target_uid : kuid_t , pub target_sessionid : :: cty :: c_uint , pub target_lsm : lsmblob , pub target_comm : [:: cty :: c_char ; 16usize] , pub trees : * mut audit_tree_refs , pub first_trees : * mut audit_tree_refs , pub killed_trees : list_head , pub tree_count : :: cty :: c_int , pub type_ : :: cty :: c_int , pub __bindgen_anon_1 : audit_context__bindgen_ty_1 , pub fds : [:: cty :: c_int ; 2usize] , pub proctitle : audit_proctitle , } # [repr (C)] # [derive (Copy , Clone)] pub union audit_context__bindgen_ty_1 { pub socketcall : audit_context__bindgen_ty_1__bindgen_ty_1 , pub ipc : audit_context__bindgen_ty_1__bindgen_ty_2 , pub mq_getsetattr : audit_context__bindgen_ty_1__bindgen_ty_3 , pub mq_notify : audit_context__bindgen_ty_1__bindgen_ty_4 , pub mq_sendrecv : audit_context__bindgen_ty_1__bindgen_ty_5 , pub mq_open : audit_context__bindgen_ty_1__bindgen_ty_6 , pub capset : audit_context__bindgen_ty_1__bindgen_ty_7 , pub mmap : audit_context__bindgen_ty_1__bindgen_ty_8 , pub execve : audit_context__bindgen_ty_1__bindgen_ty_9 , pub module : audit_context__bindgen_ty_1__bindgen_ty_10 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_1 { pub nargs : :: cty :: c_int , pub args : [:: cty :: c_long ; 6usize] , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_1 > () , 56usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_1 > ())) . nargs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (nargs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_1 > ())) . args as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (args))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_2 { pub uid : kuid_t , pub gid : kgid_t , pub mode : umode_t , pub oblob : lsmblob , pub has_perm : :: cty :: c_int , pub perm_uid : uid_t , pub perm_gid : gid_t , pub perm_mode : umode_t , pub qbytes : :: cty :: c_ulong , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_2 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_2 > () , 48usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . uid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . gid as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . mode as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . oblob as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (oblob))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . has_perm as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (has_perm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . perm_uid as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (perm_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . perm_gid as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (perm_gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . perm_mode as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (perm_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_2 > ())) . qbytes as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (qbytes))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_3 { pub mqdes : mqd_t , pub mqstat : mq_attr , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_3 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_3 > () , 72usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_3 > ())) . mqdes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (mqdes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_3 > ())) . mqstat as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (mqstat))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_4 { pub mqdes : mqd_t , pub sigev_signo : :: cty :: c_int , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_4 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_4 > () , 4usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_4 > ())) . mqdes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (mqdes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_4 > ())) . sigev_signo as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (sigev_signo))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_5 { pub mqdes : mqd_t , pub msg_len : size_t , pub msg_prio : :: cty :: c_uint , pub abs_timeout : timespec64 , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_5 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_5 > () , 40usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_5 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_5))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_5 > ())) . mqdes as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (mqdes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_5 > ())) . msg_len as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (msg_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_5 > ())) . msg_prio as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (msg_prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_5 > ())) . abs_timeout as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_5) , "::" , stringify ! (abs_timeout))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_6 { pub oflag : :: cty :: c_int , pub mode : umode_t , pub attr : mq_attr , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_6 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_6 > () , 72usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_6 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_6))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_6 > ())) . oflag as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (oflag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_6 > ())) . mode as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_6 > ())) . attr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_6) , "::" , stringify ! (attr))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_7 { pub pid : pid_t , pub cap : audit_cap_data , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_7 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_7 > () , 40usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_7))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_7 > () , 4usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_7))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_7 > ())) . pid as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_7) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_7 > ())) . cap as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_7) , "::" , stringify ! (cap))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_8 { pub fd : :: cty :: c_int , pub flags : :: cty :: c_int , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_8 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_8 > () , 8usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_8))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_8 > () , 4usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_8))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_8 > ())) . fd as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_8) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_8 > ())) . flags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_8) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_9 { pub argc : :: cty :: c_int , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_9 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_9 > () , 4usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_9))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_9 > () , 4usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_9))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_9 > ())) . argc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_9) , "::" , stringify ! (argc))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_context__bindgen_ty_1__bindgen_ty_10 { pub name : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1__bindgen_ty_10 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1__bindgen_ty_10 > () , 8usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_10))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1__bindgen_ty_10 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_10))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1__bindgen_ty_10 > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1__bindgen_ty_10) , "::" , stringify ! (name))) ; } # [test] fn bindgen_test_layout_audit_context__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < audit_context__bindgen_ty_1 > () , 72usize , concat ! ("Size of: " , stringify ! (audit_context__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . socketcall as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (socketcall))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . ipc as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (ipc))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . mq_getsetattr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (mq_getsetattr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . mq_notify as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (mq_notify))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . mq_sendrecv as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (mq_sendrecv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . mq_open as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (mq_open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . capset as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (capset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . mmap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (mmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . execve as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (execve))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context__bindgen_ty_1 > ())) . module as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context__bindgen_ty_1) , "::" , stringify ! (module))) ; } # [test] fn bindgen_test_layout_audit_context () { assert_eq ! (:: core :: mem :: size_of :: < audit_context > () , 1008usize , concat ! ("Size of: " , stringify ! (audit_context))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_context > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . dummy as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (dummy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . in_syscall as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (in_syscall))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . state as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . current_state as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (current_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . serial as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (serial))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . major as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (major))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . ctime as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (ctime))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . argv as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (argv))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . return_code as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (return_code))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . prio as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (prio))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . return_valid as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (return_valid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . preallocated_names as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (preallocated_names))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . name_count as * const _ as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (name_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . names_list as * const _ as usize } , 704usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (names_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . filterkey as * const _ as usize } , 720usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (filterkey))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . pwd as * const _ as usize } , 728usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (pwd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . aux as * const _ as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (aux))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . aux_pids as * const _ as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (aux_pids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . sockaddr as * const _ as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (sockaddr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . sockaddr_len as * const _ as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (sockaddr_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . pid as * const _ as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . ppid as * const _ as usize } , 780usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (ppid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . uid as * const _ as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . euid as * const _ as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (euid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . suid as * const _ as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (suid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . fsuid as * const _ as usize } , 796usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (fsuid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . gid as * const _ as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . egid as * const _ as usize } , 804usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (egid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . sgid as * const _ as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (sgid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . fsgid as * const _ as usize } , 812usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (fsgid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . personality as * const _ as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (personality))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . arch as * const _ as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . target_pid as * const _ as usize } , 828usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (target_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . target_auid as * const _ as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (target_auid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . target_uid as * const _ as usize } , 836usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (target_uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . target_sessionid as * const _ as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (target_sessionid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . target_lsm as * const _ as usize } , 844usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (target_lsm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . target_comm as * const _ as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (target_comm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . trees as * const _ as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (trees))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . first_trees as * const _ as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (first_trees))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . killed_trees as * const _ as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (killed_trees))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . tree_count as * const _ as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (tree_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . type_ as * const _ as usize } , 908usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . fds as * const _ as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (fds))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_context > ())) . proctitle as * const _ as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (audit_context) , "::" , stringify ! (proctitle))) ; } # [repr (C)] pub struct net_generic { pub __bindgen_anon_1 : net_generic__bindgen_ty_1 , } # [repr (C)] pub struct net_generic__bindgen_ty_1 { pub s : __BindgenUnionField < net_generic__bindgen_ty_1__bindgen_ty_1 > , pub ptr : __BindgenUnionField < [* mut :: cty :: c_void ; 0usize] > , pub bindgen_union_field : [u64 ; 3usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct net_generic__bindgen_ty_1__bindgen_ty_1 { pub len : :: cty :: c_uint , pub rcu : callback_head , } # [test] fn bindgen_test_layout_net_generic__bindgen_ty_1__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < net_generic__bindgen_ty_1__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (net_generic__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < net_generic__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (net_generic__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_generic__bindgen_ty_1__bindgen_ty_1 > ())) . len as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_generic__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_generic__bindgen_ty_1__bindgen_ty_1 > ())) . rcu as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (net_generic__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (rcu))) ; } # [test] fn bindgen_test_layout_net_generic__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < net_generic__bindgen_ty_1 > () , 24usize , concat ! ("Size of: " , stringify ! (net_generic__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < net_generic__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (net_generic__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_generic__bindgen_ty_1 > ())) . s as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_generic__bindgen_ty_1) , "::" , stringify ! (s))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < net_generic__bindgen_ty_1 > ())) . ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (net_generic__bindgen_ty_1) , "::" , stringify ! (ptr))) ; } # [test] fn bindgen_test_layout_net_generic () { assert_eq ! (:: core :: mem :: size_of :: < net_generic > () , 24usize , concat ! ("Size of: " , stringify ! (net_generic))) ; assert_eq ! (:: core :: mem :: align_of :: < net_generic > () , 8usize , concat ! ("Alignment of " , stringify ! (net_generic))) ; } pub type fsnotify_connp_t = * mut fsnotify_mark_connector ; # [repr (C)] # [derive (Copy , Clone)] pub struct fsnotify_mark_connector { pub lock : spinlock_t , pub type_ : :: cty :: c_ushort , pub flags : :: cty :: c_ushort , pub fsid : __kernel_fsid_t , pub __bindgen_anon_1 : fsnotify_mark_connector__bindgen_ty_1 , pub list : hlist_head , } # [repr (C)] # [derive (Copy , Clone)] pub union fsnotify_mark_connector__bindgen_ty_1 { pub obj : * mut fsnotify_connp_t , pub destroy_next : * mut fsnotify_mark_connector , } # [test] fn bindgen_test_layout_fsnotify_mark_connector__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < fsnotify_mark_connector__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (fsnotify_mark_connector__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < fsnotify_mark_connector__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (fsnotify_mark_connector__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector__bindgen_ty_1 > ())) . obj as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector__bindgen_ty_1) , "::" , stringify ! (obj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector__bindgen_ty_1 > ())) . destroy_next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector__bindgen_ty_1) , "::" , stringify ! (destroy_next))) ; } # [test] fn bindgen_test_layout_fsnotify_mark_connector () { assert_eq ! (:: core :: mem :: size_of :: < fsnotify_mark_connector > () , 32usize , concat ! ("Size of: " , stringify ! (fsnotify_mark_connector))) ; assert_eq ! (:: core :: mem :: align_of :: < fsnotify_mark_connector > () , 8usize , concat ! ("Alignment of " , stringify ! (fsnotify_mark_connector))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector > ())) . type_ as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector > ())) . flags as * const _ as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector > ())) . fsid as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector) , "::" , stringify ! (fsid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < fsnotify_mark_connector > ())) . list as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (fsnotify_mark_connector) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_aux_data { pub next : * mut audit_aux_data , pub type_ : :: cty :: c_int , } # [test] fn bindgen_test_layout_audit_aux_data () { assert_eq ! (:: core :: mem :: size_of :: < audit_aux_data > () , 16usize , concat ! ("Size of: " , stringify ! (audit_aux_data))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_aux_data > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_aux_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_aux_data > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_aux_data) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_aux_data > ())) . type_ as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_aux_data) , "::" , stringify ! (type_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_chunk { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct audit_tree_refs { pub next : * mut audit_tree_refs , pub c : [* mut audit_chunk ; 31usize] , } # [test] fn bindgen_test_layout_audit_tree_refs () { assert_eq ! (:: core :: mem :: size_of :: < audit_tree_refs > () , 256usize , concat ! ("Size of: " , stringify ! (audit_tree_refs))) ; assert_eq ! (:: core :: mem :: align_of :: < audit_tree_refs > () , 8usize , concat ! ("Alignment of " , stringify ! (audit_tree_refs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_tree_refs > ())) . next as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (audit_tree_refs) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < audit_tree_refs > ())) . c as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (audit_tree_refs) , "::" , stringify ! (c))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct action_cache { pub allow_native : [:: cty :: c_ulong ; 7usize] , pub allow_compat : [:: cty :: c_ulong ; 7usize] , } # [test] fn bindgen_test_layout_action_cache () { assert_eq ! (:: core :: mem :: size_of :: < action_cache > () , 112usize , concat ! ("Size of: " , stringify ! (action_cache))) ; assert_eq ! (:: core :: mem :: align_of :: < action_cache > () , 8usize , concat ! ("Alignment of " , stringify ! (action_cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < action_cache > ())) . allow_native as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (action_cache) , "::" , stringify ! (allow_native))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < action_cache > ())) . allow_compat as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (action_cache) , "::" , stringify ! (allow_compat))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct seccomp_filter { pub refs : refcount_t , pub users : refcount_t , pub log : bool_ , pub cache : action_cache , pub prev : * mut seccomp_filter , pub prog : * mut bpf_prog , pub notif : * mut notification , pub notify_lock : mutex , pub wqh : wait_queue_head_t , } # [test] fn bindgen_test_layout_seccomp_filter () { assert_eq ! (:: core :: mem :: size_of :: < seccomp_filter > () , 208usize , concat ! ("Size of: " , stringify ! (seccomp_filter))) ; assert_eq ! (:: core :: mem :: align_of :: < seccomp_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (seccomp_filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . refs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (refs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . users as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (users))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . log as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . cache as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . prev as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (prev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . prog as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . notif as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (notif))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . notify_lock as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (notify_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < seccomp_filter > ())) . wqh as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (seccomp_filter) , "::" , stringify ! (wqh))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct notification { pub request : semaphore , pub next_id : _cargo_bpf_u64 , pub notifications : list_head , } # [test] fn bindgen_test_layout_notification () { assert_eq ! (:: core :: mem :: size_of :: < notification > () , 48usize , concat ! ("Size of: " , stringify ! (notification))) ; assert_eq ! (:: core :: mem :: align_of :: < notification > () , 8usize , concat ! ("Alignment of " , stringify ! (notification))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < notification > ())) . request as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (notification) , "::" , stringify ! (request))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < notification > ())) . next_id as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (notification) , "::" , stringify ! (next_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < notification > ())) . notifications as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (notification) , "::" , stringify ! (notifications))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rchan_buf { pub start : * mut :: cty :: c_void , pub data : * mut :: cty :: c_void , pub offset : size_t , pub subbufs_produced : size_t , pub subbufs_consumed : size_t , pub chan : * mut rchan , pub read_wait : wait_queue_head_t , pub wakeup_work : irq_work , pub dentry : * mut dentry , pub kref : kref , pub page_array : * mut * mut page , pub page_count : :: cty :: c_uint , pub finalized : :: cty :: c_uint , pub padding : * mut size_t , pub prev_padding : size_t , pub bytes_consumed : size_t , pub early_bytes : size_t , pub cpu : :: cty :: c_uint , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [test] fn bindgen_test_layout_rchan_buf () { assert_eq ! (:: core :: mem :: size_of :: < rchan_buf > () , 192usize , concat ! ("Size of: " , stringify ! (rchan_buf))) ; assert_eq ! (:: core :: mem :: align_of :: < rchan_buf > () , 8usize , concat ! ("Alignment of " , stringify ! (rchan_buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . offset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . subbufs_produced as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (subbufs_produced))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . subbufs_consumed as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (subbufs_consumed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . chan as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (chan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . read_wait as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (read_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . wakeup_work as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (wakeup_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . dentry as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . kref as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . page_array as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (page_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . page_count as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (page_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . finalized as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (finalized))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . padding as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . prev_padding as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (prev_padding))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . bytes_consumed as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (bytes_consumed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . early_bytes as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (early_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_buf > ())) . cpu as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (rchan_buf) , "::" , stringify ! (cpu))) ; } impl rchan_buf { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rchan { pub version : _cargo_bpf_u32 , pub subbuf_size : size_t , pub n_subbufs : size_t , pub alloc_size : size_t , pub cb : * const rchan_callbacks , pub kref : kref , pub private_data : * mut :: cty :: c_void , pub last_toobig : size_t , pub buf : * mut * mut rchan_buf , pub is_global : :: cty :: c_int , pub list : list_head , pub parent : * mut dentry , pub has_base_filename : :: cty :: c_int , pub base_filename : [:: cty :: c_char ; 255usize] , } # [test] fn bindgen_test_layout_rchan () { assert_eq ! (:: core :: mem :: size_of :: < rchan > () , 368usize , concat ! ("Size of: " , stringify ! (rchan))) ; assert_eq ! (:: core :: mem :: align_of :: < rchan > () , 8usize , concat ! ("Alignment of " , stringify ! (rchan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . version as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . subbuf_size as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (subbuf_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . n_subbufs as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (n_subbufs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . alloc_size as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (alloc_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . cb as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . kref as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (kref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . private_data as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (private_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . last_toobig as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (last_toobig))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . buf as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . is_global as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (is_global))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . list as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . parent as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . has_base_filename as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (has_base_filename))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan > ())) . base_filename as * const _ as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (rchan) , "::" , stringify ! (base_filename))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rchan_callbacks { pub subbuf_start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut rchan_buf , arg2 : * mut :: cty :: c_void , arg3 : * mut :: cty :: c_void , arg4 : size_t) -> :: cty :: c_int > , pub create_buf_file : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const :: cty :: c_char , arg2 : * mut dentry , arg3 : umode_t , arg4 : * mut rchan_buf , arg5 : * mut :: cty :: c_int) -> * mut dentry > , pub remove_buf_file : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut dentry) -> :: cty :: c_int > , } # [test] fn bindgen_test_layout_rchan_callbacks () { assert_eq ! (:: core :: mem :: size_of :: < rchan_callbacks > () , 24usize , concat ! ("Size of: " , stringify ! (rchan_callbacks))) ; assert_eq ! (:: core :: mem :: align_of :: < rchan_callbacks > () , 8usize , concat ! ("Alignment of " , stringify ! (rchan_callbacks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_callbacks > ())) . subbuf_start as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rchan_callbacks) , "::" , stringify ! (subbuf_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_callbacks > ())) . create_buf_file as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rchan_callbacks) , "::" , stringify ! (create_buf_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rchan_callbacks > ())) . remove_buf_file as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rchan_callbacks) , "::" , stringify ! (remove_buf_file))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ftrace_hash { pub size_bits : :: cty :: c_ulong , pub buckets : * mut hlist_head , pub count : :: cty :: c_ulong , pub flags : :: cty :: c_ulong , pub rcu : callback_head , } # [test] fn bindgen_test_layout_ftrace_hash () { assert_eq ! (:: core :: mem :: size_of :: < ftrace_hash > () , 48usize , concat ! ("Size of: " , stringify ! (ftrace_hash))) ; assert_eq ! (:: core :: mem :: align_of :: < ftrace_hash > () , 8usize , concat ! ("Alignment of " , stringify ! (ftrace_hash))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_hash > ())) . size_bits as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ftrace_hash) , "::" , stringify ! (size_bits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_hash > ())) . buckets as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ftrace_hash) , "::" , stringify ! (buckets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_hash > ())) . count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ftrace_hash) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_hash > ())) . flags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ftrace_hash) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_hash > ())) . rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ftrace_hash) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct event_filter { pub prog : * mut prog_entry , pub filter_string : * mut :: cty :: c_char , } # [test] fn bindgen_test_layout_event_filter () { assert_eq ! (:: core :: mem :: size_of :: < event_filter > () , 16usize , concat ! ("Size of: " , stringify ! (event_filter))) ; assert_eq ! (:: core :: mem :: align_of :: < event_filter > () , 8usize , concat ! ("Alignment of " , stringify ! (event_filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < event_filter > ())) . prog as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (event_filter) , "::" , stringify ! (prog))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < event_filter > ())) . filter_string as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (event_filter) , "::" , stringify ! (filter_string))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct array_buffer { pub tr : * mut trace_array , pub buffer : * mut trace_buffer , pub data : * mut trace_array_cpu , pub time_start : _cargo_bpf_u64 , pub cpu : :: cty :: c_int , } # [test] fn bindgen_test_layout_array_buffer () { assert_eq ! (:: core :: mem :: size_of :: < array_buffer > () , 40usize , concat ! ("Size of: " , stringify ! (array_buffer))) ; assert_eq ! (:: core :: mem :: align_of :: < array_buffer > () , 8usize , concat ! ("Alignment of " , stringify ! (array_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < array_buffer > ())) . tr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (array_buffer) , "::" , stringify ! (tr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < array_buffer > ())) . buffer as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (array_buffer) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < array_buffer > ())) . data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (array_buffer) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < array_buffer > ())) . time_start as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (array_buffer) , "::" , stringify ! (time_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < array_buffer > ())) . cpu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (array_buffer) , "::" , stringify ! (cpu))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct trace_array { pub list : list_head , pub name : * mut :: cty :: c_char , pub array_buffer : array_buffer , pub max_buffer : array_buffer , pub allocated_snapshot : bool_ , pub max_latency : :: cty :: c_ulong , pub d_max_latency : * mut dentry , pub fsnotify_work : work_struct , pub fsnotify_irqwork : irq_work , pub filtered_pids : * mut trace_pid_list , pub filtered_no_pids : * mut trace_pid_list , pub max_lock : arch_spinlock_t , pub buffer_disabled : :: cty :: c_int , pub sys_refcount_enter : :: cty :: c_int , pub sys_refcount_exit : :: cty :: c_int , pub enter_syscall_files : [* mut trace_event_file ; 447usize] , pub exit_syscall_files : [* mut trace_event_file ; 447usize] , pub stop_count : :: cty :: c_int , pub clock_id : :: cty :: c_int , pub nr_topts : :: cty :: c_int , pub clear_trace : bool_ , pub buffer_percent : :: cty :: c_int , pub n_err_log_entries : :: cty :: c_uint , pub current_trace : * mut tracer , pub trace_flags : :: cty :: c_uint , pub trace_flags_index : [:: cty :: c_uchar ; 32usize] , pub flags : :: cty :: c_uint , pub start_lock : raw_spinlock_t , pub err_log : list_head , pub dir : * mut dentry , pub options : * mut dentry , pub percpu_dir : * mut dentry , pub event_dir : * mut dentry , pub topts : * mut trace_options , pub systems : list_head , pub events : list_head , pub trace_marker_file : * mut trace_event_file , pub tracing_cpumask : cpumask_var_t , pub ref_ : :: cty :: c_int , pub trace_ref : :: cty :: c_int , pub ops : * mut ftrace_ops , pub function_pids : * mut trace_pid_list , pub function_no_pids : * mut trace_pid_list , pub func_probes : list_head , pub mod_trace : list_head , pub mod_notrace : list_head , pub function_enabled : :: cty :: c_int , pub no_filter_buffering_ref : :: cty :: c_int , pub hist_vars : list_head , pub cond_snapshot : * mut cond_snapshot , pub last_func_repeats : * mut trace_func_repeats , } # [test] fn bindgen_test_layout_trace_array () { assert_eq ! (:: core :: mem :: size_of :: < trace_array > () , 7672usize , concat ! ("Size of: " , stringify ! (trace_array))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_array > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_array))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . array_buffer as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (array_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . max_buffer as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (max_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . allocated_snapshot as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (allocated_snapshot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . max_latency as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (max_latency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . d_max_latency as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (d_max_latency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . fsnotify_work as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (fsnotify_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . fsnotify_irqwork as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (fsnotify_irqwork))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . filtered_pids as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (filtered_pids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . filtered_no_pids as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (filtered_no_pids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . max_lock as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (max_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . buffer_disabled as * const _ as usize } , 204usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (buffer_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . sys_refcount_enter as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (sys_refcount_enter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . sys_refcount_exit as * const _ as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (sys_refcount_exit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . enter_syscall_files as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (enter_syscall_files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . exit_syscall_files as * const _ as usize } , 3792usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (exit_syscall_files))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . stop_count as * const _ as usize } , 7368usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (stop_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . clock_id as * const _ as usize } , 7372usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (clock_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . nr_topts as * const _ as usize } , 7376usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (nr_topts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . clear_trace as * const _ as usize } , 7380usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (clear_trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . buffer_percent as * const _ as usize } , 7384usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (buffer_percent))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . n_err_log_entries as * const _ as usize } , 7388usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (n_err_log_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . current_trace as * const _ as usize } , 7392usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (current_trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . trace_flags as * const _ as usize } , 7400usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (trace_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . trace_flags_index as * const _ as usize } , 7404usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (trace_flags_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . flags as * const _ as usize } , 7436usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . start_lock as * const _ as usize } , 7440usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (start_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . err_log as * const _ as usize } , 7448usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (err_log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . dir as * const _ as usize } , 7464usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . options as * const _ as usize } , 7472usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . percpu_dir as * const _ as usize } , 7480usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (percpu_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . event_dir as * const _ as usize } , 7488usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (event_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . topts as * const _ as usize } , 7496usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (topts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . systems as * const _ as usize } , 7504usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (systems))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . events as * const _ as usize } , 7520usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . trace_marker_file as * const _ as usize } , 7536usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (trace_marker_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . tracing_cpumask as * const _ as usize } , 7544usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (tracing_cpumask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . ref_ as * const _ as usize } , 7552usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . trace_ref as * const _ as usize } , 7556usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (trace_ref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . ops as * const _ as usize } , 7560usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . function_pids as * const _ as usize } , 7568usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (function_pids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . function_no_pids as * const _ as usize } , 7576usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (function_no_pids))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . func_probes as * const _ as usize } , 7584usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (func_probes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . mod_trace as * const _ as usize } , 7600usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (mod_trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . mod_notrace as * const _ as usize } , 7616usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (mod_notrace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . function_enabled as * const _ as usize } , 7632usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (function_enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . no_filter_buffering_ref as * const _ as usize } , 7636usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (no_filter_buffering_ref))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . hist_vars as * const _ as usize } , 7640usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (hist_vars))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . cond_snapshot as * const _ as usize } , 7656usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (cond_snapshot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array > ())) . last_func_repeats as * const _ as usize } , 7664usize , concat ! ("Offset of field: " , stringify ! (trace_array) , "::" , stringify ! (last_func_repeats))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tracer { pub name : * const :: cty :: c_char , pub init : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array) -> :: cty :: c_int > , pub reset : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array) > , pub start : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array) > , pub stop : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array) > , pub update_thresh : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array) -> :: cty :: c_int > , pub open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator) > , pub pipe_open : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator) > , pub close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator) > , pub pipe_close : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator) > , pub read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator , arg2 : * mut file , arg3 : * mut :: cty :: c_char , arg4 : size_t , arg5 : * mut loff_t) -> ssize_t > , pub splice_read : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator , arg2 : * mut file , arg3 : * mut loff_t , arg4 : * mut pipe_inode_info , arg5 : size_t , arg6 : :: cty :: c_uint) -> ssize_t > , pub print_header : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut seq_file) > , pub print_line : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_iterator) -> print_line_t > , pub set_flag : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array , arg2 : _cargo_bpf_u32 , arg3 : _cargo_bpf_u32 , arg4 : :: cty :: c_int) -> :: cty :: c_int > , pub flag_changed : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array , arg2 : _cargo_bpf_u32 , arg3 : :: cty :: c_int) -> :: cty :: c_int > , pub next : * mut tracer , pub flags : * mut tracer_flags , pub enabled : :: cty :: c_int , pub print_max : bool_ , pub allow_instances : bool_ , pub use_max_tr : bool_ , pub noboot : bool_ , } # [test] fn bindgen_test_layout_tracer () { assert_eq ! (:: core :: mem :: size_of :: < tracer > () , 152usize , concat ! ("Size of: " , stringify ! (tracer))) ; assert_eq ! (:: core :: mem :: align_of :: < tracer > () , 8usize , concat ! ("Alignment of " , stringify ! (tracer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . init as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . reset as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . start as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . stop as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . update_thresh as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (update_thresh))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . open as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . pipe_open as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (pipe_open))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . close as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . pipe_close as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (pipe_close))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . read as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . splice_read as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (splice_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . print_header as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (print_header))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . print_line as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (print_line))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . set_flag as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (set_flag))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . flag_changed as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (flag_changed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . next as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . flags as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . enabled as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . print_max as * const _ as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (print_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . allow_instances as * const _ as usize } , 149usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (allow_instances))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . use_max_tr as * const _ as usize } , 150usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (use_max_tr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer > ())) . noboot as * const _ as usize } , 151usize , concat ! ("Offset of field: " , stringify ! (tracer) , "::" , stringify ! (noboot))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_subsystem_dir { pub list : list_head , pub subsystem : * mut event_subsystem , pub tr : * mut trace_array , pub entry : * mut dentry , pub ref_count : :: cty :: c_int , pub nr_events : :: cty :: c_int , } # [test] fn bindgen_test_layout_trace_subsystem_dir () { assert_eq ! (:: core :: mem :: size_of :: < trace_subsystem_dir > () , 48usize , concat ! ("Size of: " , stringify ! (trace_subsystem_dir))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_subsystem_dir > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_subsystem_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_subsystem_dir > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_subsystem_dir) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_subsystem_dir > ())) . subsystem as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_subsystem_dir) , "::" , stringify ! (subsystem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_subsystem_dir > ())) . tr as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_subsystem_dir) , "::" , stringify ! (tr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_subsystem_dir > ())) . entry as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_subsystem_dir) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_subsystem_dir > ())) . ref_count as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (trace_subsystem_dir) , "::" , stringify ! (ref_count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_subsystem_dir > ())) . nr_events as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (trace_subsystem_dir) , "::" , stringify ! (nr_events))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_array_cpu { pub disabled : atomic_t , pub buffer_page : * mut :: cty :: c_void , pub entries : :: cty :: c_ulong , pub saved_latency : :: cty :: c_ulong , pub critical_start : :: cty :: c_ulong , pub critical_end : :: cty :: c_ulong , pub critical_sequence : :: cty :: c_ulong , pub nice : :: cty :: c_ulong , pub policy : :: cty :: c_ulong , pub rt_priority : :: cty :: c_ulong , pub skipped_entries : :: cty :: c_ulong , pub preempt_timestamp : _cargo_bpf_u64 , pub pid : pid_t , pub uid : kuid_t , pub comm : [:: cty :: c_char ; 16usize] , pub ftrace_ignore_pid : :: cty :: c_int , pub ignore_pid : bool_ , } # [test] fn bindgen_test_layout_trace_array_cpu () { assert_eq ! (:: core :: mem :: size_of :: < trace_array_cpu > () , 128usize , concat ! ("Size of: " , stringify ! (trace_array_cpu))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_array_cpu > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_array_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . disabled as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . buffer_page as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (buffer_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . entries as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . saved_latency as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (saved_latency))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . critical_start as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (critical_start))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . critical_end as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (critical_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . critical_sequence as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (critical_sequence))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . nice as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (nice))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . policy as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (policy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . rt_priority as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (rt_priority))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . skipped_entries as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (skipped_entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . preempt_timestamp as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (preempt_timestamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . pid as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . uid as * const _ as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . comm as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (comm))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . ftrace_ignore_pid as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (ftrace_ignore_pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_array_cpu > ())) . ignore_pid as * const _ as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (trace_array_cpu) , "::" , stringify ! (ignore_pid))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_options { pub tracer : * mut tracer , pub topts : * mut trace_option_dentry , } # [test] fn bindgen_test_layout_trace_options () { assert_eq ! (:: core :: mem :: size_of :: < trace_options > () , 16usize , concat ! ("Size of: " , stringify ! (trace_options))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_options > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_options))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_options > ())) . tracer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_options) , "::" , stringify ! (tracer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_options > ())) . topts as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_options) , "::" , stringify ! (topts))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_option_dentry { pub opt : * mut tracer_opt , pub flags : * mut tracer_flags , pub tr : * mut trace_array , pub entry : * mut dentry , } # [test] fn bindgen_test_layout_trace_option_dentry () { assert_eq ! (:: core :: mem :: size_of :: < trace_option_dentry > () , 32usize , concat ! ("Size of: " , stringify ! (trace_option_dentry))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_option_dentry > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_option_dentry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_option_dentry > ())) . opt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_option_dentry) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_option_dentry > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_option_dentry) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_option_dentry > ())) . tr as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_option_dentry) , "::" , stringify ! (tr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_option_dentry > ())) . entry as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_option_dentry) , "::" , stringify ! (entry))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_pid_list { pub pid_max : :: cty :: c_int , pub pids : * mut :: cty :: c_ulong , } # [test] fn bindgen_test_layout_trace_pid_list () { assert_eq ! (:: core :: mem :: size_of :: < trace_pid_list > () , 16usize , concat ! ("Size of: " , stringify ! (trace_pid_list))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_pid_list > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_pid_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_pid_list > ())) . pid_max as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_pid_list) , "::" , stringify ! (pid_max))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_pid_list > ())) . pids as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_pid_list) , "::" , stringify ! (pids))) ; } pub type cond_update_fn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut trace_array , arg2 : * mut :: cty :: c_void) -> bool_ > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cond_snapshot { pub cond_data : * mut :: cty :: c_void , pub update : cond_update_fn_t , } # [test] fn bindgen_test_layout_cond_snapshot () { assert_eq ! (:: core :: mem :: size_of :: < cond_snapshot > () , 16usize , concat ! ("Size of: " , stringify ! (cond_snapshot))) ; assert_eq ! (:: core :: mem :: align_of :: < cond_snapshot > () , 8usize , concat ! ("Alignment of " , stringify ! (cond_snapshot))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cond_snapshot > ())) . cond_data as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cond_snapshot) , "::" , stringify ! (cond_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < cond_snapshot > ())) . update as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cond_snapshot) , "::" , stringify ! (update))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct trace_func_repeats { pub ip : :: cty :: c_ulong , pub parent_ip : :: cty :: c_ulong , pub count : :: cty :: c_ulong , pub ts_last_call : _cargo_bpf_u64 , } # [test] fn bindgen_test_layout_trace_func_repeats () { assert_eq ! (:: core :: mem :: size_of :: < trace_func_repeats > () , 32usize , concat ! ("Size of: " , stringify ! (trace_func_repeats))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_func_repeats > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_func_repeats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_func_repeats > ())) . ip as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_func_repeats) , "::" , stringify ! (ip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_func_repeats > ())) . parent_ip as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_func_repeats) , "::" , stringify ! (parent_ip))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_func_repeats > ())) . count as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_func_repeats) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_func_repeats > ())) . ts_last_call as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_func_repeats) , "::" , stringify ! (ts_last_call))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tracer_opt { pub name : * const :: cty :: c_char , pub bit : _cargo_bpf_u32 , } # [test] fn bindgen_test_layout_tracer_opt () { assert_eq ! (:: core :: mem :: size_of :: < tracer_opt > () , 16usize , concat ! ("Size of: " , stringify ! (tracer_opt))) ; assert_eq ! (:: core :: mem :: align_of :: < tracer_opt > () , 8usize , concat ! ("Alignment of " , stringify ! (tracer_opt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer_opt > ())) . name as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tracer_opt) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer_opt > ())) . bit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tracer_opt) , "::" , stringify ! (bit))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tracer_flags { pub val : _cargo_bpf_u32 , pub opts : * mut tracer_opt , pub trace : * mut tracer , } # [test] fn bindgen_test_layout_tracer_flags () { assert_eq ! (:: core :: mem :: size_of :: < tracer_flags > () , 24usize , concat ! ("Size of: " , stringify ! (tracer_flags))) ; assert_eq ! (:: core :: mem :: align_of :: < tracer_flags > () , 8usize , concat ! ("Alignment of " , stringify ! (tracer_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer_flags > ())) . val as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tracer_flags) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer_flags > ())) . opts as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tracer_flags) , "::" , stringify ! (opts))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < tracer_flags > ())) . trace as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tracer_flags) , "::" , stringify ! (trace))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct event_subsystem { pub list : list_head , pub name : * const :: cty :: c_char , pub filter : * mut event_filter , pub ref_count : :: cty :: c_int , } # [test] fn bindgen_test_layout_event_subsystem () { assert_eq ! (:: core :: mem :: size_of :: < event_subsystem > () , 40usize , concat ! ("Size of: " , stringify ! (event_subsystem))) ; assert_eq ! (:: core :: mem :: align_of :: < event_subsystem > () , 8usize , concat ! ("Alignment of " , stringify ! (event_subsystem))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < event_subsystem > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (event_subsystem) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < event_subsystem > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (event_subsystem) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < event_subsystem > ())) . filter as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (event_subsystem) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < event_subsystem > ())) . ref_count as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (event_subsystem) , "::" , stringify ! (ref_count))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ring_buffer_iter { pub cpu_buffer : * mut ring_buffer_per_cpu , pub head : :: cty :: c_ulong , pub next_event : :: cty :: c_ulong , pub head_page : * mut buffer_page , pub cache_reader_page : * mut buffer_page , pub cache_read : :: cty :: c_ulong , pub read_stamp : _cargo_bpf_u64 , pub page_stamp : _cargo_bpf_u64 , pub event : * mut ring_buffer_event , pub missed_events : :: cty :: c_int , } # [test] fn bindgen_test_layout_ring_buffer_iter () { assert_eq ! (:: core :: mem :: size_of :: < ring_buffer_iter > () , 80usize , concat ! ("Size of: " , stringify ! (ring_buffer_iter))) ; assert_eq ! (:: core :: mem :: align_of :: < ring_buffer_iter > () , 8usize , concat ! ("Alignment of " , stringify ! (ring_buffer_iter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . cpu_buffer as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (cpu_buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . head as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . next_event as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (next_event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . head_page as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (head_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . cache_reader_page as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (cache_reader_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . cache_read as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (cache_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . read_stamp as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (read_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . page_stamp as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (page_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . event as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_iter > ())) . missed_events as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_iter) , "::" , stringify ! (missed_events))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct rb_irq_work { pub work : irq_work , pub waiters : wait_queue_head_t , pub full_waiters : wait_queue_head_t , pub waiters_pending : bool_ , pub full_waiters_pending : bool_ , pub wakeup_full : bool_ , } # [test] fn bindgen_test_layout_rb_irq_work () { assert_eq ! (:: core :: mem :: size_of :: < rb_irq_work > () , 80usize , concat ! ("Size of: " , stringify ! (rb_irq_work))) ; assert_eq ! (:: core :: mem :: align_of :: < rb_irq_work > () , 8usize , concat ! ("Alignment of " , stringify ! (rb_irq_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_irq_work > ())) . work as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rb_irq_work) , "::" , stringify ! (work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_irq_work > ())) . waiters as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rb_irq_work) , "::" , stringify ! (waiters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_irq_work > ())) . full_waiters as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rb_irq_work) , "::" , stringify ! (full_waiters))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_irq_work > ())) . waiters_pending as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rb_irq_work) , "::" , stringify ! (waiters_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_irq_work > ())) . full_waiters_pending as * const _ as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (rb_irq_work) , "::" , stringify ! (full_waiters_pending))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_irq_work > ())) . wakeup_full as * const _ as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (rb_irq_work) , "::" , stringify ! (wakeup_full))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct trace_buffer___2 { pub flags : :: cty :: c_uint , pub cpus : :: cty :: c_int , pub record_disabled : atomic_t , pub cpumask : cpumask_var_t , pub reader_lock_key : * mut lock_class_key , pub mutex : mutex , pub buffers : * mut * mut ring_buffer_per_cpu , pub node : hlist_node , pub clock : :: core :: option :: Option < unsafe extern "C" fn () -> _cargo_bpf_u64 > , pub irq_work : rb_irq_work , pub time_stamp_abs : bool_ , } # [test] fn bindgen_test_layout_trace_buffer___2 () { assert_eq ! (:: core :: mem :: size_of :: < trace_buffer___2 > () , 184usize , concat ! ("Size of: " , stringify ! (trace_buffer___2))) ; assert_eq ! (:: core :: mem :: align_of :: < trace_buffer___2 > () , 8usize , concat ! ("Alignment of " , stringify ! (trace_buffer___2))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . flags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . cpus as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (cpus))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . record_disabled as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (record_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . cpumask as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (cpumask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . reader_lock_key as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (reader_lock_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . mutex as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (mutex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . buffers as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (buffers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . node as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . clock as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (clock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . irq_work as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (irq_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < trace_buffer___2 > ())) . time_stamp_abs as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (trace_buffer___2) , "::" , stringify ! (time_stamp_abs))) ; } # [repr (C)] # [derive (Debug)] pub struct buffer_data_page { pub time_stamp : _cargo_bpf_u64 , pub commit : local_t , pub data : __IncompleteArrayField < :: cty :: c_uchar > , } # [test] fn bindgen_test_layout_buffer_data_page () { assert_eq ! (:: core :: mem :: size_of :: < buffer_data_page > () , 16usize , concat ! ("Size of: " , stringify ! (buffer_data_page))) ; assert_eq ! (:: core :: mem :: align_of :: < buffer_data_page > () , 8usize , concat ! ("Alignment of " , stringify ! (buffer_data_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_data_page > ())) . time_stamp as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (buffer_data_page) , "::" , stringify ! (time_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_data_page > ())) . commit as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (buffer_data_page) , "::" , stringify ! (commit))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_data_page > ())) . data as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (buffer_data_page) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct buffer_page { pub list : list_head , pub write : local_t , pub read : :: cty :: c_uint , pub entries : local_t , pub real_end : :: cty :: c_ulong , pub page : * mut buffer_data_page , } # [test] fn bindgen_test_layout_buffer_page () { assert_eq ! (:: core :: mem :: size_of :: < buffer_page > () , 56usize , concat ! ("Size of: " , stringify ! (buffer_page))) ; assert_eq ! (:: core :: mem :: align_of :: < buffer_page > () , 8usize , concat ! ("Alignment of " , stringify ! (buffer_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_page > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (buffer_page) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_page > ())) . write as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (buffer_page) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_page > ())) . read as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (buffer_page) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_page > ())) . entries as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (buffer_page) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_page > ())) . real_end as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (buffer_page) , "::" , stringify ! (real_end))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < buffer_page > ())) . page as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (buffer_page) , "::" , stringify ! (page))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rb_time_struct { pub time : local64_t , } # [test] fn bindgen_test_layout_rb_time_struct () { assert_eq ! (:: core :: mem :: size_of :: < rb_time_struct > () , 8usize , concat ! ("Size of: " , stringify ! (rb_time_struct))) ; assert_eq ! (:: core :: mem :: align_of :: < rb_time_struct > () , 8usize , concat ! ("Alignment of " , stringify ! (rb_time_struct))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < rb_time_struct > ())) . time as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rb_time_struct) , "::" , stringify ! (time))) ; } pub type rb_time_t = rb_time_struct ; # [repr (C)] # [derive (Copy , Clone)] pub struct ring_buffer_per_cpu { pub cpu : :: cty :: c_int , pub record_disabled : atomic_t , pub resize_disabled : atomic_t , pub buffer : * mut trace_buffer___2 , pub reader_lock : raw_spinlock_t , pub lock : arch_spinlock_t , pub lock_key : lock_class_key , pub free_page : * mut buffer_data_page , pub nr_pages : :: cty :: c_ulong , pub current_context : :: cty :: c_uint , pub pages : * mut list_head , pub head_page : * mut buffer_page , pub tail_page : * mut buffer_page , pub commit_page : * mut buffer_page , pub reader_page : * mut buffer_page , pub lost_events : :: cty :: c_ulong , pub last_overrun : :: cty :: c_ulong , pub nest : :: cty :: c_ulong , pub entries_bytes : local_t , pub entries : local_t , pub overrun : local_t , pub commit_overrun : local_t , pub dropped_events : local_t , pub committing : local_t , pub commits : local_t , pub pages_touched : local_t , pub pages_read : local_t , pub last_pages_touch : :: cty :: c_long , pub shortest_full : size_t , pub read : :: cty :: c_ulong , pub read_bytes : :: cty :: c_ulong , pub write_stamp : rb_time_t , pub before_stamp : rb_time_t , pub event_stamp : [_cargo_bpf_u64 ; 5usize] , pub read_stamp : _cargo_bpf_u64 , pub nr_pages_to_update : :: cty :: c_long , pub new_pages : list_head , pub update_pages_work : work_struct , pub update_done : completion , pub irq_work : rb_irq_work , } # [test] fn bindgen_test_layout_ring_buffer_per_cpu () { assert_eq ! (:: core :: mem :: size_of :: < ring_buffer_per_cpu > () , 456usize , concat ! ("Size of: " , stringify ! (ring_buffer_per_cpu))) ; assert_eq ! (:: core :: mem :: align_of :: < ring_buffer_per_cpu > () , 8usize , concat ! ("Alignment of " , stringify ! (ring_buffer_per_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . cpu as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . record_disabled as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (record_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . resize_disabled as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (resize_disabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . buffer as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . reader_lock as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (reader_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . lock as * const _ as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . lock_key as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (lock_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . free_page as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (free_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . nr_pages as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (nr_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . current_context as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (current_context))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . pages as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . head_page as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (head_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . tail_page as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (tail_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . commit_page as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (commit_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . reader_page as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (reader_page))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . lost_events as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (lost_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . last_overrun as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (last_overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . nest as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (nest))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . entries_bytes as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (entries_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . entries as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . overrun as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . commit_overrun as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (commit_overrun))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . dropped_events as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (dropped_events))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . committing as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (committing))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . commits as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (commits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . pages_touched as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (pages_touched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . pages_read as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (pages_read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . last_pages_touch as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (last_pages_touch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . shortest_full as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (shortest_full))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . read as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . read_bytes as * const _ as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (read_bytes))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . write_stamp as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (write_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . before_stamp as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (before_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . event_stamp as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (event_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . read_stamp as * const _ as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (read_stamp))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . nr_pages_to_update as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (nr_pages_to_update))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . new_pages as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (new_pages))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . update_pages_work as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (update_pages_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . update_done as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (update_done))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ring_buffer_per_cpu > ())) . irq_work as * const _ as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (ring_buffer_per_cpu) , "::" , stringify ! (irq_work))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct disk_stats { pub nsecs : [_cargo_bpf_u64 ; 4usize] , pub sectors : [:: cty :: c_ulong ; 4usize] , pub ios : [:: cty :: c_ulong ; 4usize] , pub merges : [:: cty :: c_ulong ; 4usize] , pub io_ticks : :: cty :: c_ulong , pub in_flight : [local_t ; 2usize] , } # [test] fn bindgen_test_layout_disk_stats () { assert_eq ! (:: core :: mem :: size_of :: < disk_stats > () , 152usize , concat ! ("Size of: " , stringify ! (disk_stats))) ; assert_eq ! (:: core :: mem :: align_of :: < disk_stats > () , 8usize , concat ! ("Alignment of " , stringify ! (disk_stats))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < disk_stats > ())) . nsecs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (disk_stats) , "::" , stringify ! (nsecs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < disk_stats > ())) . sectors as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (disk_stats) , "::" , stringify ! (sectors))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < disk_stats > ())) . ios as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (disk_stats) , "::" , stringify ! (ios))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < disk_stats > ())) . merges as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (disk_stats) , "::" , stringify ! (merges))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < disk_stats > ())) . io_ticks as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (disk_stats) , "::" , stringify ! (io_ticks))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < disk_stats > ())) . in_flight as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (disk_stats) , "::" , stringify ! (in_flight))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bio_crypt_ctx { pub bc_key : * const blk_crypto_key , pub bc_dun : [_cargo_bpf_u64 ; 4usize] , } # [test] fn bindgen_test_layout_bio_crypt_ctx () { assert_eq ! (:: core :: mem :: size_of :: < bio_crypt_ctx > () , 40usize , concat ! ("Size of: " , stringify ! (bio_crypt_ctx))) ; assert_eq ! (:: core :: mem :: align_of :: < bio_crypt_ctx > () , 8usize , concat ! ("Alignment of " , stringify ! (bio_crypt_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_crypt_ctx > ())) . bc_key as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bio_crypt_ctx) , "::" , stringify ! (bc_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bio_crypt_ctx > ())) . bc_dun as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bio_crypt_ctx) , "::" , stringify ! (bc_dun))) ; } pub type blk_mq_req_flags_t = __u32 ; # [repr (C)] # [derive (Copy , Clone)] pub struct blk_mq_ctx { pub __bindgen_anon_1 : blk_mq_ctx__bindgen_ty_1 , pub cpu : :: cty :: c_uint , pub index_hw : [:: cty :: c_ushort ; 3usize] , pub hctxs : [* mut blk_mq_hw_ctx ; 3usize] , pub rq_dispatched : [:: cty :: c_ulong ; 2usize] , pub rq_merged : :: cty :: c_ulong , pub rq_completed : [:: cty :: c_ulong ; 2usize] , pub queue : * mut request_queue , pub ctxs : * mut blk_mq_ctxs , pub kobj : kobject , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [repr (C)] # [derive (Copy , Clone)] pub struct blk_mq_ctx__bindgen_ty_1 { pub lock : spinlock_t , pub rq_lists : [list_head ; 3usize] , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , } # [test] fn bindgen_test_layout_blk_mq_ctx__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_ctx__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (blk_mq_ctx__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_ctx__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_ctx__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx__bindgen_ty_1 > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx__bindgen_ty_1) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx__bindgen_ty_1 > ())) . rq_lists as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx__bindgen_ty_1) , "::" , stringify ! (rq_lists))) ; } impl blk_mq_ctx__bindgen_ty_1 { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_blk_mq_ctx () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_ctx > () , 256usize , concat ! ("Size of: " , stringify ! (blk_mq_ctx))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_ctx > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . cpu as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . index_hw as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (index_hw))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . hctxs as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (hctxs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . rq_dispatched as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (rq_dispatched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . rq_merged as * const _ as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (rq_merged))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . rq_completed as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (rq_completed))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . queue as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . ctxs as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (ctxs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctx > ())) . kobj as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctx) , "::" , stringify ! (kobj))) ; } impl blk_mq_ctx { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sbitmap { pub depth : :: cty :: c_uint , pub shift : :: cty :: c_uint , pub map_nr : :: cty :: c_uint , pub round_robin : bool_ , pub map : * mut sbitmap_word , pub alloc_hint : * mut :: cty :: c_uint , } # [test] fn bindgen_test_layout_sbitmap () { assert_eq ! (:: core :: mem :: size_of :: < sbitmap > () , 32usize , concat ! ("Size of: " , stringify ! (sbitmap))) ; assert_eq ! (:: core :: mem :: align_of :: < sbitmap > () , 8usize , concat ! ("Alignment of " , stringify ! (sbitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap > ())) . depth as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sbitmap) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap > ())) . shift as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sbitmap) , "::" , stringify ! (shift))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap > ())) . map_nr as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sbitmap) , "::" , stringify ! (map_nr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap > ())) . round_robin as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (sbitmap) , "::" , stringify ! (round_robin))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap > ())) . map as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sbitmap) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap > ())) . alloc_hint as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sbitmap) , "::" , stringify ! (alloc_hint))) ; } # [repr (C)] pub struct blk_mq_hw_ctx { pub __bindgen_anon_1 : blk_mq_hw_ctx__bindgen_ty_1 , pub run_work : delayed_work , pub cpumask : cpumask_var_t , pub next_cpu : :: cty :: c_int , pub next_cpu_batch : :: cty :: c_int , pub flags : :: cty :: c_ulong , pub sched_data : * mut :: cty :: c_void , pub queue : * mut request_queue , pub fq : * mut blk_flush_queue , pub driver_data : * mut :: cty :: c_void , pub ctx_map : sbitmap , pub dispatch_from : * mut blk_mq_ctx , pub dispatch_busy : :: cty :: c_uint , pub type_ : :: cty :: c_ushort , pub nr_ctx : :: cty :: c_ushort , pub ctxs : * mut * mut blk_mq_ctx , pub dispatch_wait_lock : spinlock_t , pub dispatch_wait : wait_queue_entry_t , pub wait_index : atomic_t , pub tags : * mut blk_mq_tags , pub sched_tags : * mut blk_mq_tags , pub queued : :: cty :: c_ulong , pub run : :: cty :: c_ulong , pub dispatched : [:: cty :: c_ulong ; 7usize] , pub numa_node : :: cty :: c_uint , pub queue_num : :: cty :: c_uint , pub nr_active : atomic_t , pub cpuhp_online : hlist_node , pub cpuhp_dead : hlist_node , pub kobj : kobject , pub poll_considered : :: cty :: c_ulong , pub poll_invoked : :: cty :: c_ulong , pub poll_success : :: cty :: c_ulong , pub debugfs_dir : * mut dentry , pub sched_debugfs_dir : * mut dentry , pub hctx_list : list_head , pub srcu : __IncompleteArrayField < srcu_struct > , } # [repr (C)] # [derive (Copy , Clone)] pub struct blk_mq_hw_ctx__bindgen_ty_1 { pub lock : spinlock_t , pub dispatch : list_head , pub state : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [test] fn bindgen_test_layout_blk_mq_hw_ctx__bindgen_ty_1 () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_hw_ctx__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (blk_mq_hw_ctx__bindgen_ty_1))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_hw_ctx__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_hw_ctx__bindgen_ty_1))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx__bindgen_ty_1 > ())) . lock as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx__bindgen_ty_1) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx__bindgen_ty_1 > ())) . dispatch as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx__bindgen_ty_1) , "::" , stringify ! (dispatch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx__bindgen_ty_1 > ())) . state as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx__bindgen_ty_1) , "::" , stringify ! (state))) ; } impl blk_mq_hw_ctx__bindgen_ty_1 { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [test] fn bindgen_test_layout_blk_mq_hw_ctx () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_hw_ctx > () , 576usize , concat ! ("Size of: " , stringify ! (blk_mq_hw_ctx))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_hw_ctx > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_hw_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . run_work as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (run_work))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . cpumask as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (cpumask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . next_cpu as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (next_cpu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . next_cpu_batch as * const _ as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (next_cpu_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . flags as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . sched_data as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (sched_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . queue as * const _ as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . fq as * const _ as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (fq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . driver_data as * const _ as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (driver_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . ctx_map as * const _ as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (ctx_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . dispatch_from as * const _ as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (dispatch_from))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . dispatch_busy as * const _ as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (dispatch_busy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . type_ as * const _ as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . nr_ctx as * const _ as usize } , 254usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (nr_ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . ctxs as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (ctxs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . dispatch_wait_lock as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (dispatch_wait_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . dispatch_wait as * const _ as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (dispatch_wait))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . wait_index as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (wait_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . tags as * const _ as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . sched_tags as * const _ as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (sched_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . queued as * const _ as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (queued))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . run as * const _ as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . dispatched as * const _ as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (dispatched))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . numa_node as * const _ as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (numa_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . queue_num as * const _ as usize } , 412usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (queue_num))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . nr_active as * const _ as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (nr_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . cpuhp_online as * const _ as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (cpuhp_online))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . cpuhp_dead as * const _ as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (cpuhp_dead))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . kobj as * const _ as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . poll_considered as * const _ as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (poll_considered))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . poll_invoked as * const _ as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (poll_invoked))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . poll_success as * const _ as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (poll_success))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . debugfs_dir as * const _ as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (debugfs_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . sched_debugfs_dir as * const _ as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (sched_debugfs_dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . hctx_list as * const _ as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (hctx_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_hw_ctx > ())) . srcu as * const _ as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (blk_mq_hw_ctx) , "::" , stringify ! (srcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_mq_alloc_data { pub q : * mut request_queue , pub flags : blk_mq_req_flags_t , pub shallow_depth : :: cty :: c_uint , pub cmd_flags : :: cty :: c_uint , pub ctx : * mut blk_mq_ctx , pub hctx : * mut blk_mq_hw_ctx , } # [test] fn bindgen_test_layout_blk_mq_alloc_data () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_alloc_data > () , 40usize , concat ! ("Size of: " , stringify ! (blk_mq_alloc_data))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_alloc_data > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_alloc_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_alloc_data > ())) . q as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_alloc_data) , "::" , stringify ! (q))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_alloc_data > ())) . flags as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_alloc_data) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_alloc_data > ())) . shallow_depth as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (blk_mq_alloc_data) , "::" , stringify ! (shallow_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_alloc_data > ())) . cmd_flags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_mq_alloc_data) , "::" , stringify ! (cmd_flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_alloc_data > ())) . ctx as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_mq_alloc_data) , "::" , stringify ! (ctx))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_alloc_data > ())) . hctx as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_mq_alloc_data) , "::" , stringify ! (hctx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_stat_callback { pub list : list_head , pub timer : timer_list , pub cpu_stat : * mut blk_rq_stat , pub bucket_fn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * const request) -> :: cty :: c_int > , pub buckets : :: cty :: c_uint , pub stat : * mut blk_rq_stat , pub timer_fn : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut blk_stat_callback) > , pub data : * mut :: cty :: c_void , pub rcu : callback_head , } # [test] fn bindgen_test_layout_blk_stat_callback () { assert_eq ! (:: core :: mem :: size_of :: < blk_stat_callback > () , 120usize , concat ! ("Size of: " , stringify ! (blk_stat_callback))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_stat_callback > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_stat_callback))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . timer as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (timer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . cpu_stat as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (cpu_stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . bucket_fn as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (bucket_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . buckets as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (buckets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . stat as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (stat))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . timer_fn as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (timer_fn))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . data as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_stat_callback > ())) . rcu as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (blk_stat_callback) , "::" , stringify ! (rcu))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_trace { pub trace_state : :: cty :: c_int , pub rchan : * mut rchan , pub sequence : * mut :: cty :: c_ulong , pub msg_data : * mut :: cty :: c_uchar , pub act_mask : _cargo_bpf_u16 , pub start_lba : _cargo_bpf_u64 , pub end_lba : _cargo_bpf_u64 , pub pid : _cargo_bpf_u32 , pub dev : _cargo_bpf_u32 , pub dir : * mut dentry , pub running_list : list_head , pub dropped : atomic_t , } # [test] fn bindgen_test_layout_blk_trace () { assert_eq ! (:: core :: mem :: size_of :: < blk_trace > () , 96usize , concat ! ("Size of: " , stringify ! (blk_trace))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_trace > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_trace))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . trace_state as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (trace_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . rchan as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (rchan))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . sequence as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (sequence))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . msg_data as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (msg_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . act_mask as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (act_mask))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . start_lba as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (start_lba))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . end_lba as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (end_lba))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . pid as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . dev as * const _ as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (dev))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . dir as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . running_list as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (running_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_trace > ())) . dropped as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (blk_trace) , "::" , stringify ! (dropped))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct blk_flush_queue { pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 1usize] > , pub rq_status : blk_status_t , pub flush_pending_since : :: cty :: c_ulong , pub flush_queue : [list_head ; 2usize] , pub flush_data_in_flight : list_head , pub flush_rq : * mut request , pub mq_flush_lock : spinlock_t , } # [test] fn bindgen_test_layout_blk_flush_queue () { assert_eq ! (:: core :: mem :: size_of :: < blk_flush_queue > () , 80usize , concat ! ("Size of: " , stringify ! (blk_flush_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_flush_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_flush_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_flush_queue > ())) . rq_status as * const _ as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (blk_flush_queue) , "::" , stringify ! (rq_status))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_flush_queue > ())) . flush_pending_since as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_flush_queue) , "::" , stringify ! (flush_pending_since))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_flush_queue > ())) . flush_queue as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_flush_queue) , "::" , stringify ! (flush_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_flush_queue > ())) . flush_data_in_flight as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (blk_flush_queue) , "::" , stringify ! (flush_data_in_flight))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_flush_queue > ())) . flush_rq as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_flush_queue) , "::" , stringify ! (flush_rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_flush_queue > ())) . mq_flush_lock as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (blk_flush_queue) , "::" , stringify ! (mq_flush_lock))) ; } impl blk_flush_queue { # [inline] pub fn flush_pending_idx (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (0usize , 1u8) as u32) } } # [inline] pub fn set_flush_pending_idx (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 1u8 , val as u64) } } # [inline] pub fn flush_running_idx (& self) -> :: cty :: c_uint { unsafe { :: core :: mem :: transmute (self . _bitfield_1 . get (1usize , 1u8) as u32) } } # [inline] pub fn set_flush_running_idx (& mut self , val : :: cty :: c_uint) { unsafe { let val : u32 = :: core :: mem :: transmute (val) ; self . _bitfield_1 . set (1usize , 1u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (flush_pending_idx : :: cty :: c_uint , flush_running_idx : :: cty :: c_uint) -> __BindgenBitfieldUnit < [u8 ; 1usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 1usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 1u8 , { let flush_pending_idx : u32 = unsafe { :: core :: mem :: transmute (flush_pending_idx) } ; flush_pending_idx as u64 }) ; __bindgen_bitfield_unit . set (1usize , 1u8 , { let flush_running_idx : u32 = unsafe { :: core :: mem :: transmute (flush_running_idx) } ; flush_running_idx as u64 }) ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_mq_queue_map { pub mq_map : * mut :: cty :: c_uint , pub nr_queues : :: cty :: c_uint , pub queue_offset : :: cty :: c_uint , } # [test] fn bindgen_test_layout_blk_mq_queue_map () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_queue_map > () , 16usize , concat ! ("Size of: " , stringify ! (blk_mq_queue_map))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_queue_map > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_queue_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_queue_map > ())) . mq_map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_queue_map) , "::" , stringify ! (mq_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_queue_map > ())) . nr_queues as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_queue_map) , "::" , stringify ! (nr_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_queue_map > ())) . queue_offset as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (blk_mq_queue_map) , "::" , stringify ! (queue_offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sbitmap_queue { pub sb : sbitmap , pub wake_batch : :: cty :: c_uint , pub wake_index : atomic_t , pub ws : * mut sbq_wait_state , pub ws_active : atomic_t , pub min_shallow_depth : :: cty :: c_uint , } # [test] fn bindgen_test_layout_sbitmap_queue () { assert_eq ! (:: core :: mem :: size_of :: < sbitmap_queue > () , 56usize , concat ! ("Size of: " , stringify ! (sbitmap_queue))) ; assert_eq ! (:: core :: mem :: align_of :: < sbitmap_queue > () , 8usize , concat ! ("Alignment of " , stringify ! (sbitmap_queue))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_queue > ())) . sb as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sbitmap_queue) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_queue > ())) . wake_batch as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sbitmap_queue) , "::" , stringify ! (wake_batch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_queue > ())) . wake_index as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (sbitmap_queue) , "::" , stringify ! (wake_index))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_queue > ())) . ws as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sbitmap_queue) , "::" , stringify ! (ws))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_queue > ())) . ws_active as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (sbitmap_queue) , "::" , stringify ! (ws_active))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_queue > ())) . min_shallow_depth as * const _ as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (sbitmap_queue) , "::" , stringify ! (min_shallow_depth))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct blk_mq_tag_set { pub map : [blk_mq_queue_map ; 3usize] , pub nr_maps : :: cty :: c_uint , pub ops : * const blk_mq_ops , pub nr_hw_queues : :: cty :: c_uint , pub queue_depth : :: cty :: c_uint , pub reserved_tags : :: cty :: c_uint , pub cmd_size : :: cty :: c_uint , pub numa_node : :: cty :: c_int , pub timeout : :: cty :: c_uint , pub flags : :: cty :: c_uint , pub driver_data : * mut :: cty :: c_void , pub active_queues_shared_sbitmap : atomic_t , pub __bitmap_tags : sbitmap_queue , pub __breserved_tags : sbitmap_queue , pub tags : * mut * mut blk_mq_tags , pub tag_list_lock : mutex , pub tag_list : list_head , } # [test] fn bindgen_test_layout_blk_mq_tag_set () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_tag_set > () , 280usize , concat ! ("Size of: " , stringify ! (blk_mq_tag_set))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_tag_set > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_tag_set))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . nr_maps as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (nr_maps))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . ops as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . nr_hw_queues as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (nr_hw_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . queue_depth as * const _ as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (queue_depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . reserved_tags as * const _ as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (reserved_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . cmd_size as * const _ as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (cmd_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . numa_node as * const _ as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (numa_node))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . timeout as * const _ as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . flags as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . driver_data as * const _ as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (driver_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . active_queues_shared_sbitmap as * const _ as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (active_queues_shared_sbitmap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . __bitmap_tags as * const _ as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (__bitmap_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . __breserved_tags as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (__breserved_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . tags as * const _ as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . tag_list_lock as * const _ as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (tag_list_lock))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tag_set > ())) . tag_list as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tag_set) , "::" , stringify ! (tag_list))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sbitmap_word { pub depth : :: cty :: c_ulong , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 56usize] > , pub word : :: cty :: c_ulong , pub _bitfield_align_2 : [u8 ; 0] , pub _bitfield_2 : __BindgenBitfieldUnit < [u8 ; 56usize] > , pub cleared : :: cty :: c_ulong , pub _bitfield_align_3 : [u8 ; 0] , pub _bitfield_3 : __BindgenBitfieldUnit < [u8 ; 56usize] > , } # [test] fn bindgen_test_layout_sbitmap_word () { assert_eq ! (:: core :: mem :: size_of :: < sbitmap_word > () , 192usize , concat ! ("Size of: " , stringify ! (sbitmap_word))) ; assert_eq ! (:: core :: mem :: align_of :: < sbitmap_word > () , 8usize , concat ! ("Alignment of " , stringify ! (sbitmap_word))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_word > ())) . depth as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sbitmap_word) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_word > ())) . word as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (sbitmap_word) , "::" , stringify ! (word))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbitmap_word > ())) . cleared as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (sbitmap_word) , "::" , stringify ! (cleared))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct sbq_wait_state { pub wait_cnt : atomic_t , pub wait : wait_queue_head_t , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 32usize] > , } # [test] fn bindgen_test_layout_sbq_wait_state () { assert_eq ! (:: core :: mem :: size_of :: < sbq_wait_state > () , 64usize , concat ! ("Size of: " , stringify ! (sbq_wait_state))) ; assert_eq ! (:: core :: mem :: align_of :: < sbq_wait_state > () , 8usize , concat ! ("Alignment of " , stringify ! (sbq_wait_state))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbq_wait_state > ())) . wait_cnt as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sbq_wait_state) , "::" , stringify ! (wait_cnt))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < sbq_wait_state > ())) . wait as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sbq_wait_state) , "::" , stringify ! (wait))) ; } impl sbq_wait_state { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 32usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 32usize] > = Default :: default () ; __bindgen_bitfield_unit } } # [repr (C)] # [derive (Copy , Clone)] pub struct blk_mq_tags { pub nr_tags : :: cty :: c_uint , pub nr_reserved_tags : :: cty :: c_uint , pub active_queues : atomic_t , pub bitmap_tags : * mut sbitmap_queue , pub breserved_tags : * mut sbitmap_queue , pub __bitmap_tags : sbitmap_queue , pub __breserved_tags : sbitmap_queue , pub rqs : * mut * mut request , pub static_rqs : * mut * mut request , pub page_list : list_head , pub lock : spinlock_t , } # [test] fn bindgen_test_layout_blk_mq_tags () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_tags > () , 184usize , concat ! ("Size of: " , stringify ! (blk_mq_tags))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_tags > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . nr_tags as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (nr_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . nr_reserved_tags as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (nr_reserved_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . active_queues as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (active_queues))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . bitmap_tags as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (bitmap_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . breserved_tags as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (breserved_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . __bitmap_tags as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (__bitmap_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . __breserved_tags as * const _ as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (__breserved_tags))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . rqs as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (rqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . static_rqs as * const _ as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (static_rqs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . page_list as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (page_list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_tags > ())) . lock as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (blk_mq_tags) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_mq_queue_data { pub rq : * mut request , pub last : bool_ , } # [test] fn bindgen_test_layout_blk_mq_queue_data () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_queue_data > () , 16usize , concat ! ("Size of: " , stringify ! (blk_mq_queue_data))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_queue_data > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_queue_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_queue_data > ())) . rq as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_queue_data) , "::" , stringify ! (rq))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_queue_data > ())) . last as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_mq_queue_data) , "::" , stringify ! (last))) ; } pub const blk_crypto_mode_num_BLK_ENCRYPTION_MODE_INVALID : blk_crypto_mode_num = 0 ; pub const blk_crypto_mode_num_BLK_ENCRYPTION_MODE_AES_256_XTS : blk_crypto_mode_num = 1 ; pub const blk_crypto_mode_num_BLK_ENCRYPTION_MODE_AES_128_CBC_ESSIV : blk_crypto_mode_num = 2 ; pub const blk_crypto_mode_num_BLK_ENCRYPTION_MODE_ADIANTUM : blk_crypto_mode_num = 3 ; pub const blk_crypto_mode_num_BLK_ENCRYPTION_MODE_MAX : blk_crypto_mode_num = 4 ; pub type blk_crypto_mode_num = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_crypto_config { pub crypto_mode : blk_crypto_mode_num , pub data_unit_size : :: cty :: c_uint , pub dun_bytes : :: cty :: c_uint , } # [test] fn bindgen_test_layout_blk_crypto_config () { assert_eq ! (:: core :: mem :: size_of :: < blk_crypto_config > () , 12usize , concat ! ("Size of: " , stringify ! (blk_crypto_config))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_crypto_config > () , 4usize , concat ! ("Alignment of " , stringify ! (blk_crypto_config))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_config > ())) . crypto_mode as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_config) , "::" , stringify ! (crypto_mode))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_config > ())) . data_unit_size as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_config) , "::" , stringify ! (data_unit_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_config > ())) . dun_bytes as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_config) , "::" , stringify ! (dun_bytes))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_crypto_key { pub crypto_cfg : blk_crypto_config , pub data_unit_size_bits : :: cty :: c_uint , pub size : :: cty :: c_uint , pub raw : [_cargo_bpf_u8 ; 64usize] , } # [test] fn bindgen_test_layout_blk_crypto_key () { assert_eq ! (:: core :: mem :: size_of :: < blk_crypto_key > () , 84usize , concat ! ("Size of: " , stringify ! (blk_crypto_key))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_crypto_key > () , 4usize , concat ! ("Alignment of " , stringify ! (blk_crypto_key))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_key > ())) . crypto_cfg as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_key) , "::" , stringify ! (crypto_cfg))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_key > ())) . data_unit_size_bits as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_key) , "::" , stringify ! (data_unit_size_bits))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_key > ())) . size as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_key) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_crypto_key > ())) . raw as * const _ as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (blk_crypto_key) , "::" , stringify ! (raw))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct blk_mq_ctxs { pub kobj : kobject , pub queue_ctx : * mut blk_mq_ctx , } # [test] fn bindgen_test_layout_blk_mq_ctxs () { assert_eq ! (:: core :: mem :: size_of :: < blk_mq_ctxs > () , 72usize , concat ! ("Size of: " , stringify ! (blk_mq_ctxs))) ; assert_eq ! (:: core :: mem :: align_of :: < blk_mq_ctxs > () , 8usize , concat ! ("Alignment of " , stringify ! (blk_mq_ctxs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctxs > ())) . kobj as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctxs) , "::" , stringify ! (kobj))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < blk_mq_ctxs > ())) . queue_ctx as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (blk_mq_ctxs) , "::" , stringify ! (queue_ctx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ftrace_event_field { pub link : list_head , pub name : * const :: cty :: c_char , pub type_ : * const :: cty :: c_char , pub filter_type : :: cty :: c_int , pub offset : :: cty :: c_int , pub size : :: cty :: c_int , pub is_signed : :: cty :: c_int , } # [test] fn bindgen_test_layout_ftrace_event_field () { assert_eq ! (:: core :: mem :: size_of :: < ftrace_event_field > () , 48usize , concat ! ("Size of: " , stringify ! (ftrace_event_field))) ; assert_eq ! (:: core :: mem :: align_of :: < ftrace_event_field > () , 8usize , concat ! ("Alignment of " , stringify ! (ftrace_event_field))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . link as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . name as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . type_ as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . filter_type as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (filter_type))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . offset as * const _ as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . size as * const _ as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < ftrace_event_field > ())) . is_signed as * const _ as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (ftrace_event_field) , "::" , stringify ! (is_signed))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct prog_entry { pub target : :: cty :: c_int , pub when_to_branch : :: cty :: c_int , pub pred : * mut filter_pred , } # [test] fn bindgen_test_layout_prog_entry () { assert_eq ! (:: core :: mem :: size_of :: < prog_entry > () , 16usize , concat ! ("Size of: " , stringify ! (prog_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < prog_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (prog_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prog_entry > ())) . target as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (prog_entry) , "::" , stringify ! (target))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prog_entry > ())) . when_to_branch as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (prog_entry) , "::" , stringify ! (when_to_branch))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < prog_entry > ())) . pred as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (prog_entry) , "::" , stringify ! (pred))) ; } pub type filter_pred_fn_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut filter_pred , arg2 : * mut :: cty :: c_void) -> :: cty :: c_int > ; pub type regex_match_func = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_char , arg2 : * mut regex , arg3 : :: cty :: c_int) -> :: cty :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct regex { pub pattern : [:: cty :: c_char ; 256usize] , pub len : :: cty :: c_int , pub field_len : :: cty :: c_int , pub match_ : regex_match_func , } # [test] fn bindgen_test_layout_regex () { assert_eq ! (:: core :: mem :: size_of :: < regex > () , 272usize , concat ! ("Size of: " , stringify ! (regex))) ; assert_eq ! (:: core :: mem :: align_of :: < regex > () , 8usize , concat ! ("Alignment of " , stringify ! (regex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < regex > ())) . pattern as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (regex) , "::" , stringify ! (pattern))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < regex > ())) . len as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (regex) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < regex > ())) . field_len as * const _ as usize } , 260usize , concat ! ("Offset of field: " , stringify ! (regex) , "::" , stringify ! (field_len))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < regex > ())) . match_ as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (regex) , "::" , stringify ! (match_))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct filter_pred { pub fn_ : filter_pred_fn_t , pub val : _cargo_bpf_u64 , pub regex : regex , pub ops : * mut :: cty :: c_ushort , pub field : * mut ftrace_event_field , pub offset : :: cty :: c_int , pub not : :: cty :: c_int , pub op : :: cty :: c_int , } # [test] fn bindgen_test_layout_filter_pred () { assert_eq ! (:: core :: mem :: size_of :: < filter_pred > () , 320usize , concat ! ("Size of: " , stringify ! (filter_pred))) ; assert_eq ! (:: core :: mem :: align_of :: < filter_pred > () , 8usize , concat ! ("Alignment of " , stringify ! (filter_pred))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . fn_ as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (fn_))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . val as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . regex as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (regex))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . ops as * const _ as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . field as * const _ as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (field))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . offset as * const _ as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . not as * const _ as usize } , 308usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (not))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < filter_pred > ())) . op as * const _ as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (filter_pred) , "::" , stringify ! (op))) ; } pub const BPF_F_INDEX_MASK : :: cty :: c_uint = 4294967295 ; pub const BPF_F_CURRENT_CPU : :: cty :: c_uint = 4294967295 ; pub const BPF_F_CTXLEN_MASK : :: cty :: c_uint = 0 ; pub type _bindgen_ty_161 = :: cty :: c_uint ; pub const BPF_F_GET_BRANCH_RECORDS_SIZE : :: cty :: c_uint = 1 ; pub type _bindgen_ty_162 = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_perf_event_value { pub counter : __u64 , pub enabled : __u64 , pub running : __u64 , } # [test] fn bindgen_test_layout_bpf_perf_event_value () { assert_eq ! (:: core :: mem :: size_of :: < bpf_perf_event_value > () , 24usize , concat ! ("Size of: " , stringify ! (bpf_perf_event_value))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_perf_event_value > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_perf_event_value))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_value > ())) . counter as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_value) , "::" , stringify ! (counter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_value > ())) . enabled as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_value) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_value > ())) . running as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_value) , "::" , stringify ! (running))) ; } # [repr (C)] # [derive (Debug)] pub struct bpf_raw_tracepoint_args { pub args : __IncompleteArrayField < __u64 > , } # [test] fn bindgen_test_layout_bpf_raw_tracepoint_args () { assert_eq ! (:: core :: mem :: size_of :: < bpf_raw_tracepoint_args > () , 0usize , concat ! ("Size of: " , stringify ! (bpf_raw_tracepoint_args))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_raw_tracepoint_args > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_raw_tracepoint_args))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_raw_tracepoint_args > ())) . args as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_raw_tracepoint_args) , "::" , stringify ! (args))) ; } pub const bpf_task_fd_type_BPF_FD_TYPE_RAW_TRACEPOINT : bpf_task_fd_type = 0 ; pub const bpf_task_fd_type_BPF_FD_TYPE_TRACEPOINT : bpf_task_fd_type = 1 ; pub const bpf_task_fd_type_BPF_FD_TYPE_KPROBE : bpf_task_fd_type = 2 ; pub const bpf_task_fd_type_BPF_FD_TYPE_KRETPROBE : bpf_task_fd_type = 3 ; pub const bpf_task_fd_type_BPF_FD_TYPE_UPROBE : bpf_task_fd_type = 4 ; pub const bpf_task_fd_type_BPF_FD_TYPE_URETPROBE : bpf_task_fd_type = 5 ; pub type bpf_task_fd_type = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct btf_ptr { pub ptr : * mut :: cty :: c_void , pub type_id : __u32 , pub flags : __u32 , } # [test] fn bindgen_test_layout_btf_ptr () { assert_eq ! (:: core :: mem :: size_of :: < btf_ptr > () , 16usize , concat ! ("Size of: " , stringify ! (btf_ptr))) ; assert_eq ! (:: core :: mem :: align_of :: < btf_ptr > () , 8usize , concat ! ("Alignment of " , stringify ! (btf_ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_ptr > ())) . ptr as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (btf_ptr) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_ptr > ())) . type_id as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (btf_ptr) , "::" , stringify ! (type_id))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < btf_ptr > ())) . flags as * const _ as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (btf_ptr) , "::" , stringify ! (flags))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_local_storage { pub cache : [* mut bpf_local_storage_data ; 16usize] , pub list : hlist_head , pub owner : * mut :: cty :: c_void , pub rcu : callback_head , pub lock : raw_spinlock_t , } # [test] fn bindgen_test_layout_bpf_local_storage () { assert_eq ! (:: core :: mem :: size_of :: < bpf_local_storage > () , 168usize , concat ! ("Size of: " , stringify ! (bpf_local_storage))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_local_storage > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_local_storage))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage > ())) . cache as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage > ())) . list as * const _ as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage > ())) . owner as * const _ as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage) , "::" , stringify ! (owner))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage > ())) . rcu as * const _ as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage > ())) . lock as * const _ as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_local_storage_map { pub map : bpf_map , pub buckets : * mut bpf_local_storage_map_bucket , pub bucket_log : _cargo_bpf_u32 , pub elem_size : _cargo_bpf_u16 , pub cache_idx : _cargo_bpf_u16 , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 48usize] > , } # [test] fn bindgen_test_layout_bpf_local_storage_map () { assert_eq ! (:: core :: mem :: size_of :: < bpf_local_storage_map > () , 320usize , concat ! ("Size of: " , stringify ! (bpf_local_storage_map))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_local_storage_map > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_local_storage_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map > ())) . map as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map > ())) . buckets as * const _ as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map) , "::" , stringify ! (buckets))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map > ())) . bucket_log as * const _ as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map) , "::" , stringify ! (bucket_log))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map > ())) . elem_size as * const _ as usize } , 268usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map) , "::" , stringify ! (elem_size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map > ())) . cache_idx as * const _ as usize } , 270usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map) , "::" , stringify ! (cache_idx))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_event_entry { pub event : * mut perf_event , pub perf_file : * mut file , pub map_file : * mut file , pub rcu : callback_head , } # [test] fn bindgen_test_layout_bpf_event_entry () { assert_eq ! (:: core :: mem :: size_of :: < bpf_event_entry > () , 40usize , concat ! ("Size of: " , stringify ! (bpf_event_entry))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_event_entry > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_event_entry))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_event_entry > ())) . event as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_event_entry) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_event_entry > ())) . perf_file as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_event_entry) , "::" , stringify ! (perf_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_event_entry > ())) . map_file as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_event_entry) , "::" , stringify ! (map_file))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_event_entry > ())) . rcu as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (bpf_event_entry) , "::" , stringify ! (rcu))) ; } pub type bpf_ctx_copy_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : * const :: cty :: c_void , arg3 : :: cty :: c_ulong , arg4 : :: cty :: c_ulong) -> :: cty :: c_ulong > ; pub type bpf_user_pt_regs_t = pt_regs ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_perf_event_data { pub regs : bpf_user_pt_regs_t , pub sample_period : __u64 , pub addr : __u64 , } # [test] fn bindgen_test_layout_bpf_perf_event_data () { assert_eq ! (:: core :: mem :: size_of :: < bpf_perf_event_data > () , 184usize , concat ! ("Size of: " , stringify ! (bpf_perf_event_data))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_perf_event_data > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_perf_event_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_data > ())) . regs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_data) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_data > ())) . sample_period as * const _ as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_data) , "::" , stringify ! (sample_period))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_data > ())) . addr as * const _ as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_data) , "::" , stringify ! (addr))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_perf_event_data_kern { pub regs : * mut bpf_user_pt_regs_t , pub data : * mut perf_sample_data , pub event : * mut perf_event , } # [test] fn bindgen_test_layout_bpf_perf_event_data_kern () { assert_eq ! (:: core :: mem :: size_of :: < bpf_perf_event_data_kern > () , 24usize , concat ! ("Size of: " , stringify ! (bpf_perf_event_data_kern))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_perf_event_data_kern > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_perf_event_data_kern))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_data_kern > ())) . regs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_data_kern) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_data_kern > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_data_kern) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_perf_event_data_kern > ())) . event as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bpf_perf_event_data_kern) , "::" , stringify ! (event))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_local_storage_map_bucket { pub list : hlist_head , pub lock : raw_spinlock_t , } # [test] fn bindgen_test_layout_bpf_local_storage_map_bucket () { assert_eq ! (:: core :: mem :: size_of :: < bpf_local_storage_map_bucket > () , 16usize , concat ! ("Size of: " , stringify ! (bpf_local_storage_map_bucket))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_local_storage_map_bucket > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_local_storage_map_bucket))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map_bucket > ())) . list as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map_bucket) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_map_bucket > ())) . lock as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_map_bucket) , "::" , stringify ! (lock))) ; } # [repr (C)] # [derive (Debug)] pub struct bpf_local_storage_data { pub smap : * mut bpf_local_storage_map , pub data : __IncompleteArrayField < _cargo_bpf_u8 > , } # [test] fn bindgen_test_layout_bpf_local_storage_data () { assert_eq ! (:: core :: mem :: size_of :: < bpf_local_storage_data > () , 8usize , concat ! ("Size of: " , stringify ! (bpf_local_storage_data))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_local_storage_data > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_local_storage_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_data > ())) . smap as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_data) , "::" , stringify ! (smap))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_local_storage_data > ())) . data as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_local_storage_data) , "::" , stringify ! (data))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_trace_module { pub module : * mut module , pub list : list_head , } # [test] fn bindgen_test_layout_bpf_trace_module () { assert_eq ! (:: core :: mem :: size_of :: < bpf_trace_module > () , 24usize , concat ! ("Size of: " , stringify ! (bpf_trace_module))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_trace_module > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_trace_module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trace_module > ())) . module as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_trace_module) , "::" , stringify ! (module))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trace_module > ())) . list as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bpf_trace_module) , "::" , stringify ! (list))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct bpf_trace_sample_data { pub sds : [perf_sample_data ; 3usize] , } # [test] fn bindgen_test_layout_bpf_trace_sample_data () { assert_eq ! (:: core :: mem :: size_of :: < bpf_trace_sample_data > () , 768usize , concat ! ("Size of: " , stringify ! (bpf_trace_sample_data))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_trace_sample_data > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_trace_sample_data))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_trace_sample_data > ())) . sds as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_trace_sample_data) , "::" , stringify ! (sds))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_nested_pt_regs { pub regs : [pt_regs ; 3usize] , } # [test] fn bindgen_test_layout_bpf_nested_pt_regs () { assert_eq ! (:: core :: mem :: size_of :: < bpf_nested_pt_regs > () , 504usize , concat ! ("Size of: " , stringify ! (bpf_nested_pt_regs))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_nested_pt_regs > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_nested_pt_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_nested_pt_regs > ())) . regs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_nested_pt_regs) , "::" , stringify ! (regs))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct bpf_raw_tp_regs { pub regs : [pt_regs ; 3usize] , } # [test] fn bindgen_test_layout_bpf_raw_tp_regs () { assert_eq ! (:: core :: mem :: size_of :: < bpf_raw_tp_regs > () , 504usize , concat ! ("Size of: " , stringify ! (bpf_raw_tp_regs))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_raw_tp_regs > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_raw_tp_regs))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_raw_tp_regs > ())) . regs as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_raw_tp_regs) , "::" , stringify ! (regs))) ; } pub const uprobe_filter_ctx_UPROBE_FILTER_REGISTER : uprobe_filter_ctx = 0 ; pub const uprobe_filter_ctx_UPROBE_FILTER_UNREGISTER : uprobe_filter_ctx = 1 ; pub const uprobe_filter_ctx_UPROBE_FILTER_MMAP : uprobe_filter_ctx = 2 ; pub type uprobe_filter_ctx = :: cty :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct uprobe_consumer { pub handler : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut uprobe_consumer , arg2 : * mut pt_regs) -> :: cty :: c_int > , pub ret_handler : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut uprobe_consumer , arg2 : :: cty :: c_ulong , arg3 : * mut pt_regs) -> :: cty :: c_int > , pub filter : :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut uprobe_consumer , arg2 : uprobe_filter_ctx , arg3 : * mut mm_struct) -> bool_ > , pub next : * mut uprobe_consumer , } # [test] fn bindgen_test_layout_uprobe_consumer () { assert_eq ! (:: core :: mem :: size_of :: < uprobe_consumer > () , 32usize , concat ! ("Size of: " , stringify ! (uprobe_consumer))) ; assert_eq ! (:: core :: mem :: align_of :: < uprobe_consumer > () , 8usize , concat ! ("Alignment of " , stringify ! (uprobe_consumer))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_consumer > ())) . handler as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (uprobe_consumer) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_consumer > ())) . ret_handler as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (uprobe_consumer) , "::" , stringify ! (ret_handler))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_consumer > ())) . filter as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (uprobe_consumer) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < uprobe_consumer > ())) . next as * const _ as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (uprobe_consumer) , "::" , stringify ! (next))) ; } # [repr (C)] # [derive (Debug)] pub struct bucket_table { pub size : :: cty :: c_uint , pub nest : :: cty :: c_uint , pub hash_rnd : _cargo_bpf_u32 , pub walkers : list_head , pub rcu : callback_head , pub future_tbl : * mut bucket_table , pub dep_map : lockdep_map , pub _bitfield_align_1 : [u8 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 8usize] > , pub buckets : __IncompleteArrayField < * mut rhash_lock_head > , } # [test] fn bindgen_test_layout_bucket_table () { assert_eq ! (:: core :: mem :: size_of :: < bucket_table > () , 64usize , concat ! ("Size of: " , stringify ! (bucket_table))) ; assert_eq ! (:: core :: mem :: align_of :: < bucket_table > () , 8usize , concat ! ("Alignment of " , stringify ! (bucket_table))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . size as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . nest as * const _ as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (nest))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . hash_rnd as * const _ as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (hash_rnd))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . walkers as * const _ as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (walkers))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . rcu as * const _ as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (rcu))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . future_tbl as * const _ as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (future_tbl))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . dep_map as * const _ as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (dep_map))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bucket_table > ())) . buckets as * const _ as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (bucket_table) , "::" , stringify ! (buckets))) ; } impl bucket_table { # [inline] pub fn new_bitfield_1 () -> __BindgenBitfieldUnit < [u8 ; 8usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 8usize] > = Default :: default () ; __bindgen_bitfield_unit } } pub const xdp_action_XDP_ABORTED : xdp_action = 0 ; pub const xdp_action_XDP_DROP : xdp_action = 1 ; pub const xdp_action_XDP_PASS : xdp_action = 2 ; pub const xdp_action_XDP_TX : xdp_action = 3 ; pub const xdp_action_XDP_REDIRECT : xdp_action = 4 ; pub type xdp_action = :: cty :: c_uint ; pub type bpf_jit_fill_hole_t = :: core :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: cty :: c_void , arg2 : :: cty :: c_uint) > ; # [repr (C)] # [derive (Debug)] pub struct bpf_prog_dummy { pub prog : bpf_prog , } # [test] fn bindgen_test_layout_bpf_prog_dummy () { assert_eq ! (:: core :: mem :: size_of :: < bpf_prog_dummy > () , 72usize , concat ! ("Size of: " , stringify ! (bpf_prog_dummy))) ; assert_eq ! (:: core :: mem :: align_of :: < bpf_prog_dummy > () , 8usize , concat ! ("Alignment of " , stringify ! (bpf_prog_dummy))) ; assert_eq ! (unsafe { & (* (:: core :: ptr :: null :: < bpf_prog_dummy > ())) . prog as * const _ as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (bpf_prog_dummy) , "::" , stringify ! (prog))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rhash_lock_head { } # [test] fn bindgen_test_layout_rhash_lock_head () { assert_eq ! (:: core :: mem :: size_of :: < rhash_lock_head > () , 0usize , concat ! ("Size of: " , stringify ! (rhash_lock_head))) ; assert_eq ! (:: core :: mem :: align_of :: < rhash_lock_head > () , 1usize , concat ! ("Alignment of " , stringify ! (rhash_lock_head))) ; } pub const bpf_cmd_BPF_MAP_CREATE : bpf_cmd = 0 ; pub const bpf_cmd_BPF_MAP_LOOKUP_ELEM : bpf_cmd = 1 ; pub const bpf_cmd_BPF_MAP_UPDATE_ELEM : bpf_cmd = 2 ; pub const bpf_cmd_BPF_MAP_DELETE_ELEM : bpf_cmd = 3 ; pub const bpf_cmd_BPF_MAP_GET_NEXT_KEY : bpf_cmd = 4 ; pub const bpf_cmd_BPF_PROG_LOAD : bpf_cmd = 5 ; pub const bpf_cmd_BPF_OBJ_PIN : bpf_cmd = 6 ; pub const bpf_cmd_BPF_OBJ_GET : bpf_cmd = 7 ; pub const bpf_cmd_BPF_PROG_ATTACH : bpf_cmd = 8 ; pub const bpf_cmd_BPF_PROG_DETACH : bpf_cmd = 9 ; pub const bpf_cmd_BPF_PROG_TEST_RUN : bpf_cmd = 10 ; pub const bpf_cmd_BPF_PROG_GET_NEXT_ID : bpf_cmd = 11 ; pub const bpf_cmd_BPF_MAP_GET_NEXT_ID : bpf_cmd = 12 ; pub const bpf_cmd_BPF_PROG_GET_FD_BY_ID : bpf_cmd = 13 ; pub const bpf_cmd_BPF_MAP_GET_FD_BY_ID : bpf_cmd = 14 ; pub const bpf_cmd_BPF_OBJ_GET_INFO_BY_FD : bpf_cmd = 15 ; pub const bpf_cmd_BPF_PROG_QUERY : bpf_cmd = 16 ; pub const bpf_cmd_BPF_RAW_TRACEPOINT_OPEN : bpf_cmd = 17 ; pub const bpf_cmd_BPF_BTF_LOAD : bpf_cmd = 18 ; pub const bpf_cmd_BPF_BTF_GET_FD_BY_ID : bpf_cmd = 19 ; pub const bpf_cmd_BPF_TASK_FD_QUERY : bpf_cmd = 20 ; pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_ELEM : bpf_cmd = 21 ; pub const bpf_cmd_BPF_MAP_FREEZE : bpf_cmd = 22 ; pub const bpf_cmd_BPF_BTF_GET_NEXT_ID : bpf_cmd = 23 ; pub const bpf_cmd_BPF_MAP_LOOKUP_BATCH : bpf_cmd = 24 ; pub const bpf_cmd_BPF_MAP_LOOKUP_AND_DELETE_BATCH : bpf_cmd = 25 ; pub const bpf_cmd_BPF_MAP_UPDATE_BATCH : bpf_cmd = 26 ; pub const bpf_cmd_BPF_MAP_DELETE_BATCH : bpf_cmd = 27 ; pub const bpf_cmd_BPF_LINK_CREATE : bpf_cmd = 28 ; pub const bpf_cmd_BPF_LINK_UPDATE : bpf_cmd = 29 ; pub const bpf_cmd_BPF_LINK_GET_FD_BY_ID : bpf_cmd = 30 ; pub const bpf_cmd_BPF_LINK_GET_NEXT_ID : bpf_cmd = 31 ; pub const bpf_cmd_BPF_ENABLE_STATS : bpf_cmd = 32 ; pub const bpf_cmd_BPF_ITER_CREATE : bpf_cmd = 33 ; pub const bpf_cmd_BPF_LINK_DETACH : bpf_cmd = 34 ; pub const bpf_cmd_BPF_PROG_BIND_MAP : bpf_cmd = 35 ; pub type bpf_cmd = :: cty :: c_uint ; pub const BPF_ANY : :: cty :: c_uint = 0 ; pu... [WARN] too much data in the log, truncating it