Expand description
The io_uring library for Rust.
The crate only provides a summary of the parameters. For more detailed documentation, see manpage.
§Supported Architectures
§Default Support
The following architectures are supported by default with prebuilt bindings:
x86_64aarch64riscv64loongarch64powerpc64
§Custom Bindings for Unsupported Architectures
If you need to build for a target architecture that is not supported by default, you have two options:
Option 1: Use the bindgen feature
[dependencies]
io-uring = { version = "0.7", features = ["bindgen"] }This will generate bindings at build time for your specific architecture.
Option 2: Use your own bindings with io_uring_use_own_sys
If you have custom bindings that you want to use:
- Generate or obtain the appropriate
sys.rsbindings for your target architecture - Set the
IO_URING_OWN_SYS_BINDINGenvironment variable to point to your binding file - Build with the
io_uring_use_own_syscfg flag:
export IO_URING_OWN_SYS_BINDING=/path/to/your/custom/sys.rs
cargo build --cfg io_uring_use_own_sysThis approach allows you to provide your own bindings without relying on bindgen or the prebuilt bindings.
Re-exports§
pub use cqueue::CompletionQueue;pub use register::Probe;pub use squeue::SubmissionQueue;
Modules§
- cqueue
- Completion Queue
- opcode
- Operation codes that can be used to construct
squeue::Entrys. - register
- Some register syscall related types or parameters.
- squeue
- Submission Queue
- types
- Common Linux types not provided by libc.
Structs§
- Builder
- IoUring build params
- Enter
Flags - See man page for complete description: https://man7.org/linux/man-pages/man2/io_uring_enter.2.html
- IoUring
- IoUring instance
- Parameters
- The parameters that were used to construct an
IoUring. - Submitter
- Interface for submitting submission queue events in an io_uring instance to the kernel for executing and registering files or buffers with the instance.