History

io_uring: add non-vectored read/write commands

For uses cases that don't already naturally have an iovec, it's easier (or more convenient) to just use a buffer address + length. This is particular true if the use case is from languages that want to create a memory safe abstraction on top of io_uring, and where introducing the need for the iovec may impose an ownership issue. For those cases, they currently need an indirection buffer, which means allocating data just for this purpose. Add basic read/write that don't require the iovec.

Jens Axboe committed 6 years ago

Commit 3a6820f1 parent e94f1412 files · +25 −0Browse files

Showing the changes to include/uapi/linux (1 of 2 files). Show all

Unified · Split

include/uapi/linux/io_uring.h+2−0
@@ -84,6 +84,8 @@ enum { · 83 unmodified lines
84 IORING_OP_CLOSE,84 IORING_OP_CLOSE,
85 IORING_OP_FILES_UPDATE,85 IORING_OP_FILES_UPDATE,
86 IORING_OP_STATX,86 IORING_OP_STATX,
87 IORING_OP_READ,
88 IORING_OP_WRITE,
87 89
88 /* this goes last, obviously */90 /* this goes last, obviously */
89 IORING_OP_LAST,91 IORING_OP_LAST,