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.

One drawback to this approach are that the MAD layer may discard a MAD as a
duplicate that wasn't, 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).  

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@openib.org
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to