fat: port to vfs{g,u}id_t and associated helpers
authorChristian Brauner <brauner@kernel.org>
Fri, 9 Sep 2022 09:30:19 +0000 (11:30 +0200)
committerChristian Brauner (Microsoft) <brauner@kernel.org>
Tue, 20 Sep 2022 09:09:31 +0000 (11:09 +0200)
A while ago we introduced a dedicated vfs{g,u}id_t type in commit
1e5267cd0895 ("mnt_idmapping: add vfs{g,u}id_t"). We already switched
over a good part of the VFS. Ultimately we will remove all legacy
idmapped mount helpers that operate only on k{g,u}id_t in favor of the
new type safe helpers that operate on vfs{g,u}id_t.

Cc: Seth Forshee (Digital Ocean) <sforshee@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>
Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Cc: linux-fsdevel@vger.kernel.org
Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org>
Acked-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
fs/fat/file.c

index 3e4eb34..8a6b493 100644 (file)
@@ -461,8 +461,9 @@ static int fat_allow_set_time(struct user_namespace *mnt_userns,
 {
        umode_t allow_utime = sbi->options.allow_utime;
 
-       if (!uid_eq(current_fsuid(), i_uid_into_mnt(mnt_userns, inode))) {
-               if (in_group_p(i_gid_into_mnt(mnt_userns, inode)))
+       if (!vfsuid_eq_kuid(i_uid_into_vfsuid(mnt_userns, inode),
+                           current_fsuid())) {
+               if (vfsgid_in_group_p(i_gid_into_vfsgid(mnt_userns, inode)))
                        allow_utime >>= 3;
                if (allow_utime & MAY_WRITE)
                        return 1;