mirror of
https://github.com/brain-hackers/linux-brain.git
synced 2024-06-09 23:36:23 +09:00
nfs: fix acl memory leak of posix_acl_create()
[ Upstream commit 1fcb6fcd74a222d9ead54d405842fc763bb86262 ]
When looking into another nfs xfstests report, I found acl and
default_acl in nfs3_proc_create() and nfs3_proc_mknod() error
paths are possibly leaked. Fix them in advance.
Fixes: 013cdf1088
("nfs: use generic posix ACL infrastructure for v3 Posix ACLs")
Cc: Trond Myklebust <trond.myklebust@hammerspace.com>
Cc: Anna Schumaker <anna.schumaker@netapp.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Joseph Qi <joseph.qi@linux.alibaba.com>
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
e7de89b8b2
commit
d0b32dc140
|
@ -350,7 +350,7 @@ nfs3_proc_create(struct inode *dir, struct dentry *dentry, struct iattr *sattr,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case NFS3_CREATE_UNCHECKED:
|
case NFS3_CREATE_UNCHECKED:
|
||||||
goto out;
|
goto out_release_acls;
|
||||||
}
|
}
|
||||||
nfs_fattr_init(data->res.dir_attr);
|
nfs_fattr_init(data->res.dir_attr);
|
||||||
nfs_fattr_init(data->res.fattr);
|
nfs_fattr_init(data->res.fattr);
|
||||||
|
@ -717,7 +717,7 @@ nfs3_proc_mknod(struct inode *dir, struct dentry *dentry, struct iattr *sattr,
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
status = -EINVAL;
|
status = -EINVAL;
|
||||||
goto out;
|
goto out_release_acls;
|
||||||
}
|
}
|
||||||
|
|
||||||
d_alias = nfs3_do_create(dir, dentry, data);
|
d_alias = nfs3_do_create(dir, dentry, data);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user