path: root/xlators/protocol/server/src/server3_1-fops.c
diff options
authorAmar Tumballi <>2012-05-24 12:58:04 +0530
committerAnand Avati <>2012-05-24 17:32:32 -0700
commit89b3466373191b7d2f0001778308b2393ea74da6 (patch)
tree00a69678ad54be29d9b487c2f01a70ffeaeceef7 /xlators/protocol/server/src/server3_1-fops.c
parent9f81eb0b24f27ea9797bb8a4ff062e6f77e872fd (diff)
rpc: fix the vecsizer issue
* currently, we needed 'base-address' of the header for glusterfs writev vecsizer and 'current-address' of the buffer which is reading the data on socket, for nfs write vecsizer. * nfs write issues started coming after was pushed into repo, now fixed. * fixed by sending both as argument for vecsizer from the transport Change-Id: I6db360ce265ce5f083f1794ebdb3867f8cfad9ec Signed-off-by: Amar Tumballi <> BUG: 824472 Reviewed-on: Tested-by: Gluster Build System <> Reviewed-by: Jeff Darcy <> Reviewed-by: Anand Avati <>
Diffstat (limited to 'xlators/protocol/server/src/server3_1-fops.c')
1 files changed, 3 insertions, 2 deletions
diff --git a/xlators/protocol/server/src/server3_1-fops.c b/xlators/protocol/server/src/server3_1-fops.c
index 06283461d..166f72094 100644
--- a/xlators/protocol/server/src/server3_1-fops.c
+++ b/xlators/protocol/server/src/server3_1-fops.c
@@ -3431,7 +3431,8 @@ server_writev_vec (rpcsvc_request_t *req, struct iovec *payload,
-server_writev_vecsizer (int state, ssize_t *readsize, char *addr)
+server_writev_vecsizer (int state, ssize_t *readsize, char *base_addr,
+ char *curr_addr)
ssize_t size = 0;
int nextstate = 0;
@@ -3449,7 +3450,7 @@ server_writev_vecsizer (int state, ssize_t *readsize, char *addr)
size = xdr_sizeof ((xdrproc_t) xdr_gfs3_write_req,
- xdrmem_create (&xdr, addr, size, XDR_DECODE);
+ xdrmem_create (&xdr, base_addr, size, XDR_DECODE);
/* This will fail if there is xdata sent from client, if not,
well and good */