summaryrefslogtreecommitdiffstats
path: root/net/sunrpc/xprtrdma/xprt_rdma.h
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2015-01-21 11:03:02 -0500
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2015-01-30 10:47:48 -0500
commiteba8ff660b2d8b7fcd6669fcab2c025b59f66d26 (patch)
tree7a9a00e875d14cad14e389998a0f3cfbdfc94b83 /net/sunrpc/xprtrdma/xprt_rdma.h
parent3eb358106660195948f4e95822039c5799fc41f8 (diff)
downloadlinux-eba8ff660b2d8b7fcd6669fcab2c025b59f66d26.tar.gz
linux-eba8ff660b2d8b7fcd6669fcab2c025b59f66d26.tar.bz2
linux-eba8ff660b2d8b7fcd6669fcab2c025b59f66d26.zip
xprtrdma: Move credit update to RPC reply handler
Reduce work in the receive CQ handler, which can be run at hardware interrupt level, by moving the RPC/RDMA credit update logic to the RPC reply handler. This has some additional benefits: More header sanity checking is done before trusting the incoming credit value, and the receive CQ handler no longer touches the RPC/RDMA header (the CPU stalls while waiting for the header contents to be brought into the cache). This further extends work begun by commit e7ce710a8802 ("xprtrdma: Avoid deadlock when credit window is reset"). Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Reviewed-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'net/sunrpc/xprtrdma/xprt_rdma.h')
-rw-r--r--net/sunrpc/xprtrdma/xprt_rdma.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/net/sunrpc/xprtrdma/xprt_rdma.h b/net/sunrpc/xprtrdma/xprt_rdma.h
index 532d58667b9d..3fcc92b0e3ca 100644
--- a/net/sunrpc/xprtrdma/xprt_rdma.h
+++ b/net/sunrpc/xprtrdma/xprt_rdma.h
@@ -248,7 +248,6 @@ struct rpcrdma_req {
*/
struct rpcrdma_buffer {
spinlock_t rb_lock; /* protects indexes */
- atomic_t rb_credits; /* most recent server credits */
int rb_max_requests;/* client max requests */
struct list_head rb_mws; /* optional memory windows/fmrs/frmrs */
struct list_head rb_all;