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=81856

--- shadow/81856        2007-07-16 11:08:13.000000000 -0400
+++ shadow/81856.tmp.8437       2007-07-16 12:03:27.000000000 -0400
@@ -288,6 +288,44 @@
 
                        } catch (Exception e) {
                                Console.WriteLine(e.Message);
                        }
                        Console.WriteLine("Exiting");
                }
+
+------- Additional Comments From [EMAIL PROTECTED]  2007-07-16 12:03 -------
+The new test case just confirms the same pattern: it produces 4
+threads with the following manually decoded traces at the time of the
+deadlock:
+
+thread1: (main thread)
+mono_domain_lock ()
+mono_jit_find_compiled_method ()
+mono_create_jump_trampoline ()
+mono_ldftn()
+
+thread2: (started thread)
+mono_domain_lock()
+mono_jit_info_table_find ()
+sigusr1_signal_handler ()
+
+thread3: (finalizer thread)
+timedwait_signal_poll_cond ()
+_wapi_handle_timedwait_signal_handle ()
+_wapi_handle_wait_signal_handle ()
+WaitForSingleObjectEx ()
+
+thread4: (io-layer thread)
+start_thread()
+
+There should be no deadlock with just the above calls, since one
+thread should block while the other takes the domain lock and proceeeds.
+The fact that both blocked may mean that a thread has been aborted
+with the domain lock held: which looks like this:
+lock = {depth = 0, mutex = {__data = {__lock = 2, __count = 0, __owner
+= 0, __kind = 1, 
+        __nusers = 0, {__spins = 0, __list = {__next = 0x0}}}, 
+      __size = "\002", '\0' <repeats 11 times>,
+"\001\000\000\000\000\000\000\000\000\000\000", 
+      __align = 2}}
+
+
_______________________________________________
mono-bugs maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-bugs

Reply via email to