svcrdma: Copy transport address and arm CQ before calling rdma_accept
authorTom Tucker <tom@opengridcomputing.com>
Wed, 7 May 2008 18:52:42 +0000 (13:52 -0500)
committerTom Tucker <tom@opengridcomputing.com>
Mon, 19 May 2008 12:34:00 +0000 (07:34 -0500)
commitaf261af4db14230fb35bcdc0ba9ef78ed6cf7bc1
tree1d9de4ac4a71f6fd79eb41e9244f34daf863790a
parent69500c43b45f7155b72dcadad31cd55cda789c93
svcrdma: Copy transport address and arm CQ before calling rdma_accept

This race was found by inspection. Messages can be received from the peer
immediately following the rdma_accept call, however, the CQ have not yet
been armed and the transport address has not yet been set.

Set the transport address in the connect request handler and arm the CQ
prior to calling rdma_accept.

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