nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl
authorAndreas Gruenbacher <agruenba@redhat.com>
Mon, 20 Apr 2020 13:51:47 +0000 (15:51 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 May 2020 06:15:16 +0000 (08:15 +0200)
commitd458565e3c02db6921d9a3bb586f3ca9f26544d7
treec71eafdd348c5b8f547ac2f5641ce249a7b56e83
parent779f155811ebd61860a171f02183925107c4e226
nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl

commit 7648f939cb919b9d15c21fff8cd9eba908d595dc upstream.

nfs3_set_acl keeps track of the acl it allocated locally to determine if an acl
needs to be released at the end.  This results in a memory leak when the
function allocates an acl as well as a default acl.  Fix by releasing acls
that differ from the acl originally passed into nfs3_set_acl.

Fixes: b7fa0554cf1b ("[PATCH] NFS: Add support for NFSv3 ACLs")
Reported-by: Xiyu Yang <xiyuyang19@fudan.edu.cn>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/nfs3acl.c