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>
index | next in thread | raw e-mail
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
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?001201be5884$dc2e1ed0$6cb611cb>
