Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Aug 1999 21:34:21 -0500
From:      Alan Cox <alc@cs.rice.edu>
To:        Matthew Dillon <dillon@apollo.backplane.com>
Cc:        Luoqi Chen <luoqi@watermarkgroup.com>, freebsd-smp@FreeBSD.ORG
Subject:   Re: Weird infinite lockup in splx() (in IFCPL_UNLOCK) w/ latest CURRENT/SMP
Message-ID:  <19990822213421.E47586@nonpc.cs.rice.edu>
In-Reply-To: <199908230023.RAA00824@apollo.backplane.com>; from Matthew Dillon on Sun, Aug 22, 1999 at 05:23:40PM -0700
References:  <199908230023.RAA00824@apollo.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Aug 22, 1999 at 05:23:40PM -0700, Matthew Dillon wrote:
>     I had a weird lockup w/ the latest CURRENT while doing an installworld.
> 
>     I tracked the lockup down to an infinite loop in the current process...
>     an infinite loop in splx()!
> 
>     I've never had this lockup before so I believe it to be due to
>     some recent change.   The lockup occured during very heavy use of
>     the lockmgr on the same vnode lock (the uudecode binary) during a 
>     parallel installworld.
> 
>     My kernel was as of today, 22Aug.  This is on a 2xPIII/450 SMP box.
> 
>     I believe there to be a race condition somewhere.
> 
> 					-Matt
> 
> ...
> #9  0xc021f1e6 in scgetc (sc=0xc02a37e0, flags=2)
>     at ../../dev/syscons/syscons.c:3782
> #10 0xc021aef1 in sckbdevent (thiskbd=0xc02b4d20, event=0, arg=0xc02a37e0)
>     at ../../dev/syscons/syscons.c:663
> #11 0xc021481f in atkbd_intr (kbd=0xc02b4d20, arg=0x0)
>     at ../../dev/kbd/atkbd.c:439
> #12 0xc024b764 in atkbd_isa_intr (arg=0xc02b4d20) at ../../isa/atkbd_isa.c:123
> #13 0xc0243194 in splx (ipl=3224034576) at ../../i386/isa/ipl_funcs.c:275
> 
> 		^^^^^^^ it was looping splx, in IFCPL_UNLOCK.
> 

Are you sure about this?  There's no loop in IFCPL_UNLOCK or splx (proper)
for that matter.  Only the IFCPL_LOCK at the beginning and the splz at
the end contain loops within them.

> #14 0xc014c158 in lockmgr (lkp=0xc02add10, flags=2, interlkp=0x0, p=0xcc745ec0)
>     at ../../kern/kern_lock.c:360
> #15 0xc0205513 in kmem_alloc_wait (map=0xc02add10, size=69632)
>     at ../../vm/vm_kern.c:436
> #16 0xc0149375 in execve (p=0xcc745ec0, uap=0xcc7a3f80)
>     at ../../kern/kern_exec.c:126
> 
> 
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-smp" in the body of the message


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990822213421.E47586>