This patchset aims to remove the bh-safe locks on the client side. At this time it should be seen as a toy/strawman effort in order to help the community figure out whether or not there are setups out there that are actually seeing performance bottlenecks resulting from taking bh-safe locks inside other spinlocks. Trond Myklebust (5): SUNRPC: Replace the queue timer with a delayed work function SUNRPC: Replace direct task wakeups from softirq context SUNRPC: Remove the bh-safe lock requirement on xprt->transport_lock SUNRPC: Remove the bh-safe lock requirement on the rpc_wait_queue->lock SUNRPC: Reduce the priority of the xprtiod queue include/linux/sunrpc/sched.h | 3 +- include/linux/sunrpc/xprtsock.h | 5 + net/sunrpc/sched.c | 76 +++++++++------- net/sunrpc/xprt.c | 61 ++++++------- net/sunrpc/xprtrdma/rpc_rdma.c | 4 +- net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 4 +- net/sunrpc/xprtrdma/svc_rdma_transport.c | 8 +- net/sunrpc/xprtsock.c | 101 +++++++++++++++++---- 8 files changed, 168 insertions(+), 94 deletions(-) -- 2.21.0