From owner-freebsd-arm@FreeBSD.ORG Fri Feb 19 03:47:37 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 E836D106568D; Fri, 19 Feb 2010 03:47:36 +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 8B7228FC19; Fri, 19 Feb 2010 03:47:36 +0000 (UTC) Received: from mail.cicely.de ([10.1.1.37]) by raven.bwct.de (8.13.4/8.13.4) with ESMTP id o1J3lZXs073366 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 19 Feb 2010 04:47:35 +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 o1J3lQxR086996 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 19 Feb 2010 04:47:26 +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 o1J3lPOJ089357; Fri, 19 Feb 2010 04:47:25 +0100 (CET) (envelope-from ticso@cicely7.cicely.de) Received: (from ticso@localhost) by cicely7.cicely.de (8.14.2/8.14.2/Submit) id o1J3lPDV089356; Fri, 19 Feb 2010 04:47:25 +0100 (CET) (envelope-from ticso) Date: Fri, 19 Feb 2010 04:47:25 +0100 From: Bernd Walter To: Kostik Belousov , imp@freebsd.org Message-ID: <20100219034725.GA43625@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> <20100219031200.GY43625@cicely7.cicely.de> <20100219033000.GZ43625@cicely7.cicely.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100219033000.GZ43625@cicely7.cicely.de> X-Operating-System: FreeBSD cicely7.cicely.de 7.0-STABLE i386 User-Agent: Mutt/1.5.11 X-Spam-Status: No, score=-4.4 required=5.0 tests=ALL_TRUSTED=-1.8, 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: Fri, 19 Feb 2010 03:47:37 -0000 On Fri, Feb 19, 2010 at 04:30:00AM +0100, Bernd Walter wrote: > On Fri, Feb 19, 2010 at 04:12:00AM +0100, Bernd Walter wrote: > > 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: > > [Switching to thread 4 (Thread 20804140 (LWP 100053))]#0 0x0015755c in isc_atomic_cmpxchg () > > (gdb) bt > > #0 0x0015755c in isc_atomic_cmpxchg () > > #1 0x00157dac in isc_rwlock_lock () > > #2 0x000f9790 in dns_db_register () > > #3 0x0004d590 in dns_sdb_register () > > #4 0x0000c974 in ns_builtin_init () > > #5 0x0001aa90 in $a () > > #6 0x0001aa90 in $a () > > > > isc_atomic_cmpxchg really sounds quite interesting though. > > It is not only the crashing function it is also a type of function which > > sounds error prune. > > For me it looks like a bug in bind itself. > It is in contrib/bind9/lib/isc/arm/include/isc/atomic.h. > My assumption is that either the assembly is broken or it gets an > invalid pointer. > I'm not very expirienced with ARM assembly. > Warner - it names you in the copyright, so very likely you know this code. > I will build a debug version of bind, but as usual it will take some > time... Maybe it helps in the meanwhile: (gdb) disassemble 0x0015755c Dump of assembler code for function isc_atomic_cmpxchg: 0x00157550 : mov r3, r0 0x00157554 : sub r0, pc, #8 ; 0x8 0x00157558 : mov r12, #-536870908 ; 0xe0000004 0x0015755c : str r0, [r12] 0x00157560 : mov r12, #-536870904 ; 0xe0000008 0x00157564 : add r0, pc, #12 ; 0xc 0x00157568 : str r0, [r12] 0x0015756c : ldr r0, [r3] 0x00157570 : cmp r0, r1 0x00157574 : streq r2, [r3] 0x00157578 : mov r1, #0 ; 0x0 0x0015757c : mov r12, #-536870908 ; 0xe0000004 0x00157580 : str r1, [r12] 0x00157584 : mvn r1, #0 ; 0x0 0x00157588 : mov r12, #-536870904 ; 0xe0000008 0x0015758c : str r1, [r12] 0x00157590 : mov pc, lr End of assembler dump. Seems to be the str in line 57, which is crashing. -- B.Walter http://www.bwct.de Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.