[Mono-bugs] [Bug 80483][Maj] New - Segfault when MCS is running

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Tue Jan 9 04:28:58 EST 2007


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 max at duempel.org.

http://bugzilla.ximian.com/show_bug.cgi?id=80483

--- shadow/80483	2007-01-09 04:28:58.000000000 -0500
+++ shadow/80483.tmp.9542	2007-01-09 04:28:58.000000000 -0500
@@ -0,0 +1,194 @@
+Bug#: 80483
+Product: Mono: Runtime
+Version: 1.2
+OS: 
+OS Details: Debian sid/amd64
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Major
+Component: GC
+AssignedTo: lupus at ximian.com                            
+ReportedBy: max at duempel.org               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Segfault when MCS is running
+
+When I compile a big library part of the SunUO project
+(http://www.sunuo.org/), Mono crashes with a segmentation fault. It looks
+like the faulty code is in the GC.
+
+I am using Mono 1.2.2.1-1 (Debian package) on AMD64.
+
+max at rabbit:~/svn/sunuo$ make
+mcs -define:MONO -debug -lib:build -target:library
+-out:build/scripts/legacy.dll -lib:build -r:System.Web.dll
+-r:System.Data.dll -r:                                                    
+                                                                          
+      log4net.dll -r:SunUO.exe -recurse:'scripts/legacy/*.cs'
+scripts/legacy/Commands/Docs.cs(357,30): warning CS0612:
+`Server.ScriptCompiler.Assemblies' is obsolete
+scripts/legacy/Engines/BulkOrders/SmallBulkEntry.cs(76,25): warning CS0612:
+`Server.Core.BaseDirectory' is obsolete
+Stacktrace:
+
+  at (wrapper managed-to-native)
+System.Object.__icall_wrapper_mono_array_new_specific (intptr,int) <0x0000b>
+  at (wrapper managed-to-native)
+System.Object.__icall_wrapper_mono_array_new_specific (intptr,int) <0xffffffff>
+  at System.Collections.ArrayList..ctor () <0x0001b>
+  at Mono.CSharp.Convert.FindMostSpecificSource
+(System.Collections.IList,Mono.CSharp.Expression,bool) <0x0007d>
+  at Mono.CSharp.Convert.GetConversionOperator
+(System.Type,Mono.CSharp.Expression,System.Type,bool) <0x0039f>
+  at Mono.CSharp.Convert.UserDefinedConversion
+(Mono.CSharp.EmitContext,Mono.CSharp.Expression,System.Type,Mono.CSharp.Location,bool
+                                                                          
+                                                          ) <0x0012c>
+  at Mono.CSharp.Convert.ImplicitUserConversion
+(Mono.CSharp.EmitContext,Mono.CSharp.Expression,System.Type,Mono.CSharp.Location)
+<0                                                                        
+                                                             x00036>
+  at Mono.CSharp.Convert.ImplicitConversionExists
+(Mono.CSharp.EmitContext,Mono.CSharp.Expression,System.Type) <0x00059>
+  at Mono.CSharp.Invocation.IsApplicable
+(Mono.CSharp.EmitContext,System.Collections.ArrayList,int,System.Reflection.MethodBase)
+<0x                                                                       
+                                                              0016d>
+  at Mono.CSharp.Invocation.IsApplicable
+(Mono.CSharp.EmitContext,Mono.CSharp.MethodGroupExpr,System.Collections.ArrayList,int,Syste
+                                                                          
+                                                         
+m.Reflection.MethodBase&) <0x00036>
+  at Mono.CSharp.Invocation.OverloadResolve
+(Mono.CSharp.EmitContext,Mono.CSharp.MethodGroupExpr,System.Collections.ArrayList,bool,M
+                                                                          
+                                                         
+ono.CSharp.Location) <0x0050a>
+  at Mono.CSharp.Invocation.DoResolve (Mono.CSharp.EmitContext) <0x00497>
+  at Mono.CSharp.Expression.Resolve
+(Mono.CSharp.EmitContext,Mono.CSharp.ResolveFlags) <0x001de>
+  at Mono.CSharp.Expression.Resolve (Mono.CSharp.EmitContext) <0x00028>
+  at Mono.CSharp.ExpressionStatement.ResolveStatement
+(Mono.CSharp.EmitContext) <0x0002c>
+  at Mono.CSharp.StatementExpression.Resolve (Mono.CSharp.EmitContext)
+<0x00037>
+  at Mono.CSharp.Block.Resolve (Mono.CSharp.EmitContext) <0x00288>
+  at Mono.CSharp.Block.Resolve (Mono.CSharp.EmitContext) <0x00288>
+  at Mono.CSharp.EmitContext.ResolveTopBlock
+(Mono.CSharp.EmitContext,Mono.CSharp.ToplevelBlock,Mono.CSharp.Parameters,Mono.CSharp.I
+                                                                          
+                                                          MethodData,bool&)
+<0x00284>
+  at Mono.CSharp.EmitContext.EmitTopBlock
+(Mono.CSharp.IMethodData,Mono.CSharp.ToplevelBlock) <0x00072>
+  at Mono.CSharp.MethodData.Emit (Mono.CSharp.DeclSpace) <0x001c5>
+  at Mono.CSharp.Method.Emit () <0x00021>
+  at Mono.CSharp.TypeContainer.EmitType () <0x00306>
+  at Mono.CSharp.RootContext.EmitCode () <0x002b3>
+  at Mono.CSharp.Driver.MainDriver (string[]) <0x00daf>
+  at Mono.CSharp.Driver.Main (string[]) <0x00064>
+  at (wrapper runtime-invoke) System.Object.runtime_invoke_int_string[]
+(object,intptr,intptr,intptr) <0xffffffff>
+
+Native stacktrace:
+
+        /usr/bin/mono [0x56b37b]
+        /usr/bin/mono [0x54afc4]
+        /usr/lib/debug/libpthread.so.0 [0x2ab8131f8410]
+        /usr/bin/mono [0x511521]
+        /usr/bin/mono [0x510c08]
+        /usr/bin/mono [0x519901]
+        /usr/bin/mono [0x5194f2]
+        /usr/bin/mono [0x51a4f6]
+        /usr/bin/mono [0x51a774]
+        /usr/bin/mono [0x50ee2a]
+        /usr/bin/mono [0x5183b3]
+        /usr/bin/mono [0x515c36]
+        /usr/bin/mono(mono_array_new_specific+0xdd) [0x4de2ff]
+        [0x40018480]
+
+Debug info from gdb:
+
+(no debugging symbols found)
+Using host libthread_db library "/usr/lib/debug/libthread_db.so.1".
+(no debugging symbols found)
+(no debugging symbols found)
+[Thread debugging using libthread_db enabled]
+[New Thread 46970088198976 (LWP 10042)]
+[New Thread 1075988832 (LWP 10044)]
+[New Thread 1073822048 (LWP 10043)]
+0x00002ab813545ad6 in __select_nocancel () from /usr/lib/debug/libc.so.6
+  3 Thread 1073822048 (LWP 10043)  0x00002ab8131f7b15 in __nanosleep_nocancel
+    () from /usr/lib/debug/libpthread.so.0
+  2 Thread 1075988832 (LWP 10044)  0x00002ab8134b249f in *__GI___sigsuspend ()
+   from /usr/lib/debug/libc.so.6
+  1 Thread 46970088198976 (LWP 10042)  0x00002ab813545ad6 in __select_nocancel
+    () from /usr/lib/debug/libc.so.6
+
+Thread 3 (Thread 1073822048 (LWP 10043)):
+#0  0x00002ab8131f7b15 in __nanosleep_nocancel ()
+   from /usr/lib/debug/libpthread.so.0
+#1  0x00000000004ffed2 in mono_once ()
+#2  0x00002ab8131f1f1a in start_thread () from /usr/lib/debug/libpthread.so.0
+#3  0x00002ab81354c612 in clone ()
+    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
+#4  0x0000000000000000 in ?? ()
+
+Thread 2 (Thread 1075988832 (LWP 10044)):
+#0  0x00002ab8134b249f in *__GI___sigsuspend () from /usr/lib/debug/libc.so.6
+#1  0x000000000050d754 in mono_bitset_foreach ()
+#2  0x000000000050d78e in mono_bitset_foreach ()
+#3  <signal handler called>
+#4  pthread_cond_wait@@GLIBC_2.3.2 ()
+    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:222
+#5  0x00000000004f72d7 in mono_metadata_init ()
+#6  0x00000000004f75e5 in mono_metadata_init ()
+#7  0x00000000004f73cb in mono_metadata_init ()
+#8  0x00000000004f39c2 in mono_metadata_init ()
+#9  0x00000000004e2647 in mono_gc_is_finalizer_thread ()
+#10 0x00000000004bf11c in mono_thread_get_abort_signal ()
+#11 0x00000000004f884d in mono_metadata_init ()
+#12 0x0000000000516c93 in GC_end_blocking ()
+#13 0x00002ab8131f1f1a in start_thread () from /usr/lib/debug/libpthread.so.0
+#14 0x00002ab81354c612 in clone ()
+    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
+#15 0x0000000000000000 in ?? ()
+
+Thread 1 (Thread 46970088198976 (LWP 10042)):
+#0  0x00002ab813545ad6 in __select_nocancel () from /usr/lib/debug/libc.so.6
+#1  0x00002ab812f9a52d in g_spawn_sync () from /usr/lib/libglib-2.0.so.0
+#2  0x00002ab812f9a8f8 in g_spawn_command_line_sync ()
+   from /usr/lib/libglib-2.0.so.0
+#3  0x000000000056b425 in mono_debugger_run_finally ()
+#4  0x000000000054afc4 in mono_jit_thread_attach ()
+#5  <signal handler called>
+#6  0x0000000000511521 in mono_bitset_foreach ()
+#7  0x0000000000510c08 in mono_bitset_foreach ()
+#8  0x0000000000519901 in GC_end_blocking ()
+#9  0x00000000005194f2 in GC_end_blocking ()
+#10 0x000000000051a4f6 in GC_end_blocking ()
+#11 0x000000000051a774 in GC_end_blocking ()
+#12 0x000000000050ee2a in mono_bitset_foreach ()
+#13 0x00000000005183b3 in GC_end_blocking ()
+#14 0x0000000000515c36 in GC_push_all_stack ()
+#15 0x00000000004de2ff in mono_array_new_specific ()
+#16 0x0000000040018480 in ?? ()
+#17 0x00002aaac4f8d668 in ?? ()
+#18 0x00002aaac4f8d668 in ?? ()
+#19 0x0000000000739880 in ?? ()
+#20 0x00000000004db899 in mono_object_new_fast ()
+#21 0x000000004001842b in ?? ()
+#22 0x0000000000000000 in ?? ()
+#0  0x00002ab813545ad6 in __select_nocancel () from /usr/lib/debug/libc.so.6
+
+
+=================================================================
+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.
+=================================================================
+
+make: *** [build/scripts/legacy.dll] Aborted


More information about the mono-bugs mailing list