RDMA/nes: Avoid race between MPA request and reset event to rdma_cm
authorFaisal Latif <faisal.latif@intel.com>
Sat, 22 Nov 2008 02:50:46 +0000 (20:50 -0600)
committerRoland Dreier <rolandd@cisco.com>
Fri, 5 Dec 2008 19:00:08 +0000 (11:00 -0800)
commit183ecfa3091cd4cdda329a7fe89d9544088f517d
tree5cccb1b5b0fdfe7ec1dbaddbe0de04ce087f99a8
parent879e5bd5a1a0a317fb67fa4dc550db092a7bdcb0
RDMA/nes: Avoid race between MPA request and reset event to rdma_cm

In passive open, after indicating MPA request to rdma_cm, an incoming
RST would fire a reset event to rdma_cm causing it to crash, since the
current state is not connected.  The solution is to wait for
nes_accept() or nes_reject() before firing the reset event.  If
nes_accept() or nes_reject() is already done, then the reset event
will be fired when RST is processed.

Signed-off-by: Faisal Latif <faisal.latif@intel.com>
Signed-off-by: Chien Tung <chien.tin.tung@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/nes/nes_cm.c
drivers/infiniband/hw/nes/nes_cm.h