diff options
author | Atin Mukherjee <amukherj@redhat.com> | 2015-03-24 11:27:52 +0530 |
---|---|---|
committer | Krishnan Parthasarathi <kparthas@redhat.com> | 2015-03-26 00:10:45 -0700 |
commit | 087ad8a001c77ec9703a0a74256819cf99cc31d4 (patch) | |
tree | b5feadc3a57573fa15d052150286b5475b7c1597 /xlators/mgmt/glusterd/src/glusterd-utils.h | |
parent | f64666f113e7f0d3f7061dfed7e6e24928e85161 (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.h')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-utils.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.h b/xlators/mgmt/glusterd/src/glusterd-utils.h index f923bfad757..4420daeecc2 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.h +++ b/xlators/mgmt/glusterd/src/glusterd-utils.h @@ -46,6 +46,16 @@ *active_count = *active_count + 1;\ } while (0) +#define list_for_each_local_xaction_peers(xact_peer, xact_peers_head) \ + glusterd_local_peers_t *pos = NULL; \ + for (pos = cds_list_entry ((xact_peers_head)->next, \ + glusterd_local_peers_t, op_peers_list), \ + xact_peer = pos->peerinfo; \ + &pos->op_peers_list != (xact_peers_head); \ + pos = cds_list_entry(pos->op_peers_list.next, \ + glusterd_local_peers_t, op_peers_list), \ + xact_peer = pos->peerinfo) + struct glusterd_lock_ { uuid_t owner; time_t timestamp; @@ -698,4 +708,7 @@ glusterd_list_add_order (struct cds_list_head *new, struct cds_list_head *head, int (*compare)(struct cds_list_head *, struct cds_list_head *)); +void +gd_cleanup_local_xaction_peers_list (struct cds_list_head *peers); + #endif |