Date: Thu, 15 Nov 2001 16:50:50 +0000 From: Simon Dick <simond@irrelevant.org> To: current@freebsd.org Subject: lock order reversals on -current SMP Message-ID: <20011115165050.H2668@irrelevant.org>
index | next in thread | raw e-mail
[-- Attachment #1 --]
I've attached a dmesg from a -current as of yesterday which comes up
with quite a few lock order reversals on booting up, ignore this if
they've been fixed since I cvsup'd.
--
Simon Dick simond@irrelevant.org
"Why do I get this urge to go bowling everytime I see Tux?"
[-- Attachment #2 --]
Copyright (c) 1992-2001 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.0-CURRENT #2: Thu Nov 15 16:31:01 GMT 2001
root@not.internal.irrelevant.org:/usr/obj/usr/src/sys/NOT
Preloaded elf kernel "/boot/kernel/kernel" at 0xc04d5000.
Preloaded elf module "/boot/kernel/acpi.ko" at 0xc04d50a8.
Timecounter "i8254" frequency 1193182 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (730.81-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x683 Stepping = 3
Features=0x383fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory = 1073676288 (1048512K bytes)
avail memory = 1040375808 (1015992K bytes)
Programming 24 pins in IOAPIC #0
IOAPIC #0 intpin 2 -> irq 0
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfee00000
cpu1 (AP): apic id: 1, version: 0x00040011, at 0xfee00000
io0 (APIC): apic id: 2, version: 0x00170011, at 0xfec00000
lock order reversal
1st 0xc03f7760 allproc @ /usr/src/sys/kern/kern_fork.c:343
2nd 0xc03b87b0 pool mutex @ /usr/src/sys/kern/kern_sx.c:329
lock order reversal
1st 0xc03f76e0 proctree @ /usr/src/sys/kern/kern_fork.c:573
2nd 0xc03b8750 pool mutex @ /usr/src/sys/kern/kern_sx.c:329
lock order reversal
1st 0xc03b77e0 fork list @ /usr/src/sys/kern/kern_fork.c:646
2nd 0xc03b8810 pool mutex @ /usr/src/sys/kern/kern_sx.c:204
Pentium Pro MTRR support enabled
VESA: v3.0, 32768k memory, flags:0x1, mode table:0xc00c5477 (c0005477)
VESA: Matrox Graphics Inc.
Using $PIR table, 8 entries at 0xc00f7100
apm: Other PM system enabled.
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <AMIINT > on motherboard
acpi0: power button is handled as a fixed feature programming model.
Timecounter "ACPI" frequency 3579545 Hz
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0
acpi_cpu0: <CPU> on acpi0
acpi_cpu1: <CPU> on acpi0
acpi_tz0: <thermal zone> on acpi0
acpi_button0: <Power Button> on acpi0
acpi_pcib0: <Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <PCI bus> on acpi_pcib0
agp0: <VIA 82C691 (Apollo Pro) host to PCI bridge> mem 0xe0000000-0xe3ffffff at device 0.0 on pci0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <display, VGA> at device 0.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <VIA 82C686 ATA66 controller> port 0xffa0-0xffaf at device 7.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: <VIA 83C572 USB controller> port 0xc800-0xc81f irq 9 at device 7.2 on pci0
usb0: <VIA 83C572 USB controller> on uhci0
usb0: USB revision 1.0
uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1: <VIA 83C572 USB controller> port 0xcc00-0xcc1f irq 9 at device 7.3 on pci0
usb1: <VIA 83C572 USB controller> on uhci1
usb1: USB revision 1.0
uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
ichsmb0: <SMBus controller> at device 7.4 on pci0
device_probe_and_attach: ichsmb0 attach returned 6
ahc0: <Adaptec 2940A Ultra SCSI adapter> port 0xdc00-0xdcff mem 0xdffff000-0xdfffffff irq 10 at device 9.0 on pci0
aic7860: Ultra Single Channel A, SCSI Id=7, 3/255 SCBs
ed0: <NE2000 PCI Ethernet (VIA VT86C926)> port 0xd000-0xd01f irq 5 at device 10.0 on pci0
ed0: address 08:00:39:01:2b:90, type NE2000 (16 bit)
pcm0: <Creative CT5880-C> port 0xd400-0xd43f irq 9 at device 11.0 on pci0
tx0: <SMC EtherPower II 10/100> port 0xd800-0xd8ff mem 0xdfffe000-0xdfffefff irq 11 at device 12.0 on pci0
miibus0: <MII bus> on tx0
qsphy0: <QS6612 10/100 media interface> on miibus0
qsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
tx0: address 00:e0:29:0b:d5:31, type SMC9432TX
acpi_button1: <Sleep Button> on acpi0
atspeaker0 port 0x61 on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
fdc0: <NEC 72065B or clone> port 0x3f7,0x3f2-0x3f5 irq 6 on acpi0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
sio0 port 0x3f8-0x3ff irq 4 on acpi0
sio0: type 16550A, console
sio1 port 0x2f8-0x2ff irq 3 on acpi0
sio1: type 16550A
ppc0 port 0x778-0x77b,0x378-0x37f irq 7 on acpi0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/8 bytes threshold
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
atkbdc-: atkbdc0 already exists, skipping it
fdc-: fdc0 already exists, skipping it
sio-: sio0 already exists, skipping it
sio-: sio1 already exists, skipping it
vga-: vga0 already exists, skipping it
orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0
pcf0: can't reserve irq, polled mode.
pcf0: <PCF8584 I2C bus controller> at port 0x320-0x321 irq 5 on isa0
iicbus0: <Philips I2C bus> on pcf0 addr 0xaa
iicsmb0: <I2C to SMB bridge> on iicbus0
smbus0: <System Management Bus> on iicsmb0
smb0: <SMBus general purpose I/O> on smbus0
iic0: <I2C general purpose I/O> on iicbus0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> on isa0
sc0: VGA <16 virtual consoles, flags=0x0>
APIC_IO: Testing 8254 interrupt delivery
APIC_IO: routing 8254 via IOAPIC #0 intpin 2
IPFW: MOD_LOAD
IP packet filtering initialized, divert disabled, rule-based forwarding disabled, default to accept, logging disabled
IPsec: Initialized Security Association Processing.
acpi_cpu: CPU throttling enabled, 16 steps from 100% to 6.2%
ad0: 19574MB <IBM-DPTA-372050> [39770/16/63] at ata0-master UDMA66
ad1: 43979MB <IBM-DTLA-307045> [89355/16/63] at ata0-slave UDMA66
acd0: DVD-ROM <Pioneer DVD-ROM ATAPIModel DVD-104S 0123> at ata1-master PIO4
Waiting 8 seconds for SCSI devices to settle
Mounting root from ufs:/dev/ad0s1a
cd0 at ahc0 bus 0 target 5 lun 0
cd0: <YAMAHA CRW4416S 1.0j> Removable CD-ROM SCSI-2 device
cd0: 8.333MB/s transfers (8.333MHz, offset 15)
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed
SMP: AP CPU #1 Launched!
lock order reversal
1st 0xdaff6d0c process lock @ /usr/src/sys/kern/kern_proc.c:206
2nd 0xc03b87b0 pool mutex @ /usr/src/sys/kern/kern_sx.c:204
[-- Attachment #3 --]
machine i386
cpu I686_CPU
ident NOT
maxusers 128
#To statically compile in device wiring instead of /boot/device.hints
#hints "GENERIC.hints" #Default places to look for devices.
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
options INET #InterNETworking
options INET6 #IPv6 communications protocols
options IPSEC
options IPSEC_ESP
options IPFIREWALL
options IPFIREWALL_DEFAULT_TO_ACCEPT
options LIBMCHAIN
options LIBICONV
options FFS #Berkeley Fast Filesystem
options SOFTUPDATES #Enable FFS soft updates support
options NFSCLIENT #Network Filesystem Client
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options PROCFS #Process filesystem
options UFS_EXTATTR
options UFS_EXTATTR_AUTOSTART
options UFS_ACL
options UFS_DIRHASH
options ENABLE_VFS_IOOPT
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options SCSI_DELAY=8000 #Delay (in ms) before probing SCSI
options UCONSOLE #Allow users to grab the console
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
# Debugging for use in -current
options DDB #Enable the kernel debugger
options INVARIANTS #Enable calls of extra sanity checking
options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS
options WITNESS #Enable mutex checks to detects deadlocks and cycles
# To make an SMP kernel, the next two are needed
options SMP # Symmetric MultiProcessor Kernel
options APIC_IO # Symmetric (APIC) I/O
options CPU_ENABLE_SSE
device isa
device pci
device agp
#options PCI_ENABLE_IO_MODES # Enable pci resources left off by a "lazy BIOS"
# Floppy drives
device fdc
# ATA and ATAPI devices
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
#device atapist # ATAPI tape drives
options ATA_STATIC_ID #Static device numbering
# SCSI Controllers
device ahc # AHA2940 and onboard AIC7xxx devices
# SCSI peripherals
device scbus # SCSI bus (required)
#device ch # SCSI media changers
device da # Direct Access (disks)
device sa # Sequential Access (tape etc)
device cd # CD
device pass # Passthrough device (direct SCSI access)
#device ses # SCSI Environmental Services (and SAF-TE)
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc 1 # At keyboard controller
device atkbd # at keyboard
device psm # psm mouse
device vga # VGA screen
options VESA
# splash screen/screen saver
device splash
# syscons is the default console driver, resembling an SCO console
device sc 1
device pcm
device nmdm
# Floating point support - do not disable.
device npx
# Power management support (see NOTES for more options)
device apm
# Add suspend/resume support for the i8254.
device pmtimer
# Serial (COM) ports
device sio # 8250, 16[45]50 based serial ports
# Parallel port
device ppc
device ppbus # Parallel port bus (required)
device lpt # Printer
#device plip # TCP/IP over parallel
device ppi # Parallel port interface device
#device vpo # Requires scbus and da
# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device miibus # MII bus support
device tx # SMC EtherPower II (83c170 ``EPIC'')
device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards
# Pseudo devices - the number indicates how many units to allocate.
device random # Entropy device
device loop # Network loopback
device ether # Ethernet support
#device sl # Kernel SLIP
device ppp 1 # Kernel PPP
device tun # Packet tunnel.
device pty # Pseudo-ttys (telnet etc)
device md # Memory "disks"
#device gif # IPv6 and IPv4 tunneling
#device faith # IPv6-to-IPv4 relaying (translation)
device speaker
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
device bpf # Berkeley packet filter
# USB support
device uhci # UHCI PCI->USB interface
#device ohci # OHCI PCI->USB interface
device usb # USB Bus (required)
#device udbp # USB Double Bulk Pipe devices
device ugen # Generic
device uhid # "Human Interface Devices"
#device ukbd # Keyboard
#device ulpt # Printer
device umass # Disks/Mass storage - Requires scbus and da
device ums # Mouse
#device urio # Diamond Rio 500 MP3 player
#device uscanner # Scanners
# USB Ethernet, requires mii
#device aue # ADMtek USB ethernet
#device cue # CATC USB ethernet
#device kue # Kawasaki LSI USB ethernet
device smbus # Bus support, required for smb below.
device intpm
device alpm
device ichsmb
device smb
device iicbus # Bus support, required for ic/iic/iicsmb below.
device iicbb
device ic
device iic
device iicsmb # smb over i2c bridge
device pcf
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011115165050.H2668>
