[openib-general] max_send_sge < max_sge

Robert Walsh rjwalsh at pathscale.com
Mon Jun 26 15:53:07 PDT 2006


On Mon, 2006-06-26 at 17:53 -0400, Pete Wyckoff wrote:
> Using stock 2.6.17.1, with verbs 1.0.3-1.fc4 and mthca 1.0.2-1.fc4
> with MT25204, this line:
> 
>     ret = ibv_query_device(ctx, &hca_cap);
> 
> tells me that hca_cap.max_sge = 30.
> 
> However, this code fails, with the last kernel write returning EINVAL:
> 
>     memset(&att, 0, sizeof(att));
>     att.send_cq = 1024;
>     att.recv_cq = 1024;
>     att.cap.max_recv_wr = 512;
>     att.cap.max_send_wr = 512;
>     att.cap.max_recv_sge = 30;
>     att.cap.max_send_sge = 30;
>     att.qp_type = IBV_QPT_RC; 
>     qp = ibv_create_qp(pd, &att);
> 
> But if I set:
> 
>     att.cap.max_recv_sge = 30;
>     att.cap.max_send_sge = 29;  /* hca_cap.max_sge - 1 */
> 
> the QP create succeeds.
> 
> Is this a known issue?  Should I always subtract 1 from the reported
> max on the send side?  Just for this hardware?

Probably something else has a QP allocated?  Like the SMA, maybe?

-- 
Robert Walsh                                 Email: rjwalsh at pathscale.com
PathScale, Inc.                              Phone: +1 650 934 8117
2071 Stierlin Court, Suite 200                 Fax: +1 650 428 1969
Mountain View, CA 94043.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 481 bytes
Desc: This is a digitally signed message part
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20060626/116503b9/attachment.sig>


More information about the general mailing list