[Mono-bugs] [Bug 80532][Wis] Changed - svn head - segfault in the runtime while running mojoportal 2.x
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Sat Jan 27 15:04:51 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 miguel at ximian.com.
http://bugzilla.ximian.com/show_bug.cgi?id=80532
--- shadow/80532 2007-01-27 13:18:04.000000000 -0500
+++ shadow/80532.tmp.13991 2007-01-27 15:04:51.000000000 -0500
@@ -545,6 +545,120 @@
with mono_errata/Web.config again. Probably simpler just to remove the
Deploy project.
Thanks again for your help,
Joe
+
+------- Additional Comments From miguel at ximian.com 2007-01-27 15:04 -------
+I can reproduce the issue with the instructions provided
+
+I have uploaded a ready-to-run directory here:
+
+http://primates.ximian.com/~miguel/Web.tar.gz
+
+cd into that, and run `xsp2'
+
+I get this error in x86:
+
+
+#0 GC_clear_stack_inner (arg=0x0, limit=3063730880) at misc.c:293
+#1 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#2 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#3 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#4 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#5 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#6 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#7 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#8 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#9 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063730880) at
+misc.c:295
+#10 0x08125816 in GC_clear_stack (arg=0x0) at misc.c:341
+#11 0x081295fd in GC_local_malloc (bytes=148) at pthread_support.c:346
+#12 0x08099af4 in mono_array_new_specific (vtable=0x84d7a18, n=11) at
+object.c:2616
+
+On a separate run, I get this somewhere else:
+
+#0 GC_clear_stack_inner (arg=0x0, limit=3063964064) at misc.c:293
+#1 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#2 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#3 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#4 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#5 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#6 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#7 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#8 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#9 0x081257a6 in GC_clear_stack_inner (arg=0x0, limit=3063964064) at
+misc.c:295
+#10 0x08125816 in GC_clear_stack (arg=0x0) at misc.c:341
+#11 0x0812952f in GC_local_malloc_atomic (bytes=38) at
+pthread_support.c:371
+#12 0x08099c5b in mono_string_new_size (domain=0x21258, len=12) at
+object.c:2633
+#13 0x080db76a in ves_icall_System_String_InternalAllocateStr
+(length=12) at string-icalls.c:645
+
+I cant use mono_pmip, but I used mono -v to look at the Emitted
+locations, and this is what the stack trace looks above:
+
+Method (wrapper managed-to-native) System.String:InternalAllocateStr
+(int) emitted at 0xb69fd240 to 0xb69fd28b (code length 75)
+[ASPHOST_7c2ad03b]^M
+Method System.String:StartsWith
+(string,bool,System.Globalization.CultureInfo) emitted at 0xb6989a10
+to 0xb6989a7b (code length 107) [ASPHOST_7c2ad03b]^M
+Method (wrapper managed-to-native) System.String:InternalAllocateStr
+(int) emitted at 0xb69fd240 to 0xb69fd28b (code length 75)
+[ASPHOST_7c2ad03b]^M
+Method System.String:Substring (int) emitted at 0xb69d4920 to
+0xb69d49ec (code length 204) [ASPHOST_7c2ad03b]^M
+Method System.String:StartsWith (string) emitted at 0xb69899d0 to
+0xb69899fa (code length 42) [ASPHOST_7c2ad03b]^M
+
+info thread:
+(gdb) info thread
+ 9 Thread -1231729760 (LWP 13210) 0xffffe410 in __kernel_vsyscall ()
+* 8 Thread -1229956192 (LWP 13209) GC_clear_stack_inner (arg=0x0,
+limit=3063964064) at misc.c:293
+ 7 Thread -1226998880 (LWP 13208) 0xffffe410 in __kernel_vsyscall ()
+ 6 Thread -1224676448 (LWP 13207) 0xffffe410 in __kernel_vsyscall ()
+ 5 Thread -1225794656 (LWP 13205) 0xffffe410 in __kernel_vsyscall ()
+ 4 Thread -1224676448 (LWP 13207) 0xffffe410 in __kernel_vsyscall ()
+ 3 Thread -1220117600 (LWP 13203) 0xffffe410 in __kernel_vsyscall ()
+ 2 Thread -1209226336 (LWP 13202) 0xffffe410 in __kernel_vsyscall ()
+ 1 Thread -1210698048 (LWP 13199) 0xffffe410 in __kernel_vsyscall ()
+
+
+Google finds this information about this particular problem:
+
+http://blog.gmane.org/gmane.comp.programming.garbage-collection.boehmgc/month=20060401/page=2
+
+From Hans Boehm on that thread:
+
+This usually means that you are invoking the collector from a stack
+that the collector doesn't know about,
+e.g. because the collector is configured without threads, but you have
+a multithreaded application.
+GC_clear_stack_inner() is supposed to recurse, clearing a local array,
+until it hits a limit. This is
+designed to overwrite old values on the stack occasionally. In this
+case I expect that the limit is far
+removed from the current stack pointer, and probably in a different stack.
+
+
More information about the mono-bugs
mailing list