On Sat, 11 Aug 2012, Matt Thomas wrote: > On Aug 11, 2012, at 10:35 AM, Thor Lancelot Simon wrote: > > > On Sat, Aug 11, 2012 at 06:45:12AM +0000, Christos Zoulas wrote: > >> > >> It is a slippery slope, but I think in this case it is wise to bend. > >> If we cannot reach agreement here, consult core. > > > > I see no point bending NetBSD into knots in this case if the resulting > > performance is as bad as Joerg claims it will be. Is it actually the > > case that our *context() functions are almost as heavy as a full > > kernel-level thread switch? > > I'm wondering if we need a new makecontext which can allocate a new > private thread-local area. We can set the stack via uc_stack but > there isn't a way to allocate a new thread-local area. >
I think this whole thing needs a careful redesign. IMHO the reason we never got scheduler activations stable across all architectures is that the semantics of the *context() routines were never properly specified. If I knew what those routines were supposed to do I might have been able to fix them. But as it was implementation defined functionality.... Eduardo