[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230310212748.3679076-5-viro@zeniv.linux.org.uk>
Date: Fri, 10 Mar 2023 21:27:45 +0000
From: Al Viro <viro@...iv.linux.org.uk>
To: linux-fsdevel@...r.kernel.org
Cc: linux-kernel@...r.kernel.org
Subject: [PATCH 5/8] build_mount_idmapped(): switch to fdget()
Signed-off-by: Al Viro <viro@...iv.linux.org.uk>
---
fs/namespace.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/fs/namespace.c b/fs/namespace.c
index bc0f15257b49..d26ea0d9041f 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -4197,7 +4197,7 @@ static int build_mount_idmapped(const struct mount_attr *attr, size_t usize,
int err = 0;
struct ns_common *ns;
struct user_namespace *mnt_userns;
- struct file *file;
+ struct fd f;
if (!((attr->attr_set | attr->attr_clr) & MOUNT_ATTR_IDMAP))
return 0;
@@ -4213,16 +4213,16 @@ static int build_mount_idmapped(const struct mount_attr *attr, size_t usize,
if (attr->userns_fd > INT_MAX)
return -EINVAL;
- file = fget(attr->userns_fd);
- if (!file)
+ f = fdget(attr->userns_fd);
+ if (!f.file)
return -EBADF;
- if (!proc_ns_file(file)) {
+ if (!proc_ns_file(f.file)) {
err = -EINVAL;
goto out_fput;
}
- ns = get_proc_ns(file_inode(file));
+ ns = get_proc_ns(file_inode(f.file));
if (ns->ops->type != CLONE_NEWUSER) {
err = -EINVAL;
goto out_fput;
@@ -4251,7 +4251,7 @@ static int build_mount_idmapped(const struct mount_attr *attr, size_t usize,
kattr->mnt_userns = get_user_ns(mnt_userns);
out_fput:
- fput(file);
+ fdput(f);
return err;
}
--
2.30.2
Powered by blists - more mailing lists