From owner-freebsd-arm@FreeBSD.ORG Thu Feb 18 23:45:49 2010 Return-Path: Delivered-To: arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6C6F91065670; Thu, 18 Feb 2010 23:45:49 +0000 (UTC) (envelope-from ticso@cicely7.cicely.de) Received: from raven.bwct.de (raven.bwct.de [85.159.14.73]) by mx1.freebsd.org (Postfix) with ESMTP id C11278FC08; Thu, 18 Feb 2010 23:45:48 +0000 (UTC) Received: from mail.cicely.de ([10.1.1.37]) by raven.bwct.de (8.13.4/8.13.4) with ESMTP id o1INjkMf048767 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 19 Feb 2010 00:45:47 +0100 (CET) (envelope-from ticso@cicely7.cicely.de) Received: from cicely7.cicely.de (cicely7.cicely.de [10.1.1.9]) by mail.cicely.de (8.14.3/8.14.3) with ESMTP id o1INjbRD076833 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 19 Feb 2010 00:45:37 +0100 (CET) (envelope-from ticso@cicely7.cicely.de) Received: from cicely7.cicely.de (localhost [127.0.0.1]) by cicely7.cicely.de (8.14.2/8.14.2) with ESMTP id o1INjbe8087531; Fri, 19 Feb 2010 00:45:37 +0100 (CET) (envelope-from ticso@cicely7.cicely.de) Received: (from ticso@localhost) by cicely7.cicely.de (8.14.2/8.14.2/Submit) id o1INjbKY087530; Fri, 19 Feb 2010 00:45:37 +0100 (CET) (envelope-from ticso) Date: Fri, 19 Feb 2010 00:45:37 +0100 From: Bernd Walter To: Kostik Belousov Message-ID: <20100218234537.GT43625@cicely7.cicely.de> References: <20100215213907.GA43625@cicely7.cicely.de> <20100216183951.GI43625@cicely7.cicely.de> <20100218124907.GG43625@cicely7.cicely.de> <20100218131010.GQ50403@deviant.kiev.zoral.com.ua> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100218131010.GQ50403@deviant.kiev.zoral.com.ua> X-Operating-System: FreeBSD cicely7.cicely.de 7.0-STABLE i386 User-Agent: Mutt/1.5.11 X-Spam-Status: No, score=-4.3 required=5.0 tests=ALL_TRUSTED=-1.8, AWL=0.062, BAYES_00=-2.599 autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on spamd.cicely.de Cc: arm@freebsd.org, Bernd Walter , ticso@cicely.de, current@freebsd.org Subject: Re: bind fails with sig11 on start / pthread failure on ARM? X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: ticso@cicely.de List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Feb 2010 23:45:49 -0000 On Thu, Feb 18, 2010 at 03:10:10PM +0200, Kostik Belousov wrote: > On Thu, Feb 18, 2010 at 01:49:07PM +0100, Bernd Walter wrote: > > On Tue, Feb 16, 2010 at 07:39:51PM +0100, Bernd Walter wrote: > > > On Mon, Feb 15, 2010 at 10:39:07PM +0100, Bernd Walter wrote: > > > [55]Please.tell.me.who.am.I# gdb /usr/sbin/named named.core > > > GNU gdb 6.1.1 [FreeBSD] > > > Copyright 2004 Free Software Foundation, Inc. > > > GDB is free software, covered by the GNU General Public License, and you are > > > welcome to change it and/or distribute copies of it under certain conditions. > > > Type "show copying" to see the conditions. > > > There is absolutely no warranty for GDB. Type "show warranty" for details. > > > This GDB was configured as "arm-marcel-freebsd"...(no debugging symbols found)... > > > Core was generated by `named'. > > > Program terminated with signal 5, Trace/breakpoint trap. > > > Reading symbols from /lib/libcrypto.so.6...(no debugging symbols found)...done. > > > Loaded symbols for /lib/libcrypto.so.6 > > > Reading symbols from /lib/libthr.so.3...(no debugging symbols found)...done. > > > Loaded symbols for /lib/libthr.so.3 > > > Reading symbols from /lib/libc.so.7...(no debugging symbols found)...done. > > > Loaded symbols for /lib/libc.so.7 > > > Reading symbols from /libexec/ld-elf.so.1...(no debugging symbols found)...done. > > > Loaded symbols for /libexec/ld-elf.so.1 > > > #0 0x203571b0 in _thread_bp_create () from /lib/libthr.so.3 > > > [New Thread 20804280 (LWP 100062)] > > > [New Thread 20804140 (LWP 100052)] > > > (gdb) bt > > > #0 0x203571b0 in _thread_bp_create () from /lib/libthr.so.3 > > > #1 0x203572b8 in _thread_bp_death () from /lib/libthr.so.3 > > > #2 0x20349da4 in pthread_create () from /lib/libthr.so.3 > > > #3 0x00164cb8 in ?? () > > > (gdb) > > > > > > Do we have a general threading problem on ARM? > > > > I see two different type a crashes. > > Both have in common that one or more threads are in _umtx_op. > > Unfortunately I don't know enough details about those things to isolate > > any more. > > > > the one from above: > > #0 0x203571b0 in _thread_bp_create () from /lib/libthr.so.3 > > [New Thread 20804280 (LWP 100062)] > > [New Thread 20804140 (LWP 100052)] > > (gdb) bt > > #0 0x203571b0 in _thread_bp_create () from /lib/libthr.so.3 > > #1 0x203572b8 in _thread_bp_death () from /lib/libthr.so.3 > > #2 0x20349da4 in pthread_create () from /lib/libthr.so.3 > > #3 0x00164cb8 in ?? () > > (gdb) thread 1 > > [Switching to thread 1 (Thread 20804280 (LWP 100062))]#0 0x203ab6f0 in _umtx_op () from /lib/libc.so.7 > > (gdb) bt > > #0 0x203ab6f0 in _umtx_op () from /lib/libc.so.7 > > #1 0x2035769c in pthread_cleanup_push () from /lib/libthr.so.3 > > #2 0x20357cc0 in pthread_cleanup_push () from /lib/libthr.so.3 > > #3 0x20349540 in pthread_getprio () from /lib/libthr.so.3 > > #4 0x203499a0 in pthread_create () from /lib/libthr.so.3 > > #5 0x00164cb8 in ?? () > > > > And another, which is what I get most of the time: > > (gdb) thread 1 > > [Switching to thread 1 (Thread 20804500 (LWP 100100))]#0 0x20435f28 in kevent () from /lib/libc.so.7 > > (gdb) bt > > #0 0x20435f28 in kevent () from /lib/libc.so.7 > > #1 0x0014f2dc in ?? () > > (gdb) thread 2 > > [Switching to thread 2 (Thread 208043c0 (LWP 100099))]#0 0x203ab6f4 in _umtx_op () from /lib/libc.so.7 > > (gdb) bt > > #0 0x203ab6f4 in _umtx_op () from /lib/libc.so.7 > > #1 0x2035769c in pthread_cleanup_push () from /lib/libthr.so.3 > > #2 0x20357a78 in pthread_cleanup_push () from /lib/libthr.so.3 > > #3 0x20355580 in pthread_cond_signal () from /lib/libthr.so.3 > > #4 0x00000000 in ?? () > > (gdb) thread 3 > > [Switching to thread 3 (Thread 20804280 (LWP 100098))]#0 0x203ab6f4 in _umtx_op () from /lib/libc.so.7 > > (gdb) bt > > #0 0x203ab6f4 in _umtx_op () from /lib/libc.so.7 > > #1 0x2035769c in pthread_cleanup_push () from /lib/libthr.so.3 > > #2 0x20357a78 in pthread_cleanup_push () from /lib/libthr.so.3 > > #3 0x20355580 in pthread_cond_signal () from /lib/libthr.so.3 > > #4 0x2092d008 in ?? () > > (gdb) thread 4 > > [Switching to thread 4 (Thread 20804140 (LWP 100043))]#0 0x0015755c in ?? () > > (gdb) bt > > #0 0x0015755c in ?? () > > Compile and install ld-elf.so, libc and libthr with debugging symbols: > (cd libexec/rtld-elf && make all install DEBUG_FLAGS=-g) > (cd lib/libc && make all install DEBUG_FLAGS=-g) > (cd lib/libthr && make all install DEBUG_FLAGS=-g) > > Then repeat the crash and try to see where in code does it happen. It is still compiling, but since kdump was fixed recently (thanks guys!) I already have some other data. But to be honest I don't see anything usefull in it. The last entry before the segfault was a successfull syslog submission. Hope the compiler finishes soon to get more detailed backtraces. [...] 59537 named CALL kevent(0x8,0xbfffe91c,0x1,0,0,0) 59537 named GIO fd 8 wrote 20 bytes 0x0000 0500 0000 ffff 0100 0000 0000 0000 0000 0000 0000 |....................| 59537 named GIO fd 8 read 0 bytes "" 59537 named RET kevent 0 59537 named CALL mmap(0xbfafc000,0x101000,PROT_READ|PROT_WRITE,MAP_STACK,0xffffffff,0,0) 59537 named RET mmap -1079001088/0xbfafc000 59537 named CALL mprotect(0xbfafc000,0x1000,PROT_NONE) 59537 named RET mprotect 0 59537 named CALL thr_new(0xbfffe8b4,0x34) 59537 named RET thr_new 0 59537 named RET fork 0 59537 named CALL kevent(0x8,0,0,0x209c6100,0x40,0) 59537 named CALL clock_gettime(0xd,0xbfffce58) 59537 named RET clock_gettime 0 59537 named CALL getpid 59537 named RET getpid 59537/0xe891 59537 named CALL sendto(0x3,0xbfffd304,0x3a,0,0,0) 59537 named GIO fd 3 wrote 58 bytes "<30>Feb 18 23:38:10 named[59537]: using up to 4096 sockets" 59537 named RET sendto 58/0x3a 59537 named PSIG SIGSEGV SIG_DFL 59537 named RET _umtx_op -1 errno 4 Interrupted system call 59537 named GIO fd 8 wrote 0 bytes "" 59537 named RET kevent -1 errno 4 Interrupted system call 59537 named RET _umtx_op -1 errno 4 Interrupted system call 59537 named NAMI "named.core" 59536 initial thread GIO fd 5 read 0 bytes "" 59536 initial thread RET read 0 59536 initial thread CALL exit(0x1) -- B.Walter http://www.bwct.de Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.