[ofw] winverbs ND provider

Fab Tillier ftillier at microsoft.com
Thu Jan 14 09:36:26 PST 2010


Hi Tzachi

Tzachi Dar wrote on Thu, 14 Jan 2010 at 01:44:04
>>> I have changed the resolve code to open the ibat device once and than
>>> only do the resolve many times this took ~27us. I guess that the nd
>>> code can do a similar thing.
>> 
>> When does the file get closed?  How do you get the
>> application to close the file if, say, IPoIB gets disabled?
>> Say you have a service that keeps track of IP address
>> arrival/removal, so that it's not necessarily doing anything
>> over IB when IPoIB is disabled.  How do you trigger the
>> service to close the IBAT device?
>> 
>> So while you might be able to save 5us by avoiding opening
>> the file, you introduce issues that aren't worth the
>> benefits.  I'm sure you'd be able to shave off 5us, if not
>> more, by making the QP modify asynchronous.
>> 
> 
> The only problem of the file not being closed is the fact that the ipoib
> driver can not go down (the ports themselves can be disabled). The same
> approach is being used by WSD which opens the ibat device once going up
> and only closes it while going down. Since WSD usually loads into
> services that never go down this means that ipoib can not go down as
> well.

That's a bug in the WSD provider then.  Especially since the WSD switch tracks the IP addresses, it would be possible for the WSD provider to close the IBAT device if the IP address query ever returns zero addresses.

> Not that nice when developing the system but probably good enough
> for a user. There is also a solution to this problem by having some
> notification mechanism that will ask ibal to close the device when all
> prots are down.

The notification mechanism is already there, via the query address mechanism.  The WSD switch tracks IP address events and will refresh providers when IP addresses change (including when an adapter is disabled or enabled.)

In fact, the WSD provider shouldn't open CAs until requested to create a socket.  Currently, it opens every HCA, even if it is never used.

-Fab



More information about the ofw mailing list