diff options
author | Santosh Kumar Pradhan <spradhan@redhat.com> | 2014-09-08 16:44:23 +0530 |
---|---|---|
committer | Niels de Vos <ndevos@redhat.com> | 2014-09-08 06:01:24 -0700 |
commit | 5c869aea79c0f304150eac014c7177e74ce0852e (patch) | |
tree | a2ddc8a5ddf1d48c1a7151aadf90a5d4760eb510 /xlators | |
parent | 72324ef5e6a1749fbdb1944b2f088f58090f81b3 (diff) |
gNFS: Fix memory leak in setacl code path
If ACL is set on a file in Gluster NFS mount (setfacl command),
and it succeed, then the NFS call state data is leaked. Though
all the failure code path frees up the memory.
Impact: There is a OOM kill i.e. vdsm invoked oom-killer during
rebalance and Killed process 4305, UID 0, (glusterfs nfs process)
FIX:
Make sure to deallocate the memory for call state in acl3_setacl_cbk()
using nfs3_call_state_wipe();
Signed-off-by: Santosh Kumar Pradhan <spradhan@redhat.com>
Change-Id: I9caa3f851e49daaba15be3eec626f1f2dd8e45b3
BUG: 1139195
Signed-off-by: Santosh Kumar Pradhan <spradhan@redhat.com>
Reviewed-on: http://review.gluster.org/8651
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Niels de Vos <ndevos@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/nfs/server/src/acl3.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xlators/nfs/server/src/acl3.c b/xlators/nfs/server/src/acl3.c index 42faffee854..5cd8b8e7061 100644 --- a/xlators/nfs/server/src/acl3.c +++ b/xlators/nfs/server/src/acl3.c @@ -471,6 +471,8 @@ acl3_setacl_cbk (call_frame_t *frame, void *cookie, acl3_setacl_reply (cs->req, &cs->args.setaclreply); + nfs3_call_state_wipe (cs); + return 0; } |