Here's another stab at trying to improve userspace event reporting.  I think
that the first discussion on this ended with a solution that wasn't any better
than what is there now.

The goal is to provide userspace clients receiving an event with a context that
is valid and does not require searches.  Here's another attempt at a fix:

Destroy userspace_object:
Destroy the corresponding kernel object
Clean up all outstanding associated events
Return reported events that have been retrieved by userspace
Wait until reported events == completed events

Get event:
Retrieve an event
Increment reported events

Put event:
Increment completed events
Signal destroy if reported events == completed events and destroying

I think that this guarantees that the user context will be valid until put event
is called, and should avoid searches in either the userspace client or userspace
IB module.

- Sean

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

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

Reply via email to