summaryrefslogtreecommitdiffstats
path: root/xlators
diff options
context:
space:
mode:
authormohit84 <moagrawa@redhat.com>2021-02-22 10:09:34 +0530
committerGitHub <noreply@github.com>2021-02-22 10:09:34 +0530
commitadf95699621f084f2503d8dd15e519bab778906f (patch)
tree5b93e052cf39e0da0fd793209529e83833b5efcf /xlators
parent1ce8e8f5ea5d18f7e5ac669cd1c79b6966533f74 (diff)
downloadglusterfs-adf95699621f084f2503d8dd15e519bab778906f.tar.gz
glusterfs-adf95699621f084f2503d8dd15e519bab778906f.tar.xz
glusterfs-adf95699621f084f2503d8dd15e519bab778906f.zip
glusterd: Resolve use after free bug (#2181)
In the commit 61ae58e67567ea4de8f8efc6b70a9b1f8e0f1bea introduced a coverity bug use object after cleanup the object. Cleanup memory after comeout from a critical section Fixes: #2180 Change-Id: Iee2050c4883a0dd44b8523bb822b664462ab6041 Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-utils.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c
index 71d546e904..e4e1185af6 100644
--- a/xlators/mgmt/glusterd/src/glusterd-utils.c
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c
@@ -149,11 +149,10 @@ glusterd_defrag_unref(glusterd_defrag_info_t *defrag)
LOCK(&defrag->lock);
{
refcnt = --defrag->refcnt;
- if (refcnt <= 0)
- GF_FREE(defrag);
}
UNLOCK(&defrag->lock);
-
+ if (refcnt <= 0)
+ GF_FREE(defrag);
out:
return refcnt;
}