[Gc] Darwin mach threads vs pthreads

Stephane Epardaud Stephane.Epardaud at sophia.inria.fr
Wed Jun 29 01:33:41 PDT 2005


Andrew Begel wrote:
> Everything about Darwin *other* than stack crawling when stopping the 
> world is done via pthreads. Brian Alliet can tell you more about this.

That's what I'm talking about. Some threads call GC_do_blocking to enter, say a
system call that should not be interrupted by any signal (like the signals used
by pthread_stop_world), and I'm not sure whether calling thread_suspend() on the
mach thread (underlying the pthread) will trigger a SIG_SUSPEND or something. If
that is the case, then not every mach thread should be suspended during
GC_stop_world, in particular, the ones whose underlying pthread's GC_thread
struct has the thread_blocked member set.

More information about the Gc mailing list