RDMA/cxgb4: Ignore TERMINATE CQEs
T4 incorrectly inserts TERM CQEs into the CQ. Silently ignore them. Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
committed by
Roland Dreier
parent
7459486133
commit
6ff0e343b3
@@ -476,6 +476,11 @@ static int poll_cq(struct t4_wq *wq, struct t4_cq *cq, struct t4_cqe *cqe,
|
|||||||
goto proc_cqe;
|
goto proc_cqe;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (CQE_OPCODE(hw_cqe) == FW_RI_TERMINATE) {
|
||||||
|
ret = -EAGAIN;
|
||||||
|
goto skip_cqe;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* RECV completion.
|
* RECV completion.
|
||||||
*/
|
*/
|
||||||
@@ -696,6 +701,7 @@ static int c4iw_poll_cq_one(struct c4iw_cq *chp, struct ib_wc *wc)
|
|||||||
case T4_ERR_MSN_RANGE:
|
case T4_ERR_MSN_RANGE:
|
||||||
case T4_ERR_IRD_OVERFLOW:
|
case T4_ERR_IRD_OVERFLOW:
|
||||||
case T4_ERR_OPCODE:
|
case T4_ERR_OPCODE:
|
||||||
|
case T4_ERR_INTERNAL_ERR:
|
||||||
wc->status = IB_WC_FATAL_ERR;
|
wc->status = IB_WC_FATAL_ERR;
|
||||||
break;
|
break;
|
||||||
case T4_ERR_SWFLUSH:
|
case T4_ERR_SWFLUSH:
|
||||||
|
Reference in New Issue
Block a user