[Mono-bugs] [Bug 78125][Nor] New - runtime segfault in program using C5.HashDictionary

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Mon Apr 17 03:30:57 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 bcs26 at cornell.edu.

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

--- shadow/78125	2006-04-17 03:30:57.000000000 -0400
+++ shadow/78125.tmp.13822	2006-04-17 03:30:57.000000000 -0400
@@ -0,0 +1,94 @@
+Bug#: 78125
+Product: Mono: Runtime
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Normal
+Component: misc
+AssignedTo: mono-bugs at ximian.com                            
+ReportedBy: bcs26 at cornell.edu               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: runtime segfault in program using C5.HashDictionary
+
+The following test case, attached (HashCrash.cs), consistently crashes the
+Mono runtime. I've also attached a compiled version of the test case
+(HashCrash.exe).
+
+"
+public class Foo {
+    private C5.HashDictionary<object, object> _hd;
+
+    public Foo() {
+        _hd = new C5.HashDictionary<object, object>();
+
+        _hd[0] = new object();
+    }
+
+    public object Get(object key) {
+        object v = _hd[key];
+
+        return v;
+    }
+}
+
+public class HashCrash {
+    public static void Main(string[] args) {
+        Foo f = new Foo();
+
+        for(int i = 0; i < 100000; ++i) {
+            f.Get(0);
+        }
+    }
+}
+"
+
+with the following error message (taken from 1.13.2 on x86):
+
+"
+=================================================================
+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:
+
+
+Native stacktrace:
+
+        mono(mono_handle_native_sigsegv+0xc0) [0x8146940]
+        mono [0x8132d26]
+        [0xffffe440]
+        [0xb75a1016]
+        [0xb75a0feb]
+        [0xb75a0e96]
+        [0xb75a12cb]
+        [0xb75a1221]
+        [0xb75a11de]
+        [0xb759ec15]
+        [0xb759eac3]
+        mono [0x8132bd0]
+        mono(mono_runtime_invoke+0x27) [0x80ce5c7]
+        mono(mono_runtime_exec_main+0x5a) [0x80cf55a]
+        mono(mono_runtime_run_main+0x19f) [0x80cf1ef]
+        mono [0x805cf71]
+        mono(mono_main+0x766) [0x805d896]
+        mono [0x805c2fb]
+        /lib/tls/libc.so.6(__libc_start_main+0xd2) [0xb7d200d2]
+        mono [0x805c231]
+Aborted
+"
+
+The only unusual feature of this program seems to be its use of C5. The
+crash occurs under 1.1.13.1 and 1.1.13.2, on both amd64 and x86 (Gentoo).
+Although the attached test case crashes the runtime on every execution, the
+underlying issue seems nondeterministic; in larger test cases, some
+executions would terminate without error. In those earlier test cases, the
+crash was also much easier to trigger on a single-processor x86 machine
+than on an SMP (2-CPU) amd64 machine.


More information about the mono-bugs mailing list