Date: Mon, 13 May 2002 16:42:22 +0400 (MSD) From: Alex Semenyaka <alexs@snark.ratmir.ru> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/38029: Kernel panic in lockmgr Message-ID: <200205131242.g4DCgLSB000580@snark.ratmir.ru>
next in thread | raw e-mail | index | archive | help
>Number: 38029
>Category: kern
>Synopsis: Kernel panic in lockmgr
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Mon May 13 05:50:03 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: Alex Semenyaka
>Release: FreeBSD 4.6-PRERELEASE i386
>Organization:
Ratmir KDS
>Environment:
System: FreeBSD snark.ratmir.ru 4.6-PRERELEASE FreeBSD 4.6-PRERELEASE #5: Wed May 8 08:01:53 MSD 2002 root@snark.ratmir.ru:/usr/src/sys/compile/SNARK i386
Kernel config:
machine i386
cpu I686_CPU
ident SNARK
maxusers 128
options INET #InterNETworking
options NMBCLUSTERS=10240
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_FORWARD
options IPDIVERT
options IPSTEALTH
options TCPDEBUG
options RANDOM_IP_ID
options TCP_DROP_SYNFIN
options ICMP_BANDLIM #Rate limit bad replies
options IPSEC #IP security
options IPSEC_ESP #IP security (crypto; define w/ IPSEC)
#options IPSEC_DEBUG #debug for IP security
options NETSMB #SMB/CIFS requester
options NETSMBCRYPTO #encrypted password support for SMB
options NETATALK #Appletalk communications protocols
#options NETATALKDEBUG
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]
options UFS_DIRHASH
options SOFTUPDATES #Enable FFS soft updates support
options MFS #Memory Filesystem
options NFS #Network Filesystem
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options PROCFS #Process filesystem
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options DDB
options DDB_UNATTENDED
makeoptions CONF_CFLAGS=-fno-builtin #Don't allow use of memcmp, etc.
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
options DIAGNOSTIC
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options INCLUDE_CONFIG_FILE # Include this file in kernel
options KTRACE #ktrace(1) support
options SYSVSHM #SYSV-style shared memory
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options P1003_1B #Posix P1003_1B real-time extensions
options _KPOSIX_PRIORITY_SCHEDULING
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
options VESA
options MAXCONS=16
options SC_ALT_MOUSE_IMAGE
options SC_HISTORY_SIZE=2500
options SC_MOUSE_CHAR=0x3
options SC_PIXEL_MODE
options USER_LDT
options KTRACE
options PERFMON
options UCONSOLE
options LIBMCHAIN
options LIBICONV
options MSGBUF_SIZE=81920
options BREAK_TO_DEBUGGER
options ALT_BREAK_TO_DEBUGGER
device isa
device pci
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
options ATA_STATIC_ID #Static device numbering
device vpo
device scbus #base SCSI code
device da #SCSI direct access devices (aka disks)
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x1
#device psm0 at atkbdc? irq 12
device uhci
device ohci
device usb
device ugen
device ums
device umass
options USB_DEBUG
options UHUB_DEBUG
options UHCI_DEBUG
#options OHCI_DEBUG
#options UMS_DEBUG
options UMASS_DEBUG
device vga0 at isa?
pseudo-device splash
device sc0 at isa? flags 0x100
device npx0 at nexus? port IO_NPX irq 13
device apm0 at nexus? flags 0x20 # Advanced Power Management
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? disable port IO_COM2 irq 3
device sio2 at isa? disable port IO_COM3 irq 5
device sio3 at isa? disable port IO_COM4 irq 9
device ppc0 at isa? irq 7
device ppbus # Parallel port bus (required)
device lpt # Printer
#device ppi # Parallel port interface device
device pcm
device sbc0 at isa? port 0x220 irq 5 drq 1 flags 0x15
device pca0 at isa? port IO_TIMER1
device miibus # MII bus support
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
pseudo-device loop # Network loopback
pseudo-device ether # Ethernet support
pseudo-device tun # Packet tunnel.
pseudo-device pty # Pseudo-ttys (telnet etc)
pseudo-device md # Memory "disks"
pseudo-device bpf #Berkeley packet filter
pseudo-device speaker #Play IBM BASIC-style noises out your speaker
pseudo-device gzip #Exec gzipped a.out's
pseudo-device snp 3 #Snoop device - to look at pty/vty/etc..
pseudo-device disc #Discard device (ds0, ds1, etc)
Boot messages:
Copyright (c) 1992-2002 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 4.6-PRERELEASE #5: Wed May 8 08:01:53 MSD 2002
root@snark.ratmir.ru:/usr/src/sys/compile/SNARK
Timecounter "i8254" frequency 1193182 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (1002.28-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x68a Stepping = 10
Features=0x387f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,PN,MMX,FXSR,SSE>
real memory = 536870912 (524288K bytes)
avail memory = 518041600 (505900K bytes)
Preloaded elf kernel "kernel" at 0xc03fd000.
VESA: v2.0, 4096k memory, flags:0x0, mode table:0xc0385342 (1000022)
VESA: ATI MACH64
netsmb_dev: loaded
Pentium Pro MTRR support enabled
md0: Malloc disk
Using $PIR table, 7 entries at 0xc00fde90
apm0: <APM BIOS> on motherboard
apm: found APM BIOS v1.2, connected at v1.2
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
pcib1: <Intel 82801BA/BAM (ICH2) PCI-PCI (AGP) bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <ATI Mach64-GZ graphics accelerator> at 0.0 irq 10
pcib2: <Intel 82801BA/BAM (ICH2) Hub to PCI bridge> at device 30.0 on pci0
pci2: <PCI bus> on pcib2
fxp0: <Intel Pro/100 Ethernet> port 0xa000-0xa03f mem 0xd7000000-0xd7000fff irq 11 at device 8.0 on pci2
fxp0: Ethernet address 00:10:dc:0e:aa:f1
inphy0: <i82562EM 10/100 media interface> on miibus0
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
isab0: <Intel 82801BA/BAM (ICH2) PCI to LPC bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH2 ATA100 controller> port 0xf000-0xf00f at device 31.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: <Intel 82801BA/BAM (ICH2) USB controller USB-A> port 0xb000-0xb01f irq 11 at device 31.2 on pci0
uhci0: LegSup = 0x0000003a
uhci_run: setting run=0
uhci_run: done cmd=0x80 sts=0x20
uhci_run: setting run=1
uhci_run: done cmd=0x81 sts=0x0
usb0: <Intel 82801BA/BAM (ICH2) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci_device_request: not done, ii=0xc145c1e0
ums0: Logitech USB Mouse, rev 1.10/6.20, addr 2, iclass 3/1
ums0: 3 buttons and Z dir.
uhci_device_request: not done, ii=0xc145c1a0
uhub1: Texas Instruments TUSB2046 hub, class 9/0, rev 1.10/1.25, addr 3
uhub1: 4 ports with 4 removable, bus powered
uhci_device_intr_transfer: not done, ii=0xc145c140
pci0: <unknown card> (vendor=0x8086, dev=0x2443) at 31.3 irq 0
uhci1: <Intel 82801BA/BAM (ICH2) USB controller USB-B> port 0xb400-0xb41f irq 9 at device 31.4 on pci0
uhci_run: setting run=0
uhci_run: done cmd=0x80 sts=0x20
uhci_run: setting run=1
uhci_run: done cmd=0x81 sts=0x0
usb1: <Intel 82801BA/BAM (ICH2) USB controller USB-B> on uhci1
usb1: USB revision 1.0
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
pcm0: <Intel 82801BA (ICH2)> port 0xbc00-0xbc3f,0xb800-0xb8ff irq 5 at device 31.5 on pci0
orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xcbfff,0xcc000-0xd97ff on isa0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/16 bytes threshold
ppbus0: IEEE1284 device found /NIBBLE
Probing for PnP devices on ppbus0:
ppbus0: <Hewlett-Packard HP LaserJet 4MP> HP ENHANCED PCL5,PJL,POSTSCRIPT
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
pca0 at port 0x40 on isa0
IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to deny, unlimited logging
IPsec: Initialized Security Association Processing.
ad0: 39266MB <IC35L040AVER07-0> [79780/16/63] at ata0-master UDMA100
ad2: 2405MB <ST32520A> [4888/16/63] at ata1-master UDMA33
acd0: CD-RW <CD-W58E> at ata1-slave WDMA2
>Description:
During normal operations my systems suddenly crashed. From kernel core
I extracted this:
GNU gdb 4.18
<skipped>
This GDB was configured as "i386-unknown-freebsd"...
(no debugging symbols found)...
IdlePTD at phsyical address 0x0041c000
initial pcb at physical address 0x0035f7e0
panicstr: lockmgr: locking against myself
panic messages:
---
panic: ffs_alloccg: map corrupted
syncing disks... 84 21 17 17 17 17 17 17 17 panic: lockmgr: locking against myself
Uptime: 5d7h22m50s
dumping to dev #ad/0x20001, offset 1048576
dump ata0: resetting devices .. done
512 <skipped> 2 1
---
(kgdb) bt
#0 0xc0173c56 in dumpsys ()
(kgdb) #0 0xc0173c56 in dumpsys ()
#1 0xc0173a20 in boot ()
#2 0xc0173e6d in panic ()
#3 0xc016e283 in lockmgr ()
#4 0xc019ba38 in getblk ()
#5 0xc0199bb0 in bread ()
#6 0xc022d476 in ffs_blkfree ()
#7 0xc0231fbe in handle_workitem_freeblocks ()
#8 0xc02303c6 in process_worklist_item ()
#9 0xc0230252 in softdep_process_worklist ()
#10 0xc017386c in boot ()
#11 0xc0173e6d in panic ()
#12 0xc022ddb4 in ffs_mapsearch ()
#13 0xc022c8a3 in ffs_alloccg ()
#14 0xc022c3fb in ffs_hashalloc ()
#15 0xc022b35d in ffs_alloc ()
#16 0xc022e522 in ffs_balloc ()
#17 0xc0238217 in ffs_write ()
#18 0xc01a9692 in vn_write ()
#19 0xc0183752 in dofilewrite ()
#20 0xc0183603 in write ()
#21 0xc02b0e59 in syscall2 ()
#22 0xc02a3c35 in Xint0x80_syscall ()
#23 0x280fa341 in ?? ()
#24 0x280ea36e in ?? ()
#25 0x804a705 in ?? ()
#26 0x804a4e2 in ?? ()
#27 0x8049e0d in ?? ()
#28 0x8049c05 in ?? ()
#29 0x804993d in ?? ()
(kgdb)
>How-To-Repeat:
Have no idea. I did not found the way systematically crash the kernel
in this way, but I can try if somebody will propose me how I can
try to create this critical situation. Kernel core is saved so I
can play with it a bit as well.
>Fix:
Unfortunatelly unknown.
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200205131242.g4DCgLSB000580>
