On Thu, Jul 14, 2022 at 02:11:25PM +0800, Yang Xu wrote: > Add a dedicated helper to handle the setgid bit when creating a new file > in a setgid directory. This is a preparatory patch for moving setgid > stripping into the vfs. The patch contains no functional changes. > > Currently the setgid stripping logic is open-coded directly in > inode_init_owner() and the individual filesystems are responsible for > handling setgid inheritance. Since this has proven to be brittle as > evidenced by old issues we uncovered over the last months (see [1] to > [3] below) we will try to move this logic into the vfs. > > Link: e014f37db1a2 ("xfs: use setattr_copy to set vfs inode attributes") [1] > Link: 01ea173e103e ("xfs: fix up non-directory creation in SGID directories") [2] > Link: fd84bfdddd16 ("ceph: fix up non-directory creation in SGID directories") [3] > Reviewed-by: Darrick J. Wong <djwong@xxxxxxxxxx> > Reviewed-by: Christian Brauner (Microsoft) <brauner@xxxxxxxxxx> > Reviewed-and-Tested-by: Jeff Layton <jlayton@xxxxxxxxxx> > Signed-off-by: Yang Xu <xuyang2018.jy@xxxxxxxxxxx> > --- Fyi, I'm on vacation this week and will review this when I get back and if things look sane plan to pick it up for the next mw. Christian