[openib-general] Re: ibv_get_async_event

Sean Hefty mshefty at ichips.intel.com
Tue Sep 6 10:04:06 PDT 2005


Roland Dreier wrote:
>     Sean> Does the problem go away if we require users to poll for all
>     Sean> CQ events after destroying a QP, but before destroying a CQ?
> 
> I don't see how an app could do this.  It doesn't know how many CQ
> events it needs to retrieve, and there could be arbitrarily many
> events from other CQs to retrieve first.

The intent is that after all QPs on a CQ are destroyed and all events are 
removed, then no new completion events could ever occur on that CQ.  Destroying 
the CQ at this point should now be safe.

> However, this is essentially the same as Michael's scheme, which I
> implemented.  The app destroys the CQ and then retrieves events until
> it gets the "dead CQ" event.

It's not quite the same.  With a destroy event scheme, a call is made to destroy 
the CQ, but completion events could still be oustanding.  I'm proposing delaying 
the call to destroy the CQ until no more completion events are possible.

- Sean




More information about the general mailing list