From owner-freebsd-threads@FreeBSD.ORG Thu Oct 7 13:30:38 2004 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7541016A4CE; Thu, 7 Oct 2004 13:30:38 +0000 (GMT) Received: from mail.ntplx.net (mail.ntplx.net [204.213.176.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 13A8843D1D; Thu, 7 Oct 2004 13:30:38 +0000 (GMT) (envelope-from deischen@freebsd.org) Received: from sea.ntplx.net (sea.ntplx.net [204.213.176.11]) i97DUW4i029242; Thu, 7 Oct 2004 09:30:32 -0400 (EDT) Date: Thu, 7 Oct 2004 09:30:32 -0400 (EDT) From: Daniel Eischen X-X-Sender: eischen@sea.ntplx.net To: David Xu In-Reply-To: <4164B275.8080700@freebsd.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by AMaViS and Clam AntiVirus (mail.ntplx.net) cc: Ivan Voras cc: freebsd-threads@freebsd.org Subject: Re: threads/72353: Assertionfailsin/usr/src/lib/libpthread/sys/lock.c, line 171, when compilingmonodoc X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Daniel Eischen List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Oct 2004 13:30:38 -0000 On Thu, 7 Oct 2004, David Xu wrote: > Daniel Eischen wrote: > > >On Wed, 6 Oct 2004, Ivan Voras wrote: > > > > > > > >>Jeremy Messenger wrote: > >> > >> > >>>Have you tried Tom McLaughlin 's Mono > >>>project[1]? Tom has ported 1.0.2, 1.1.1, newer gtk-sharp and few Mono > >>>apps. He's kind of taking care of Mono on FreeBSD for now, which the > >>>maintainer of Mono is kind of too busy or has disappeared. Tom has said > >>>that it works with FreeBSD 5.3 only, because of better thread, TLS and etc. > >>> > >>> > >>Ok, I'll try it. Meanwhile, if anybody wants to look at it, it's really > >>simple to reproduce once you have mono installed (which isn't a > >>problem). Make an empty file (touch empty.cs) and run 'mcs empty.cs > >>-pkg:dummypkg'. > >> > >> > > > >It looks like something is overruning or corrupting the stack of > >one of the threads. The default stack size for threads is 64K in > >libpthread. > > > > > > > I tried, increasing stack size to 2M still does not help. > Here is the backtrace from .core file: > > Loaded symbols for /libexec/ld-elf.so.1 > #0 0x2837bf07 in pthread_testcancel () from /usr/lib/libpthread.so.1 > (gdb) bt > #0 0x2837bf07 in pthread_testcancel () from /usr/lib/libpthread.so.1 > #1 0x2836d099 in sigaction () from /usr/lib/libpthread.so.1 > #2 0x283671c5 in pthread_kill () from /usr/lib/libpthread.so.1 > #3 0x28366b94 in raise () from /usr/lib/libpthread.so.1 > #4 0x28451653 in abort () from /lib/libc.so.5 > #5 0x2842c733 in __assert () from /lib/libc.so.5 > #6 0x2837cd37 in __error () from /usr/lib/libpthread.so.1 > #7 0x2837005b in _pthread_mutex_trylock () from /usr/lib/libpthread.so.1 The stack is already corrupt here. pthread_mutex_lock() doesn't call pthread_mutex_trylock(). > #8 0x283715c7 in pthread_mutex_lock () from /usr/lib/libpthread.so.1 > #9 0x28171cc6 in WaitForSingleObjectEx (handle=0xe, timeout=500, > alertable=0) at handles-private.h:97 > #10 0x2816b116 in CreateProcess (appname=0xd, cmdline=0x8093ac4, > process_attrs=0x0, thread_attrs=0x0, inherit_handles=1, > create_flags=1024, new_environ=0x0, cwd=0x0, startup=0xbf8ec78c, > process_info=0xbf8ec77c) at processes.c:427 > #11 0x2813ef4f in ves_icall_System_Diagnostics_Process_Start_internal > (appname=0x80f89d8, cmd=0x8093ab8, dirname=0x8091f30, > stdin_handle=0x17e, stdout_handle=0x17e, stderr_handle=0x17e, > process_info=0xbf8ec964) at process.c:870 > #12 0x28f568ff in ?? () > #13 0x080f89d8 in ?? () > #14 0x08093ab8 in ?? () > #15 0x08091f30 in ?? () > #16 0x00000009 in ?? () > #17 0x0000000d in ?? () > #18 0x0000000b in ?? () > #19 0xbf8ec964 in ?? () > #20 0x0813a4e0 in ?? () > #21 0x0813a4c8 in ?? () > #22 0x081f17c0 in ?? () > #23 0x08091f30 in ?? () > #24 0x08093ab8 in ?? () > #25 0x080f89d8 in ?? () > #26 0xbf8ec838 in ?? () > #27 0x28f568cc in ?? () > #28 0xbf8ec98c in ?? () > #29 0x28f562aa in ?? () > #30 0x080f89d8 in ?? () > #31 0x08093ab8 in ?? () > #32 0x08091f30 in ?? () > #33 0x00000009 in ?? () > #34 0x0000000d in ?? () > #35 0x0000000b in ?? () > #36 0xbf8ec964 in ?? () > ---Type to continue, or q to quit--- > #37 0x28371b4e in pthread_mutex_unlock () from /usr/lib/libpthread.so.1 > Previous frame inner to this frame (corrupt stack?) > (gdb) > > > -- Dan Eischen