cb8e9e
From e1a3bc4b131ea76790ef95be9d6e2ef3092ee0b1 Mon Sep 17 00:00:00 2001
cb8e9e
From: Sachin Pandit <spandit@redhat.com>
cb8e9e
Date: Thu, 4 Jun 2015 11:01:38 +0530
cb8e9e
Subject: [PATCH 49/57] features/marker : Pass along xdata to lower translator
cb8e9e
cb8e9e
The problem was in marker xlator, where during
cb8e9e
rename a NULL value is passed during STACK_WIND.
cb8e9e
Marker needs to pass the xdata un-modified to next
cb8e9e
translator if marker does not rely on that.
cb8e9e
cb8e9e
Change-Id: I9e47e504fd241263987645abfed7ca13c0d54a80
cb8e9e
BUG: 1228173
cb8e9e
Signed-off-by: Sachin Pandit <spandit@redhat.com>
cb8e9e
Reviewed-on: http://review.gluster.org/11089
cb8e9e
Tested-by: Gluster Build System <jenkins@build.gluster.com>
cb8e9e
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
cb8e9e
Tested-by: Raghavendra G <rgowdapp@redhat.com>
cb8e9e
Signed-off-by: Sachin Pandit <spandit@redhat.com>
cb8e9e
Reviewed-on: https://code.engineering.redhat.com/gerrit/50532
cb8e9e
Reviewed-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
cb8e9e
Tested-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
cb8e9e
---
cb8e9e
 xlators/features/marker/src/marker.c |    4 +++-
cb8e9e
 1 files changed, 3 insertions(+), 1 deletions(-)
cb8e9e
cb8e9e
diff --git a/xlators/features/marker/src/marker.c b/xlators/features/marker/src/marker.c
cb8e9e
index 9e064ef..414177a 100644
cb8e9e
--- a/xlators/features/marker/src/marker.c
cb8e9e
+++ b/xlators/features/marker/src/marker.c
cb8e9e
@@ -1339,7 +1339,7 @@ marker_do_rename (call_frame_t *frame, void *cookie, xlator_t *this,
cb8e9e
 
cb8e9e
         STACK_WIND (frame, marker_rename_cbk, FIRST_CHILD(this),
cb8e9e
                     FIRST_CHILD(this)->fops->rename, &oplocal->loc,
cb8e9e
-                    &local->loc, NULL);
cb8e9e
+                    &local->loc, local->xdata);
cb8e9e
 
cb8e9e
         return 0;
cb8e9e
 
cb8e9e
@@ -1596,6 +1596,8 @@ marker_rename (call_frame_t *frame, xlator_t *this, loc_t *oldloc,
cb8e9e
         lock.l_type   = F_WRLCK;
cb8e9e
         lock.l_whence = SEEK_SET;
cb8e9e
 
cb8e9e
+        local->xdata = dict_ref (xdata);
cb8e9e
+
cb8e9e
         STACK_WIND (frame,
cb8e9e
                     marker_rename_inodelk_cbk,
cb8e9e
                     FIRST_CHILD(this),
cb8e9e
-- 
cb8e9e
1.7.1
cb8e9e