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: dd47c104533dedb90434a3f142e94a671ac623a6 (20210913)

Members

Enums

AcceptFlags
enum AcceptFlags

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

CQEFlags
enum CQEFlags

Flags used with CompletionEntry

CQE_BUFFER_SHIFT
anonymousenum CQE_BUFFER_SHIFT
Undocumented in source.
CQRingFlags
enum CQRingFlags

CompletionQueue ring flags

EnterFlags
enum EnterFlags

io_uring_enter(2) flags

FsyncFlags
enum FsyncFlags
Undocumented in source.
IOWQCategory
enum IOWQCategory
Undocumented in source.
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)

PollFlags
enum PollFlags

POLL_ADD flags

ReadWriteFlags
enum ReadWriteFlags
Undocumented in source.
RegisterOpCode
enum RegisterOpCode

io_uring_register(2) opcodes and arguments

RestrictionOp
enum RestrictionOp

io_uring_restriction->opcode values

SetupFeatures
enum SetupFeatures

io_uring_params->features flags

SetupFlags
enum SetupFlags

io_uring_setup() flags

SubmissionEntryFlags
enum SubmissionEntryFlags

sqe->flags

SubmissionQueueFlags
enum SubmissionQueueFlags
Undocumented in source.
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)
int io_uring_enter(int fd, uint to_submit, uint min_complete, EnterFlags flags, io_uring_getevents_arg* args)

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

IORING_REGISTER_FILES_SKIP
enum IORING_REGISTER_FILES_SKIP;

Skip updating fd indexes set to this value in the fd table

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)

io_uring_getevents_arg
struct io_uring_getevents_arg
Undocumented in source.
io_uring_probe
struct io_uring_probe
Undocumented in source.
io_uring_probe_op
struct io_uring_probe_op
Undocumented in source.
io_uring_restriction
struct io_uring_restriction
Undocumented in source.

Meta