Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Jun 2004 13:22:29 +0800
From:      Xin LI <delphij@frontfree.net>
To:        acpi@FreeBSD.org, current@FreeBSD.org
Subject:   [backtrace] kernel dump when shutting down
Message-ID:  <20040615052229.GA2249@frontfree.net>

next in thread | raw e-mail | index | archive | help

--TB36FDmn/VVEgNH/
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hello folks,

I got a strange problem when having HTT enabled on a P4 2.8E processor.
When rebooting the system, after the disk sync and the system is going
to restart, it crashes and generates a crashdump. Strangely, the panic
message seems to be corrupted.

The kernel was built on fresh cvsup'ed code. I have did some local
modifications, however, the crash persists no matter whether I have
applied my modifications.

Here is the backtrace:

(kgdb) beastie# gdb -k kernel.debug /var/crash/vmcore.4
GNU gdb 5.2.1 (FreeBSD)
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain condition=
s.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-undermydesk-freebsd"...
panic: blockable sleep lock (sleep mutex) process lock @ /usr/src/sys/kern/=
kern_sig.c:1510
panic messages:
---
panic: blockable sleep lock (sleep mutex) process lock @ /usr/src/sys/kern/=
kern_sig.c:1510
cpuid =3D 1;=20
boot() called on cpu#1
Uptime: 14m26s
Dumping 1007 MB
ad2: timeout waiting for write DRQad2: timeout waiting for write DRQad2: ti=
meout waiting for write DRQad2: timeout waiting for write DRQad2: timeout w=
aiting for write DRQ 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 =
256 272 288 304 320 336 352 368 384 400 416 432 448 464 480 496 512 528 544=
 560 576 592 608 624 640 656 672 688 704 720 736 752 768 784 800 816 832 84=
8 864 880 896 912spin lock witness lock held by 0xc1e2b420 for > 5 seconds
 928 944 960 976 992
---
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
236             dumping++;
(kgdb) bt full
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:236
No locals.
#1  0xc0500256 in runq_choose (rq=3D0x0) at /usr/src/sys/kern/kern_switch.c=
:583
        ke =3D (struct kse *) 0x0
#2  0xc050b25a in kseq_choose (kseq=3D0xc1e29800) at /usr/src/sys/kern/sche=
d_ule.c:783
        ke =3D (struct kse *) 0xc1e2b420
        swap =3D (struct runq *) 0xc1e2980c
#3  0xc050c364 in sched_choose () at /usr/src/sys/kern/sched_ule.c:347
        kseq =3D (struct kseq *) 0xc06c4970
        ke =3D (struct kse *) 0xc1e2f780

The system works just fine when HTT is disabled.

Kernel configuration is:

#
# BEASTIE -- Customized kernel configuration file for FreeBSD/i386
#
# $Phantasm$

machine		i386
cpu		I686_CPU
ident		BEASTIE

# To statically compile in device wiring instead of /boot/device.hints
#hints		"GENERIC.hints"		# Default places to look for devices.

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

options 	SCHED_ULE		# ULE scheduler
options 	INET			# InterNETworking
options 	FFS			# Berkeley Fast Filesystem
options 	SOFTUPDATES		# Enable FFS soft updates support
options 	UFS_DIRHASH		# Improve performance on big directories
options 	PROCFS			# Process filesystem (requires PSEUDOFS)
options 	PSEUDOFS		# Pseudo-filesystem framework
options 	COMPAT_43		# Compatible with BSD 4.3 [KEEP THIS!]
options 	SCSI_DELAY=3D0		# Delay (in ms) before probing SCSI
options 	KTRACE			# ktrace(1) support
options 	SYSVSHM			# SYSV-style shared memory
options 	SYSVMSG			# SYSV-style message queues
options 	SYSVSEM			# SYSV-style semaphores
options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev
options 	PFIL_HOOKS		# pfil(9) framework

# 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, re=
quired by INVARIANTS
options 	WITNESS			# Enable checks to detect deadlocks and cycles
options 	WITNESS_SKIPSPIN	# Don't run witness on spinlocks for speed

# To make an SMP kernel, the next two are needed
options 	SMP		# Symmetric MultiProcessor Kernel
device		apic		# I/O APIC

device		isa
device		eisa
device		pci

# ATA and ATAPI devices
device		ata
device		atadisk		# ATA disk drives
options 	ATA_STATIC_ID	# Static device numbering

# atkbdc0 controls both the keyboard and the PS/2 mouse
device		atkbdc		# AT keyboard controller
device		atkbd		# AT keyboard

device		vga		# VGA video card driver

device		splash		# Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device		sc

device		agp		# support several AGP chipsets

# Floating point support - do not disable.
device		npx

# Add suspend/resume support for the i8254.
device		pmtimer

# 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		xl		# 3Com 3c90x (``Boomerang'', ``Cyclone'')

# Pseudo devices - the number indicates how many units to allocate.
device		random		# Entropy device
device		loop		# Network loopback
device		ether		# Ethernet support
device		ppp		# Kernel PPP
device		tun		# Packet tunnel.
device		pty		# Pseudo-ttys (telnet etc)
device		md		# Memory "disks"

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
device		bpf		# Berkeley packet filter

#makeoptions	CONF_CFLAGS=3D-fno-builtin
#options 	MAXDSIZ=3D(1024UL*1024*1024)
#options 	MAXSSIZ=3D(128UL*1024*1024)
#options 	DFLDSIZ=3D(1024UL*1024*1024)
options 	INCLUDE_CONFIG_FILE
#options 	ADAPTIVE_MUTEXES
#options 	MUTEX_NOINLINE
options 	IPSEC
options 	IPSEC_ESP
device		pf
device		pflog
device		pfsync
options 	MROUTING
options 	PIM
options 	IPDIVERT
options 	IPSTEALTH
options 	RANDOM_IP_ID
options 	ACCEPT_FILTER_DATA
options 	ACCEPT_FILTER_HTTP
options 	ZERO_COPY_SOCKETS
#options 	HZ=3D100
#options 	PPS_SYNC
device		green_saver
device		crypto
device		cryptodev
device		rndtest
device		hifn
device		ubsec
options 	PANIC_REBOOT_WAIT_TIME=3D0
#options 	PERFMON
#options 	DEVICE_POLLING
options 	AUTO_EOI_1
device		acpi
options		DDB_UNATTENDED
#options		DDB_TRACE
options		NULLFS
options		FDESCFS


The system used to crash before sync'ing disks. It seems that Nate's
recent commit has removed that crash. More information available
upon request.

Cheers,
--=20
Xin LI <delphij frontfree net>	http://www.delphij.net/
See complete headers for GPG key and other information.



--TB36FDmn/VVEgNH/
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFAzoeVOfuToMruuMARAj5RAJ0R+qCGErvrT+M/eqObGumnN/RItgCeJPWH
+VsbSXCS8KxlIqAEgBGwPz8=
=Kgn5
-----END PGP SIGNATURE-----

--TB36FDmn/VVEgNH/--



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