James Lentini wrote:
On Tue, 4 Apr 2006, Steve Wise wrote:
What happens if a consumer attempts to free the EP from a callback?
There are no direct consumer callbacks in usermode are there? consumers
call dat_evd_wait() or whatever and get scheduled. Not like kernel
mode... Or am I confused?
You're right. The DAT consumer thread calling dat_ep_free() will never
be a provider (or verbs) thread.
It looks like there needs to be some synchronization around destroying
the cm_id with the dapli_thread(), though.
Could we only delete the QP in dat_ep_free as Sean suggested and leave
the cm_id cleanup for later as is being done now?
I think we should destroy all resources before returning, including the
cm_id. This will insure that no events will fire with context associated
with an EP(qp,cm_id,etc) that was just freed. I will take a look at
Steve's patch and get back to you.
_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general