From 06607a4de8c4414bb102d61b9cf6307d8da020bb Mon Sep 17 00:00:00 2001 From: Raghavendra G Date: Mon, 30 Aug 2010 08:04:07 +0000 Subject: changes to client to make use of the rdma functionality. - preallocate buffers in client and pass them to transport layer whenever a large response is expected. Signed-off-by: Raghavendra G Signed-off-by: Vijay Bellur BUG: 513 (Introduce 0 copy rdma) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=513 --- xlators/protocol/client/src/client.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'xlators/protocol/client/src/client.c') diff --git a/xlators/protocol/client/src/client.c b/xlators/protocol/client/src/client.c index 458ecfa8f..c453b7a24 100644 --- a/xlators/protocol/client/src/client.c +++ b/xlators/protocol/client/src/client.c @@ -44,7 +44,10 @@ int client_destroy_rpc (xlator_t *this); int client_submit_request (xlator_t *this, void *req, call_frame_t *frame, rpc_clnt_prog_t *prog, int procnum, fop_cbk_fn_t cbk, - struct iobref *iobref, gfs_serialize_t sfunc) + struct iobref *iobref, gfs_serialize_t sfunc, + struct iovec *rsphdr, int rsphdr_count, + struct iovec *rsp_payload, int rsp_payload_count, + struct iobref *rsp_iobref) { int ret = -1; clnt_conf_t *conf = NULL; @@ -96,8 +99,9 @@ client_submit_request (xlator_t *this, void *req, call_frame_t *frame, count = 1; } /* Send the msg */ - ret = rpc_clnt_submit (conf->rpc, prog, procnum, cbk, &iov, count, NULL, 0, - iobref, frame, NULL, 0, NULL, 0, NULL); + ret = rpc_clnt_submit (conf->rpc, prog, procnum, cbk, &iov, count, NULL, + 0, iobref, frame, rsphdr, rsphdr_count, + rsp_payload, rsp_payload_count, rsp_iobref); if (ret == 0) { pthread_mutex_lock (&conf->rpc->conn.lock); -- cgit