From 7150cb4e6a1703c143aaa517166a6b5ad7f758f2 Mon Sep 17 00:00:00 2001 From: Amar Tumballi Date: Mon, 6 Sep 2010 01:40:18 +0000 Subject: changes in fuse proc thread initialization Signed-off-by: Amar Tumballi Signed-off-by: Vijay Bellur BUG: 1527 (mount time defunct window with remote volumes) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1527 --- libglusterfs/src/defaults.c | 4 ++-- xlators/mount/fuse/src/fuse-bridge.c | 29 +++++++++++++---------------- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/libglusterfs/src/defaults.c b/libglusterfs/src/defaults.c index 628130a0946..5aa0fad8937 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 cd2df760771..4de9685d13e 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; -- cgit