Anand Avati <anand.avati@xxxxxxxxx> wrote: > I still don't understand how/why this change will help NetBSD It ensures swapcontext() is operates on a context obtanined by getcontext() in the same thread. NetBSD considers the thread to be part of the context, and calling swapcontext() with a context obtained from another thread will preempt the other thread in order to execute synctask_wrap(). And here we break because synctask_get() will not retreive the approriate task, as it was set in thread specific storage of another thread. -- Emmanuel Dreyfus http://hcpnet.free.fr/pubz manu@xxxxxxxxxx