summaryrefslogtreecommitdiffstats
path: root/xlators
diff options
context:
space:
mode:
authorKaushal M <kaushal@redhat.com>2015-04-28 18:42:41 +0530
committerVijay Bellur <vbellur@redhat.com>2015-05-06 10:47:17 -0700
commit141ec83ea6e33934d029f030efab48f334a78d72 (patch)
treef430f64043bdc538942bdaeca7278fa1faa89f7a /xlators
parentae9a7bc41f127a6aad59e60c79709623a7c41e57 (diff)
glusterd: Use uint32_t for peerinfo generation number
Using a uint64_t for the peerinfo generation number was overkill for how the generation number is used within GlusterD. It also prevented GlusterD from running on 32-bit architechtures, as uatomic_add_return doesn't support 64-bit values on 32-bit architechtures. This change was developed on the git branch at [1]. This commit is a combination of the following commits on the development branch. b78dba4 Use 32-bit generation number 2c37e4b Change other generation number variables to uint32_t [1]: https://github.com/kshlm/glusterfs/tree/urcu Change-Id: I0f310f56a4fb97d6bcbc23255a379ed5bb1ed9e1 BUG: 1218031 Signed-off-by: Kaushal M <kaushal@redhat.com> Reviewed-on: http://review.gluster.org/10426 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-mgmt.c16
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-op-sm.h2
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-sm.h2
-rw-r--r--xlators/mgmt/glusterd/src/glusterd.h2
4 files changed, 11 insertions, 11 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-mgmt.c b/xlators/mgmt/glusterd/src/glusterd-mgmt.c
index 6ad6ce6c33e..85d8c777884 100644
--- a/xlators/mgmt/glusterd/src/glusterd-mgmt.c
+++ b/xlators/mgmt/glusterd/src/glusterd-mgmt.c
@@ -399,7 +399,7 @@ int
glusterd_mgmt_v3_initiate_lockdown (glusterd_op_t op, dict_t *dict,
char **op_errstr,
gf_boolean_t *is_acquired,
- uint64_t txn_generation)
+ uint32_t txn_generation)
{
char *volname = NULL;
glusterd_peerinfo_t *peerinfo = NULL;
@@ -675,7 +675,7 @@ out:
int
glusterd_mgmt_v3_pre_validate (glusterd_op_t op, dict_t *req_dict,
char **op_errstr,
- uint64_t txn_generation)
+ uint32_t txn_generation)
{
int32_t ret = -1;
int32_t peer_cnt = 0;
@@ -933,7 +933,7 @@ out:
int
glusterd_mgmt_v3_brick_op (glusterd_op_t op, dict_t *req_dict, char **op_errstr,
- uint64_t txn_generation)
+ uint32_t txn_generation)
{
int32_t ret = -1;
int32_t peer_cnt = 0;
@@ -1177,7 +1177,7 @@ out:
int
glusterd_mgmt_v3_commit (glusterd_op_t op, dict_t *op_ctx, dict_t *req_dict,
- char **op_errstr, uint64_t txn_generation)
+ char **op_errstr, uint32_t txn_generation)
{
int32_t ret = -1;
int32_t peer_cnt = 0;
@@ -1401,7 +1401,7 @@ out:
int
glusterd_mgmt_v3_post_validate (glusterd_op_t op, int32_t op_ret, dict_t *dict,
dict_t *req_dict, char **op_errstr,
- uint64_t txn_generation)
+ uint32_t txn_generation)
{
int32_t ret = -1;
int32_t peer_cnt = 0;
@@ -1614,7 +1614,7 @@ int
glusterd_mgmt_v3_release_peer_locks (glusterd_op_t op, dict_t *dict,
int32_t op_ret, char **op_errstr,
gf_boolean_t is_acquired,
- uint64_t txn_generation)
+ uint32_t txn_generation)
{
int32_t ret = -1;
int32_t peer_cnt = 0;
@@ -1700,7 +1700,7 @@ glusterd_mgmt_v3_initiate_all_phases (rpcsvc_request_t *req, glusterd_op_t op,
xlator_t *this = NULL;
gf_boolean_t is_acquired = _gf_false;
uuid_t *originator_uuid = NULL;
- uint64_t txn_generation = 0;
+ uint32_t txn_generation = 0;
this = THIS;
GF_ASSERT (this);
@@ -1928,7 +1928,7 @@ glusterd_mgmt_v3_initiate_snap_phases (rpcsvc_request_t *req, glusterd_op_t op,
uuid_t *originator_uuid = NULL;
gf_boolean_t success = _gf_false;
char *cli_errstr = NULL;
- uint64_t txn_generation = 0;
+ uint32_t txn_generation = 0;
this = THIS;
GF_ASSERT (this);
diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.h b/xlators/mgmt/glusterd/src/glusterd-op-sm.h
index f6eaa372f35..6a1baa46f39 100644
--- a/xlators/mgmt/glusterd/src/glusterd-op-sm.h
+++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.h
@@ -103,7 +103,7 @@ struct glusterd_op_info_ {
int32_t op_errno;
char *op_errstr;
struct cds_list_head pending_bricks;
- uint64_t txn_generation;
+ uint32_t txn_generation;
};
typedef struct glusterd_op_info_ glusterd_op_info_t;
diff --git a/xlators/mgmt/glusterd/src/glusterd-sm.h b/xlators/mgmt/glusterd/src/glusterd-sm.h
index dceaa3e46b9..d75baa8d128 100644
--- a/xlators/mgmt/glusterd/src/glusterd-sm.h
+++ b/xlators/mgmt/glusterd/src/glusterd-sm.h
@@ -104,7 +104,7 @@ struct glusterd_peerinfo_ {
/* Members required for proper cleanup using RCU */
gd_rcu_head rcu_head;
pthread_mutex_t delete_lock;
- uint64_t generation;
+ uint32_t generation;
};
typedef struct glusterd_peerinfo_ glusterd_peerinfo_t;
diff --git a/xlators/mgmt/glusterd/src/glusterd.h b/xlators/mgmt/glusterd/src/glusterd.h
index 98b19f8e21c..f2a9be15c9f 100644
--- a/xlators/mgmt/glusterd/src/glusterd.h
+++ b/xlators/mgmt/glusterd/src/glusterd.h
@@ -172,7 +172,7 @@ typedef struct {
gf_store_handle_t *missed_snaps_list_shandle;
struct cds_list_head missed_snaps_list;
int ping_timeout;
- uint64_t generation;
+ uint32_t generation;
} glusterd_conf_t;