On Tue, 2018-05-22 at 15:28 -0400, Olga Kornievskaia wrote: > On Tue, May 22, 2018 at 3:03 PM, Trond Myklebust > <trondmy@xxxxxxxxxxxxxxx> wrote: > > On Tue, 2018-05-22 at 14:40 -0400, Olga Kornievskaia wrote: > > > From: Olga Kornievskaia <olga.kornievskaia@xxxxxxxxx> > > > > > > For pNFS, the operations to DS currently timeout in 10s. > > > According > > > to the spec, the client must not be re-trying an NFSv4.1 > > > operation > > > unless the connection was broken. > > > > > > Signed-off-by: Olga Kornievskaia <kolga@xxxxxxxxxx> > > > --- > > > net/sunrpc/clnt.c | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c > > > index 6e432ec..97517eb 100644 > > > --- a/net/sunrpc/clnt.c > > > +++ b/net/sunrpc/clnt.c > > > @@ -668,6 +668,7 @@ struct rpc_clnt * > > > .prognumber = clnt->cl_prog, > > > .version = clnt->cl_vers, > > > .authflavor = flavor, > > > + .timeout = clnt->cl_timeout, > > > }; > > > return __rpc_clone_client(&args, clnt); > > > } > > > > What does this patch have to do with pNFS? That's the generic RPC > > client cloning API you are changing. > > > > The pNFS/files timeouts are intended to be set using the > > dataserver_retrans and dataserver_timeo module parameters described > > at > > the bottom of fs/nfs/filelayout/filelayoutdev.c > > Ok so perhaps the code needs to re-written so that it allows for the > DS to get an rpc client with its timeouts set. Which currently > doesn't > happen. > > From what I could tell the DS code tries to set the timeout values in > nfs4_set_ds_client() but that has no effect. > > nfs4_find_or_create_ds_client() calls rpc_clone_client_set_auth() > which creates an rpc client but the timeout that were set are ignored > and instead the rpc client is getting created with this 10s timeout. > > (but I thought that in general it made sense that a clone also copies > the timeout values) > It does not make sense when you consider that the timeout is a per- transport attribute. FWIW, I've no idea where this 10s timeout you are seeing is coming from. Perhaps it is worthwhile figuring that out first? -- Trond Myklebust Linux NFS client maintainer, Hammerspace trond.myklebust@xxxxxxxxxxxxxxx ��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥