[PATCH v3 0/2] io_uring: add fremovexattr and flistxattr support
From: Aditya Prakash Srivastava
Date: Tue Jul 21 2026 - 06:54:17 EST
This series completes io_uring's FD-based xattr operations by adding
support for:
- IORING_OP_FREMOVEXATTR
- IORING_OP_FLISTXATTR
This allows asynchronous xattr removal and listing.
New test cases have been added to the liburing test suite (test/xattr.c)
and verified to pass. A separate userspace patch implementing the matching
prep helpers, sanitizers, and test cases is submitted in parallel.
- Patch 1 makes the necessary VFS-layer list/remove helpers non-static
and declares them in fs/internal.h.
- Patch 2 implements the io_uring operational support (opcodes, opdefs,
preparation, and issue handlers) and invokes these exposed helpers.
Changes since v2:
- Revert unnecessary formatting changes to filename_listxattr in Patch 1.
Changes since v1:
- Omit path-based opcodes to prioritize optimal FD-based variants.
- Limit exported VFS helpers to only file_listxattr and file_removexattr.
- Rewrite standalone test program into a standard liburing testcase.
Aditya Prakash Srivastava (2):
fs: make file_listxattr and file_removexattr helpers non-static
io_uring: add fremovexattr and flistxattr support
fs/internal.h | 2 +
fs/xattr.c | 3 +-
include/uapi/linux/io_uring.h | 2 +
io_uring/opdef.c | 18 +++++++
io_uring/xattr.c | 74 +++++++++++++++++++++++++++++
io_uring/xattr.h | 6 +++
tools/include/uapi/linux/io_uring.h | 13 +++++
7 files changed, 116 insertions(+), 2 deletions(-)
--
2.47.3