RPC/RDMA: avoid an oops due to disconnect racing with async upcalls.
authorTom Talpey <talpey@netapp.com>
Thu, 9 Oct 2008 19:01:00 +0000 (15:01 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Fri, 10 Oct 2008 19:11:40 +0000 (15:11 -0400)
commitfee08caf943e8ed3446ce42fa085b5e7e5f08d92
tree21419677bd5210c7a9068b698c23e52cd385f530
parentad0e9e01da4ece70ff524b49c77c5e850d5dd53e
RPC/RDMA: avoid an oops due to disconnect racing with async upcalls.

RDMA disconnects yield an upcall from the RDMA connection manager,
which can race with rpc transport close, e.g. on ^C of a mount.
Ensure any rdma cm_id and qp are fully destroyed before continuing.

Signed-off-by: Tom Talpey <talpey@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/xprtrdma/verbs.c