autobuild v3.12.2-46
Resolves: bz#1668327 bz#1684648 Signed-off-by: Milind Changire <mchangir@redhat.com>
This commit is contained in:
parent
e0c3417371
commit
75fd41cd04
@ -0,0 +1,75 @@
|
|||||||
|
From 5b57b686984498eee09ce1a5f27eef6a14e4387e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mohit Agrawal <moagrawa@redhat.com>
|
||||||
|
Date: Wed, 6 Mar 2019 12:55:56 +0530
|
||||||
|
Subject: [PATCH 533/534] glusterd: glusterd memory leak while running "gluster
|
||||||
|
v profile" in a loop
|
||||||
|
|
||||||
|
Problem: glusterd has memory leak while running "gluster v profile"
|
||||||
|
in a loop
|
||||||
|
|
||||||
|
Solution: Resolve leak code path to avoid leak
|
||||||
|
|
||||||
|
> Change-Id: Id608703ff6d0ad34ed8f921a5d25544e24cfadcd
|
||||||
|
> fixes: bz#1685414
|
||||||
|
> Cherry pick from commit 9374484917466dff4688d96ff7faa0de1c804a6c
|
||||||
|
> Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/22301/
|
||||||
|
|
||||||
|
Change-Id: I874a0e9947913c201c67b78aaaa982d1fae78b46
|
||||||
|
BUG: 1684648
|
||||||
|
Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
|
||||||
|
Reviewed-on: https://code.engineering.redhat.com/gerrit/164609
|
||||||
|
Tested-by: RHGS Build Bot <nigelb@redhat.com>
|
||||||
|
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com>
|
||||||
|
---
|
||||||
|
xlators/mgmt/glusterd/src/glusterd-mgmt.c | 5 +++--
|
||||||
|
xlators/mgmt/glusterd/src/glusterd-syncop.c | 4 +++-
|
||||||
|
2 files changed, 6 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/xlators/mgmt/glusterd/src/glusterd-mgmt.c b/xlators/mgmt/glusterd/src/glusterd-mgmt.c
|
||||||
|
index 275059c..e176288 100644
|
||||||
|
--- a/xlators/mgmt/glusterd/src/glusterd-mgmt.c
|
||||||
|
+++ b/xlators/mgmt/glusterd/src/glusterd-mgmt.c
|
||||||
|
@@ -1380,8 +1380,9 @@ out:
|
||||||
|
if (rsp.op_errstr)
|
||||||
|
free (rsp.op_errstr);
|
||||||
|
|
||||||
|
- if (rsp.dict.dict_val)
|
||||||
|
- free (rsp.dict.dict_val);
|
||||||
|
+ if (rsp_dict)
|
||||||
|
+ dict_unref (rsp_dict);
|
||||||
|
+
|
||||||
|
GF_FREE (peerid);
|
||||||
|
/* req->rpc_status set to -1 means, STACK_DESTROY will be called from
|
||||||
|
* the caller function.
|
||||||
|
diff --git a/xlators/mgmt/glusterd/src/glusterd-syncop.c b/xlators/mgmt/glusterd/src/glusterd-syncop.c
|
||||||
|
index 7baef64..3b7fa8b 100644
|
||||||
|
--- a/xlators/mgmt/glusterd/src/glusterd-syncop.c
|
||||||
|
+++ b/xlators/mgmt/glusterd/src/glusterd-syncop.c
|
||||||
|
@@ -1707,6 +1707,7 @@ gd_brick_op_phase (glusterd_op_t op, dict_t *op_ctx, dict_t *req_dict,
|
||||||
|
char **op_errstr)
|
||||||
|
{
|
||||||
|
glusterd_pending_node_t *pending_node = NULL;
|
||||||
|
+ glusterd_pending_node_t *tmp = NULL;
|
||||||
|
struct cds_list_head selected = {0,};
|
||||||
|
xlator_t *this = NULL;
|
||||||
|
int brick_count = 0;
|
||||||
|
@@ -1742,7 +1743,7 @@ gd_brick_op_phase (glusterd_op_t op, dict_t *op_ctx, dict_t *req_dict,
|
||||||
|
rsp_dict = NULL;
|
||||||
|
|
||||||
|
brick_count = 0;
|
||||||
|
- cds_list_for_each_entry (pending_node, &selected, list) {
|
||||||
|
+ cds_list_for_each_entry_safe (pending_node, tmp, &selected, list) {
|
||||||
|
rpc = glusterd_pending_node_get_rpc (pending_node);
|
||||||
|
if (!rpc) {
|
||||||
|
if (pending_node->type == GD_NODE_REBALANCE) {
|
||||||
|
@@ -1792,6 +1793,7 @@ gd_brick_op_phase (glusterd_op_t op, dict_t *op_ctx, dict_t *req_dict,
|
||||||
|
|
||||||
|
brick_count++;
|
||||||
|
glusterd_pending_node_put_rpc (pending_node);
|
||||||
|
+ GF_FREE(pending_node);
|
||||||
|
}
|
||||||
|
|
||||||
|
pending_node = NULL;
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
@ -0,0 +1,74 @@
|
|||||||
|
From 1454b4a477bf841d6bea610b3bb0b084730d38ab Mon Sep 17 00:00:00 2001
|
||||||
|
From: Amar Tumballi <amarts@redhat.com>
|
||||||
|
Date: Fri, 13 Apr 2018 10:28:01 +0530
|
||||||
|
Subject: [PATCH 534/534] fuse: make sure the send lookup on root instead of
|
||||||
|
getattr()
|
||||||
|
|
||||||
|
This change was done in https://review.gluster.org/16945. While the
|
||||||
|
changes added there were required, it was not necessary to remove the
|
||||||
|
getattr part. As fuse's lookup on root(/) comes as getattr only, this
|
||||||
|
change is very much required.
|
||||||
|
|
||||||
|
The previous fix for this bug was to add the check for revalidation in
|
||||||
|
lookup when it was sent on root. But I had removed the part where
|
||||||
|
getattr is coming on root. The removing was not requried to fix the
|
||||||
|
issue then. Added back this part of the code, to make sure we have
|
||||||
|
proper validation of root inode in many places like acl, etc.
|
||||||
|
|
||||||
|
upstream patch: https://review.gluster.org/#/c/glusterfs/+/19867/
|
||||||
|
|
||||||
|
> updates: bz#1437780
|
||||||
|
> Change-Id: I859c4ee1a3f407465cbf19f8934530848424ff50
|
||||||
|
> Signed-off-by: Amar Tumballi <amarts@redhat.com>
|
||||||
|
|
||||||
|
Change-Id: I85af744e7bd1a52367d85d5a5b07c4bdf409a66d
|
||||||
|
BUG: 1668327
|
||||||
|
Signed-off-by: N Balachandran <nbalacha@redhat.com>
|
||||||
|
Reviewed-on: https://code.engineering.redhat.com/gerrit/164663
|
||||||
|
Tested-by: RHGS Build Bot <nigelb@redhat.com>
|
||||||
|
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com>
|
||||||
|
---
|
||||||
|
xlators/mount/fuse/src/fuse-bridge.c | 20 ++++++++++++++++++++
|
||||||
|
1 file changed, 20 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c
|
||||||
|
index 175e1b8..ffc1013 100644
|
||||||
|
--- a/xlators/mount/fuse/src/fuse-bridge.c
|
||||||
|
+++ b/xlators/mount/fuse/src/fuse-bridge.c
|
||||||
|
@@ -1311,6 +1311,7 @@ fuse_getattr (xlator_t *this, fuse_in_header_t *finh, void *msg,
|
||||||
|
fuse_private_t *priv = NULL;
|
||||||
|
#endif
|
||||||
|
fuse_state_t *state;
|
||||||
|
+ int ret = -1;
|
||||||
|
|
||||||
|
GET_STATE (this, finh, state);
|
||||||
|
#if FUSE_KERNEL_MINOR_VERSION >= 9
|
||||||
|
@@ -1318,6 +1319,25 @@ fuse_getattr (xlator_t *this, fuse_in_header_t *finh, void *msg,
|
||||||
|
if (priv->proto_minor >= 9 && fgi->getattr_flags & FUSE_GETATTR_FH)
|
||||||
|
state->fd = fd_ref ((fd_t *)fgi->fh);
|
||||||
|
#endif
|
||||||
|
+ if (finh->nodeid == 1) {
|
||||||
|
+ state->gfid[15] = 1;
|
||||||
|
+
|
||||||
|
+ ret = fuse_loc_fill (&state->loc, state, finh->nodeid, 0, NULL);
|
||||||
|
+ if (ret < 0) {
|
||||||
|
+ gf_log ("glusterfs-fuse", GF_LOG_WARNING,
|
||||||
|
+ "%"PRIu64": GETATTR on / (fuse_loc_fill() failed)",
|
||||||
|
+ finh->unique);
|
||||||
|
+ send_fuse_err (this, finh, ENOENT);
|
||||||
|
+ free_fuse_state (state);
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ fuse_gfid_set (state);
|
||||||
|
+
|
||||||
|
+ FUSE_FOP (state, fuse_root_lookup_cbk, GF_FOP_LOOKUP,
|
||||||
|
+ lookup, &state->loc, state->xdata);
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
|
||||||
|
if (state->fd)
|
||||||
|
fuse_resolve_fd_init (state, &state->resolve, state->fd);
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
@ -192,7 +192,7 @@ Release: 0.1%{?prereltag:.%{prereltag}}%{?dist}
|
|||||||
%else
|
%else
|
||||||
Name: glusterfs
|
Name: glusterfs
|
||||||
Version: 3.12.2
|
Version: 3.12.2
|
||||||
Release: 45%{?dist}
|
Release: 46%{?dist}
|
||||||
%endif
|
%endif
|
||||||
License: GPLv2 or LGPLv3+
|
License: GPLv2 or LGPLv3+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
@ -797,6 +797,8 @@ Patch0529: 0529-fuse-SETLKW-interrupt.patch
|
|||||||
Patch0530: 0530-spec-fix-lua-script-execution-during-install.patch
|
Patch0530: 0530-spec-fix-lua-script-execution-during-install.patch
|
||||||
Patch0531: 0531-fuse-remove-the-duplicate-FUSE_FOP-calls.patch
|
Patch0531: 0531-fuse-remove-the-duplicate-FUSE_FOP-calls.patch
|
||||||
Patch0532: 0532-dht-fix-double-extra-unref-of-inode-at-heal-path.patch
|
Patch0532: 0532-dht-fix-double-extra-unref-of-inode-at-heal-path.patch
|
||||||
|
Patch0533: 0533-glusterd-glusterd-memory-leak-while-running-gluster-.patch
|
||||||
|
Patch0534: 0534-fuse-make-sure-the-send-lookup-on-root-instead-of-ge.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
GlusterFS is a distributed file-system capable of scaling to several
|
GlusterFS is a distributed file-system capable of scaling to several
|
||||||
@ -2661,6 +2663,9 @@ fi
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Mar 07 2019 Milind Changire <mchangir@redhat.com> - 3.12.2-46
|
||||||
|
- fixes bugs bz#1668327 bz#1684648
|
||||||
|
|
||||||
* Thu Feb 21 2019 Milind Changire <mchangir@redhat.com> - 3.12.2-45
|
* Thu Feb 21 2019 Milind Changire <mchangir@redhat.com> - 3.12.2-45
|
||||||
- fixes bugs bz#1678232
|
- fixes bugs bz#1678232
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user