Subject: kernel crash with latest kern_lock.c revision on amd64
To: NetBSD current <>
From: Nicolas Joly <>
List: current-users
Date: 08/03/2004 19:19:43
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline


I just updated my 2 CPU amd64 workstation running -current, and got a
kernel crash. It seems that latest kern_lock.c revision 1.81 triggers
that problem (rev 1.80 does not exhibit that behaviour).

swapctl: adding /dev/wd0b as swap device at priority 0
Checking for botched superblock upgrades:LK_SPIN spinout, excl 0, share 0
LK_SPIN spinout, excl 0, share 0
last locked at /local/src/NetBSD/src/sys/kern/kern_lock.c:1404
last locked at /local/src/NetBSD/src/sys/kern/kern_lock.c:1404
last unlocked at /local/src/NetBSD/src/sys/kern/kern_lock.c:1411
last unlocked at /local/src/NetBSD/src/sys/kern/kern_lock.c:1411
_lockmgr(_lockmgr() at ) at netbsd:_lockmgrnetbsd:_lockmgr+0x548+0x548

trap(Xintr_ioapic_edge4() at ) at netbsd:trapnetbsd:Xintr_ioapic_edge4+0x855+0xcb

--- interrupt ---
acquire() at netbsd:acquire+0x6c
_lockmgr() at netbsd:_lockmgr+0x548
Xintr_ioapic_edge14() at netbsd:Xintr_ioapic_edge14+0xcb
--- interrupt ---
acquire() at netbsd:acquire+0x64
_lockmgr() at netbsd:_lockmgr+0x548
DDB lost frame for netbsd:Xsoftclock+0x1a, trying 0xffff8000142ffca0
Xsoftclock() at netbsd:Xsoftclock+0x1a
--- interrupt ---
Bad frame pointer: 0xffff80000378ba00
Stopped in pid 85.1 (dd) at     netbsd:cpu_Debugger+0x5:

The kernel config file is attached (GENERIC.MP kernel + some extra
sanity checks enabled).

Thanks in advance,

Nicolas Joly

Biological Software and Databanks.
Institut Pasteur, Paris.

Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=LANFEUST

include "arch/amd64/conf/GENERIC.MP"

# Diagnostic/debugging support options
options		DIAGNOSTIC	# expensive kernel consistency checks
options		LOCKDEBUG
options		MPDEBUG

makeoptions	COPTS="-O2 -fno-omit-frame-pointer"
options		DDB		# in-kernel debugger
options		DDB_HISTORY_SIZE=512    # enable history editing in DDB
makeoptions	DEBUG="-g"	# compile full symbol table

# PCI IEEE1394 controllers
fwohci* at pci? dev ? function ?       # IEEE1394 Open Host Controller
fw* at fwbus?                          # IP over 1394

# IEEE1394 nodes
fwnode* at fwbus? idhi ? idlo ?
sbpscsi* at fwnode?
scsibus* at sbpscsi?

# LM7[89] and compatible hardware monitors
lm0    at isa? port 0x290              # other common ports: 0x280, 0x310