[Mono-bugs] [Bug 54882][Wis] New - mono stalls at end of execution with profiling enabled
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Thu, 26 Feb 2004 00:12:26 -0500 (EST)
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 mathpup@mylinuxisp.com.
http://bugzilla.ximian.com/show_bug.cgi?id=54882
--- shadow/54882 2004-02-26 00:12:26.000000000 -0500
+++ shadow/54882.tmp.18512 2004-02-26 00:12:26.000000000 -0500
@@ -0,0 +1,102 @@
+Bug#: 54882
+Product: Mono/Runtime
+Version: unspecified
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Wishlist
+Component: misc
+AssignedTo: mono-bugs@ximian.com
+ReportedBy: mathpup@mylinuxisp.com
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: mono stalls at end of execution with profiling enabled
+
+Description of Problem:
+
+When I was attempting to profile mcs.exe doing a compile of corlib, I
+discovered that after mcs printed "Compilation succeeded", the profiling
+information was never printed, the mono processes continued to exist but
+consuming no CPU time. When working with small compilations, such as
+single files, I did not observe this behavior.
+
+
+Steps to reproduce the problem:
+1. Start the make process normally in mcs, until it gets to the point of
+building corlib, then abort.
+2. cd to mcs/class/corlib, and manually run (locations for mcs.exe will
+vary):
+
+"mono --profile /usr/local/bin/mcs.exe /nowarn:649 /nowarn:169
+-d:INSIDE_CORLIB -d:NET_1_1 -d:ONLY_1_1
+-g /noconfig /unsafe /nostdlib /target:library /out:../../class/lib/mscorlib.dll
+@../../build/deps/corlib.dll.response"
+
+
+Actual Results:
+
+mcs prints "Compilation succeeded" but hangs. Opening another window and
+running gdb --pid=<mono process> and then running "thread apply all bt"
+yields the backtrace:
+
+Thread 1 (Thread 1086903744 (LWP 10838)):
+#0 0xffffe002 in ?? ()
+#1 0x401a26c4 in g_free () from /usr/lib/libglib-2.0.so.0
+#2 0x4019361d in g_hash_table_size () from /usr/lib/libglib-2.0.so.0
+#3 0x400b90cb in simple_method_enter (prof=0x0, method=0x42200888) at
+profiler.c:879
+#4 0x400b7e92 in mono_profiler_method_enter (method=0xfffffffc) at
+profiler.c:152
+#5 0x41f40b39 in ?? ()
+#6 0x4004a794 in mono_jit_runtime_invoke (method=0xffffffff,
+obj=0x80daf90,
+ params=0xffffffff, exc=0xffffffff) at mini.c:7824
+#7 0x4008aa35 in mono_runtime_invoke (method=0xfffffffc, obj=0xfffffffc,
+ params=0xfffffffc, exc=0xfffffffc) at object.c:757
+#8 0x4008d6ee in mono_print_unhandled_exception (exc=0x80daf90) at
+object.c:2490
+#9 0x4008b6e4 in mono_unhandled_exception (exc=0x80daf90) at
+object.c:1178
+#10 0x40078cf3 in mono_arch_handle_exception (ctx=0x811bb0c,
+obj=0x80daf90,
+ test_only=0) at exceptions-x86.c:1059
+#11 0x4004a8c6 in sigsegv_signal_handler (_dummy=11, info=0xfffffffc,
+ context=0x811baf8) at mini.c:7874
+#12 <signal handler called>
+#13 0x42073fec in _int_malloc () from /lib/tls/libc.so.6
+#14 0x42073a5e in calloc () from /lib/tls/libc.so.6
+#15 0x401a25d1 in g_malloc0 () from /usr/lib/libglib-2.0.so.0
+#16 0x401935aa in g_hash_table_size () from /usr/lib/libglib-2.0.so.0
+#17 0x400b8f42 in merge_methods (method=0x94, profile=0x820af30,
+prof=0x804a1f8)
+---Type <return> to continue, or q <return> to quit---
+ at profiler.c:813
+#18 0x40193466 in g_hash_table_foreach () from /usr/lib/libglib-2.0.so.0
+#19 0x400b8faa in merge_thread_data (master=0xffffffff, tprof=0x0) at
+profiler.c:866
+#20 0x400b9493 in simple_shutdown (prof=0x804a1f8) at profiler.c:1000
+#21 0x400b8505 in mono_profiler_shutdown () at profiler.c:332
+#22 0x4004bc17 in mini_cleanup (domain=0x8070ed8) at mini.c:8238
+#23 0x4006880c in mono_main (argc=13, argv=0xbfffe094) at driver.c:785
+#24 0x080486eb in main (argc=-4, argv=0xfffffffc) at main.c:6
+#25 0x42015574 in __libc_start_main () from /lib/tls/libc.so.6
+
+
+
+
+
+Expected Results:
+
+Profiling information is printed.
+
+
+How often does this happen?
+
+Always
+
+
+Additional Information: