[ofa-general] [PATCH] mthca: fix posting >255 recv WRs

Michael S. Tsirkin mst at dev.mellanox.co.il
Sun May 13 08:56:47 PDT 2007


The following fixes posting lists of > 255 WRs for tavor:
rq.next_ind must be updated each doorbell, otherwise the
next doorbell will use an incorrect index.

Found by Ronni Zimmermann at Mellanox.
Signed-off-by: Michael S. Tsirkin <mst at dev.mellanox.co.il>

--

diff --git a/drivers/infiniband/hw/mthca/mthca_qp.c b/drivers/infiniband/hw/mthca/mthca_qp.c
index fee60c8..72fabb8 100644
--- a/drivers/infiniband/hw/mthca/mthca_qp.c
+++ b/drivers/infiniband/hw/mthca/mthca_qp.c
@@ -1862,6 +1862,7 @@ int mthca_tavor_post_receive(struct ib_qp *ibqp, struct ib_recv_wr *wr,
 				      dev->kar + MTHCA_RECEIVE_DOORBELL,
 				      MTHCA_GET_DOORBELL_LOCK(&dev->doorbell_lock));
 
+			qp->rq.next_ind = ind;
 			qp->rq.head += MTHCA_TAVOR_MAX_WQES_PER_RECV_DB;
 			size0 = 0;
 		}

-- 
MST



More information about the general mailing list