[Mono-bugs] [Bug 79734][Nor] New - nunit-gui: loading, running, closing, re-loading, and re-running an assembly crashes
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Tue Oct 24 14:59:38 EDT 2006
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 matt at use.net.
http://bugzilla.ximian.com/show_bug.cgi?id=79734
--- shadow/79734 2006-10-24 14:59:38.000000000 -0400
+++ shadow/79734.tmp.9703 2006-10-24 14:59:38.000000000 -0400
@@ -0,0 +1,311 @@
+Bug#: 79734
+Product: Mono: Class Libraries
+Version: 1.1
+OS:
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: System
+AssignedTo: mono-bugs at ximian.com
+ReportedBy: matt at use.net
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: nunit-gui: loading, running, closing, re-loading, and re-running an assembly crashes
+
+Steps to reproduce the problem:
+1. rm -rf ~/.mono/registry
+2. run nunit-gui
+3. File->Open nunit.uikit.tests.dll, press alt+R to run them
+4. File->Close
+5. File->Open nunit.uikit.tests.dll, press alt+R to run them
+
+Actual Results:
+crash:
+=================================================================
+Got a SIGSEGV while executing native code. This usually indicates
+a fatal error in the mono runtime or one of the native libraries
+used by your application.
+=================================================================
+
+Stacktrace:
+
+ at (wrapper managed-to-native)
+System.Reflection.MonoCMethod.InternalInvoke (object,object[]) <0x00004>
+ at (wrapper managed-to-native)
+System.Reflection.MonoCMethod.InternalInvoke (object,object[])
+<0xffffffff>
+ at System.Reflection.MonoCMethod.Invoke
+(object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
+[0x00040]
+in /home/matt/src/mcs/class/corlib/System.Reflection/MonoMethod.cs:373
+ at System.Reflection.MonoCMethod.Invoke
+(System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
+[0x00000]
+in /home/matt/src/mcs/class/corlib/System.Reflection/MonoMethod.cs:384
+ at System.Reflection.ConstructorInfo.Invoke (object[]) [0x0000f]
+in /home/matt/src/mcs/class/corlib/System.Reflection/ConstructorInfo.cs:77
+ at NUnit.Core.Reflect.Construct (System.Type) <0x00029>
+ at NUnit.Core.TestFixture.DoFixtureSetUp (NUnit.Core.TestResult)
+<0x00031>
+ at NUnit.Core.TestSuite.DoOneTimeSetUp (NUnit.Core.TestResult)
+<0x000eb>
+ at NUnit.Core.TestSuite.Run
+(NUnit.Core.EventListener,NUnit.Core.IFilter) <0x000fe>
+ at NUnit.Core.TestSuite.RunAllTests
+(NUnit.Core.TestSuiteResult,NUnit.Core.EventListener,NUnit.Core.IFilter)
+<0x001ef>
+ at NUnit.Core.TestSuite.Run
+(NUnit.Core.EventListener,NUnit.Core.IFilter) <0x00111>
+ at NUnit.Core.TestSuite.RunAllTests
+(NUnit.Core.TestSuiteResult,NUnit.Core.EventListener,NUnit.Core.IFilter)
+<0x001ef>
+ at NUnit.Core.TestSuite.Run
+(NUnit.Core.EventListener,NUnit.Core.IFilter) <0x00111>
+ at NUnit.Core.TestSuite.RunAllTests
+(NUnit.Core.TestSuiteResult,NUnit.Core.EventListener,NUnit.Core.IFilter)
+<0x001ef>
+ at NUnit.Core.TestSuite.Run
+(NUnit.Core.EventListener,NUnit.Core.IFilter) <0x00111>
+ at NUnit.Core.TestSuite.RunAllTests
+(NUnit.Core.TestSuiteResult,NUnit.Core.EventListener,NUnit.Core.IFilter)
+<0x001ef>
+ at NUnit.Core.TestSuite.Run
+(NUnit.Core.EventListener,NUnit.Core.IFilter) <0x00111>
+ at NUnit.Core.TestAssembly.Run
+(NUnit.Core.EventListener,NUnit.Core.IFilter) <0x00050>
+ at NUnit.Core.SimpleTestRunner.Run
+(NUnit.Core.EventListener,NUnit.Core.Test[]) <0x0012d>
+ at NUnit.Core.SimpleTestRunner.Run (NUnit.Core.EventListener,string[])
+<0x00094>
+ at NUnit.Core.TestRunnerThread.TestRunnerThreadProc () <0x00029>
+ at (wrapper delegate-invoke) System.MulticastDelegate.invoke_void ()
+<0xffffffff>
+ at (wrapper runtime-invoke) System.Object.runtime_invoke_void
+(object,intptr,intptr,intptr) <0xffffffff>
+
+Native stacktrace:
+
+ mono [0x815113d]
+ mono [0x811da4a]
+ [0xffffe440]
+ mono(mono_class_vtable+0x405) [0x808c097]
+ mono(mono_class_vtable+0x44f) [0x808c0e1]
+ mono(mono_object_new+0x18) [0x808ed7b]
+ mono(mono_runtime_invoke_array+0x310) [0x808f1a7]
+ mono [0x8095398]
+ [0xb62424fd]
+ [0xb6242281]
+ [0xb62421e5]
+ [0xb6238636]
+ [0xb62160f2]
+ [0xb63174f2]
+ [0xb6316e7c]
+ [0xb6316b17]
+ [0xb63170e0]
+ [0xb6316b2a]
+ [0xb63170e0]
+ [0xb6316b2a]
+ [0xb63170e0]
+ [0xb6316b2a]
+ [0xb63170e0]
+ [0xb6316b2a]
+ [0xb6316919]
+ [0xb6315be6]
+ [0xb631400d]
+ [0xb6313f32]
+ [0xb6212288]
+ [0xb6242581]
+ mono(mono_runtime_delegate_invoke+0x36) [0x808bbe4]
+ mono [0x80bdabc]
+ mono [0x81029e8]
+ mono [0x8117276]
+ /lib/tls/i686/cmov/libpthread.so.0 [0xb7e83534]
+ /lib/tls/i686/cmov/libc.so.6(__clone+0x5e) [0xb7df021e]
+
+Debug info from gdb:
+
+Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
+[Thread debugging using libthread_db enabled]
+[New Thread -1210972480 (LWP 18114)]
+[New Thread -1248855136 (LWP 18280)]
+[New Thread -1249907808 (LWP 18279)]
+[New Thread -1241039968 (LWP 18277)]
+[New Thread -1218757728 (LWP 18116)]
+[New Thread -1208804448 (LWP 18115)]
+0xffffe410 in __kernel_vsyscall ()
+ 6 Thread -1208804448 (LWP 18115) 0xffffe410 in __kernel_vsyscall ()
+ 5 Thread -1218757728 (LWP 18116) 0xffffe410 in __kernel_vsyscall ()
+ 4 Thread -1241039968 (LWP 18277) 0xffffe410 in __kernel_vsyscall ()
+ 3 Thread -1249907808 (LWP 18279) 0xffffe410 in __kernel_vsyscall ()
+ 2 Thread -1248855136 (LWP 18280) 0xffffe410 in __kernel_vsyscall ()
+ 1 Thread -1210972480 (LWP 18114) 0xffffe410 in __kernel_vsyscall ()
+
+Thread 6 (Thread -1208804448 (LWP 18115)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0xb7e89c06 in __nanosleep_nocancel ()
+ from /lib/tls/i686/cmov/libpthread.so.0
+#2 0x080eee64 in collection_thread (unused=0x0) at collection.c:34
+#3 0xb7e83534 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
+#4 0xb7df021e in clone () from /lib/tls/i686/cmov/libc.so.6
+
+Thread 5 (Thread -1218757728 (LWP 18116)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0xb7e86856 in pthread_cond_wait@@GLIBC_2.3.2 ()
+ from /lib/tls/i686/cmov/libpthread.so.0
+#2 0x080f20a7 in timedwait_signal_poll_cond (cond=0xb7a891dc,
+ mutex=0xb7a891c4, timeout=0x0, alertable=0) at handles.c:1409
+#3 0x080f4260 in _wapi_handle_timedwait_signal_handle (handle=0x404,
+ timeout=0x0, alertable=0) at handles.c:1489
+#4 0x080f42cb in _wapi_handle_wait_signal_handle (handle=0xfffffffc,
+ alertable=-4) at handles.c:1449
+#5 0x0810339a in WaitForSingleObjectEx (handle=0x404,
+timeout=4294967295,
+ alertable=0) at wait.c:200
+#6 0x080a4cc7 in finalizer_thread (unused=0x0) at gc.c:816
+#7 0x080bda62 in start_wrapper (data=0x823c5c8) at threads.c:312
+#8 0x081029e8 in thread_start_routine (args=0xb79393b4) at threads.c:253
+#9 0x08117276 in GC_start_routine (arg=0xfffffffc) at
+pthread_support.c:1357
+#10 0xb7e83534 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
+#11 0xb7df021e in clone () from /lib/tls/i686/cmov/libc.so.6
+
+Thread 4 (Thread -1241039968 (LWP 18277)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0xb7e86acc in pthread_cond_timedwait@@GLIBC_2.3.2 ()
+ from /lib/tls/i686/cmov/libpthread.so.0
+#2 0x080f2059 in timedwait_signal_poll_cond (cond=0xb7a9ac18,
+ mutex=0xb7a9ac00, timeout=0xb6073230, alertable=1) at handles.c:1419
+#3 0x080f4260 in _wapi_handle_timedwait_signal_handle (handle=0x6a1,
+ timeout=0xb6073230, alertable=0) at handles.c:1489
+#4 0x08103347 in WaitForSingleObjectEx (handle=0x6a1, timeout=10000,
+ alertable=1) at wait.c:202
+#5 0x080bbe43 in ves_icall_System_Threading_WaitHandle_WaitOne_internal
+(
+ this=0x52c6f0, handle=0xfffffffc, ms=-4, exitContext=0) at
+threads.c:978
+#6 0xb62124aa in ?? ()
+#7 0x0052c6f0 in ?? ()
+#8 0x000006a1 in ?? ()
+#9 0x00002710 in ?? ()
+#10 0x00000000 in ?? ()
+
+Thread 3 (Thread -1249907808 (LWP 18279)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0xb7e86acc in pthread_cond_timedwait@@GLIBC_2.3.2 ()
+ from /lib/tls/i686/cmov/libpthread.so.0
+#2 0x080f2059 in timedwait_signal_poll_cond (cond=0xb7a9b560,
+ mutex=0xb7a9b548, timeout=0x0, alertable=1) at handles.c:1419
+#3 0x080f4260 in _wapi_handle_timedwait_signal_handle (handle=0x6b7,
+ timeout=0x0, alertable=0) at handles.c:1489
+#4 0x080f42cb in _wapi_handle_wait_signal_handle (handle=0xfffffffc,
+ alertable=-4) at handles.c:1449
+#5 0x0810339a in WaitForSingleObjectEx (handle=0x6b7,
+timeout=4294967295,
+ alertable=1) at wait.c:200
+#6 0x080bb10d in ves_icall_System_Threading_Monitor_Monitor_wait (
+ obj=0x4b3860, ms=4294967292) at monitor.c:787
+#7 0xb6313b2a in ?? ()
+#8 0x004b3860 in ?? ()
+#9 0xffffffff in ?? ()
+#10 0x08959d08 in ?? ()
+#11 0x08959d08 in ?? ()
+#12 0x00000000 in ?? ()
+
+Thread 2 (Thread -1248855136 (LWP 18280)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0xb7de9181 in select () from /lib/tls/i686/cmov/libc.so.6
+#2 0xb7ee4312 in IA__g_spawn_sync (working_directory=0x0,
+argv=0x8b33698,
+ envp=0x0, flags=G_SPAWN_SEARCH_PATH, child_setup=0, user_data=0x0,
+ standard_output=0xb58fe688, standard_error=0xb58fe684,
+ exit_status=0xb58fe680, error=0x0) at gspawn.c:285
+#3 0xb7ee46b6 in IA__g_spawn_command_line_sync (
+ command_line=0xb58fddf4 "gdb --ex 'attach 18114' --ex 'info
+threads' --ex 'thread apply all bt' --batch", standard_output=0xb58fe688,
+ standard_error=0xb58fe684, exit_status=0xb58fe680, error=0x0)
+ at gspawn.c:653
+#4 0x081511ae in mono_handle_native_sigsegv (signal=11, ctx=0xb58fe74c)
+ at mini-exceptions.c:1073
+#5 0x0811da4a in sigsegv_signal_handler (_dummy=11, info=0xb58fe6cc,
+ context=0xb58fe74c) at mini.c:10767
+#6 <signal handler called>
+#7 0x08061137 in mono_aot_init_vtable (vtable=0x8ce4750) at
+aot-runtime.c:672
+#8 0x0808c097 in mono_class_vtable (domain=0x505e10, class=0x8a48e1c)
+ at object.c:977
+#9 0x0808c0e1 in mono_class_vtable (domain=0x505e10, class=0x8a2371c)
+ at object.c:1005
+#10 0x0808ed7b in mono_object_new (domain=0x0, klass=0x0) at
+object.c:2503
+#11 0x0808f1a7 in mono_runtime_invoke_array (method=0x8a23934, obj=0x0,
+ params=0x487d30, exc=0x0) at object.c:2419
+#12 0x08095398 in ves_icall_InternalInvoke (method=0x0, this=0x0,
+ params=0x487d30) at icall.c:2689
+#13 0xb62424fd in ?? ()
+#14 0x0054b3f0 in ?? ()
+#15 0x00000000 in ?? ()
+
+Thread 1 (Thread -1210972480 (LWP 18114)):
+#0 0xffffe410 in __kernel_vsyscall ()
+#1 0xb7de66a3 in poll () from /lib/tls/i686/cmov/libc.so.6
+#2 0xb61f9f6c in ?? ()
+#3 0x005322f0 in ?? ()
+#4 0x00000002 in ?? ()
+#5 0x000003e8 in ?? ()
+#6 0x08218e20 in ?? ()
+#7 0x005322f0 in ?? ()
+#8 0x00b13ef2 in ?? ()
+#9 0x005322f0 in ?? ()
+#10 0x08218e20 in ?? ()
+#11 0x00000001 in ?? ()
+#12 0xbff53598 in ?? ()
+#13 0x005322e0 in ?? ()
+#14 0x00000000 in ?? ()
+
+When reproducing the crash under valgrind, I get this output which is
+consistent with the gdb trace:
+==18305== Thread 4:
+==18305== Conditional jump or move depends on uninitialised value(s)
+==18305== at 0x8127993: mono_method_to_ir (mini.c:4439)
+==18305== by 0x813D405: inline_method (mini.c:3363)
+==18305== by 0x8138DA7: mono_method_to_ir (mini.c:4650)
+==18305== by 0x813B144: mini_method_compile (mini.c:10023)
+==18305== by 0x813CC3F: mono_jit_compile_method (mini.c:10388)
+==18305== by 0x8075973: mono_magic_trampoline (mini-trampolines.c:27)
+==18305== by 0x4340031: ???
+==18305== by 0x7D70A92: ???
+==18305== by 0x7D7086D: ???
+==18305== by 0x7D70732: ???
+==18305== by 0x7D6E6F4: ???
+==18305== by 0x7D6E35D: ???
+==18305==
+==18305== Thread 6:
+==18305== Invalid read of size 4
+==18305== at 0x8061137: mono_aot_init_vtable (aot-runtime.c:672)
+==18305== by 0x808C096: mono_class_vtable (object.c:977)
+==18305== by 0x808C0E0: mono_class_vtable (object.c:1005)
+==18305== by 0x808ED7A: mono_object_new (object.c:2503)
+==18305== by 0x808F1A6: mono_runtime_invoke_array (object.c:2419)
+==18305== by 0x8095397: ves_icall_InternalInvoke (icall.c:2689)
+==18305== by 0x7D784FC: ???
+==18305== by 0x7D78280: ???
+==18305== by 0x7D781E4: ???
+==18305== by 0x7D8E635: ???
+==18305== by 0x7EAD0F1: ???
+==18305== by 0x7CA9A91: ???
+==18305== Address 0x40 is not stack'd, malloc'd or (recently) free'd
+
+
+
+Expected Results:
+Should run the tests with the same results as the first time.
+
+
+Additional Information:
+There was a similar issue a few months ago that was fixed, and the
+problem was in the TreeView. This appears to be reflection-related,
+though.
More information about the mono-bugs
mailing list