From: Linus Torvalds Date: Tue, 31 Aug 2021 18:06:32 +0000 (-0700) Subject: Merge tag 'vfs-5.15-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux X-Git-Tag: microblaze-v5.16~178 X-Git-Url: http://git.monstr.eu/?p=linux-2.6-microblaze.git;a=commitdiff_plain;h=916d636e0a2df48be48b573d8ec9070408d7681f;hp=8bda95577627dc0633c48d581ea3605c27efe829 Merge tag 'vfs-5.15-merge-1' of git://git./fs/xfs/xfs-linux Pull project quota update from Darrick Wong: "A single VFS patch that prevents userspace from setting project quota ids on files that the VFS considers invalid" * tag 'vfs-5.15-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: fs: forbid invalid project ID --- diff --git a/fs/ioctl.c b/fs/ioctl.c index eea8267ae1f2..504e69578112 100644 --- a/fs/ioctl.c +++ b/fs/ioctl.c @@ -614,6 +614,14 @@ static int fileattr_set_prepare(struct inode *inode, if ((old_ma->fsx_xflags ^ fa->fsx_xflags) & FS_XFLAG_PROJINHERIT) return -EINVAL; + } else { + /* + * Caller is allowed to change the project ID. If it is being + * changed, make sure that the new value is valid. + */ + if (old_ma->fsx_projid != fa->fsx_projid && + !projid_valid(make_kprojid(&init_user_ns, fa->fsx_projid))) + return -EINVAL; } /* Check extent size hints. */