Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a92d647 authored by Yan, Zheng's avatar Yan, Zheng Committed by Sage Weil
Browse files

ceph: fix ceph_set_acl()



If acl is equivalent to file mode permission bits, ceph_set_acl()
needs to remove any existing acl xattr. Use __ceph_setxattr() to
handle both setting and removing acl xattr cases, it doesn't return
-ENODATA when there is no acl xattr.

Signed-off-by: default avatarYan, Zheng <zheng.z.yan@intel.com>
parent 524186ac
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
@@ -160,11 +160,7 @@ int ceph_set_acl(struct inode *inode, struct posix_acl *acl, int type)
			goto out_dput;
	}

	if (value)
	ret = __ceph_setxattr(dentry, name, value, size, 0);
	else
		ret = __ceph_removexattr(dentry, name);

	if (ret) {
		if (new_mode != old_mode) {
			newattrs.ia_mode = old_mode;