From: Al Viro Date: Fri, 20 Sep 2024 04:28:00 +0000 (-0400) Subject: io_[gs]etxattr_prep(): just use getname() X-Git-Tag: v6.13-rc1~217^2~9 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=b8cdd2530c7d7156413c5dfc1f4bc83c1d26b446;p=linux-block.git io_[gs]etxattr_prep(): just use getname() getname_flags(pathname, LOOKUP_FOLLOW) is obviously bogus - following trailing symlinks has no impact on how to copy the pathname from userland... Reviewed-by: Christian Brauner Reviewed-by: Jens Axboe Signed-off-by: Al Viro --- diff --git a/io_uring/xattr.c b/io_uring/xattr.c index 4b68c282c91a..967c5d8da061 100644 --- a/io_uring/xattr.c +++ b/io_uring/xattr.c @@ -96,7 +96,7 @@ int io_getxattr_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe) path = u64_to_user_ptr(READ_ONCE(sqe->addr3)); - ix->filename = getname_flags(path, LOOKUP_FOLLOW); + ix->filename = getname(path); if (IS_ERR(ix->filename)) { ret = PTR_ERR(ix->filename); ix->filename = NULL; @@ -189,7 +189,7 @@ int io_setxattr_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe) path = u64_to_user_ptr(READ_ONCE(sqe->addr3)); - ix->filename = getname_flags(path, LOOKUP_FOLLOW); + ix->filename = getname(path); if (IS_ERR(ix->filename)) { ret = PTR_ERR(ix->filename); ix->filename = NULL;