Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 May 2001 04:42:28 +0100 (BST)
From:      Mark Valentine <mark@thuvia.demon.co.uk>
To:        freebsd-current@freebsd.org
Subject:   vnode pager panic with latest sources
Message-ID:  <200105260342.f4Q3gSO03181@thuvia.demon.co.uk>

next in thread | raw e-mail | index | archive | help
I started getting a panic like this immediately after bootup around the same
time as everyone else's problems (although my last build was from March 1st,
and I've only just started using INVARIANTS/WITNESS and ``makeoptions
DEBUG=-g'' which were recently aded to GENERIC).  The latest commits don't
seem to have changed anything.

During boot (interleaved with IPv6 stuff), I get this:

lock order reversal
  1st 0xc04a7380 mntvnode @ /usr/src/sys/ufs/ffs/ffs_vsops.c:1007
  2nd 0xcd105aec vnode interlock @ /usr/src/sys/ufs/ffs/ffs_vfsops.c:106

Just around the time of the console login prompt (consistently), I panic:

[warning: likely to contain hand transcription errors]

-- BEGIN ----------------------------------------------------------------------
recursed on non-recursive lock (sleep mutex) vm @ /usr/src/sys/ufs/ufs/ufs_readwrite.c:420
first acquired @ /usr/src/sys/vm/vnode_pager.c:912
panic: recurse
Debugger("panic")
Stopped at      Debugger+0x44:  pushl   %ebx
db> show reg
cs                 0x8
ds          0xc0200010  getitimer+0xa0
es          0xcd0f0010
fs          0xc0460018  w_data+0x1418
ss	          0x10
eax               0x12
ecx               0x20
edx         0xc00b8f00
ebx              0x202
esp         0xcd0fac1c
ebp         0xcd0fac28
esi              0x100
edi         0xc0482f1c
eip         0xc036a8dc  Debugger+0x44
Debugger+0x44:  pushl   %ebx
db> trace
Debugger(c03b9b7b) at Debugger+0x44
panic(c03bc8c8,cd0fad0c,cd0fad0c,1,0) at panic+0x70
witness_lock(c04b3960,8,c03d7bc0.1a4) at witness_lock+0x348
ffs_write(cd0facf8) at ffs_write+0xba
vnode_pager_generic_putpages(cd1196c0,cd0fadf4,1000,0,cd0fadc8) at vnode_pager_generic_putpages+0x198
vop_stdputpages(cd0fad7c,cd0fad60,c0331ab9,cd0fad7c,cd0fad9c) at vop_stdputpages+0x1a
vop_defaultop(cd0fad7c,cd0fad9c,c034f35d,cd0fad7c,0) at vop_defaultop+0x15
ufs_vnoperate(cd0fad7c) at ufs_vnoperate+0x15
vnode_pager_putpages(cd120240,cd0fadf4,1,0,cd0fadc8,c04b3960,1,c03db941,91) at vnode_pager_putpages+0x1a9
vm_pageout_flush(cd0fadf4,1,0,c0c36404,c0466bc0) at vm_pageout_flush+0x12a
vm_object_page_clean(cd120240,0,0,4) at vm_object_page_clean+0x430
vfa_msync(c125a600,2,cb67a43c,cb67a320,0) at vfs_msync+0x235
sync(cb67a320,cd0faf80,4,bfbffdcc,bfbffdcc) at sync+0xf4
syscall(2f,2f,2f,bfbffdcc,bfbffdcc) at syscall+0x689
syscall_with_err_pushed() at syscall_with_err_pushed+0x1b
-- END ------------------------------------------------------------------------

src/sys/vm/vnode_pager.c is at revision 1.130

My kernel config file:

-- BEGIN ----------------------------------------------------------------------
machine		i386
cpu		I686_CPU
ident		DOTAR
maxusers	32

makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols

options		NO_F00F_HACK

options 	INET			#InterNETworking
options 	INET6			#IPv6 communications protocols
options 	IPSEC			#IP security
options 	IPSEC_ESP		#IP security (crypto; define w/ IPSEC)
options 	MROUTING		# Multicast routing
options	 	NETGRAPH		#netgraph(4) system
options 	IPFIREWALL		#firewall
options 	IPFIREWALL_VERBOSE	#print information about
					# dropped packets
options 	IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options 	IPV6FIREWALL		#firewall for IPv6
options 	IPV6FIREWALL_VERBOSE
options 	IPV6FIREWALL_DEFAULT_TO_ACCEPT
options	 	IPDIVERT		#divert sockets
options 	FFS			#Berkeley Fast Filesystem
options 	MFS			#Memory Filesystem
options 	MD_ROOT			#MD is a potential root device
options 	NFS			#Network Filesystem
options 	NFS_ROOT		#NFS usable as root device, NFS required
options 	MSDOSFS			#MSDOS Filesystem
options 	CD9660			#ISO 9660 Filesystem
options 	PROCFS			#Process filesystem
options	 	SOFTUPDATES
options	 	COMPAT_43		#Compatible with BSD 4.3 [KEEP THIS!]
options 	SCSI_DELAY=15000	#Delay (in ms) before probing SCSI
options	 	AUTO_EOI_1
options 	UCONSOLE		#Allow users to grab the console
options	 	VESA
options 	USERCONFIG		#boot -c editor
options 	VISUAL_USERCONFIG	#visual boot -c editor
options 	KTRACE			#ktrace(1) support
options	 	PERFMON
options 	SYSVSHM			#SYSV-style shared memory
options 	SYSVMSG			#SYSV-style message queues
options 	SYSVSEM			#SYSV-style semaphores
 
options 	DDB
options 	INVARIANTS
options 	INVARIANT_SUPPORT
options 	WITNESS

options 	P1003_1B
options 	_KPOSIX_PRIORITY_SCHEDULING

device		isa
device		pci

device		fdc

device		ata
device		atadisk			# ATA disk drives
options 	ATA_STATIC_ID		#Static dev number like old `wd' driver
 
device		ahc		# AHA2940 and onboard AIC7xxx devices
device		sym		# NCR/Symbios Logic (newer chipsets + those of `ncr')

options 	AHC_ALLOW_MEMIO

device		scbus		# SCSI bus (required)
device		da		# Direct Access (disks)
device		sa		# Sequential Access (tape etc)
device		cd		# CD
device		pass		# Passthrough device (direct SCSI access)

device		atkbdc	1	# At keyboard controller
device		atkbd		# at keyboard
device		psm		# psm mouse

device		vga		# VGA screen

device	splash

device		sc 1

device		npx

device		apm
device		pmtimer

device		pcm

device		midi
device		seq

device		pca

device		sio		# 8250, 16[45]50 based serial ports

device		ppc
device		ppbus		# Parallel port bus (required)
device		lpt		# Printer
device		plip		# TCP/IP over parallel
device		ppi		# Parallel port interface device

device		joy

device		miibus		# MII bus support
device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)

device		random		# Entropy device
device		loop		# Network loopback
device		ether		# Ethernet support
device		disc		# Discard device
device		sl	3	# Kernel SLIP
device		ppp	3	# Kernel PPP
device		tun		# Packet tunnel.
device		gif	4	# IPv6 and IPv4 tunneling
device		faith	1	# IPv6-to-IPv4 relaying (translation)
device		stf		# 6to4 IPv6 over IPv4 encapsulation
device		pty		# Pseudo-ttys (telnet etc)
device		snp	3	# Snoop device - to look at pty/vty/etc..
device		md		# Memory "disks"
device		speaker		# Play IBM BASIC-style noises out your speaker
device		splash
 
device		bpf		#Berkeley packet filter

options 	PPP_BSDCOMP		#PPP BSD-compress support
options 	PPP_DEFLATE		#PPP zlib/deflate/gzip support
options 	PPP_FILTER		#enable bpf filtering (needs bpf)

options 	COMPAT_LINUX
-- END ------------------------------------------------------------------------

dmesg output from my working kernel (March 1st):

-- BEGIN ----------------------------------------------------------------------
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 #1: Thu Mar  1 02:04:02 GMT 2001
    root@dotar-sojat:/usr/obj/usr/src/sys/DOTAR
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 601365847 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (601.37-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x681  Stepping = 1
  Features=0x387f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,PN,MMX,FXSR,SSE>
real memory  = 268419072 (262128K bytes)
avail memory = 256643072 (250628K bytes)
Preloaded elf kernel "kernel" at 0xc048c000.
WARNING: size of kinfo_proc (648) should be 644!!!
Pentium Pro MTRR support enabled
VESA: v2.0, 32768k memory, flags:0x1, mode table:0xc00c6974 (c0006974)
VESA: Matrox Graphics Inc.
Using $PIR table, 8 entries at 0xc00f0e70
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Intel 82443BX (440 BX) host to PCI bridge> at pcibus 0 on motherboard
pci0: <PCI bus> on pcib0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <display, VGA> at 0.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 4.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 ATA33 controller> port 0xd800-0xd80f at device 4.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
pci0: <serial bus, USB> at 4.2 (no driver attached)
pci0: <bridge, PCI-unknown> at 4.3 (no driver attached)
csa0: <Crystal Semiconductor CS4614/4622/4624 Audio accelerator/4280 Audio controller> mem 0xdf800000-0xdf8fffff,0xe0000000-0xe0000fff irq 9 at device 9.0 on pci0
pcm0: <CS461x PCM Audio> on csa0
sym0: <896> port 0xd000-0xd0ff mem 0xde800000-0xde801fff,0xdf000000-0xdf0003ff irq 10 at device 11.0 on pci0
sym0: Symbios NVRAM, ID 7, Fast-40, LVD, parity checking
sym0: open drain IRQ line driver, using on-chip SRAM
sym0: using LOAD/STORE-based firmware.
sym0: handling phase mismatch from SCRIPTS.
sym1: <896> port 0xb800-0xb8ff mem 0xdd800000-0xdd801fff,0xde000000-0xde0003ff irq 9 at device 11.1 on pci0
sym1: Symbios NVRAM, ID 7, Fast-40, SE, parity checking
sym1: open drain IRQ line driver, using on-chip SRAM
sym1: using LOAD/STORE-based firmware.
sym1: handling phase mismatch from SCRIPTS.
pci0: <network, ethernet> at 13.0 (no driver attached)
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
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
joy0 at port 0x201 on isa0
pca0 at port 0x40 on isa0
pmtimer0 on isa0
ppc0: <Parallel port> at port 0x378-0x37f irq 7 flags 0x40 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/9 bytes threshold
ppi0: <Parallel I/O> on ppbus0
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
sc0: <System console> on isa0
sc0: VGA <16 virtual consoles, flags=0x200>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
sio2 at port 0x3e8-0x3ef irq 5 on isa0
sio2: type 16550A
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc1: <System console> on isa0
sc1: MDA <16 virtual consoles, flags=0x0>
WARNING: Driver mistake: repeat make_dev("consolectl")
vga1: <Generic ISA VGA> at port 0x3b0-0x3bb iomem 0xb0000-0xb7fff on isa0
unknown: <PNP0401> can't assign resources
unknown: <PNP0501> can't assign resources
unknown: <PNP0501> can't assign resources
unknown: <PNP0700> can't assign resources
unknown: <PNP0f13> can't assign resources
unknown: <PNP0303> can't assign resources
pca1: <AT-style speaker sound> at port 0x61 on isa0
WARNING: Driver mistake: repeat make_dev("pcaudio")
WARNING: Driver mistake: repeat make_dev("pcaudioctl")
IPv6 packet filtering initialized, default to accept, unlimited logging
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to accept, unlimited logging
IPsec: Initialized Security Association Processing.
ad0: 73308MB <IBM-DTLA-307075> [148945/16/63] at ata0-master UDMA33
Waiting 15 seconds for SCSI devices to settle
(noperiph:sym0:0:-1:-1): SCSI BUS reset delivered.
(noperiph:sym1:0:-1:-1): SCSI BUS reset delivered.
sa0 at sym1 bus 0 target 4 lun 0
sa0: <WANGTEK 5525ES SCSI M74H 11> Removable Sequential Access SCSI-CCS device 
sa0: 3.300MB/s transfers
Mounting root from ufs:/dev/da0a
da0 at sym0 bus 0 target 0 lun 0
da0: <IBM DMVS18V 0250> Fixed Direct Access SCSI-3 device 
da0: 80.000MB/s transfers (40.000MHz, offset 31, 16bit), Tagged Queueing Enabled
da0: 17501MB (35843670 512 byte sectors: 255H 63S/T 2231C)
da1 at sym0 bus 0 target 1 lun 0
da1: <IBM DMVS18V 0250> Fixed Direct Access SCSI-3 device 
da1: 80.000MB/s transfers (40.000MHz, offset 31, 16bit), Tagged Queueing Enabled
da1: 17501MB (35843670 512 byte sectors: 255H 63S/T 2231C)
cd0 at sym1 bus 0 target 2 lun 0
cd0: <  > Fixed CD-ROM SCSI-0 device 
cd0: 3.300MB/s transfers
cd0: Attempt to query device size failed: HARDWARE FAILURE, Ram failure
cd1 at sym1 bus 0 target 3 lun 0
cd1: <PLEXTOR CD-R   PX-W124TS 1.02> Removable CD-ROM SCSI-2 device 
cd1: 20.000MB/s transfers (20.000MHz, offset 8)
cd1: Attempt to query device size failed: NOT READY, Medium not present - tray closed
da2 at sym1 bus 0 target 0 lun 0
da2: <iomega jaz 1GB H.72> Removable Direct Access SCSI-2 device 
da2: 10.000MB/s transfers (10.000MHz, offset 15)
da2: Attempt to query device size failed: NOT READY, Medium not present
-- END ------------------------------------------------------------------------

What changes should I start to make first to narrow this down?  (I'll try to
get kernel dumps going, though I haven't had much success with these in the
past.)

		Cheers,

		Mark.

-- 
Mark Valentine, Thuvia Labs <mark@thuvia.co.uk>       <http://www.thuvia.co.uk>;
"Tigers will do ANYTHING for a tuna fish sandwich."       Mark Valentine uses
"We're kind of stupid that way."   *munch* *munch*        and endorses FreeBSD
  -- <http://www.calvinandhobbes.com>;                  <http://www.freebsd.org>;

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




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