Skip to main content

AvailableFeatures

Struct AvailableFeatures 

Source
pub struct AvailableFeatures {
Show 29 fields pub buffer_selection: bool, pub multi_shot: bool, pub provided_buffers: bool, pub fast_poll: bool, pub sq_poll: bool, pub coop_taskrun: bool, pub defer_taskrun: bool, pub fixed_files: bool, pub fixed_buffers: bool, pub advanced_task_work: bool, pub defer_async_work: bool, pub send_zc_reporting: bool, pub multishot_completion_batching: bool, pub epoll_uring_wake: bool, pub registered_ring_fd: bool, pub multishot_timeouts: bool, pub user_allocated_ring_memory: bool, pub async_cancel_op: bool, pub socket_command_support: bool, pub sysctl_disable_support: bool, pub direct_io_optimizations: bool, pub msg_ring_speedup: bool, pub native_bind_listen: bool, pub improved_huge_pages: bool, pub async_discard: bool, pub minimum_timeout_waits: bool, pub absolute_timeouts: bool, pub incremental_buffer_consumption: bool, pub registered_buffer_cloning: bool,
}
Expand description

Available io_uring features on this kernel.

Fields§

§buffer_selection: bool

Buffer selection is supported

§multi_shot: bool

Multi-shot operations are supported

§provided_buffers: bool

Provided buffers are supported

§fast_poll: bool

Fast poll is supported

§sq_poll: bool

SQ polling is supported

§coop_taskrun: bool

Cooperative task running is supported

§defer_taskrun: bool

Task work defer is supported

§fixed_files: bool

Fixed files are supported

§fixed_buffers: bool

Fixed buffers are supported

§advanced_task_work: bool

Advanced task work management (6.1+)

§defer_async_work: bool

Deferred async work until GETEVENTS (6.1+)

§send_zc_reporting: bool

Zero-copy send reporting with SEND_ZC_REPORT_USAGE (6.2+)

§multishot_completion_batching: bool

Completion batching for multishot operations (6.2+)

§epoll_uring_wake: bool

EPOLL_URING_WAKE support (6.2+)

§registered_ring_fd: bool

io_uring_register() with registered ring fd (6.3+)

§multishot_timeouts: bool

Multishot timeout operations (6.4+)

§user_allocated_ring_memory: bool

User-allocated ring memory (6.5+)

§async_cancel_op: bool

Async operation cancellation with IORING_ASYNC_CANCEL_OP (6.6+)

§socket_command_support: bool

io_uring command support for sockets (6.6+)

§sysctl_disable_support: bool

System-wide io_uring disable sysctl (6.6+)

§direct_io_optimizations: bool

Direct I/O performance optimizations (6.6+)

§msg_ring_speedup: bool

MSG_RING performance improvements (6.11+)

§native_bind_listen: bool

Native bind/listen operations (6.11+)

§improved_huge_pages: bool

Improved huge page segment handling (6.12+)

§async_discard: bool

Fully asynchronous discard operations (6.12+)

§minimum_timeout_waits: bool

Minimum timeout waits with dual conditions (6.12+)

§absolute_timeouts: bool

Absolute timeouts with multiple clock sources (6.12+)

§incremental_buffer_consumption: bool

Incremental provided buffer consumption (6.12+)

§registered_buffer_cloning: bool

Registered buffer cloning across threads (6.12+)

Trait Implementations§

Source§

impl Clone for AvailableFeatures

Source§

fn clone(&self) -> AvailableFeatures

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AvailableFeatures

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.