Summary: Update liburing with the kernel changes in io_uring. Signed-off-by: Stefan Roesch <shr@xxxxxx> --- src/include/liburing.h | 3 ++- src/include/liburing/io_uring.h | 10 ++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/include/liburing.h b/src/include/liburing.h index 5c03061..949a351 100644 --- a/src/include/liburing.h +++ b/src/include/liburing.h @@ -293,7 +293,8 @@ static inline void io_uring_prep_rw(int op, struct io_uring_sqe *sqe, int fd, sqe->buf_index = 0; sqe->personality = 0; sqe->file_index = 0; - sqe->__pad2[0] = sqe->__pad2[1] = 0; + sqe->addr3 = 0; + sqe->__pad2[0] = 0; } /** diff --git a/src/include/liburing/io_uring.h b/src/include/liburing/io_uring.h index 15516b7..57ad631 100644 --- a/src/include/liburing/io_uring.h +++ b/src/include/liburing/io_uring.h @@ -49,6 +49,7 @@ struct io_uring_sqe { __u32 rename_flags; __u32 unlink_flags; __u32 hardlink_flags; + __u32 xattr_flags; }; __u64 user_data; /* data to be passed back at completion time */ /* pack this to avoid bogus arm OABI complaints */ @@ -64,7 +65,8 @@ struct io_uring_sqe { __s32 splice_fd_in; __u32 file_index; }; - __u64 __pad2[2]; + __u64 addr3; + __u64 __pad2[1]; }; enum { @@ -149,6 +151,10 @@ enum { IORING_OP_SYMLINKAT, IORING_OP_LINKAT, IORING_OP_MSG_RING, + IORING_OP_FSETXATTR, + IORING_OP_SETXATTR, + IORING_OP_FGETXATTR, + IORING_OP_GETXATTR, /* this goes last, obviously */ IORING_OP_LAST, @@ -395,7 +401,7 @@ struct io_uring_probe { __u8 ops_len; /* length of ops[] array below */ __u16 resv; __u32 resv2[3]; - struct io_uring_probe_op ops[]; + struct io_uring_probe_op ops[0]; }; struct io_uring_restriction { -- 2.30.2