summaryrefslogtreecommitdiff
path: root/fs/fat
diff options
context:
space:
mode:
authorEric Sandeen <sandeen@redhat.com>2024-07-02 17:45:57 -0500
committerChristian Brauner <brauner@kernel.org>2024-07-03 10:48:59 +0200
commitd02f0bb332d52c0330a1ef11cf98b7ec6448b99b (patch)
treef17ffb4451f1908d43204acdefa3c33bc47aab64 /fs/fat
parent634440b69c7f7c67478bc775f2c6977afd4adc82 (diff)
fat: Convert to new uid/gid option parsing helpers
Convert to new uid/gid option parsing helpers Signed-off-by: Eric Sandeen <sandeen@redhat.com> Link: https://lore.kernel.org/r/1a67d2a8-0aae-42a2-9c0f-21cd4cd87d13@redhat.com Acked-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'fs/fat')
-rw-r--r--fs/fat/inode.c16
1 files changed, 4 insertions, 12 deletions
diff --git a/fs/fat/inode.c b/fs/fat/inode.c
index b83b39f2f69b..8fbf5edb7aa2 100644
--- a/fs/fat/inode.c
+++ b/fs/fat/inode.c
@@ -1091,8 +1091,8 @@ static const struct constant_table fat_param_conv[] = {
/* Core options. See below for vfat and msdos extras */
const struct fs_parameter_spec fat_param_spec[] = {
fsparam_enum ("check", Opt_check, fat_param_check),
- fsparam_u32 ("uid", Opt_uid),
- fsparam_u32 ("gid", Opt_gid),
+ fsparam_uid ("uid", Opt_uid),
+ fsparam_gid ("gid", Opt_gid),
fsparam_u32oct ("umask", Opt_umask),
fsparam_u32oct ("dmask", Opt_dmask),
fsparam_u32oct ("fmask", Opt_fmask),
@@ -1161,8 +1161,6 @@ int fat_parse_param(struct fs_context *fc, struct fs_parameter *param,
struct fat_mount_options *opts = fc->fs_private;
struct fs_parse_result result;
int opt;
- kuid_t uid;
- kgid_t gid;
/* remount options have traditionally been ignored */
if (fc->purpose == FS_CONTEXT_FOR_RECONFIGURE)
@@ -1209,16 +1207,10 @@ int fat_parse_param(struct fs_context *fc, struct fs_parameter *param,
opts->sys_immutable = 1;
break;
case Opt_uid:
- uid = make_kuid(current_user_ns(), result.uint_32);
- if (!uid_valid(uid))
- return -EINVAL;
- opts->fs_uid = uid;
+ opts->fs_uid = result.uid;
break;
case Opt_gid:
- gid = make_kgid(current_user_ns(), result.uint_32);
- if (!gid_valid(gid))
- return -EINVAL;
- opts->fs_gid = gid;
+ opts->fs_gid = result.gid;
break;
case Opt_umask:
opts->fs_fmask = opts->fs_dmask = result.uint_32;