[][src]Struct syscall::io_uring::v1::SqEntry32

#[repr(C, align(32))]pub struct SqEntry32 {
    pub opcode: u8,
    pub flags: u8,
    pub priority: u16,
    pub syscall_flags: u32,
    pub fd: u32,
    pub len: u32,
    pub user_data: u32,
    pub addr: u32,
    pub offset: u64,
}

A 32-bit Submission Queue Entry, representing a syscall to submit. Takes up 32 bytes of space. Implements Ord by comparing priority, so that they can be stored in BinaryHeap. This entry type is not restricted to only 32-bit platforms, and can be used as a smaller alternative entry type, to fit more entries within the same memory region.

Fields

opcode: u8

An opcode with varying definitions; by default it is one of StandardOpcode. Works the same way as with SqEntry64::opcode. This field belongs to the "implicit fields".

flags: u8

Flags specifying how the submission is going to be executed, and etc.

This field belongs to the "implicit fields".

priority: u16

The priority of the syscall; higher priorities may cause the syscall to be reordererd with lower priority syscalls.

This field belongs to the "implicit fields".

syscall_flags: u32

Specific to the opcode, but usually bitflags.

fd: u32

Specific to the opcode, but usually a file descriptor to operate on.

len: u32

Specific to the opcode, but usually the length of a buffer, or number of items.

user_data: u32

A custom value that is simply passed on to the completion entry, allowing completions to be distinguished between each other, and mapped to their corresponding submissions.

This field belongs to the "implicit fields".

addr: u32

Specific to the syscall, but usually an address to a buffer.

offset: u64

Specific to the syscall, and can be used for many different purposes, sometimes also as an address in order to access the 64-bit address space for opcodes that do not use it for anything else.

Trait Implementations

impl Clone for SqEntry32[src]

impl Copy for SqEntry32[src]

impl Debug for SqEntry32[src]

impl Default for SqEntry32[src]

impl Eq for SqEntry32[src]

impl GenericSubmissionEntry for SqEntry32[src]

impl Hash for SqEntry32[src]

impl Ord for SqEntry32[src]

impl PartialEq<SqEntry32> for SqEntry32[src]

impl PartialOrd<SqEntry32> for SqEntry32[src]

impl StructuralEq for SqEntry32[src]

impl StructuralPartialEq for SqEntry32[src]

Auto Trait Implementations

impl Send for SqEntry32

impl Sync for SqEntry32

impl Unpin for SqEntry32

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.