[ofw] RE: [PATCH] Support for ND over WV (incomplete)

Fab Tillier ftillier at windows.microsoft.com
Thu May 14 17:12:50 PDT 2009


>> If the user wants to call Disconnect, they no longer need their
>> outstanding NotifyDisconnect.  They can call CancelOverlappedRequests,
>> and once the single overlapped is complete, they can reuse it to call
>> Disconnect.
>  This ends up being awkward.  I'm hoping a way can be found that's as
> easy as using the existing interface.  The user waits for
> NotifyDisconnect to complete, then reuses the overlap for Modify.

So today, when the user calls Disconnect, it will complete NotifyDisconnect?  So this requires the use of NotifyDisconnect then, to know when it's safe to Modify?

> The proposed changes work well for active/passive disconnect models.
> They're just difficult for peer to peer.  And unfortunately, since the
> current users of the interface are libraries, they end up assuming peer
> to peer disconnect as the worst case.

MS-MPI does an MPI level handshake before disconnecting, so while both sides might initiate disconnections at the same time, they've both agreed to disconnect.  MS-MPI does not use the NotifyDisconnect functionality of the ND provider (though one of the unit tests, ndconn, will soon).

> Maybe there's a clever way to tie the Modify to the NotifyDisconnect
> call, rather than Disconnect, in certain cases.

I think anything clever is going to actually be harder to maintain than either using two overlapped structures, or cancelling the existing NotifyDisconnect request.

-Fab



More information about the ofw mailing list