Expand description
Operation codes that can be used to construct squeue::Entrys.
Structs
- Accept a new connection on a socket, equivalent to
accept4(2). - Accept multiple new connections on a socket.
- Attempt to cancel an already issued request.
- Attempt to cancel an already issued request, receiving a cancellation builder, which allows for the new cancel criterias introduced since 5.19.
- Close a file descriptor, equivalent to
close(2). - Connect a socket, equivalent to
connect(2). - Modify an epoll file descriptor, equivalent to
epoll_ctl(2). - Predeclare an access pattern for file data, equivalent to
posix_fadvise(2). - Preallocate or deallocate space to a file, equivalent to
fallocate(2). - 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. - File sync, equivalent to
fsync(2). - Create a hard link, equivalent to
linkat2(2). - 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. - Give advice about use of memory, equivalent to
madvise(2). - Make a directory, equivalent to
mkdirat2(2). - Send a message (with data) to a target ring.
- Send a message (with fixed FD) to a target ring.
- Do not perform any I/O.
- Open a file, equivalent to
openat(2). - Open a file, equivalent to
openat2(2). - Poll the specified fd.
- Remove an existing poll request.
- Register
nbufsbuffers that each have the lengthlenwith ids starting frombidin the groupbgidthat can be used for any request. SeeBUFFER_SELECTfor more info. - Issue the equivalent of a
pread(2)orpwrite(2)system call - Read from pre-mapped buffers that have been previously registered with
Submitter::register_buffers. - Vectored read, equivalent to
preadv2(2). - Receive a message from a socket, equivalent to
recv(2). - Receive a message on a socket, equivalent to
recvmsg(2). - Receive multiple messages on a socket, equivalent to
recvmsg(2). - Receive multiple messages from a socket, equivalent to
recv(2). - Remove some number of buffers from a buffer group. See
BUFFER_SELECTfor more info. - Send a message on a socket, equivalent to
send(2). - Send a message on a socket, equivalent to
send(2). - Send a zerocopy message on a socket, equivalent to
send(2). - Send a zerocopy message on a socket, equivalent to
send(2). - Shut down all or part of a full duplex connection on a socket, equivalent to
shutdown(2). Available since kernel 5.11. - Create an endpoint for communication, equivalent to
socket(2). - Splice data to/from a pipe, equivalent to
splice(2). - Get file status, equivalent to
statx(2). - Create a symlink, equivalent to
symlinkat2(2). - Sync a file segment with disk, equivalent to
sync_file_range(2). - Duplicate pipe content, equivalent to
tee(2). - Register a timeout operation.
- Attempt to remove an existing timeout operation.
- Attempt to update an existing timeout operation with a new timespec. The optional
countvalue of the original timeout value cannot be updated. - A file/device-specific 16-byte command, akin (but not equivalent) to
ioctl(2). - A file/device-specific 80-byte command, akin (but not equivalent) to
ioctl(2). - Issue the equivalent of a
pread(2)orpwrite(2)system call - Write to pre-mapped buffers that have been previously registered with
Submitter::register_buffers. - Vectored write, equivalent to
pwritev2(2).