diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2025-12-06 14:33:29 -0500 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2026-01-16 12:52:03 -0500 |
| commit | 5b9d406ff7cfde3f0367cac209d5bb2ac1c6e6b3 (patch) | |
| tree | e8bf60b64cc497ff3ae7bd4ea109704fa0ac85b8 /io_uring | |
| parent | e50aae1d39ac37a95f453a699456b73dd07e3913 (diff) | |
filename_...xattr(): don't consume filename reference
Callers switched to CLASS(filename_maybe_null) (in fs/xattr.c)
and CLASS(filename_complete_delayed) (in io_uring/xattr.c).
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'io_uring')
| -rw-r--r-- | io_uring/xattr.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/io_uring/xattr.c b/io_uring/xattr.c index 0fb4e5303500..ba2b98cf13f9 100644 --- a/io_uring/xattr.c +++ b/io_uring/xattr.c @@ -109,12 +109,12 @@ int io_fgetxattr(struct io_kiocb *req, unsigned int issue_flags) int io_getxattr(struct io_kiocb *req, unsigned int issue_flags) { struct io_xattr *ix = io_kiocb_to_cmd(req, struct io_xattr); + CLASS(filename_complete_delayed, name)(&ix->filename); int ret; WARN_ON_ONCE(issue_flags & IO_URING_F_NONBLOCK); - ret = filename_getxattr(AT_FDCWD, complete_getname(&ix->filename), - LOOKUP_FOLLOW, &ix->ctx); + ret = filename_getxattr(AT_FDCWD, name, LOOKUP_FOLLOW, &ix->ctx); io_xattr_finish(req, ret); return IOU_COMPLETE; } @@ -186,12 +186,12 @@ int io_fsetxattr(struct io_kiocb *req, unsigned int issue_flags) int io_setxattr(struct io_kiocb *req, unsigned int issue_flags) { struct io_xattr *ix = io_kiocb_to_cmd(req, struct io_xattr); + CLASS(filename_complete_delayed, name)(&ix->filename); int ret; WARN_ON_ONCE(issue_flags & IO_URING_F_NONBLOCK); - ret = filename_setxattr(AT_FDCWD, complete_getname(&ix->filename), - LOOKUP_FOLLOW, &ix->ctx); + ret = filename_setxattr(AT_FDCWD, name, LOOKUP_FOLLOW, &ix->ctx); io_xattr_finish(req, ret); return IOU_COMPLETE; } |
