summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKrishnan P <kp@gluster.com>2011-06-21 01:12:08 +0000
committerAnand Avati <avati@gluster.com>2011-06-22 08:41:20 -0700
commit1b314d49744e3a7a371717a2c2f4658983160341 (patch)
tree1acf192968857169236353087362c1cb8f18172a
parentadf106dd982b4060ebd5491813e54504c086d0c8 (diff)
pump: mark pending before notify to children to avoid race in single CPU.
Signed-off-by: Krishnan Parthasarathi <kp@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 3050 ('replace-brick' hangs on vm's) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3050
-rw-r--r--xlators/cluster/afr/src/pump.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xlators/cluster/afr/src/pump.c b/xlators/cluster/afr/src/pump.c
index a7df543b4..97d57f650 100644
--- a/xlators/cluster/afr/src/pump.c
+++ b/xlators/cluster/afr/src/pump.c
@@ -840,13 +840,13 @@ pump_cmd_start_setxattr_cbk (call_frame_t *frame,
"Successfully initiated destination "
"brick connect");
+ pump_mark_start_pending (this);
+
/* send the PARENT_UP as pump is ready now */
prev = cookie;
if (prev && prev->this)
prev->this->notify (prev->this, GF_EVENT_PARENT_UP, this);
- pump_mark_start_pending (this);
-
out:
local->op_ret = ret;
pump_command_reply (frame, this);