[Openib-windows] RE: CA capabilities

Fab Tillier ftillier at silverstorm.com
Wed Aug 10 09:40:20 PDT 2005


Please send emails in plain text.

> From: Yossi Leybovich [mailto:sleybo at mellanox.co.il]
> Sent: Wednesday, August 10, 2005 4:06 AM
> 
> Simple test that try to allocate max PDs (as reported form query ca)
> discovered that it can allocate only the max_pds -1.
>
> I checked it and found that:
> The user ask for 0x4000 PDs
> The THH layer keep 2 PDs for itself so the IBAL report on 0x3ffe PDs available
> while the IBAL is loaded (in creat_ci_ca) IBAL take one more PD (for SQP..) so
> the user can allocate only 0x3ffd PDs
> Do you think that IBAL should report 1 PD less so the user will know exactly
> how many resources he actually can allocate ?
> Personally I think that if IBAL take resource (PDs, Avs, QPS) for its own use,
> then it should subtract them from the ca capabilities.
> What do you think ?

The maximum number of PDs is what the CA supports.  The access layer, as a
client, uses a PD.  So does each IPoIB and SRP instance, as well as every
user-mode process that uses sockets when WSD is enabled.  An application cannot
rely being able to allocate the maximum reported in the attributes since the CA
is a shared resource.

Should the access layer keep modifying the maximum reported to account for
client usage?  I think not.  The maximum values are there to indicate what the
hardware is capable of, and is not a guarantee to the application that it will
be able to allocate all of them.

- Fab




More information about the ofw mailing list