Expand description
Operation codes that can be used to construct squeue::Entrys.
Structs§
- Accept
- Accept a new connection on a socket, equivalent to
accept4(2). - Accept
Multi - Accept multiple new connections on a socket.
- Async
Cancel - Attempt to cancel an already issued request.
- Async
Cancel2 - Attempt to cancel an already issued request, receiving a cancellation builder, which allows for the new cancel criterias introduced since 5.19.
- Bind
- Bind a socket, equivalent to
bind(2). - Close
- Close a file descriptor, equivalent to
close(2). - Connect
- Connect a socket, equivalent to
connect(2). - Epoll
Ctl - Modify an epoll file descriptor, equivalent to
epoll_ctl(2). - Epoll
Wait - Issue the equivalent of a
epoll_wait(2)system call. - FGet
Xattr - Get extended attribute from a file descriptor, equivalent to
fgetxattr(2). - FSet
Xattr - Set extended attribute on a file descriptor, equivalent to
fsetxattr(2). - Fadvise
- Predeclare an access pattern for file data, equivalent to
posix_fadvise(2). - Fallocate
- Preallocate or deallocate space to a file, equivalent to
fallocate(2). - Files
Update - This command is an alternative to using
Submitter::register_files_updatewhich then works in an async fashion, like the rest of the io_uring commands. - Fixed
FdInstall - Install a fixed file descriptor
- Fsync
- File sync, equivalent to
fsync(2). - Ftruncate
- Perform file truncation, equivalent to
ftruncate(2). - Futex
Wait - Wait on a futex, like but not equivalant to
futex(2)’sFUTEX_WAIT_BITSET. - Futex
WaitV - Wait on multiple futexes.
- Futex
Wake - Wake up waiters on a futex, like but not equivalant to
futex(2)’sFUTEX_WAKE_BITSET. - GetXattr
- Get extended attribute, equivalent to
getxattr(2). - LinkAt
- Create a hard link, equivalent to
linkat(2). - Link
Timeout - This request must be linked with another request through
Flags::IO_LINKwhich is described below. UnlikeTimeout,LinkTimeoutacts on the linked request, not the completion queue. - Listen
- Listen on a socket, equivalent to
listen(2). - Madvise
- Give advice about use of memory, equivalent to
madvise(2). - MkDirAt
- Make a directory, equivalent to
mkdirat(2). - MsgRing
Data - Send a message (with data) to a target ring.
- MsgRing
Send Fd - Send a message (with fixed FD) to a target ring.
- Nop
- Do not perform any I/O.
- OpenAt
- Open a file, equivalent to
openat(2). - OpenAt2
- Open a file, equivalent to
openat2(2). - Pipe
- PollAdd
- Poll the specified fd.
- Poll
Remove - Remove an existing poll request.
- Provide
Buffers - Register
nbufsbuffers that each have the lengthlenwith ids starting frombidin the groupbgidthat can be used for any request. SeeBUFFER_SELECTfor more info. - Read
- Issue the equivalent of a
pread(2)orpwrite(2)system call - Read
Fixed - Read from a file into a fixed buffer that has been previously registered with
Submitter::register_buffers. - Read
Multi - Issue the equivalent of
pread(2)with multi-shot semantics. - Readv
- Vectored read, equivalent to
preadv2(2). - Readv
Fixed - Vectored read into a fixed buffer, equivalent to
preadv2(2). - Recv
- Receive a message from a socket, equivalent to
recv(2). - Recv
Bundle - Receive a bundle of buffers from a socket.
- RecvMsg
- Receive a message on a socket, equivalent to
recvmsg(2). - Recv
MsgMulti - Receive multiple messages on a socket, equivalent to
recvmsg(2). - Recv
Multi - Receive multiple messages from a socket, equivalent to
recv(2). - Recv
Multi Bundle - Receive multiple messages from a socket as a bundle.
- RecvZc
- Issue the zerocopy equivalent of a
recv(2)system call. - Remove
Buffers - Remove some number of buffers from a buffer group. See
BUFFER_SELECTfor more info. - Rename
At - Send
- Send a message on a socket, equivalent to
send(2). - Send
Bundle - Send a bundle of messages on a socket in a single request.
- SendMsg
- Send a message on a socket, equivalent to
send(2). - Send
MsgZc - Send a zerocopy message on a socket, equivalent to
send(2). - SendZc
- Send a zerocopy message on a socket, equivalent to
send(2). - SetSock
Opt - Set a socket option.
- SetXattr
- Set extended attribute, equivalent to
setxattr(2). - Shutdown
- Shut down all or part of a full duplex connection on a socket, equivalent to
shutdown(2). Available since kernel 5.11. - Socket
- Create an endpoint for communication, equivalent to
socket(2). - Splice
- Splice data to/from a pipe, equivalent to
splice(2). - Statx
- Get file status, equivalent to
statx(2). - Symlink
At - Create a symlink, equivalent to
symlinkat(2). - Sync
File Range - Sync a file segment with disk, equivalent to
sync_file_range(2). - Tee
- Duplicate pipe content, equivalent to
tee(2). - Timeout
- Register a timeout operation.
- Timeout
Remove - Attempt to remove an existing timeout operation.
- Timeout
Update - Attempt to update an existing timeout operation with a new timespec.
The optional
countvalue of the original timeout value cannot be updated. - Unlink
At - Uring
Cmd16 - A file/device-specific 16-byte command, akin (but not equivalent) to
ioctl(2). - Uring
Cmd80 - A file/device-specific 80-byte command, akin (but not equivalent) to
ioctl(2). - WaitId
- Issue the equivalent of a
waitid(2)system call. - Write
- Issue the equivalent of a
pread(2)orpwrite(2)system call - Write
Fixed - Write to a file from a fixed buffer that have been previously registered with
Submitter::register_buffers. - Writev
- Vectored write, equivalent to
pwritev2(2). - Writev
Fixed - Vectored write from a fixed buffer, equivalent to
pwritev2(2).