posix_acl: Clear SGID bit when setting file permissions
[sfrench/cifs-2.6.git] / fs / ceph / acl.c
index 4f67227f69a5aab225ebc651fd03f5d3f7cb3069..d0b6b342dff982c487880beb9d5bd3868f7502d6 100644 (file)
@@ -95,11 +95,9 @@ int ceph_set_acl(struct inode *inode, struct posix_acl *acl, int type)
        case ACL_TYPE_ACCESS:
                name = XATTR_NAME_POSIX_ACL_ACCESS;
                if (acl) {
-                       ret = posix_acl_equiv_mode(acl, &new_mode);
-                       if (ret < 0)
+                       ret = posix_acl_update_mode(inode, &new_mode, &acl);
+                       if (ret)
                                goto out;
-                       if (ret == 0)
-                               acl = NULL;
                }
                break;
        case ACL_TYPE_DEFAULT: