IB/mthca: Remove checks for srq->first_free < 0

The SRQ receive posting functions make sure that srq->first_free never
becomes negative, so we can remove tests of whether it is negative.

Signed-off-by: Eli Cohen <eli@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
Eli Cohen 2008-02-04 20:20:44 -08:00 committed by Roland Dreier
parent 1d96354e61
commit 1203c42e7b
1 changed files with 3 additions and 23 deletions

View File

@ -475,11 +475,7 @@ void mthca_free_srq_wqe(struct mthca_srq *srq, u32 wqe_addr)
spin_lock(&srq->lock); spin_lock(&srq->lock);
if (likely(srq->first_free >= 0)) *wqe_to_link(get_wqe(srq, srq->last_free)) = ind;
*wqe_to_link(get_wqe(srq, srq->last_free)) = ind;
else
srq->first_free = ind;
*wqe_to_link(get_wqe(srq, ind)) = -1; *wqe_to_link(get_wqe(srq, ind)) = -1;
srq->last_free = ind; srq->last_free = ind;
@ -506,15 +502,7 @@ int mthca_tavor_post_srq_recv(struct ib_srq *ibsrq, struct ib_recv_wr *wr,
first_ind = srq->first_free; first_ind = srq->first_free;
for (nreq = 0; wr; wr = wr->next) { for (nreq = 0; wr; wr = wr->next) {
ind = srq->first_free; ind = srq->first_free;
if (unlikely(ind < 0)) {
mthca_err(dev, "SRQ %06x full\n", srq->srqn);
err = -ENOMEM;
*bad_wr = wr;
break;
}
wqe = get_wqe(srq, ind); wqe = get_wqe(srq, ind);
next_ind = *wqe_to_link(wqe); next_ind = *wqe_to_link(wqe);
@ -614,15 +602,7 @@ int mthca_arbel_post_srq_recv(struct ib_srq *ibsrq, struct ib_recv_wr *wr,
spin_lock_irqsave(&srq->lock, flags); spin_lock_irqsave(&srq->lock, flags);
for (nreq = 0; wr; ++nreq, wr = wr->next) { for (nreq = 0; wr; ++nreq, wr = wr->next) {
ind = srq->first_free; ind = srq->first_free;
if (unlikely(ind < 0)) {
mthca_err(dev, "SRQ %06x full\n", srq->srqn);
err = -ENOMEM;
*bad_wr = wr;
break;
}
wqe = get_wqe(srq, ind); wqe = get_wqe(srq, ind);
next_ind = *wqe_to_link(wqe); next_ind = *wqe_to_link(wqe);