f2fs: project ids aren't idmapped
authorChristian Brauner <brauner@kernel.org>
Fri, 13 Jan 2023 11:49:09 +0000 (12:49 +0100)
committerChristian Brauner (Microsoft) <brauner@kernel.org>
Wed, 18 Jan 2023 16:51:45 +0000 (17:51 +0100)
Project ids are only settable filesystem wide in the initial namespace.
They don't take the mount's idmapping into account.

Note, that after we converted everything over to struct mnt_idmap
mistakes such as the one here aren't possible anymore as struct
mnt_idmap cannot be passed to functions that operate on k{g,u}ids.

Acked-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org>
fs/f2fs/namei.c

index 6032589..30baa0e 100644 (file)
@@ -246,7 +246,7 @@ static struct inode *f2fs_new_inode(struct user_namespace *mnt_userns,
                (F2FS_I(dir)->i_flags & F2FS_PROJINHERIT_FL))
                F2FS_I(inode)->i_projid = F2FS_I(dir)->i_projid;
        else
-               F2FS_I(inode)->i_projid = make_kprojid(mnt_userns,
+               F2FS_I(inode)->i_projid = make_kprojid(&init_user_ns,
                                                        F2FS_DEF_PROJID);
 
        err = fscrypt_prepare_new_inode(dir, inode, &encrypt);