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

Commit 95203bef authored by Al Viro's avatar Al Viro
Browse files

generic_acl: no need to clone acl just to push it to set_cached_acl()



In-core acls are copy-on-write, so the reference taken by set_cached_acl() will
do just fine.

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent bc26ab5f
Loading
Loading
Loading
Loading
+2 −8
Original line number Diff line number Diff line
@@ -134,14 +134,8 @@ generic_acl_init(struct inode *inode, struct inode *dir)
	if (acl) {
		struct posix_acl *clone;

		if (S_ISDIR(inode->i_mode)) {
			clone = posix_acl_clone(acl, GFP_KERNEL);
			error = -ENOMEM;
			if (!clone)
				goto cleanup;
			set_cached_acl(inode, ACL_TYPE_DEFAULT, clone);
			posix_acl_release(clone);
		}
		if (S_ISDIR(inode->i_mode))
			set_cached_acl(inode, ACL_TYPE_DEFAULT, acl);
		clone = posix_acl_clone(acl, GFP_KERNEL);
		error = -ENOMEM;
		if (!clone)