summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmar Tumballi <amar@gluster.com>2010-09-06 01:40:18 +0000
committerVijay Bellur <vijay@dev.gluster.com>2010-09-06 02:47:08 -0700
commit7150cb4e6a1703c143aaa517166a6b5ad7f758f2 (patch)
tree3ea49039edfc22e16de652b64016a827fadd22ff
parent59baa88ab0f240e60f9d4044f4cf096a73d33caa (diff)
changes in fuse proc thread initialization
Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1527 (mount time defunct window with remote volumes) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1527
-rw-r--r--libglusterfs/src/defaults.c4
-rw-r--r--xlators/mount/fuse/src/fuse-bridge.c29
2 files changed, 15 insertions, 18 deletions
diff --git a/libglusterfs/src/defaults.c b/libglusterfs/src/defaults.c
index 628130a09..5aa0fad89 100644
--- a/libglusterfs/src/defaults.c
+++ b/libglusterfs/src/defaults.c
@@ -1220,13 +1220,13 @@ default_notify (xlator_t *this, int32_t event, void *data, ...)
{
xlator_list_t *list = this->children;
- while (list)
- {
+ while (list) {
xlator_notify (list->xlator, event, this);
list = list->next;
}
}
break;
+ case GF_EVENT_CHILD_CONNECTING:
case GF_EVENT_CHILD_UP:
{
xlator_list_t *parent = this->parents;
diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c
index cd2df7607..4de9685d1 100644
--- a/xlators/mount/fuse/src/fuse-bridge.c
+++ b/xlators/mount/fuse/src/fuse-bridge.c
@@ -3285,11 +3285,21 @@ notify (xlator_t *this, int32_t event, void *data, ...)
{
case GF_EVENT_GRAPH_NEW:
graph = data;
+ /* TODO: */
+
+ break;
+
+ case GF_EVENT_CHILD_CONNECTING:
+ case GF_EVENT_CHILD_UP:
+ {
+ /* set priv->active_subvol */
+ /* set priv->first_lookup = 1 */
+ graph = data;
+ ret = fuse_graph_setup (this, graph);
+ if (ret)
+ break;
if (!private->fuse_thread_started) {
- ret = fuse_graph_setup (this, graph);
- if (ret)
- break;
private->fuse_thread_started = 1;
ret = pthread_create (&private->fuse_thread, NULL,
@@ -3302,19 +3312,6 @@ notify (xlator_t *this, int32_t event, void *data, ...)
}
}
- break;
-
-// case GF_EVENT_CHILD_CONNECTING:
-
- case GF_EVENT_CHILD_UP:
- {
- /* set priv->active_subvol */
- /* set priv->first_lookup = 1 */
- graph = data;
- ret = fuse_graph_setup (this, graph);
- if (ret)
- break;
-
pthread_mutex_lock (&private->sync_mutex);
{
private->child_up = 1;