From owner-freebsd-alpha Tue Sep 12 15:14: 0 2000 Delivered-To: freebsd-alpha@freebsd.org Received: from anchor-post-32.mail.demon.net (anchor-post-32.mail.demon.net [194.217.242.90]) by hub.freebsd.org (Postfix) with ESMTP id 39A7037B42C for ; Tue, 12 Sep 2000 15:13:58 -0700 (PDT) Received: from nlsys.demon.co.uk ([158.152.125.33] helo=herring.nlsystems.com) by anchor-post-32.mail.demon.net with esmtp (Exim 2.12 #1) id 13YyJQ-000JY0-0W; Tue, 12 Sep 2000 23:13:57 +0100 Received: from salmon.nlsystems.com (salmon.nlsystems.com [10.0.0.3]) by herring.nlsystems.com (8.9.3/8.8.8) with ESMTP id XAA10132; Tue, 12 Sep 2000 23:15:30 +0100 (BST) (envelope-from dfr@nlsystems.com) Date: Tue, 12 Sep 2000 23:14:40 +0100 (BST) From: Doug Rabson To: Bernd Walter Cc: John Baldwin , alpha@freebsd.org Subject: Re: Mutex's aren't recursing In-Reply-To: <20000912233951.A56554@cicely5.cicely.de> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Tue, 12 Sep 2000, Bernd Walter wrote: > On Tue, Sep 12, 2000 at 09:32:23PM +0100, Doug Rabson wrote: > > I sent you some mail yesterday about this. I got the constraints wrong for > > the inline assembler in atomic_cmpset. I disassembled some of the code in > > interrupt.c which is trying to enter the mutex. You can clearly see that > > it is misusing t1 as both an input and output to the inline. > > > > 0xfffffc00005542c4 : lda t1,8(zero) > > 0xfffffc00005542c8 : ldq t0,64(t7) > > 0xfffffc00005542cc : ldq_l t1,0(s1) > > 0xfffffc00005542d0 : cmpeq t1,t1,t2 > > 0xfffffc00005542d4 : beq t2,0xfffffc00005542e4 > > 0xfffffc00005542d8 : mov t0,t1 > > 0xfffffc00005542dc : stq_c t1,0(s1) > > > > I'm just about to start testing this patch which should fix the problem > > and also provides efficent forms for > > atomic_{add,subtract,set,clear}_{32,64}. I also fixed the interrupt > > problems with the spin locks (I think). > > Your patch does the following on a PC164 to me: > 1. The mutex change will hang my system every second boot during PCI device > printings. I still don't understand this one fully. I think its orthogonal to the mutex problems. > 2. Both changes panic the system on boot: > [...] I see that too - I'm trying to debug it now. -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 20 8348 3944 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message