I am attempting to test my WSD provider that supports the extensions for
RDMA. After connection establishment between client and server has been
achieved the client side hangs on the first send. As part of the call the
'send', I can see the socket switch invoking the provider extension to
register some RDMA memory which was successful. After that nothing. No other
SPI activity or return from send function.
Sugestions on what to look for here? Documentation does not call out if
there are special sockets application steps required to take advantage of WSD
and it's extensions. Indeed it appears that they are discovered via WSPIoctl
and being called to register memory. WSD connection negotiation end-to-end
seems to be occuring, although documentation does not indicate how to
interpret the 40 byte negotiation data being passed back and forth (posted
receive buffer depths and ?).
If on send the rdma memory registration fails, then the send completes
indicating that there was a successful transfer completed.
Does the application need to be re-coded to use WSASend instead of send?
How should I expect sockets switch to share WSD STAGs with the other side
when attempting to do WSPRdmaWrite?
|