IB/hfi1: Correct defered count after processing qp_wait_list
The qp_wait_list processing leaves the defered ack count at its prior value. This can result in a premature send of an ack. Fixed by unconditionally reseting the defered ack count in hfi1_send_rc_ack(). Fixes: Commit 7c091e5c0685 ("staging/rdma/hfi1: add ACK coalescing logic") Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com> Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
8d8a473380
commit
4fcf1de5a7
@ -853,6 +853,10 @@ void hfi1_send_rc_ack(struct hfi1_ctxtdata *rcd, struct rvt_qp *qp,
|
||||
struct ib_header hdr;
|
||||
struct ib_other_headers *ohdr;
|
||||
unsigned long flags;
|
||||
struct hfi1_qp_priv *priv = qp->priv;
|
||||
|
||||
/* clear the defer count */
|
||||
priv->r_adefered = 0;
|
||||
|
||||
/* Don't send ACK or NAK if a RDMA read or atomic is pending. */
|
||||
if (qp->s_flags & RVT_S_RESP_PENDING)
|
||||
|
Loading…
x
Reference in New Issue
Block a user