On 08/19, Roland McGrath wrote: > > > I think in the longer term mark_engine_detached() should not change > > engine->flags at all but add QUIESCE to ->utrace_flags. However, this > > breaks utrace_maybe_reap(reap => true) and we should avoid the race > > with finish_callback() which clears ->reporting after report_quiesce(). > > What's the benefit to adding QUIESCE? If any utrace code gets entered at > all, then any callback run will be able to do the special-case ops check > for detached engines.
Well yes, but otoh it could be the last engine. We shouldn't miss, say, start_callback() from utrace_resume() (although currently ->spurious helps). Anyway, this needs more thinking, and probably you are right and QUIESCE is not needed. Oleg.