[ofa-general] Bogus Receive Completions
Roman Kononov
kononov at dls.net
Thu Jan 24 08:01:07 PST 2008
On 2008-01-24 08:18 Eli Cohen said the following:
> I am re-sending the patches again, this time with the bug of being
> unable to handle QPs whose receive size is not a power of two fixed.
.../libmthca/src>egrep '&.*qp->.q\.m.*-' *.c
qp.c: ind = qp->sq.head & (qp->sq.max - 1);
qp.c: ind = qp->rq.head & (qp->rq.max - 1);
qp.c: next->nda_op = htonl(((i + 1) & (qp->rq.max - 1)) <<
qp.c: next->nda_op = htonl((((i + 1) & (qp->sq.max - 1)) <<
Should these change as well?
In mthca_create_qp() there are assignments:
qp->sq.max = align_queue_size(pd->context, attr->cap.max_send_wr, 0);
qp->rq.max = align_queue_size(pd->context, attr->cap.max_recv_wr, 0);
And later:
qp->sq.max = attr->cap.max_send_wr;
qp->rq.max = attr->cap.max_recv_wr;
This is suspicious.
>
> Roman,
> can you tell whether from your perspective there has been an improvement
> in stability with the latest patches?
Since I use 'nice' queue sizes, the very last patches made no difference.
Roman
More information about the general
mailing list