Report a bug
		
				If you spot a problem with this page, click here to create a Bugzilla issue.
		
			Improve this page
		
			Quickly fork, edit online, and submit a pull request for this page.
			Requires a signed-in GitHub account. This works well for small changes.
			If you'd like to make larger changes you may want to consider using
			a local clone.
		
	core.sys.linux.io_uring
D header file for the io_uring interface.
 Available since Linux 5.1
- structio_uring_sqe;
- IO submission data structure (Submission Queue Entry)- ubyteopcode;
- type of operation for this sqe
- ubyteflags;
- IOSQE_* flags
- ushortioprio;
- ioprio for the request
- intfd;
- file descriptor to do IO on
- ulongoff;
- offset into file
- ulongaddr;
- pointer to buffer or iovecs
- uintlen;
- buffer size or number of iovecs
- ushortpoll_events;
- compatibility
- uintpoll32_events;
- word-reversed for BE
- ulonguser_data;
- data to be passed back at completion time
- ushortbuf_index;
- index into fixed buffers, if usedpack this to avoid bogus arm OABI complaints
- ushortbuf_group;
- for grouped buffer selectionpack this to avoid bogus arm OABI complaints
- ushortpersonality;
- personality to use, if used
 
- IOSQE_FIXED_FILE
- use fixed fileset
- IOSQE_IO_DRAIN
- issue after inflight IO
- IOSQE_IO_LINK
- links next sqe
- IOSQE_IO_HARDLINK
- like LINK, but stronger
- IOSQE_ASYNC
- always go async
- IOSQE_BUFFER_SELECT
- select buffer from sqe.buf_group
- IORING_SETUP_IOPOLL
- io_context is polled
- IORING_SETUP_SQPOLL
- SQ poll thread
- IORING_SETUP_SQ_AFF
- sq_thread_cpu is valid
- IORING_SETUP_CQSIZE
- app defines CQ size
- IORING_SETUP_CLAMP
- clamp SQ/CQ ring sizes
- IORING_SETUP_ATTACH_WQ
- attach to existing wq
- IORING_SETUP_R_DISABLED
- start with ring disabled
- structio_uring_cqe;
- IO completion data structure (Completion Queue Entry)- ulonguser_data;
- submission passed back
- intres;
- result code for this event
 
- enum uintIORING_CQE_F_BUFFER;
- If set, the upper 16 bits are the buffer ID
- structio_sqring_offsets;
- Filled with the offset for mmap(2)
- IORING_SQ_NEED_WAKEUP
- needs io_uring_enter wakeup
- IORING_SQ_CQ_OVERFLOW
- CQ ring is overflown
- IORING_CQ_EVENTFD_DISABLED
- disable eventfd notifications
- structio_uring_params;
- Passed in for io_uring_setup(2)
- IORING_RESTRICTION_REGISTER_OP
- Allow an io_uring_register(2) opcode
- IORING_RESTRICTION_SQE_OP
- Allow an sqe opcode
- IORING_RESTRICTION_SQE_FLAGS_ALLOWED
- Allow sqe flags
- IORING_RESTRICTION_SQE_FLAGS_REQUIRED
- Require sqe flags (these flags must be set on each submission)
Copyright © 1999-2025 by the D Language Foundation | Page generated by
Ddoc on Mon Mar 31 10:27:42 2025