summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cli/src/cli-rpc-ops.c2
-rw-r--r--xlators/features/marker/utils/syncdaemon/resource.py1
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-op-sm.c1
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-rebalance.c2
4 files changed, 6 insertions, 0 deletions
diff --git a/cli/src/cli-rpc-ops.c b/cli/src/cli-rpc-ops.c
index b0e00f63b3e..33b453373b6 100644
--- a/cli/src/cli-rpc-ops.c
+++ b/cli/src/cli-rpc-ops.c
@@ -1386,7 +1386,9 @@ print_limit_list (char *volname, char *limit_list)
unmount:
memset (&cmd_str, 0, sizeof (cmd_str));
+
#if GF_LINUX_HOST_OS
+ usleep (200000);
snprintf (cmd_str, sizeof (cmd_str), "umount -l %s", mountdir);
#else
snprintf (cmd_str, sizeof (cmd_str), "umount %s", mountdir);
diff --git a/xlators/features/marker/utils/syncdaemon/resource.py b/xlators/features/marker/utils/syncdaemon/resource.py
index f157b190721..d172462a70f 100644
--- a/xlators/features/marker/utils/syncdaemon/resource.py
+++ b/xlators/features/marker/utils/syncdaemon/resource.py
@@ -411,6 +411,7 @@ class GLUSTER(AbstractUrl, SlaveLocal, SlaveRemote):
raise RuntimeError("command failed: " + " ".join(argv))
logging.debug('auxiliary glusterfs mount in place')
os.chdir(d)
+ time.sleep(0.2) # XXX temporary workaround
argv = ['umount', '-l', d]
if os.spawnvp(os.P_WAIT, argv[0], argv):
raise RuntimeError("command failed: " + " ".join(argv))
diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.c b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
index cdf9973aa77..8d1cd639f3d 100644
--- a/xlators/mgmt/glusterd/src/glusterd-op-sm.c
+++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.c
@@ -4143,6 +4143,7 @@ glusterd_quota_child_waitpid (void *arg)
child_info = (glusterd_quota_child_info_t *)arg;
#ifdef GF_LINUX_HOST_OS
+ usleep (200000);
snprintf (cmd, sizeof (cmd), "umount -l %s",
child_info->mountdir);
system (cmd);
diff --git a/xlators/mgmt/glusterd/src/glusterd-rebalance.c b/xlators/mgmt/glusterd/src/glusterd-rebalance.c
index fec0a1b2e19..59d4963d42b 100644
--- a/xlators/mgmt/glusterd/src/glusterd-rebalance.c
+++ b/xlators/mgmt/glusterd/src/glusterd-rebalance.c
@@ -339,6 +339,7 @@ out:
gf_log ("rebalance", GF_LOG_INFO, "rebalance on %s complete",
defrag->mount);
+ usleep (200000);
snprintf (cmd_str, 1024, "umount -l %s", defrag->mount);
ret = system (cmd_str);
LOCK_DESTROY (&defrag->lock);
@@ -577,6 +578,7 @@ glusterd_handle_defrag_start (glusterd_volinfo_t *volinfo, char *op_errstr,
ret = pthread_create (&defrag->th, NULL, glusterd_defrag_start,
volinfo);
if (ret) {
+ usleep (200000);
snprintf (cmd_str, sizeof (cmd_str), "umount -l %s", defrag->mount);
if (system (cmd_str))
gf_log("glusterd", GF_LOG_DEBUG, "command: %s "