SUNRPC: RPC transport queue must be low latency
authorTrond Myklebust <trond.myklebust@primarydata.com>
Fri, 27 May 2016 14:39:50 +0000 (10:39 -0400)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Mon, 13 Jun 2016 16:35:51 +0000 (12:35 -0400)
commit40a5f1b19bacb2de7a051be952dee85e38c9e5f5
tree0e8ead168d326d40cfdea25a745699741d5d3f3e
parent5157b956961d78effd78399e1574b08b9b618422
SUNRPC: RPC transport queue must be low latency

rpciod can easily get congested due to the long list of queued rpc_tasks.
Having the receive queue wait in turn for those tasks to complete can
therefore be a bottleneck.

Address the problem by separating the workqueues into:
- rpciod: manages rpc_tasks
- xprtiod: manages transport related work.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
include/linux/sunrpc/sched.h
net/sunrpc/sched.c
net/sunrpc/xprt.c
net/sunrpc/xprtsock.c