2005-10-27 16:45:34

by Xin Zhao

[permalink] [raw]
Subject: is rpc_call blocking and wait for reponse before returning to the caller?

I am trying to implement a mechanism similar to rpc. So I might want
to know whether rpc_call return only after it receive response from
the server.

If so, how does it achieve asynchronous operation?

Thanks,

Xin


2005-10-27 17:02:43

by Trond Myklebust

[permalink] [raw]
Subject: Re: is rpc_call blocking and wait for reponse before returning to the caller?

to den 27.10.2005 klokka 12:45 (-0400) skreiv Xin Zhao:
> I am trying to implement a mechanism similar to rpc. So I might want
> to know whether rpc_call return only after it receive response from
> the server.

In newer kernels rpc_call is just a wrapper to rpc_call_sync() which is
the synchronous RPC call interface. That will always wait for a response
from the server before returning if the clnt->cl_soft flag is not set.

For asynchronous operation, there is rpc_call_async().

Cheers,
Trond