6.0-BETA5 panic at shutdown with ULE scheduler

James Snow snow+freebsd-current at teardrop.org
Thu Oct 6 06:09:21 PDT 2005


This is easily reproduceable. Backtrace and kernel config are attached.

This only happens when I'm using my ThinkPad as a gateway. If I do the
following... 

kldload ipfw
kldload ipdivert

sysctl net.inet.ip.forwarding=1
sysctl net.link.ether.ipfw=1
sysctl net.inet.ip.fw.verbose=1

ipfw add 100 divert 8668 ip from any to any via em0
ipfw add 101 allow ip from any to any via em0

... I will get this panic when I shut down. It may require that traffic
be coming or going through the network interfaces when I shut down.

The network devices on this laptop are:

ath0 at pci2:2:0: class=0x020000 card=0x057e1014 chip=0x1014168c rev=0x01 hdr=0x00
    vendor   = 'Atheros Communications Inc.'
    device   = '11a/b/g Wireless LAN Mini PCI Adapter'
    class    = network
    subclass = ethernet

em0 at pci2:1:0:  class=0x020000 card=0x055b1014 chip=0x10778086 rev=0x00 hdr=0x00
    vendor   = 'Intel Corporation'
    device   = '82547EI Gigabit Ethernet Controller (Mobile)'
    class    = network
    subclass = ethernet

I'm happy to test patches. Please let me know what other information I
can provide.


-Snow

-------------- next part --------------
machine		i386
cpu		I686_CPU
ident		X40

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

options 	SCHED_ULE		# 4BSD scheduler
options 	PREEMPTION		# Enable kernel thread preemption
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 	GEOM_GPT		# GUID Partition Tables.
options 	COMPAT_43		# Compatible with BSD 4.3 [KEEP THIS!]
options 	SCSI_DELAY=5000		# 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 	ADAPTIVE_GIANT		# Giant mutex is adaptive.

device		apic			# I/O APIC

# Bus support.  Do not remove isa, even if you have no isa slots
device		isa
device		pci

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

# SCSI peripherals
device		scbus		# SCSI bus (required for SCSI)
device		da		# Direct Access (disks)
device		pass		# Passthrough device (direct SCSI access)

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

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

# PCMCIA and cardbus bridge support
device		cbb		# cardbus (yenta) bridge
device		cardbus		# CardBus (32-bit) bus

# PCI Ethernet NICs.
device		em		# Intel PRO/1000 adapter Gigabit Ethernet Card

# Wireless NIC cards
device		wlan		# 802.11 support

# Pseudo devices.
device		loop		# Network loopback
device		mem		# Memory and kernel memory devices
device		io		# I/O device
device		random		# Entropy device
device		ether		# Ethernet support
device		pty		# Pseudo-ttys (telnet etc)

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device		bpf		# Berkeley packet filter

# USB support
device		uhci		# UHCI PCI->USB interface
device		usb		# USB Bus (required)
-------------- next part --------------
Syncing disks, vnodes remaining...2 1 1 0 0 done
All buffers synced.
Uptime: 7h29m50s


Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0x10002
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc052cd36
stack pointer           = 0x28:0xd3e1db24
frame pointer           = 0x28:0xd3e1db28
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 39 (swi6: task queue)
trap number             = 12
panic: page fault
Uptime: 7h29m55s
Dumping 502 MB (2 chunks)
  chunk 0: 1MB (159 pages) ... ok
  chunk 1: 502MB (128480 pages) 486 470 454 438 422 406 390 374 358 342
326 310 294 278 262 246 230 214 198 182 166 150 134 118 102 86 70 54 38
22 6

#0  doadump () at pcpu.h:165
165     pcpu.h: No such file or directory.
        in pcpu.h
(kgdb) bt
#0  doadump () at pcpu.h:165
#1  0xc04b7ac2 in boot (howto=260) at
/usr/src/sys/kern/kern_shutdown.c:399
#2  0xc04b7d58 in panic (fmt=0xc05e9fa6 "%s")
    at /usr/src/sys/kern/kern_shutdown.c:555
#3  0xc05cc1cc in trap_fatal (frame=0xd3e1dae4, eva=65538)
    at /usr/src/sys/i386/i386/trap.c:841
#4  0xc05cbf37 in trap_pfault (frame=0xd3e1dae4, usermode=0, eva=65538)
    at /usr/src/sys/i386/i386/trap.c:752
#5  0xc05cbb95 in trap (frame=
      {tf_fs = -1050214392, tf_es = 40, tf_ds = -1050214360, tf_edi =
-1050142296, tf_esi = -1050144340, tf_ebp = -740173016, tf_isp =
-740173040, tf_ebx = -1050144340, tf_edx = -1051297040, tf_ecx = 65535,
tf_eax = 65535, tf_trapno = 12, tf_err = 0, tf_eip = -1068315338, tf_cs
= 32, tf_eflags = 590466, tf_esp = -1050165248, tf_ss = -740172988}) at
/usr/src/sys/i386/i386/trap.c:442
#6  0xc05bc32a in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#7  0xc052cd36 in ieee80211_chan2mode (ic=0xc16811ac, chan=0xffff)
    at /usr/src/sys/net80211/ieee80211.c:892
#8  0xc0537e87 in ieee80211_dup_bss (nt=0xc16819a8, macaddr=0xc18e980a
"")
    at /usr/src/sys/net80211/ieee80211_node.c:225
#9  0xc05383e2 in ieee80211_add_neighbor (ic=0xc16811ac, wh=0xc18e9800, 
    sp=0xd3e1dbac) at /usr/src/sys/net80211/ieee80211_node.c:1234
#10 0xc0530842 in ieee80211_recv_mgmt (ic=0xc16811ac, m0=0xc18c4300, 
    ni=0xc16c1c00, subtype=128, rssi=68, rstamp=29985)
    at /usr/src/sys/net80211/ieee80211_input.c:1959
#11 0xc06f6b9e in ?? ()
#12 0xc16811ac in ?? ()
#13 0xc18c4300 in ?? ()
#14 0xc16c1c00 in ?? ()
#15 0x00000080 in ?? ()
#16 0x00000044 in ?? ()
#17 0x00007521 in ?? ()
#18 0xc1681000 in ?? ()
#19 0x00007521 in ?? ()
#20 0xc16c1c00 in ?? ()
#21 0xc18c4300 in ?? ()
#22 0xc18e9800 in ?? ()
#23 0xc16c1c00 in ?? ()
#24 0xd3e1dc74 in ?? ()
#25 0xc052e859 in ieee80211_input (ic=0xc16811ac, m=0xc16811ac, ni=0x44,

    rssi=128, rstamp=68) at /usr/src/sys/net80211/ieee80211_input.c:540
Previous frame identical to this frame (corrupt stack?)
(kgdb)


More information about the freebsd-current mailing list