[openib-general] RFC: detecting duplicate MAD requests

Hal Rosenstock halr at voltaire.com
Mon May 1 07:51:20 PDT 2006


On Fri, 2006-04-28 at 18:20, Sean Hefty wrote:
> Today, a request MAD received by the MAD layer is handed to a client.  The
> client processes the MAD, and generates a response.  If the client is slow to
> process the MAD, the request may have been resent.  The duplicate request is
> also handed to the client.  The result is that clients perform duplicate
> processing of the MAD or must detect the duplicates themselves.
> 
> I'd like to propose that the MAD layer detect duplicate requests.  After a
> request MAD has been handed to a client, its context would be maintained until
> the user calls ib_free_recv_mad(), allowing duplicate requests to be discarded.

There's still a window here depending on when free MAD is called versus
when the response gets back to the original requester.

> One drawback to this approach are that the MAD layer may discard a MAD as a
> duplicate that wasn't,

I suppose this depends on how the duplicate discard works. Are you
envisioning a specific scenario here ?

>  but I'm not sure if this would happen in practice.  A
> second drawback is that the receive MAD would need to be kept around until the
> send completed (as opposed to the send started).  

Is this to handle the case where free MAD is called prior to the send
completing ? Is this on the response side only ?

-- Hal

> Finally, a way would need to be found for when to call ib_free_recv_mad() for
> userspace clients.
> 
> - Sean
> _______________________________________________
> openib-general mailing list
> openib-general at openib.org
> http://openib.org/mailman/listinfo/openib-general
> 
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general




More information about the general mailing list