summaryrefslogtreecommitdiffstats
path: root/net/sunrpc/svc.c
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@hammerspace.com>2019-07-16 13:51:29 -0400
committerTrond Myklebust <trond.myklebust@hammerspace.com>2019-07-18 01:12:59 -0400
commit7402a4fedc2bc448100c2d086406c708451b16dc (patch)
tree45bafb2c535f1790f99e41cb7de2b7fb0c199c4e /net/sunrpc/svc.c
parent9f98effc19bd490a375c4e764a56a2c015d27c3c (diff)
downloadlinux-stable-7402a4fedc2bc448100c2d086406c708451b16dc.tar.gz
linux-stable-7402a4fedc2bc448100c2d086406c708451b16dc.tar.bz2
linux-stable-7402a4fedc2bc448100c2d086406c708451b16dc.zip
SUNRPC: Fix up backchannel slot table accounting
Add a per-transport maximum limit in the socket case, and add helpers to allow the NFSv4 code to discover that limit. Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Diffstat (limited to 'net/sunrpc/svc.c')
-rw-r--r--net/sunrpc/svc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
index e15cb704453e..220b79988000 100644
--- a/net/sunrpc/svc.c
+++ b/net/sunrpc/svc.c
@@ -1595,7 +1595,7 @@ bc_svc_process(struct svc_serv *serv, struct rpc_rqst *req,
/* Parse and execute the bc call */
proc_error = svc_process_common(rqstp, argv, resv);
- atomic_inc(&req->rq_xprt->bc_free_slots);
+ atomic_dec(&req->rq_xprt->bc_slot_count);
if (!proc_error) {
/* Processing error: drop the request */
xprt_free_bc_request(req);