diff options
author | Sachin Pandit <spandit@redhat.com> | 2015-06-04 11:01:38 +0530 |
---|---|---|
committer | Vijay Bellur <vbellur@redhat.com> | 2015-06-11 12:31:54 -0700 |
commit | fcb1b773b06235d67f24f662424d28e3b2c2f5a3 (patch) | |
tree | 873e47d9a65ba961dfc6fc6e4df47bcc6746910c /xlators/features/marker | |
parent | a8ab5a2c1ed8dba170f628688881905313e3a8e7 (diff) |
features/marker : Pass along xdata to lower translator
The problem was in marker xlator, where during
rename a NULL value is passed during STACK_WIND.
Marker needs to pass the xdata un-modified to next
translator if marker does not rely on that.
Change-Id: I9e47e504fd241263987645abfed7ca13c0d54a80
BUG: 1230693
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/11089
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Tested-by: Raghavendra G <rgowdapp@redhat.com>
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/11182
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'xlators/features/marker')
-rw-r--r-- | xlators/features/marker/src/marker.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/xlators/features/marker/src/marker.c b/xlators/features/marker/src/marker.c index 9e064ef7c54..414177aa6c5 100644 --- a/xlators/features/marker/src/marker.c +++ b/xlators/features/marker/src/marker.c @@ -1339,7 +1339,7 @@ marker_do_rename (call_frame_t *frame, void *cookie, xlator_t *this, STACK_WIND (frame, marker_rename_cbk, FIRST_CHILD(this), FIRST_CHILD(this)->fops->rename, &oplocal->loc, - &local->loc, NULL); + &local->loc, local->xdata); return 0; @@ -1596,6 +1596,8 @@ marker_rename (call_frame_t *frame, xlator_t *this, loc_t *oldloc, lock.l_type = F_WRLCK; lock.l_whence = SEEK_SET; + local->xdata = dict_ref (xdata); + STACK_WIND (frame, marker_rename_inodelk_cbk, FIRST_CHILD(this), |