summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@maxwell.aristanetworks.com>2009-11-21 03:08:58 +0300
committerGreg Kroah-Hartman <gregkh@suse.de>2009-12-11 22:24:54 +0300
commite16acb503b42ef241a9396de7c5a1614c74d8ca6 (patch)
tree369ea0ff38ffc59858f1fc0343885ddcb7df4e1f
parentca1bab38195d66bdf42320a99cc7359434a271d3 (diff)
downloadlinux-e16acb503b42ef241a9396de7c5a1614c74d8ca6.tar.xz
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 <serue@us.ibm.com> Acked-by: Tejun Heo <tj@kernel.org> Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--fs/sysfs/inode.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/fs/sysfs/inode.c b/fs/sysfs/inode.c
index 9f783d4e4b51..220b758523ae 100644
--- a/fs/sysfs/inode.c
+++ b/fs/sysfs/inode.c
@@ -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)