On Thu, Jul 8, 2021 at 2:51 PM Philippe Gerum <[email protected]> wrote: > > Then it needs to be understood what technically triggers this and > > resolved, likely via an explicit migration. > > > > Sure, good exercise for the reader to get ones feet wet with libalchemy. > If somebody wants to tackle this: check callers of > threadobj_run_corespec() in libcopperplate. > > The common case in this routine is to force a switch back to primary > mode for the caller, on exit from threadobj_shadow(). We may want to > make this conditional to the scheduling policy and priority. Following > threadobj_init() for the content of idata may help too.
Hmm. I see cobalt_thread_harden() being called long before threadobj_init(). cobalt_thread_trampoline() calls it too. Same for pthread_setschedparam_ex() if the task in question is main(). -- Thanks, //richard
