From 22aa93129319a667b004111a4385520a4ba30060 Mon Sep 17 00:00:00 2001 From: Amar Tumballi Date: Wed, 11 Jul 2012 21:59:20 +0530 Subject: rpc: add extra arguments to _callback's actor function Need to differentiate the callback functions based on which rpc-clnt the callback is received. without it, all callback actor handling will be like global. BUG: 839345 Change-Id: Ide024f5585eab3c5fe6c3b33250772fb6e8ad655 Signed-off-by: Amar Tumballi Reviewed-on: http://review.gluster.com/3656 Tested-by: Gluster Build System Reviewed-by: Anand Avati --- xlators/protocol/client/src/client-callback.c | 6 +++--- xlators/protocol/client/src/client.c | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'xlators/protocol/client') diff --git a/xlators/protocol/client/src/client-callback.c b/xlators/protocol/client/src/client-callback.c index b8bda96ce71..d886862f776 100644 --- a/xlators/protocol/client/src/client-callback.c +++ b/xlators/protocol/client/src/client-callback.c @@ -17,7 +17,7 @@ #include "rpc-clnt.h" int -client_cbk_null (void *data) +client_cbk_null (struct rpc_clnt *rpc, void *mydata, void *data) { gf_log (THIS->name, GF_LOG_WARNING, "this function should not be called"); @@ -25,7 +25,7 @@ client_cbk_null (void *data) } int -client_cbk_fetchspec (void *data) +client_cbk_fetchspec (struct rpc_clnt *rpc, void *mydata, void *data) { gf_log (THIS->name, GF_LOG_WARNING, "this function should not be called"); @@ -33,7 +33,7 @@ client_cbk_fetchspec (void *data) } int -client_cbk_ino_flush (void *data) +client_cbk_ino_flush (struct rpc_clnt *rpc, void *mydata, void *data) { gf_log (THIS->name, GF_LOG_WARNING, "this function should not be called"); diff --git a/xlators/protocol/client/src/client.c b/xlators/protocol/client/src/client.c index 65df70f0604..77111ec3445 100644 --- a/xlators/protocol/client/src/client.c +++ b/xlators/protocol/client/src/client.c @@ -2278,7 +2278,8 @@ client_init_rpc (xlator_t *this) conf->handshake = &clnt_handshake_prog; conf->dump = &clnt_dump_prog; - ret = rpcclnt_cbk_program_register (conf->rpc, &gluster_cbk_prog); + ret = rpcclnt_cbk_program_register (conf->rpc, &gluster_cbk_prog, + this); if (ret) { gf_log (this->name, GF_LOG_ERROR, "failed to register callback program"); -- cgit