svcrdma: Move the QP and cm_id destruction to svc_rdma_free
authorTom Tucker <tom@opengridcomputing.com>
Thu, 1 May 2008 16:13:50 +0000 (11:13 -0500)
committerTom Tucker <tom@opengridcomputing.com>
Mon, 19 May 2008 12:33:56 +0000 (07:33 -0500)
commit1711386c62c97f7fb086a2247d44cdb1f8867640
tree4f4f70ada8683fe1e8884493469355acd2633790
parent0905c0f0a2346516ecd12f0a4f33dca571b0dccd
svcrdma: Move the QP and cm_id destruction to svc_rdma_free

Move the destruction of the QP and CM_ID to the free path so that the
QP cleanup code doesn't race with the dto_tasklet handling flushed WR.
The QP reference is not needed because we now have a reference for
every WR.

Also add a guard in the SQ and RQ completion handlers to ignore
calls generated by some providers when the QP is destroyed.

Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
net/sunrpc/xprtrdma/svc_rdma_transport.c