Please do not reply to this email- if you want to comment on the bug, go to the URL shown below and enter your comments there.
Changed by [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=74921 --- shadow/74921 2005-06-21 03:13:31.000000000 -0400 +++ shadow/74921.tmp.29843 2005-06-21 07:07:42.000000000 -0400 @@ -177,6 +177,21 @@ So, what seems to happen is that the gc sees a thread multiple times while trying to stop the world. It then waits too many times on the semaphore. I've yet to figure out who's adding duplicate entries. ------- Additional Comments From [EMAIL PROTECTED] 2005-06-21 03:13 ------- Should be fixed in head and 1.1.8.1. I can run monodoc and monodevelop... + +------- Additional Comments From [EMAIL PROTECTED] 2005-06-21 07:07 ------- +This bug is fixed in 1.1.8.1 since here 'libgc' gets compiled without +'-fexceptions'. +The reason for the misbehaviour is that with '-fexceptions' the combo +'gcc/glibc(nptl)' uses exception based stack-unwinding and without +'-fexceptions' it uses legacy setjmp/longjmp based stack unwinding. +Since the mono runtime is compiled without '-fexceptions', stack +unwinding (!and calling of any thread cleanup handlers!) initiated by +a call of 'pthread_exit()' from the mono runtime will NOT call +'GC_thread_exit_proc()' if 'libgc' is compiled with '-fexceptions'. +So already terminated threads will remain in GC_threads[], making +'pthread_stop_world()' waiting for eternity. +For more info one may want to have a look at <pthread.h> as it comes +with glibc-2.3.x/nptl-enabled. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
