sysfs: sysfs_setattr remove unnecessary permission check.

inode_change_ok already clears the SGID bit when necessary
so there is no reason for sysfs_setattr to carry code to do
the same, and it is good to kill the extra copy because when
I moved the code last in certain corner cases the code will
look at the wrong gid.

Acked-by: Serge Hallyn <[email protected]>
Acked-by: Tejun Heo <[email protected]>
Signed-off-by: Eric W. Biederman <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
Eric W. Biederman 2009-11-20 16:08:58 -08:00 • committed by Greg Kroah-Hartman
commit e16acb503b

View file

@ -117,10 +117,6 @@ int sysfs_setattr(struct dentry *dentry, struct iattr *iattr)
return error;
iattr->ia_valid &= ~ATTR_SIZE; /* ignore size changes */
if (iattr->ia_valid & ATTR_MODE) {
if (!in_group_p(inode->i_gid) && !capable(CAP_FSETID))
iattr->ia_mode &= ~S_ISGID;
}
error = inode_setattr(inode, iattr);
if (error)