[INFO] cloning repository https://github.com/journeymidnight/autumn-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/journeymidnight/autumn-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjourneymidnight%2Fautumn-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjourneymidnight%2Fautumn-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 48994407b839e3abe8ec9cec9267c64d408ec0a6
[INFO] checking journeymidnight/autumn-rs/48994407b839e3abe8ec9cec9267c64d408ec0a6 against 4a9d5368df6450bbd2fc8dde4508c3e5d83bb19d for pr-159598
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjourneymidnight%2Fautumn-rs" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/journeymidnight/autumn-rs
[INFO] finished tweaking git repo https://github.com/journeymidnight/autumn-rs
[INFO] tweaked toml for git repo https://github.com/journeymidnight/autumn-rs written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/journeymidnight/autumn-rs on toolchain 4a9d5368df6450bbd2fc8dde4508c3e5d83bb19d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4a9d5368df6450bbd2fc8dde4508c3e5d83bb19d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/journeymidnight/autumn-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4a9d5368df6450bbd2fc8dde4508c3e5d83bb19d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf
[INFO] running `Command { std: "docker" "start" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf" "/opt/rustwide/cargo-home/bin/cargo" "+4a9d5368df6450bbd2fc8dde4508c3e5d83bb19d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf" "/opt/rustwide/cargo-home/bin/cargo" "+4a9d5368df6450bbd2fc8dde4508c3e5d83bb19d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling io-uring v0.7.11
[INFO] [stderr]     Checking thin-cell v0.1.2
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]    Compiling compio-driver v0.11.4
[INFO] [stderr]    Compiling winnow v1.0.1
[INFO] [stderr]    Compiling compio-fs v0.11.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking flume v0.12.0
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking simdutf8 v0.1.5
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]    Compiling autumn-rpc v0.1.0 (/opt/rustwide/workdir/crates/rpc)
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]    Compiling reed-solomon-erasure v6.0.0
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]    Compiling zerocopy v0.8.40
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking send_wrapper v0.6.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling fuser v0.15.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking xxhash-rust v0.8.15
[INFO] [stderr]    Compiling cc v1.2.59
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling crc32c v0.6.8
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]     Checking clap_builder v4.5.60
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling bindgen v0.69.5
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking compio-buf v0.8.1
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking os_pipe v1.2.3
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking core_affinity v0.8.3
[INFO] [stderr]    Compiling toml_edit v0.25.11+spec-1.1.0
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking tempfile v3.26.0
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling tikv-jemalloc-sys v0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7
[INFO] [stderr]    Compiling tree-sitter v0.24.7
[INFO] [stderr]     Checking io_uring_buf_ring v0.2.3
[INFO] [stderr]    Compiling tree-sitter-rust v0.23.3
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking lru v0.7.8
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling compio-macros v0.1.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling ptr_meta_derive v0.3.1
[INFO] [stderr]    Compiling bytecheck_derive v0.8.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling munge_macro v0.4.7
[INFO] [stderr]    Compiling rkyv_derive v0.8.15
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking ptr_meta v0.3.1
[INFO] [stderr]     Checking rancor v0.1.1
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling zerocopy-derive v0.8.40
[INFO] [stderr]     Checking munge v0.4.7
[INFO] [stderr]    Compiling prost-derive v0.12.6
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]     Checking bytecheck v0.8.2
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking rend v0.5.3
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking compio-log v0.1.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking prost v0.12.6
[INFO] [stderr]     Checking clap v4.5.60
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking synchrony v0.1.7
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking compio-io v0.9.1
[INFO] [stderr]     Checking rkyv v0.8.15
[INFO] [stderr]     Checking compio-runtime v0.11.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking compio-dispatcher v0.10.0
[INFO] [stderr]     Checking compio-net v0.11.1
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking compio v0.18.0
[INFO] [stderr]     Checking autumn-transport v0.1.0 (/opt/rustwide/workdir/crates/transport)
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling ucx-sys-mini v0.1.0 (/opt/rustwide/workdir/crates/transport/ucx-sys-mini)
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/ucx-sys-mini-e81f6714c411fdfc/out/bindings.rs:3:16627
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...:: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set_...
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { u32::cast_signed (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/ucx-sys-mini-e81f6714c411fdfc/out/bindings.rs:3:16815
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val ...
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = i32::cast_unsigned (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/ucx-sys-mini-e81f6714c411fdfc/out/bindings.rs:3:17205
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_uni...
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { i32::cast_unsigned (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/ucx-sys-mini-e81f6714c411fdfc/out/bindings.rs:3:16627
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...:: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set_...
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { u32::cast_signed (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/ucx-sys-mini-e81f6714c411fdfc/out/bindings.rs:3:16815
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val ...
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = i32::cast_unsigned (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/ucx-sys-mini-e81f6714c411fdfc/out/bindings.rs:3:17205
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_uni...
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } pub const UCS_ALLOCA_MAX_SIZE : u32 = 1200 ; pub const UCP_ENTITY_NAME_MAX : u32 = 32 ; pub const UCP_VERSION_MAJOR_SHIFT : u32 = 24 ; pub const UCP_VERSION_MINOR_SHIFT : u32 = 16 ; pub const UCP_API_MAJOR : u32 = 1 ; pub const UCP_API_MINOR : u32 = 20 ; pub const UCS_CPU_SETSIZE : u32 = 1024 ; pub mod ucs_memory_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_MEMORY_TYPE_HOST : Type = 0 ; pub const UCS_MEMORY_TYPE_CUDA : Type = 1 ; pub const UCS_MEMORY_TYPE_CUDA_MANAGED : Type = 2 ; pub const UCS_MEMORY_TYPE_ROCM : Type = 3 ; pub const UCS_MEMORY_TYPE_ROCM_MANAGED : Type = 4 ; pub const UCS_MEMORY_TYPE_RDMA : Type = 5 ; pub const UCS_MEMORY_TYPE_ZE_HOST : Type = 6 ; pub const UCS_MEMORY_TYPE_ZE_DEVICE : Type = 7 ; pub const UCS_MEMORY_TYPE_ZE_MANAGED : Type = 8 ; pub const UCS_MEMORY_TYPE_LAST : Type = 9 ; pub const UCS_MEMORY_TYPE_UNKNOWN : Type = 9 ; } pub use self :: ucs_memory_type :: Type as ucs_memory_type_t ; pub mod ucs_status_t { pub type Type = :: std :: os :: raw :: c_schar ; pub const UCS_OK : Type = 0 ; pub const UCS_INPROGRESS : Type = 1 ; pub const UCS_ERR_NO_MESSAGE : Type = - 1 ; pub const UCS_ERR_NO_RESOURCE : Type = - 2 ; pub const UCS_ERR_IO_ERROR : Type = - 3 ; pub const UCS_ERR_NO_MEMORY : Type = - 4 ; pub const UCS_ERR_INVALID_PARAM : Type = - 5 ; pub const UCS_ERR_UNREACHABLE : Type = - 6 ; pub const UCS_ERR_INVALID_ADDR : Type = - 7 ; pub const UCS_ERR_NOT_IMPLEMENTED : Type = - 8 ; pub const UCS_ERR_MESSAGE_TRUNCATED : Type = - 9 ; pub const UCS_ERR_NO_PROGRESS : Type = - 10 ; pub const UCS_ERR_BUFFER_TOO_SMALL : Type = - 11 ; pub const UCS_ERR_NO_ELEM : Type = - 12 ; pub const UCS_ERR_SOME_CONNECTS_FAILED : Type = - 13 ; pub const UCS_ERR_NO_DEVICE : Type = - 14 ; pub const UCS_ERR_BUSY : Type = - 15 ; pub const UCS_ERR_CANCELED : Type = - 16 ; pub const UCS_ERR_SHMEM_SEGMENT : Type = - 17 ; pub const UCS_ERR_ALREADY_EXISTS : Type = - 18 ; pub const UCS_ERR_OUT_OF_RANGE : Type = - 19 ; pub const UCS_ERR_TIMED_OUT : Type = - 20 ; pub const UCS_ERR_EXCEEDS_LIMIT : Type = - 21 ; pub const UCS_ERR_UNSUPPORTED : Type = - 22 ; pub const UCS_ERR_REJECTED : Type = - 23 ; pub const UCS_ERR_NOT_CONNECTED : Type = - 24 ; pub const UCS_ERR_CONNECTION_RESET : Type = - 25 ; pub const UCS_ERR_FIRST_LINK_FAILURE : Type = - 40 ; pub const UCS_ERR_LAST_LINK_FAILURE : Type = - 59 ; pub const UCS_ERR_FIRST_ENDPOINT_FAILURE : Type = - 60 ; pub const UCS_ERR_ENDPOINT_TIMEOUT : Type = - 80 ; pub const UCS_ERR_LAST_ENDPOINT_FAILURE : Type = - 89 ; pub const UCS_ERR_LAST : Type = - 100 ; } pub type ucs_status_ptr_t = * mut :: std :: os :: raw :: c_void ; extern "C" { pub fn ucs_status_string (status : ucs_status_t :: Type) -> * const :: std :: os :: raw :: c_char ; } pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type socklen_t = __socklen_t ; pub type sa_family_t = :: std :: os :: raw :: c_ushort ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr { pub sa_family : sa_family_t , pub sa_data : [:: std :: os :: raw :: c_char ; 14usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sockaddr_storage { pub ss_family : sa_family_t , pub __ss_padding : [:: std :: os :: raw :: c_char ; 118usize] , pub __ss_align : :: std :: os :: raw :: c_ulong , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_sock_addr { pub addr : * const sockaddr , pub addrlen : socklen_t , } pub type ucs_sock_addr_t = ucs_sock_addr ; pub type ucp_tag_recv_info_t = ucp_tag_recv_info ; pub type ucp_am_recv_param_t = ucp_am_recv_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context { _unused : [u8 ; 0] , } pub type ucp_context_h = * mut ucp_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_config { _unused : [u8 ; 0] , } pub type ucp_config_t = ucp_config ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep { _unused : [u8 ; 0] , } pub type ucp_ep_h = * mut ucp_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request { _unused : [u8 ; 0] , } pub type ucp_conn_request_h = * mut ucp_conn_request ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_address { _unused : [u8 ; 0] , } pub type ucp_address_t = ucp_address ; pub mod ucp_err_handling_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ERR_HANDLING_MODE_NONE : Type = 0 ; pub const UCP_ERR_HANDLING_MODE_PEER : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey { _unused : [u8 ; 0] , } pub type ucp_rkey_h = * mut ucp_rkey ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem { _unused : [u8 ; 0] , } pub type ucp_mem_h = * mut ucp_mem ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener { _unused : [u8 ; 0] , } pub type ucp_listener_h = * mut ucp_listener ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_attr { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub mem_type : ucs_memory_type_t , } pub type ucp_mem_attr_t = ucp_mem_attr ; pub mod ucp_mem_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ATTR_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ATTR_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ATTR_FIELD_MEM_TYPE : Type = 4 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker { _unused : [u8 ; 0] , } pub type ucp_worker_h = * mut ucp_worker ; pub type ucp_tag_t = u64 ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_recv_desc { _unused : [u8 ; 0] , } pub type ucp_tag_message_h = * mut ucp_recv_desc ; pub type ucp_datatype_t = u64 ; pub type ucp_request_init_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_request_cleanup_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_send_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type) > ; pub type ucp_send_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_err_handler_cb_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , ep : ucp_ep_h , status : ucs_status_t :: Type) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_err_handler { pub cb : ucp_err_handler_cb_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_err_handler_t = ucp_err_handler ; pub type ucp_listener_accept_callback_t = :: std :: option :: Option < unsafe extern "C" fn (ep : ucp_ep_h , arg : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_listener_conn_callback_t = :: std :: option :: Option < unsafe extern "C" fn (conn_request : ucp_conn_request_h , arg : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_conn_handler { pub cb : ucp_listener_conn_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_conn_handler_t = ucp_listener_conn_handler ; pub type ucp_stream_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize) > ; pub type ucp_stream_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_tag_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , info : * mut ucp_tag_recv_info_t) > ; pub type ucp_tag_recv_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , tag_info : * const ucp_tag_recv_info_t , user_data : * mut :: std :: os :: raw :: c_void) > ; pub type ucp_am_recv_data_nbx_callback_t = :: std :: option :: Option < unsafe extern "C" fn (request : * mut :: std :: os :: raw :: c_void , status : ucs_status_t :: Type , length : usize , user_data : * mut :: std :: os :: raw :: c_void) > ; pub mod ucp_wakeup_event_types { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WAKEUP_RMA : Type = 1 ; pub const UCP_WAKEUP_AMO : Type = 2 ; pub const UCP_WAKEUP_TAG_SEND : Type = 4 ; pub const UCP_WAKEUP_TAG_RECV : Type = 8 ; pub const UCP_WAKEUP_TX : Type = 1024 ; pub const UCP_WAKEUP_RX : Type = 2048 ; pub const UCP_WAKEUP_EDGE : Type = 65536 ; } pub use self :: ucp_wakeup_event_types :: Type as ucp_wakeup_event_t ; pub type ucp_am_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , length : usize , reply_ep : ucp_ep_h , flags : :: std :: os :: raw :: c_uint) -> ucs_status_t :: Type > ; pub type ucp_am_recv_callback_t = :: std :: option :: Option < unsafe extern "C" fn (arg : * mut :: std :: os :: raw :: c_void , header : * const :: std :: os :: raw :: c_void , header_length : usize , data : * mut :: std :: os :: raw :: c_void , length : usize , param : * const ucp_am_recv_param_t) -> ucs_status_t :: Type > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_params { pub field_mask : u64 , pub address : * const ucp_address_t , pub err_mode : ucp_err_handling_mode_t :: Type , pub err_handler : ucp_err_handler_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub sockaddr : ucs_sock_addr_t , pub conn_request : ucp_conn_request_h , pub name : * const :: std :: os :: raw :: c_char , pub local_sockaddr : ucs_sock_addr_t , } pub type ucp_ep_params_t = ucp_ep_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transport_entry_t { pub transport_name : * const :: std :: os :: raw :: c_char , pub device_name : * const :: std :: os :: raw :: c_char , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_transports_t { pub entries : * mut ucp_transport_entry_t , pub num_entries : :: std :: os :: raw :: c_uint , pub entry_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_device_mem_list_handle { _unused : [u8 ; 0] , } pub type ucp_device_mem_list_handle_h = * mut ucp_device_mem_list_handle ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_accept_handler { pub cb : ucp_listener_accept_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_listener_accept_handler_t = ucp_listener_accept_handler ; pub mod ucp_atomic_post_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_POST_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_POST_OP_AND : Type = 1 ; pub const UCP_ATOMIC_POST_OP_OR : Type = 2 ; pub const UCP_ATOMIC_POST_OP_XOR : Type = 3 ; pub const UCP_ATOMIC_POST_OP_LAST : Type = 4 ; } pub mod ucp_atomic_fetch_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_FETCH_OP_FADD : Type = 0 ; pub const UCP_ATOMIC_FETCH_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_FETCH_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_FETCH_OP_FAND : Type = 3 ; pub const UCP_ATOMIC_FETCH_OP_FOR : Type = 4 ; pub const UCP_ATOMIC_FETCH_OP_FXOR : Type = 5 ; pub const UCP_ATOMIC_FETCH_OP_LAST : Type = 6 ; } pub mod ucp_ep_close_mode { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_MODE_FORCE : Type = 0 ; pub const UCP_EP_CLOSE_MODE_FLUSH : Type = 1 ; } pub mod ucs_thread_mode_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCS_THREAD_MODE_SINGLE : Type = 0 ; pub const UCS_THREAD_MODE_SERIALIZED : Type = 1 ; pub const UCS_THREAD_MODE_MULTI : Type = 2 ; pub const UCS_THREAD_MODE_LAST : Type = 3 ; } pub type ucs_cpu_mask_t = :: std :: os :: raw :: c_ulong ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucs_cpu_set_t { pub ucs_bits : [ucs_cpu_mask_t ; 16usize] , } pub type FILE = _IO_FILE ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_marker { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_codecvt { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_wide_data { _unused : [u8 ; 0] , } pub type _IO_lock_t = :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _IO_FILE { pub _flags : :: std :: os :: raw :: c_int , pub _IO_read_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_read_end : * mut :: std :: os :: raw :: c_char , pub _IO_read_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_base : * mut :: std :: os :: raw :: c_char , pub _IO_write_ptr : * mut :: std :: os :: raw :: c_char , pub _IO_write_end : * mut :: std :: os :: raw :: c_char , pub _IO_buf_base : * mut :: std :: os :: raw :: c_char , pub _IO_buf_end : * mut :: std :: os :: raw :: c_char , pub _IO_save_base : * mut :: std :: os :: raw :: c_char , pub _IO_backup_base : * mut :: std :: os :: raw :: c_char , pub _IO_save_end : * mut :: std :: os :: raw :: c_char , pub _markers : * mut _IO_marker , pub _chain : * mut _IO_FILE , pub _fileno : :: std :: os :: raw :: c_int , pub _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _old_offset : __off_t , pub _cur_column : :: std :: os :: raw :: c_ushort , pub _vtable_offset : :: std :: os :: raw :: c_schar , pub _shortbuf : [:: std :: os :: raw :: c_char ; 1usize] , pub _lock : * mut _IO_lock_t , pub _offset : __off64_t , pub _codecvt : * mut _IO_codecvt , pub _wide_data : * mut _IO_wide_data , pub _freeres_list : * mut _IO_FILE , pub _freeres_buf : * mut :: std :: os :: raw :: c_void , pub _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { i32::cast_unsigned (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub mod ucp_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_PARAM_FIELD_FEATURES : Type = 1 ; pub const UCP_PARAM_FIELD_REQUEST_SIZE : Type = 2 ; pub const UCP_PARAM_FIELD_REQUEST_INIT : Type = 4 ; pub const UCP_PARAM_FIELD_REQUEST_CLEANUP : Type = 8 ; pub const UCP_PARAM_FIELD_TAG_SENDER_MASK : Type = 16 ; pub const UCP_PARAM_FIELD_MT_WORKERS_SHARED : Type = 32 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_EPS : Type = 64 ; pub const UCP_PARAM_FIELD_ESTIMATED_NUM_PPN : Type = 128 ; pub const UCP_PARAM_FIELD_NAME : Type = 256 ; pub const UCP_PARAM_FIELD_NODE_LOCAL_ID : Type = 512 ; } pub mod ucp_feature { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_FEATURE_TAG : Type = 1 ; pub const UCP_FEATURE_RMA : Type = 2 ; pub const UCP_FEATURE_AMO32 : Type = 4 ; pub const UCP_FEATURE_AMO64 : Type = 8 ; pub const UCP_FEATURE_WAKEUP : Type = 16 ; pub const UCP_FEATURE_STREAM : Type = 32 ; pub const UCP_FEATURE_AM : Type = 64 ; pub const UCP_FEATURE_EXPORTED_MEMH : Type = 128 ; pub const UCP_FEATURE_DEVICE : Type = 256 ; } pub mod ucp_worker_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_PARAM_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_PARAM_FIELD_CPU_MASK : Type = 2 ; pub const UCP_WORKER_PARAM_FIELD_EVENTS : Type = 4 ; pub const UCP_WORKER_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_WORKER_PARAM_FIELD_EVENT_FD : Type = 16 ; pub const UCP_WORKER_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_WORKER_PARAM_FIELD_NAME : Type = 64 ; pub const UCP_WORKER_PARAM_FIELD_AM_ALIGNMENT : Type = 128 ; pub const UCP_WORKER_PARAM_FIELD_CLIENT_ID : Type = 256 ; } pub mod ucp_worker_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_FLAG_IGNORE_REQUEST_LEAK : Type = 1 ; } pub mod ucp_listener_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_PARAM_FIELD_SOCK_ADDR : Type = 1 ; pub const UCP_LISTENER_PARAM_FIELD_ACCEPT_HANDLER : Type = 2 ; pub const UCP_LISTENER_PARAM_FIELD_CONN_HANDLER : Type = 4 ; } pub mod ucp_worker_address_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_FLAG_NET_ONLY : Type = 1 ; } pub mod ucp_ep_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAM_FIELD_REMOTE_ADDRESS : Type = 1 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLING_MODE : Type = 2 ; pub const UCP_EP_PARAM_FIELD_ERR_HANDLER : Type = 4 ; pub const UCP_EP_PARAM_FIELD_USER_DATA : Type = 8 ; pub const UCP_EP_PARAM_FIELD_SOCK_ADDR : Type = 16 ; pub const UCP_EP_PARAM_FIELD_FLAGS : Type = 32 ; pub const UCP_EP_PARAM_FIELD_CONN_REQUEST : Type = 64 ; pub const UCP_EP_PARAM_FIELD_NAME : Type = 128 ; pub const UCP_EP_PARAM_FIELD_LOCAL_SOCK_ADDR : Type = 256 ; } pub mod ucp_ep_params_flags_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PARAMS_FLAGS_CLIENT_SERVER : Type = 1 ; pub const UCP_EP_PARAMS_FLAGS_NO_LOOPBACK : Type = 2 ; pub const UCP_EP_PARAMS_FLAGS_SEND_CLIENT_ID : Type = 4 ; } pub mod ucp_ep_close_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_CLOSE_FLAG_FORCE : Type = 1 ; } pub mod ucp_ep_perf_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_PARAM_FIELD_MESSAGE_SIZE : Type = 1 ; } pub use self :: ucp_ep_perf_param_field :: Type as ucp_ep_perf_param_field_t ; pub mod ucp_ep_perf_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_PERF_ATTR_FIELD_ESTIMATED_TIME : Type = 1 ; } pub use self :: ucp_ep_perf_attr_field :: Type as ucp_ep_perf_attr_field_t ; pub mod ucp_mem_map_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_MAP_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_MAP_PARAM_FIELD_FLAGS : Type = 4 ; pub const UCP_MEM_MAP_PARAM_FIELD_PROT : Type = 8 ; pub const UCP_MEM_MAP_PARAM_FIELD_MEMORY_TYPE : Type = 16 ; pub const UCP_MEM_MAP_PARAM_FIELD_EXPORTED_MEMH_BUFFER : Type = 32 ; } pub mod ucp_mem_advise_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADDRESS : Type = 1 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_LENGTH : Type = 2 ; pub const UCP_MEM_ADVISE_PARAM_FIELD_ADVICE : Type = 4 ; } pub mod ucp_lib_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LIB_ATTR_FIELD_MAX_THREAD_LEVEL : Type = 1 ; } pub mod ucp_context_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATTR_FIELD_REQUEST_SIZE : Type = 1 ; pub const UCP_ATTR_FIELD_THREAD_MODE : Type = 2 ; pub const UCP_ATTR_FIELD_MEMORY_TYPES : Type = 4 ; pub const UCP_ATTR_FIELD_NAME : Type = 8 ; pub const UCP_ATTR_FIELD_DEVICE_COUNTER_SIZE : Type = 16 ; } pub mod ucp_worker_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ATTR_FIELD_THREAD_MODE : Type = 1 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS : Type = 2 ; pub const UCP_WORKER_ATTR_FIELD_ADDRESS_FLAGS : Type = 4 ; pub const UCP_WORKER_ATTR_FIELD_MAX_AM_HEADER : Type = 8 ; pub const UCP_WORKER_ATTR_FIELD_NAME : Type = 16 ; pub const UCP_WORKER_ATTR_FIELD_MAX_INFO_STRING : Type = 32 ; } pub mod ucp_worker_address_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_WORKER_ADDRESS_ATTR_FIELD_UID : Type = 1 ; } pub mod ucp_listener_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_LISTENER_ATTR_FIELD_SOCKADDR : Type = 1 ; } pub mod ucp_conn_request_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ADDR : Type = 1 ; pub const UCP_CONN_REQUEST_ATTR_FIELD_CLIENT_ID : Type = 2 ; } pub mod ucp_dt_type { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_CONTIG : Type = 0 ; pub const UCP_DATATYPE_STRIDED : Type = 1 ; pub const UCP_DATATYPE_IOV : Type = 2 ; pub const UCP_DATATYPE_GENERIC : Type = 7 ; pub const UCP_DATATYPE_SHIFT : Type = 3 ; pub const UCP_DATATYPE_CLASS_MASK : Type = 7 ; } pub mod ucp_datatype_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_DATATYPE_ATTR_FIELD_PACKED_SIZE : Type = 1 ; pub const UCP_DATATYPE_ATTR_FIELD_BUFFER : Type = 2 ; pub const UCP_DATATYPE_ATTR_FIELD_COUNT : Type = 4 ; } pub mod _bindgen_ty_4 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_NONBLOCK : Type = 1 ; pub const UCP_MEM_MAP_ALLOCATE : Type = 2 ; pub const UCP_MEM_MAP_FIXED : Type = 4 ; pub const UCP_MEM_MAP_SYMMETRIC_RKEY : Type = 8 ; pub const UCP_MEM_MAP_LOCK : Type = 16 ; } pub mod _bindgen_ty_5 { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEM_MAP_PROT_LOCAL_READ : Type = 1 ; pub const UCP_MEM_MAP_PROT_LOCAL_WRITE : Type = 2 ; pub const UCP_MEM_MAP_PROT_REMOTE_READ : Type = 256 ; pub const UCP_MEM_MAP_PROT_REMOTE_WRITE : Type = 512 ; } pub mod ucp_am_cb_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_FLAG_WHOLE_MSG : Type = 1 ; pub const UCP_AM_FLAG_PERSISTENT_DATA : Type = 2 ; } pub mod ucp_send_am_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_SEND_FLAG_REPLY : Type = 1 ; pub const UCP_AM_SEND_FLAG_EAGER : Type = 2 ; pub const UCP_AM_SEND_FLAG_RNDV : Type = 4 ; pub const UCP_AM_SEND_FLAG_COPY_HEADER : Type = 8 ; pub const UCP_AM_SEND_REPLY : Type = 1 ; } pub mod ucp_cb_param_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_CB_PARAM_FLAG_DATA : Type = 1 ; } pub mod ucp_atomic_op_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_ATOMIC_OP_ADD : Type = 0 ; pub const UCP_ATOMIC_OP_SWAP : Type = 1 ; pub const UCP_ATOMIC_OP_CSWAP : Type = 2 ; pub const UCP_ATOMIC_OP_AND : Type = 3 ; pub const UCP_ATOMIC_OP_OR : Type = 4 ; pub const UCP_ATOMIC_OP_XOR : Type = 5 ; pub const UCP_ATOMIC_OP_LAST : Type = 6 ; } pub mod ucp_stream_recv_flags_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_STREAM_RECV_FLAG_WAITALL : Type = 1 ; } pub mod ucp_op_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_OP_ATTR_FIELD_REQUEST : Type = 1 ; pub const UCP_OP_ATTR_FIELD_CALLBACK : Type = 2 ; pub const UCP_OP_ATTR_FIELD_USER_DATA : Type = 4 ; pub const UCP_OP_ATTR_FIELD_DATATYPE : Type = 8 ; pub const UCP_OP_ATTR_FIELD_FLAGS : Type = 16 ; pub const UCP_OP_ATTR_FIELD_REPLY_BUFFER : Type = 32 ; pub const UCP_OP_ATTR_FIELD_MEMORY_TYPE : Type = 64 ; pub const UCP_OP_ATTR_FIELD_RECV_INFO : Type = 128 ; pub const UCP_OP_ATTR_FIELD_MEMH : Type = 256 ; pub const UCP_OP_ATTR_FLAG_NO_IMM_CMPL : Type = 65536 ; pub const UCP_OP_ATTR_FLAG_FAST_CMPL : Type = 131072 ; pub const UCP_OP_ATTR_FLAG_FORCE_IMM_CMPL : Type = 262144 ; pub const UCP_OP_ATTR_FLAG_MULTI_SEND : Type = 524288 ; } pub mod ucp_req_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING : Type = 1 ; pub const UCP_REQUEST_ATTR_FIELD_INFO_STRING_SIZE : Type = 2 ; pub const UCP_REQUEST_ATTR_FIELD_STATUS : Type = 4 ; pub const UCP_REQUEST_ATTR_FIELD_MEM_TYPE : Type = 8 ; } pub mod ucp_am_recv_attr_t { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_RECV_ATTR_FIELD_REPLY_EP : Type = 1 ; pub const UCP_AM_RECV_ATTR_FLAG_DATA : Type = 65536 ; pub const UCP_AM_RECV_ATTR_FLAG_RNDV : Type = 131072 ; } pub mod ucp_am_handler_param_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_AM_HANDLER_PARAM_FIELD_ID : Type = 1 ; pub const UCP_AM_HANDLER_PARAM_FIELD_FLAGS : Type = 2 ; pub const UCP_AM_HANDLER_PARAM_FIELD_CB : Type = 4 ; pub const UCP_AM_HANDLER_PARAM_FIELD_ARG : Type = 8 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_dt_iov { pub buffer : * mut :: std :: os :: raw :: c_void , pub length : usize , } pub type ucp_dt_iov_t = ucp_dt_iov ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_generic_dt_ops { pub start_pack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * const :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub start_unpack : :: std :: option :: Option < unsafe extern "C" fn (context : * mut :: std :: os :: raw :: c_void , buffer : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void > , pub packed_size : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) -> usize > , pub pack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , dest : * mut :: std :: os :: raw :: c_void , max_length : usize) -> usize > , pub unpack : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void , offset : usize , src : * const :: std :: os :: raw :: c_void , length : usize) -> ucs_status_t :: Type > , pub finish : :: std :: option :: Option < unsafe extern "C" fn (state : * mut :: std :: os :: raw :: c_void) > , } pub type ucp_generic_dt_ops_t = ucp_generic_dt_ops ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_datatype_attr { pub field_mask : u64 , pub packed_size : usize , pub buffer : * const :: std :: os :: raw :: c_void , pub count : usize , } pub type ucp_datatype_attr_t = ucp_datatype_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_params { pub field_mask : u64 , pub features : u64 , pub request_size : usize , pub request_init : ucp_request_init_callback_t , pub request_cleanup : ucp_request_cleanup_callback_t , pub tag_sender_mask : u64 , pub mt_workers_shared : :: std :: os :: raw :: c_int , pub estimated_num_eps : usize , pub estimated_num_ppn : usize , pub name : * const :: std :: os :: raw :: c_char , pub node_local_id : usize , } pub type ucp_params_t = ucp_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_lib_attr { pub field_mask : u64 , pub max_thread_level : ucs_thread_mode_t :: Type , } pub type ucp_lib_attr_t = ucp_lib_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_context_attr { pub field_mask : u64 , pub request_size : usize , pub thread_mode : ucs_thread_mode_t :: Type , pub memory_types : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub device_counter_size : usize , } pub type ucp_context_attr_t = ucp_context_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_attr { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub address_flags : u32 , pub address : * mut ucp_address_t , pub address_length : usize , pub max_am_header : usize , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub max_debug_string : usize , } pub type ucp_worker_attr_t = ucp_worker_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_rkey_compare_params { pub field_mask : u64 , } pub type ucp_rkey_compare_params_t = ucp_rkey_compare_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_params { pub field_mask : u64 , pub thread_mode : ucs_thread_mode_t :: Type , pub cpu_mask : ucs_cpu_set_t , pub events : :: std :: os :: raw :: c_uint , pub user_data : * mut :: std :: os :: raw :: c_void , pub event_fd : :: std :: os :: raw :: c_int , pub flags : u64 , pub name : * const :: std :: os :: raw :: c_char , pub am_alignment : usize , pub client_id : u64 , } pub type ucp_worker_params_t = ucp_worker_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_worker_address_attr { pub field_mask : u64 , pub worker_uid : u64 , } pub type ucp_worker_address_attr_t = ucp_worker_address_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_param_t { pub field_mask : u64 , pub message_size : usize , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_evaluate_perf_attr_t { pub field_mask : u64 , pub estimated_time : f64 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_attr { pub field_mask : u64 , pub sockaddr : sockaddr_storage , } pub type ucp_listener_attr_t = ucp_listener_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_conn_request_attr { pub field_mask : u64 , pub client_address : sockaddr_storage , pub client_id : u64 , } pub type ucp_conn_request_attr_t = ucp_conn_request_attr ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_listener_params { pub field_mask : u64 , pub sockaddr : ucs_sock_addr_t , pub accept_handler : ucp_listener_accept_handler_t , pub conn_handler : ucp_listener_conn_handler_t , } pub type ucp_listener_params_t = ucp_listener_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_stream_poll_ep { pub ep : ucp_ep_h , pub user_data : * mut :: std :: os :: raw :: c_void , pub flags : :: std :: os :: raw :: c_uint , pub reserved : [u8 ; 16usize] , } pub type ucp_stream_poll_ep_t = ucp_stream_poll_ep ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_map_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub flags : :: std :: os :: raw :: c_uint , pub prot : :: std :: os :: raw :: c_uint , pub memory_type : ucs_memory_type_t , pub exported_memh_buffer : * const :: std :: os :: raw :: c_void , } pub type ucp_mem_map_params_t = ucp_mem_map_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_tag_recv_info { pub sender_tag : ucp_tag_t , pub length : usize , } # [repr (C)] # [derive (Copy , Clone)] pub struct ucp_request_param_t { pub op_attr_mask : u32 , pub flags : u32 , pub request : * mut :: std :: os :: raw :: c_void , pub cb : ucp_request_param_t__bindgen_ty_1 , pub datatype : ucp_datatype_t , pub user_data : * mut :: std :: os :: raw :: c_void , pub reply_buffer : * mut :: std :: os :: raw :: c_void , pub memory_type : ucs_memory_type_t , pub recv_info : ucp_request_param_t__bindgen_ty_2 , pub memh : ucp_mem_h , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_1 { pub send : ucp_send_nbx_callback_t , pub recv : ucp_tag_recv_nbx_callback_t , pub recv_stream : ucp_stream_recv_nbx_callback_t , pub recv_am : ucp_am_recv_data_nbx_callback_t , } # [repr (C)] # [derive (Copy , Clone)] pub union ucp_request_param_t__bindgen_ty_2 { pub length : * mut usize , pub tag_info : * mut ucp_tag_recv_info_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_request_attr_t { pub field_mask : u64 , pub debug_string : * mut :: std :: os :: raw :: c_char , pub debug_string_size : usize , pub status : ucs_status_t :: Type , pub mem_type : ucs_memory_type_t , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_handler_param { pub field_mask : u64 , pub id : :: std :: os :: raw :: c_uint , pub flags : u32 , pub cb : ucp_am_recv_callback_t , pub arg : * mut :: std :: os :: raw :: c_void , } pub type ucp_am_handler_param_t = ucp_am_handler_param ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_am_recv_param { pub recv_attr : u64 , pub reply_ep : ucp_ep_h , } extern "C" { pub fn ucp_config_read (env_prefix : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , config_p : * mut * mut ucp_config_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_config_release (config : * mut ucp_config_t) ; } extern "C" { pub fn ucp_init_version (api_major_version : :: std :: os :: raw :: c_uint , api_minor_version : :: std :: os :: raw :: c_uint , params : * const ucp_params_t , config : * const ucp_config_t , context_p : * mut ucp_context_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_cleanup (context_p : ucp_context_h) ; } extern "C" { pub fn ucp_context_print_info (context : ucp_context_h , stream : * mut FILE) ; } extern "C" { pub fn ucp_worker_create (context : ucp_context_h , params : * const ucp_worker_params_t , worker_p : * mut ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_destroy (worker : ucp_worker_h) ; } extern "C" { pub fn ucp_worker_progress (worker : ucp_worker_h) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn ucp_worker_get_efd (worker : ucp_worker_h , fd : * mut :: std :: os :: raw :: c_int) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_worker_arm (worker : ucp_worker_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_create (worker : ucp_worker_h , params : * const ucp_listener_params_t , listener_p : * mut ucp_listener_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_listener_destroy (listener : ucp_listener_h) ; } extern "C" { pub fn ucp_listener_query (listener : ucp_listener_h , attr : * mut ucp_listener_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_conn_request_query (conn_request : ucp_conn_request_h , attr : * mut ucp_conn_request_attr_t) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_create (worker : ucp_worker_h , params : * const ucp_ep_params_t , ep_p : * mut ucp_ep_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_ep_close_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_ep_flush_nbx (ep : ucp_ep_h , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_mem_map (context : ucp_context_h , params : * const ucp_mem_map_params_t , memh_p : * mut ucp_mem_h) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_mem_unmap (context : ucp_context_h , memh : ucp_mem_h) -> ucs_status_t :: Type ; } pub mod ucp_mem_advice { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MADV_NORMAL : Type = 0 ; pub const UCP_MADV_WILLNEED : Type = 1 ; } pub use self :: ucp_mem_advice :: Type as ucp_mem_advice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_mem_advise_params { pub field_mask : u64 , pub address : * mut :: std :: os :: raw :: c_void , pub length : usize , pub advice : ucp_mem_advice_t , } pub type ucp_mem_advise_params_t = ucp_mem_advise_params ; pub mod ucp_memh_pack_params_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_PARAM_FIELD_FLAGS : Type = 1 ; } pub mod ucp_memh_pack_flags { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_MEMH_PACK_FLAG_EXPORT : Type = 1 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_pack_params { pub field_mask : u64 , pub flags : u64 , } pub type ucp_memh_pack_params_t = ucp_memh_pack_params ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_memh_buffer_release_params { pub field_mask : u64 , } pub type ucp_memh_buffer_release_params_t = ucp_memh_buffer_release_params ; extern "C" { pub fn ucp_stream_send_nbx (ep : ucp_ep_h , buffer : * const :: std :: os :: raw :: c_void , count : usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_stream_recv_nbx (ep : ucp_ep_h , buffer : * mut :: std :: os :: raw :: c_void , count : usize , length : * mut usize , param : * const ucp_request_param_t) -> ucs_status_ptr_t ; } extern "C" { pub fn ucp_request_check_status (request : * mut :: std :: os :: raw :: c_void) -> ucs_status_t :: Type ; } extern "C" { pub fn ucp_request_cancel (worker : ucp_worker_h , request : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn ucp_request_free (request : * mut :: std :: os :: raw :: c_void) ; } pub mod ucp_ep_attr_field { pub type Type = :: std :: os :: raw :: c_uint ; pub const UCP_EP_ATTR_FIELD_NAME : Type = 1 ; pub const UCP_EP_ATTR_FIELD_LOCAL_SOCKADDR : Type = 2 ; pub const UCP_EP_ATTR_FIELD_REMOTE_SOCKADDR : Type = 4 ; pub const UCP_EP_ATTR_FIELD_TRANSPORTS : Type = 8 ; pub const UCP_EP_ATTR_FIELD_USER_DATA : Type = 16 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ucp_ep_attr { pub field_mask : u64 , pub name : [:: std :: os :: raw :: c_char ; 32usize] , pub local_sockaddr : sockaddr_storage , pub remote_sockaddr : sockaddr_storage , pub transports : ucp_transports_t , pub user_data : * mut :: std :: os :: raw :: c_void , } pub type ucp_ep_attr_t = ucp_ep_attr ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking cyper-core v0.8.0
[INFO] [stderr]     Checking autumn-common v0.1.0 (/opt/rustwide/workdir/crates/common)
[INFO] [stderr]     Checking autumn-stream v0.1.0 (/opt/rustwide/workdir/crates/stream)
[INFO] [stderr]     Checking axum v0.8.9
[INFO] [stderr]     Checking autumn-etcd v0.1.0 (/opt/rustwide/workdir/crates/etcd)
[INFO] [stderr]     Checking autumn-client v0.1.0 (/opt/rustwide/workdir/crates/client)
[INFO] [stderr]     Checking autumn-partition-server v0.1.0 (/opt/rustwide/workdir/crates/partition-server)
[INFO] [stderr]     Checking autumn-fuse v0.1.0 (/opt/rustwide/workdir/crates/fuse)
[INFO] [stderr]     Checking autumn-memory v0.1.0 (/opt/rustwide/workdir/crates/autumn-memory)
[INFO] [stderr]     Checking cyper-axum v0.8.0
[INFO] [stderr]     Checking autumn-manager v0.1.0 (/opt/rustwide/workdir/crates/manager)
[INFO] [stderr]     Checking gallery v0.1.0 (/opt/rustwide/workdir/examples/gallery)
[INFO] [stderr]     Checking codebase-memory v0.1.0 (/opt/rustwide/workdir/examples/codebase-memory)
[INFO] [stdout] warning: function `test_extent` is never used
[INFO] [stdout]     --> crates/manager/src/lib.rs:4638:8
[INFO] [stdout]      |
[INFO] [stdout] 4638 |     fn test_extent(extent_id: u64, refs: u64, vp_table_refs: u64) -> MgrExtentInfo {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tikv-jemallocator v0.6.1
[INFO] [stderr]     Checking autumn-server v0.1.0 (/opt/rustwide/workdir/crates/server)
[INFO] [stdout] warning: unused import: `bytes::Bytes`
[INFO] [stdout]   --> crates/server/src/bin/autumnfs.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | use bytes::Bytes;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::Bytes`
[INFO] [stdout]   --> crates/server/src/bin/autumnfs.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | use bytes::Bytes;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> crates/server/src/bin/autumn_client/args.rs:489:21
[INFO] [stdout]     |
[INFO] [stdout] 435 |                     "--bulk" => {
[INFO] [stdout]     |                     -------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 489 |                     "--bulk" => {
[INFO] [stdout]     |                     ^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> crates/server/src/bin/autumn_client/args.rs:489:21
[INFO] [stdout]     |
[INFO] [stdout] 435 |                     "--bulk" => {
[INFO] [stdout]     |                     -------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 489 |                     "--bulk" => {
[INFO] [stdout]     |                     ^^^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/server/src/bin/autumn_op/args.rs:914:17
[INFO] [stdout]     |
[INFO] [stdout] 914 |             let mut presplit = String::from("1:normal");
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> crates/server/src/bin/autumn_op/args.rs:914:17
[INFO] [stdout]     |
[INFO] [stdout] 914 |             let mut presplit = String::from("1:normal");
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bytecheck v0.8.2, compio-driver v0.11.4, compio-fs v0.11.0, nix v0.29.0, rkyv v0.8.15
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf", kill_on_drop: false }`
[INFO] [stdout] ced45d2a88b05bf1f03a4e26382f69d6eb957f5e8460fb19434ec449f81692cf
