RDMA/cxgb4: Handle newer firmware changes
authorSteve Wise <swise@opengridcomputing.com>
Tue, 6 Aug 2013 15:34:34 +0000 (21:04 +0530)
committerRoland Dreier <roland@purestorage.com>
Tue, 13 Aug 2013 18:55:44 +0000 (11:55 -0700)
commit97d7ec0c410e89ece852e768b8bfd42d4d5822fd
treeb52aa6e67492bd54415563787c71c06ce7bf6981
parent68074bb1abf6fd30cec3e29fd3ff974bdebdc4ef
RDMA/cxgb4: Handle newer firmware changes

Move QP to TERMINATE instead to allow the peer to get the TERM
message. This bug wasn't detectable until newer FW that moves
connections out of RDMA mode as soon as an error is detected.

QP can exit RTS before the last AE arrives.  This was introduced by
changes in the FW to kick connections out of RDMA mode as soon as an
error is detected.  A side effect of this is that the driver can move
the QP out of RTS before the AE causing the connection to get kicked
out of RDMA mode is processed.  Fix for this is to always post async
errors even if the QP is out of RTS.

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Vipul Pandya <vipul@chelsio.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
drivers/infiniband/hw/cxgb4/cm.c
drivers/infiniband/hw/cxgb4/ev.c