On Mon, 30 Jul 2012 23:16:23 +0000 "Myklebust, Trond" <Trond.Myklebust@xxxxxxxxxx> wrote: > Hi Neil, > > Could you please add the missing s-o-b? > > Cheers > Trond Here 'tis. Thanks. NeilBrown From: NeilBrown <neilb@xxxxxxx> Date: Tue, 31 Jul 2012 14:33:39 +1000 Subject: [PATCH] nfs: increase number of permitted callback connections. By default a sunrpc service is limited to (N+3)*20 connections where N is the number of threads. This is 80 when N==1. If this number is exceeded a warning is printed suggesting that the number of threads be increased. However with services which run a single thread, this is impossible. For such services there is a ->sv_maxconn setting that can be used to forcibly increase the limit, and silence the message. This is used by lockd. The nfs client uses a sunrpc service to handle callbacks and it too is single-threaded, so to avoid the useless messages, and to allow a reasonable number of concurrent connections, we need to set ->sv_maxconn. 1024 seems like a good number. Signed-off-by: NeilBrown <neilb@xxxxxxx> diff --git a/fs/nfs/callback.c b/fs/nfs/callback.c index 23ff18f..9cb1215 100644 --- a/fs/nfs/callback.c +++ b/fs/nfs/callback.c @@ -265,6 +265,10 @@ int nfs_callback_up(u32 minorversion, struct rpc_xprt *xprt) ret = -ENOMEM; goto out_err; } + /* As there is only one thread we need to over-ride the + * default maximum of 80 connections + */ + serv->sv_maxconn = 1024; ret = svc_bind(serv, net); if (ret < 0) {
Attachment:
signature.asc
Description: PGP signature