> > why is first_free always >= 0?  I don't see anything that guarantees
 > > that,
 > 
 > The following two subsequent ifs gurantees that.
 > 
 >                if (ind < 0) {
 >                         err = -1;
 >                         *bad_wr = wr;
 >                         break;
 >                 }
 > 
 >                 wqe       = get_wqe(srq, ind);
 >                 next_ind  = *wqe_to_link(wqe);
 > 
 >                 if (next_ind < 0) {
 >                         err = -1;
 >                         *bad_wr = wr;
 >                         break;
 >                 }

Duh... I missed that.  Thanks for the clue.

but now am I wrong to think that we could remove the first test of ind
(not next_ind) in the fast path?  the second test guarantees that ind
never becomes negative, as you pointed out.

 - R.
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to