SVCRDMA: Add xprt refs to fix close/unmount crash
authorTom Tucker <tom@opengridcomputing.com>
Tue, 11 Mar 2008 18:31:39 +0000 (14:31 -0400)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 12 Mar 2008 19:37:34 +0000 (12:37 -0700)
RDMA connection shutdown on an SMP machine can cause a kernel crash due
to the transport close path racing with the I/O tasklet.

Additional transport references were added as follows:
- A reference when on the DTO Q to avoid having the transport
  deleted while queued for I/O.
- A reference while there is a QP able to generate events.
- A reference until the DISCONNECTED event is received on the CM ID

Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

No differences found