xprtrdma: Update rkeys after transport reconnect
authorChuck Lever <chuck.lever@oracle.com>
Tue, 29 Jul 2014 21:23:43 +0000 (17:23 -0400)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Thu, 31 Jul 2014 20:22:53 +0000 (16:22 -0400)
commit6ab59945f292a5c6cbc4a6c2011f1a732a116af2
treeb6027a5d873b2c5941cfb279be193ad366b7b15d
parent43e95988178ed70a878a5be6be9ad248342dbf7d
xprtrdma: Update rkeys after transport reconnect

Various reports of:

  rpcrdma_qp_async_error_upcall: QP error 3 on device mlx4_0
ep ffff8800bfd3e848

Ensure that rkeys in already-marshalled RPC/RDMA headers are
refreshed after the QP has been replaced by a reconnect.

BugLink: https://bugzilla.linux-nfs.org/show_bug.cgi?id=249
Suggested-by: Selvin Xavier <Selvin.Xavier@Emulex.Com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Tested-by: Steve Wise <swise@opengridcomputing.com>
Tested-by: Shirley Ma <shirley.ma@oracle.com>
Tested-by: Devesh Sharma <devesh.sharma@emulex.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
net/sunrpc/xprtrdma/rpc_rdma.c
net/sunrpc/xprtrdma/transport.c
net/sunrpc/xprtrdma/xprt_rdma.h