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: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
bc26ab5f65
commit
95203befa8
1 changed files with 2 additions and 8 deletions
|
@ -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)
|
||||
|
|
Loading…
Reference in a new issue