diff options
author | Pranith Kumar K <pkarampu@redhat.com> | 2016-04-23 05:30:08 +0530 |
---|---|---|
committer | Pranith Kumar Karampuri <pkarampu@redhat.com> | 2016-04-25 19:30:20 -0700 |
commit | 32b03257c16aa44dd98377a84208c8a5fdb9b2ef (patch) | |
tree | 68432ea49a8c7872cc65498ef2441ec9bdc6d6d3 /xlators | |
parent | 0ce1a038ab54a52a0c295e830abe035d4113ba83 (diff) |
cluster/afr: Fix inode-leak in data self-heal
Thanks to Olia-Kremmyda for finding the bug on github review,
https://github.com/gluster/glusterfs/commit/b8106d1127f034ffa88b5dd322c23a10e023b9b6
>Change-Id: Ib8640ed0c331a635971d5d12052f0959c24f76a2
>BUG: 1329773
>Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
>Reviewed-on: http://review.gluster.org/14052
>Smoke: Gluster Build System <jenkins@build.gluster.com>
>NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
>CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
>Reviewed-by: Ravishankar N <ravishankar@redhat.com>
>Reviewed-by: Krutika Dhananjay <kdhananj@redhat.com>
BUG: 1329779
Change-Id: I3d77f0b445fdedf2c582ea88f8d89e1da525638f
Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
Reviewed-on: http://review.gluster.org/14053
Smoke: Gluster Build System <jenkins@build.gluster.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Krutika Dhananjay <kdhananj@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/cluster/afr/src/afr-self-heal-data.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c index 67bb8e6d3c9..72f6b2ad945 100644 --- a/xlators/cluster/afr/src/afr-self-heal-data.c +++ b/xlators/cluster/afr/src/afr-self-heal-data.c @@ -814,7 +814,6 @@ afr_selfheal_data_open (xlator_t *this, inode_t *inode, fd_t **fd) ret = syncop_open (this, &loc, O_RDWR|O_LARGEFILE, fd_tmp, NULL, NULL); if (ret < 0) { fd_unref (fd_tmp); - loc_wipe (&loc); goto out; } else { fd_bind (fd_tmp); @@ -822,6 +821,7 @@ afr_selfheal_data_open (xlator_t *this, inode_t *inode, fd_t **fd) *fd = fd_tmp; out: + loc_wipe (&loc); return ret; } |