Panic with this morning's (~9am EDT, 15 jan 2004) sources.

John Baldwin jhb at FreeBSD.org
Fri Jan 16 11:59:48 PST 2004


On Friday 16 January 2004 02:45 pm, Robin P. Blanchard wrote:
> > -----Original Message-----
> > From: Dag-Erling Smørgrav [mailto:des at des.no]
> > Sent: Thursday, January 15, 2004 1:51 PM
> > To: Scott Long
> > Cc: Robin P. Blanchard; current at freebsd.org
> > Subject: Re: Panic with this morning's (~9am EDT, 15 jan
> > 2004) sources.
> >
> > Scott Long <scottl at freebsd.org> writes:
> > > This is likely due to the new fd allocation code.  DES, can
> >
> > you please
> >
> > > enable WITNESS and INVARIANTS in your test system and fix this?
> >
> > I just committed a fix.
> >
> > DES
> > --
> > Dag-Erling Smørgrav - des at des.no
>
> Grabbed new code from cvsup1 this morning (~9am EDT, 16 jan 04) and am now
> panicing in a different location:
>
> FreeBSD/i386 bootstrap loader, Revision 1.1
> (root at bsdfs5.gactr.uga.edu, Fri Jan 16 11:10:18 EST 2004)
> Loading /boot/defaults/loader.conf
> /boot/kernel/kernel text=0x277880 data=0x2a264+0x56838
> syms=[0x4+0x36e70+0x4+0x4
> 3c03]
> /boot/modules/if_fxp.ko text=0x77b4 data=0x1014+0xc
> syms=[0x4+0xcf0+0x4+0xdbb]
> loading required module 'miibus'
> /boot/modules/miibus.ko text=0x15820 data=0xc84+0x68
> syms=[0x4+0x1c60+0x4+0x2328
> ]
> /boot/modules/twe.ko text=0x7398 data=0x5ac+0x8c syms=[0x4+0xdb0+0x4+0xd1d]
> Loading /boot/defaults/loader.conf
> -
> Hit [Enter] to boot immediately, or any other key for command prompt.
> Booting [/boot/kernel/kernel]...
> ACPI_DEBUG: set 'ACPI_EVENTS'
> ACPI_DEBUG: set 'ACPI_LV_ALL_EXCEPTIONS'
> ACPI debug layer 0x4 debug level 0x1f
> Copyright (c) 1992-2004 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>         The Regents of the University of California. All rights reserved.
> FreeBSD 5.2-CURRENT #0: Fri Jan 16 11:58:59 EST 2004
>     root at bsdfs5.gactr.uga.edu:/usr/obj/usr/src/sys/ule.debug
> Preloaded elf kernel "/boot/kernel/kernel" at 0xc07a7000.
> Preloaded elf module "/boot/modules/if_fxp.ko" at 0xc07a726c.
> Preloaded elf module "/boot/modules/miibus.ko" at 0xc07a7318.
> Preloaded elf module "/boot/modules/twe.ko" at 0xc07a73c4.
> Timecounter "i8254" frequency 1193182 Hz quality 0
> CPU: Intel Pentium III (851.94-MHz 686-class CPU)
>   Origin = "GenuineIntel"  Id = 0x68a  Stepping = 10
>
> Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV
>,P A
> T,PSE36,MMX,FXSR,SSE>
> real memory  = 536608768 (511 MB)
> avail memory = 519680000 (495 MB)
> acquiring duplicate lock of same type: "filedesc structure"
>  1st filedesc structure @ /usr/src/sys/kern/kern_descrip.c:1377
>  2nd filedesc structure @ /usr/src/sys/kern/kern_descrip.c:1431
> Stack backtrace:
> backtrace(c0662f9a,c065e006,c065e5b2,597,1d8) at backtrace+0x17
> witness_lock(c1568838,8,c065e5b2,597,c1568800) at witness_lock+0x5aa
> _mtx_lock_flags(c1568838,0,c065e5b2,597,a) at _mtx_lock_flags+0x6a
> fdcopy(c06a9120,0,c065e9a0,1a5,c0685924) at fdcopy+0x46
> fork1(c06a8d60,60034,0,c0821d50,64) at fork1+0x61f
> kthread_create(c04f9930,0,0,40000,0,c065edc1) at kthread_create+0x48
> ktrace_init(0,81e000,81ec00,81e000,0) at ktrace_init+0xf5
> mi_startup() at mi_startup+0xb5
> begin() at begin+0x2c
> Debugger("witness_lock")
> Stopped at      Debugger+0x55:  xchgl   %ebx,in_Debugger.0
> db> show locks
> exclusive sleep mutex filedesc structure r = 0 (0xc06a9158) locked @
> /usr/src/sy
> s/kern/kern_descrip.c:1377
> exclusive sleep mutex Giant r = 1 (0xc06ac580) locked @
> /usr/src/sys/kern/kern_f
> ork.c:218

DES, you need to actually run a system with WITNESS on to test things.  You 
probably don't need to lock the new filedesc structure while you are creating 
it until you've actually hooked it up to a proc structure.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org



More information about the freebsd-current mailing list