during.io_uring

io_uring system api definitions.

See: https://github.com/torvalds/linux/blob/master/include/uapi/linux/io_uring.h

Last changes from: 760618f7a8e3b63aa06266efb301719c374e29d4 (20200724)

Members

Enums

AcceptFlags
enum AcceptFlags

Flags that can be used with the accept4(2) operation.

CQEFlags
enum CQEFlags

Flags used with CompletionEntry

CQRingFlags
enum CQRingFlags

CompletionQueue ring flags

EnterFlags
enum EnterFlags

io_uring_enter(2) flags

MsgFlags
enum MsgFlags

Flags for sendmsg(2) and recvmsg(2) operations.

Operation
enum Operation

Describes the operation to be performed

PollEvents
enum PollEvents

Possible poll event flags. See: poll(2)

RegisterOpCode
enum RegisterOpCode

io_uring_register(2) opcodes and arguments

SetupFeatures
enum SetupFeatures

io_uring_params->features flags

SetupFlags
enum SetupFlags

io_uring_setup() flags

SubmissionEntryFlags
enum SubmissionEntryFlags

sqe->flags

SyncFileRangeFlags
enum SyncFileRangeFlags

Flags for sync_file_range(2) operation.

TimeoutFlags
enum TimeoutFlags

sqe->timeout_flags

Functions

io_uring_enter
int io_uring_enter(int fd, uint to_submit, uint min_complete, EnterFlags flags, sigset_t* sig)

Initiate and/or complete asynchronous I/O

io_uring_register
int io_uring_register(int fd, RegisterOpCode opcode, const(void)* arg, uint nr_args)

Register files or user buffers for asynchronous I/O.

io_uring_setup
int io_uring_setup(uint entries, SetupParameters p)

Setup a context for performing asynchronous I/O.

Manifest constants

IO_URING_OP_SUPPORTED
enum IO_URING_OP_SUPPORTED;

Indicating that OP is supported by the kernel

SPLICE_F_FD_IN_FIXED
enum SPLICE_F_FD_IN_FIXED;

sqe->splice_flags extends splice(2) flags

Structs

CompletionEntry
struct CompletionEntry

IO completion data structure (Completion Queue Entry)

CompletionQueueRingOffsets
struct CompletionQueueRingOffsets

Field offsets used to map kernel structure to our.

KernelTimespec
struct KernelTimespec

Time specification as defined in kernel headers (used by TIMEOUT operations)

SetupParameters
struct SetupParameters

Passed in for io_uring_setup(2). Copied back with updated info on success.

SubmissionEntry
struct SubmissionEntry

IO operation submission data structure (Submission queue entry).

SubmissionQueueRingOffsets
struct SubmissionQueueRingOffsets

Filled with the offset for mmap(2)

Meta