summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnoop C S <achiraya@redhat.com>2014-11-19 16:27:05 +0530
committerKaushal M <kaushal@redhat.com>2014-11-19 23:24:31 -0800
commit720e2c0df7bbf2d3daed20cadd5f3f710576a05c (patch)
treed04d2df1ba79dfac9b0fb37d588ff7bc613d8f34
parent33800b332ec7aa70fa14809c1030cfabaddc02a0 (diff)
rdma: Client volfile name change for supporting rdma
For rdma only volumes, daemons like snapd, glustershd etc make use of tcp transport for their operations. This patch will introduce the support of rdma by default for those daemons in rdma only volumes. In order to accomodate this change we rename the tcp client volfile labels from <volname>-fuse.vol to <volname>.tcp-fuse.vol Change-Id: Id9727b97d00e62a4a1556b9c0c56653d45c8fe1d BUG: 1164079 Signed-off-by: Anoop C S <achiraya@redhat.com> Reviewed-on: http://review.gluster.org/9146 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Kaushal M <kaushal@redhat.com>
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-handshake.c22
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-utils.c4
2 files changed, 22 insertions, 4 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-handshake.c b/xlators/mgmt/glusterd/src/glusterd-handshake.c
index f2f5178a456..8c9194e1961 100644
--- a/xlators/mgmt/glusterd/src/glusterd-handshake.c
+++ b/xlators/mgmt/glusterd/src/glusterd-handshake.c
@@ -158,7 +158,8 @@ build_volfile_path (char *volume_id, char *path,
char *free_ptr = NULL;
char *volname = NULL;
char *volid_ptr = NULL;
- char path_prefix [PATH_MAX] = {0,};
+ char dup_volid[PATH_MAX] = {0,};
+ char path_prefix[PATH_MAX] = {0,};
xlator_t *this = NULL;
glusterd_volinfo_t *volinfo = NULL;
glusterd_conf_t *priv = NULL;
@@ -275,10 +276,27 @@ gotvolinfo:
ret = stat (path, &stbuf);
if ((ret == -1) && (errno == ENOENT)) {
+ strcpy (dup_volid, volid_ptr);
+ if (!strchr (dup_volid, '.')) {
+ switch (volinfo->transport_type) {
+ case GF_TRANSPORT_TCP:
+ strcat (dup_volid, ".tcp");
+ break;
+ case GF_TRANSPORT_RDMA:
+ strcat (dup_volid, ".rdma");
+ break;
+ case GF_TRANSPORT_BOTH_TCP_RDMA:
+ strcat (dup_volid, ".tcp");
+ break;
+ default:
+ ret = -1;
+ break;
+ }
+ }
snprintf (path, path_len, "%s/%s/%s%s-fuse.vol",
path_prefix, volinfo->volname,
(trusted_str ? trusted_str : ""),
- volid_ptr);
+ dup_volid);
ret = stat (path, &stbuf);
}
out:
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c
index 85d716e2e18..e285a499a5c 100644
--- a/xlators/mgmt/glusterd/src/glusterd-utils.c
+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c
@@ -9067,7 +9067,7 @@ glusterd_get_client_filepath (char *filepath, glusterd_volinfo_t *volinfo,
switch (type) {
case GF_TRANSPORT_TCP:
snprintf (filepath, PATH_MAX,
- "%s/%s-fuse.vol", path, volinfo->volname);
+ "%s/%s.tcp-fuse.vol", path, volinfo->volname);
break;
case GF_TRANSPORT_RDMA:
@@ -9097,7 +9097,7 @@ glusterd_get_trusted_client_filepath (char *filepath,
switch (type) {
case GF_TRANSPORT_TCP:
- snprintf (filepath, PATH_MAX, "%s/trusted-%s-fuse.vol",
+ snprintf (filepath, PATH_MAX, "%s/trusted-%s.tcp-fuse.vol",
path, volinfo->volname);
break;