summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-utils.c
diff options
context:
space:
mode:
authorAtin Mukherjee <amukherj@redhat.com>2015-03-24 11:27:52 +0530
committerKrishnan Parthasarathi <kparthas@redhat.com>2015-03-26 00:10:45 -0700
commit087ad8a001c77ec9703a0a74256819cf99cc31d4 (patch)
treeb5feadc3a57573fa15d052150286b5475b7c1597 /xlators/mgmt/glusterd/src/glusterd-utils.c
parentf64666f113e7f0d3f7061dfed7e6e24928e85161 (diff)
glusterd: Maintain local xaction_peer list for op-sm
http://review.gluster.org/9269 addresses maintaining local xaction_peers in syncop and mgmt_v3 framework. This patch is to maintain local xaction_peers list for op-sm framework as well. Change-Id: Idd8484463fed196b3b18c2df7f550a3302c6e138 BUG: 1204727 Signed-off-by: Atin Mukherjee <amukherj@redhat.com> Reviewed-on: http://review.gluster.org/9972 Reviewed-by: Anand Nekkunti <anekkunt@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com> Tested-by: Krishnan Parthasarathi <kparthas@redhat.com>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-utils.c')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-utils.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c
index 03cebdc518a..c41fb9385ad 100644
--- a/xlators/mgmt/glusterd/src/glusterd-utils.c
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c
@@ -9965,3 +9965,22 @@ glusterd_list_add_order (struct cds_list_head *new, struct cds_list_head *head,
cds_list_add_rcu (new, pos);
}
+
+void
+gd_cleanup_local_xaction_peers_list (struct cds_list_head *xact_peers)
+{
+ glusterd_local_peers_t *local_peers = NULL;
+ glusterd_local_peers_t *tmp = NULL;
+
+ GF_ASSERT (xact_peers);
+
+ if (cds_list_empty (xact_peers))
+ return;
+
+ cds_list_for_each_entry_safe (local_peers, tmp, xact_peers,
+ op_peers_list) {
+ GF_FREE (local_peers);
+ /* local_peers->peerinfo need not be freed because it does not
+ * ownership of peerinfo, but merely refer it */
+ }
+}