Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Feb 1999 12:45:26 +1100
From:      "John Saunders" <john.saunders@scitec.com.au>
To:        "FreeBSD stable" <freebsd-stable@FreeBSD.ORG>
Subject:   SMP crash
Message-ID:  <001201be5884$dc2e1ed0$6cb611cb@saruman.scitec.com.au>

next in thread | raw e-mail | index | archive | help
I'm finding SMP under 3.0-stable to be unreliable. I just rebooted
now while I was logged in. I've included a bunch of information,
if you need anything else let me know. The machine is rock
solid when not using an SMP kernel.

Thanks.
------------------------------------------------------------------
Output of "gdb -k -c vmcore.1 kernel.1" is...

IdlePTD 3047424
initial pcb at 2715f8
panicstr: page fault
panic messages:
---
Fatal trap 12: page fault while in kernel mode
mp_lock = 00000002; cpuid = 0; lapic.id = 00000000
fault virtual address   = 0x88
fault code              = supervisor write, page not present
instruction pointer     = 0x8:0xf0bae289
stack pointer           = 0x10:0xf656dbdc
frame pointer           = 0x10:0xf656dbec
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         = 281 (squid)
interrupt mask          =  <- SMP: XXX
trap number             = 12
panic: page fault
mp_lock = 00000002; cpuid = 0; lapic.id = 00000000
boot() called on cpu#0

syncing disks... 76 76 65 38 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 giving up

dumping to dev 20001, offset 262144
dump 127 126 125 124 123 122 121 120 119 118 117 116 115 114 113 112 111 110
109
 108 107 106 105 104 103 102 101 100 99 98 97 96 95 94 93 92 91 90 89 88 87
86 8
5 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60
59
58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34
33 32
 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5
4 3
 2 1
---
#0  0xf0142dbf in boot ()
(kgdb) bt
#0  0xf0142dbf in boot ()
#1  0xf014308d in panic ()
#2  0xf0210748 in trap_fatal ()
#3  0xf02103c3 in trap_pfault ()
#4  0xf020fff6 in trap ()
#5  0xf0bae289 in ?? ()
#6  0xf0bae0f1 in ?? ()
#7  0xf0badec6 in ?? ()
#8  0xf01743ea in spec_strategy ()
#9  0xf0173b69 in spec_vnoperate ()
#10 0xf01e234d in ufs_vnoperatespec ()
#11 0xf0160673 in bwrite ()
#12 0xf01d72c9 in ffs_update ()
#13 0xf01e2251 in ufs_makeinode ()
#14 0xf01df96e in ufs_create ()
#15 0xf01e231d in ufs_vnoperate ()
#16 0xf016d49f in vn_open ()
#17 0xf016a275 in open ()
#18 0xf02109c3 in syscall ()
#19 0xf01ffbbc in Xint0x80_syscall ()
#20 0x8084f32 in ?? ()
#21 0x80854a4 in ?? ()
#22 0x807edb7 in ?? ()
#23 0x80677b7 in ?? ()
#24 0x805ba2a in ?? ()
#25 0x80714a5 in ?? ()
#26 0x804a115 in ?? ()
(kgdb)

------------------------------------------------------------------
Output of dmesg is...

Copyright (c) 1992-1999 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
	The Regents of the University of California. All rights reserved.
FreeBSD 3.0-STABLE #0: Thu Feb  4 12:29:40 EST 1999
    root@grunt.nlc.net.au:/usr/src/sys/compile/GRUNT
Timecounter "i8254"  frequency 1193182 Hz
CPU: Pentium/P54C (586-class CPU)
  Origin = "GenuineIntel"  Id = 0x52c  Stepping=12
  Features=0x3bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,APIC>
real memory  = 134217728 (131072K bytes)
config> quit
avail memory = 127488000 (124500K bytes)
Programming 24 pins in IOAPIC #0
FreeBSD/SMP: Multiprocessor motherboard
 cpu0 (BSP): apic id:  0, version: 0x00030010, at 0xfee00000
 cpu1 (AP):  apic id:  1, version: 0x00030010, at 0xfee00000
 io0 (APIC): apic id:  2, version: 0x00170011, at 0xfec00000
Preloaded elf kernel "kernel.smp" at 0xf02de000.
Probing for devices on PCI bus 0:
chip0: <Intel 82439> rev 0x03 on pci0.0.0
chip1: <Intel 82371SB PCI to ISA bridge> rev 0x01 on pci0.7.0
ide_pci0: <Intel PIIX3 Bus-master IDE controller> rev 0x00 on pci0.7.1
ed1: <NE2000 PCI Ethernet (RealTek 8029)> rev 0x00 int a irq 19 on pci0.17.0
ed1: address 00:40:05:5e:c3:1f, type NE2000 (16 bit)
ahc0: <Adaptec aic7850 SCSI adapter> rev 0x03 int a irq 18 on pci0.18.0
ahc0: aic7850 Single Channel A, SCSI Id=7, 3/255 SCBs
vga0: <S3 Trio graphics accelerator> rev 0x53 int a irq 16 on pci0.20.0
Probing for PnP devices:
Probing for devices on the ISA bus:
sc0 on isa
sc0: VGA color <4 virtual consoles, flags=0x0>
atkbdc0 at 0x60-0x6f on motherboard
atkbd0 irq 1 on isa
sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
lpt0 at 0x378-0x37f irq 7 on isa
lpt0: Interrupt-driven port
lp0: TCP/IP capable interface
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fdc0: FIFO enabled, 8 bytes threshold
fd0: 1.44MB 3.5in
wdc0 at 0x1f0-0x1f7 irq 14 flags 0xa0ff on isa
wdc0: unit 0 (wd0): <QUANTUM FIREBALL_TM2100A>, DMA, 32-bit, multi-block-16
wd0: 2014MB (4124736 sectors), 4092 cyls, 16 heads, 63 S/T, 512 B/S
wdc1 at 0x170-0x177 irq 15 flags 0xa0ffa0ff on isa
wdc1: unit 0 (wd2): <QUANTUM FIREBALL_TM3840A>, DMA, 32-bit, multi-block-16
wd2: 3681MB (7539840 sectors), 7480 cyls, 16 heads, 63 S/T, 512 B/S
wdc1: unit 1 (wd3): <QUANTUM FIREBALL_TM3840A>, DMA, 32-bit, multi-block-16
wd3: 3681MB (7539840 sectors), 7480 cyls, 16 heads, 63 S/T, 512 B/S
npx0 on motherboard
npx0: INT 16 interface
vga0 at 0x3b0-0x3df maddr 0xa0000 msize 131072 on isa
Intel Pentium detected, installing workaround for F00F bug
APIC_IO: Testing 8254 interrupt delivery
APIC_IO: routing 8254 via pin 2
IP packet filtering initialized, divert enabled, rule-based forwarding
enabled, default to accept, logging limited to 100 packets/entry
IP Filter: initialized.  Default = pass all, Logging = enabled
Waiting 5 seconds for SCSI devices to settle
SMP: AP CPU #1 Launched!
sa0 at ahc0 bus 0 target 4 lun 0
sa0: <CONNER CTT8000-S 1.17> Removable Sequential Access SCSI-2 device
sa0: 5.0MB/s transfers (5.0MHz, offset 15)
changing root device to wd0s1a
WARNING: / was not properly dismounted
vinum: loaded
vinum: reading configuration from /dev/wd3s1a
vinum: updating configuration from /dev/wd2s1a
------------------------------------------------------------------
My config is...

#
# GRUNT -- Dual Pentium 133MHz, 128MB, Adaptec SCSI, 1xCCD
#

#####################################################################
# BASIC CONFIG OPTIONS
machine		"i386"

ident		GRUNT

config		kernel	root on wd0

options		INCLUDE_CONFIG_FILE	# Include this file in kernel

#####################################################################
# CPU DEFINITION
cpu		"I586_CPU"
cpu		"I686_CPU"
#options	"NO_F00F_HACK"
options		CLK_USE_TSC_CALIBRATION

# To make an SMP kernel, the next two are needed
options		SMP			# Symmetric MultiProcessor Kernel
options		APIC_IO			# Symmetric (APIC) I/O
# Optionally these may need tweaked, (defaults shown):
#options	NCPU=2			# number of CPUs
#options	NBUS=4			# number of busses
#options	NAPIC=1			# number of IO APICs
#options	NINTR=24		# number of INTs

#####################################################################
# BUS DEFINITION
controller	isa0
controller	pci0
controller	pnp0

#####################################################################
# KERNEL SIZE OPTIONS
maxusers	64
#options	"MAXDSIZ=(256*1024*1024)"
#options	"DFLDSIZ=(256*1024*1024)"

#####################################################################
# COMPATIBILITY OPTIONS

# Implement system calls compatible with 4.3BSD and older versions of
# FreeBSD. You probably do NOT want to remove this as much current code
# still relies on the 4.3 emulation.
options		"COMPAT_43"

# These three options provide support for System V Interface
# Definition-style interprocess communication, in the form of shared
# memory, semaphores, and message queues, respectively.
options		SYSVSHM
options		SYSVSEM
options		SYSVMSG

# This option includes a MD5 routine in the kernel, this is used for
# various authentication and privacy uses.
options		"MD5"

# Allow processes to switch to vm86 mode, as well as enabling direct
# user-mode access to the I/O port space. This option is necessary for
# the doscmd emulator to run.
options		"VM86"

# Provide Linux binary compatibility.
options		COMPAT_LINUX

#####################################################################
# DEBUGGING OPTIONS

# Enable the kernel debugger.
options		DDB

# Don't drop into DDB for a panic. Intended for unattended operation
# where you may want to drop to DDB from the console, but still want
# the machine to recover from a panic
options		DDB_UNATTENDED

# KTRACE enables the system-call tracing facility ktrace(2).
options		KTRACE			#kernel tracing

# The DIAGNOSTIC option is used to enable extra debugging information
# from some parts of the kernel. As this makes everything more noisy,
# it is disabled by default.
#options	DIAGNOSTIC

# PERFMON causes the driver for Pentium/Pentium Pro performance counters
# to be compiled. See perfmon(4) for more information.
#options	PERFMON

# Allow ordinary users to take the console - this is useful for X.
options		UCONSOLE

# Options for the boot time config editor.
options		USERCONFIG		#boot -c editor
options		VISUAL_USERCONFIG	#visual boot -c editor

#####################################################################
# FILESYSTEM SUPPORT

options		FFS			#Berkeley Fast Filesystem
options		FFS_ROOT		#FFS usable as root device [keep this!]
options		MFS			#Memory Filesystem
options		MFS_ROOT		#MFS usable as root device, "MFS" req'ed
options		NFS			#Network Filesystem
options		NFS_ROOT		#NFS usable as root device, "NFS" req'ed
#options	MSDOSFS			#MSDOS Filesystem
#options	"CD9660"		#ISO 9660 Filesystem
#options	"CD9660_ROOT"		#CD-ROM usable as root. "CD9660" req'ed
options		PROCFS			#Process filesystem
options		KERNFS			#Kernel filesystem

# Disk quotas are supported when this option is enabled. If you
# change the value of this option, you must do a `make clean' in your
# kernel compile directory in order to get a working kernel.
#options	QUOTA			#enable disk quotas

# Allows MFS filesystems to be exported via nfs.
options		EXPORTMFS

#####################################################################
# DEVICE DEFINITIONS

# floating point processor.
device		npx0	at isa? port IO_NPX irq 13

# atkbdc0 controlls both the keyboard and the PS/2 mouse
controller	atkbdc0	at isa? port IO_KBD tty
device		atkbd0	at isa? tty irq 1
#device		psm0	at isa? tty irq 12
device		vga0	at isa? port ? conflicts

# splash screen/screen saver
pseudo-device	splash

# syscons is the default console driver, resembling an SCO console
device		sc0	at isa? tty
options		MAXCONS=4		# number of virtual consoles
options		SC_HISTORY_SIZE=2000	# number of history buffer lines

# To include support for VESA video modes
options		VESA			# needs VM86 defined too!!

# Standard floppy disk controller.
controller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2
disk		fd0	at fdc0 drive 0

# primary IDE controller.
#	The low 8 bits are the maximum value for the multi-sector I/O,
#	where 0xff defaults to the maximum that the drive can handle.
#	The high bit of the 16 bit flags (0x8000) allows probing for
#	32 bit transfers.  Bit 14 (0x4000) enables a hack to wake
#	up powered-down laptop drives.  Bit 13 (0x2000) allows
#	probing for PCI IDE DMA controllers, such as Intel's PIIX
#	south bridges. Bit 12 (0x1000) sets LBA mode instead of the
#	default CHS mode for accessing the drive. See the wd.4 man page.
# The flags field for the drives can be specified in the controller
# specification with the low 16 bits for drive 0, and the high 16 bits
# for drive 1.
controller	wdc0	at isa? port "IO_WD1" bio irq 14 flags 0x0000a0ff
disk		wd0	at wdc0 drive 0
#disk		wd1	at wdc0 drive 1

# secondary IDE controller.
controller	wdc1	at isa? port "IO_WD2" bio irq 15 flags 0xa0ffa0ff
disk		wd2	at wdc1 drive 0
disk		wd3	at wdc1 drive 1

# ATAPI enables the support for ATAPI-compatible IDE devices
options		ATAPI			#Enable ATAPI support for IDE bus
options		ATAPI_STATIC		#Don't do it as an LKM
device		acd0			#IDE CD-ROM

# serial ports.
device		sio0	at isa? port "IO_COM1" flags 0x10 tty irq 4
device		sio1	at isa? port "IO_COM2" tty irq 3
#options	COM_MULTIPORT		#code for some cards with shared IRQs

# printer port.
device		lpt0	at isa? port? tty irq 7

# Adaptec SCSI controller.
controller	ahc0
controller	scbus0	#base SCSI code
device		sa0	#SCSI tapes
options		SCSI_DELAY=5000		#Be pessimistic about Joe SCSI device

#####################################################################
# NETWORKING SUPPORT

options		INET			#InterNETworking
options		IPFIREWALL		#firewall
options		IPFIREWALL_VERBOSE	#print information about
					# dropped packets
options		IPFIREWALL_FORWARD	#enable xparent proxy support
options		IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity
options		IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options		IPDIVERT		#divert sockets

# Darren Reed's ipfilter package.
options		IPFILTER		#kernel ipfilter support
options		IPFILTER_LOG		#ipfilter logging

# ICMP_BANDLIM enables icmp error response bandwidth limiting. You
# typically want this option as it will help protect the machine from
# D.O.S. packet attacks.
options		ICMP_BANDLIM

pseudo-device	loop
pseudo-device	ether
pseudo-device	ppp		2
pseudo-device	bpfilter	4	#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 bpfilter)

device		ed0	at isa? disable port 0x300 net irq 10 iomem 0xd8000

#####################################################################
# MISCELLANEOUS OPTIONS/DEVICES

pseudo-device	pty		64	#Pseudo ttys - can go as high as 256
pseudo-device	gzip			#Exec gzipped a.out's
pseudo-device	vn		1	#Vnode driver
#pseudo-device	ccd		1	#Concatenated disk driver
------------------------------------------------------------------

--   .   +-------------------------------------------------------+
 ,--_|\  | John Saunders    mailto:John.Saunders@scitec.com.au   |
/  Oz  \ | SCITEC LIMITED   Phone +61294289563  Fax +61294289933 |
\_,--\_/ | "By the time you make ends meet, they move the ends." |
      v  +-------------------------------------------------------+


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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?001201be5884$dc2e1ed0$6cb611cb>