Michael> No, I think there's no problem - user callback has Michael> finished running and that's all we care about.
I don't think so -- because then the unregister call can return and the client module free the client struct before the wake_up() runs, which leads to use-after-free. Michael> But I'd like to point out that using rwsem gets all these Michael> corners right automatically. Reconsider that approach? Again, I don't think so -- rwsem just hides the race from you. There is a race with semaphores (access semaphore after waking up waiter) which is the original reason for creating struct completion. - R. _______________________________________________ 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