Date: Mon, 11 Aug 1997 01:33:21 -0500 (CDT) From: Bruce Albrecht <bruce@zuhause.mn.org> To: Steve Passe <smp@csn.net> Cc: current@FreeBSD.ORG Subject: Re: Trap 9 When Boot SMP Message-ID: <199708110633.BAA00276@zuhause.mn.org> In-Reply-To: <199708101754.LAA11619@Ilsa.StevesCafe.com> References: <199708092123.QAA14184@zuhause.mn.org> <199708101754.LAA11619@Ilsa.StevesCafe.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Steve Passe writes:
> Hi,
>
> Thomas found a 'fix', although we don't understand WHY the problem exists.
> It appears that %es is getting corrupted somewhere during boot. The
> 'solution' was:
>
> > The es value IS the culprit.
> >
> > Havn't found where it is being mangled, I suspect the
> > doreti code.
> >
> > I nailed es to ds at the top of smp_idleloop in init_smp.c.
> > asm("pushl %ds; popl %es");
>
> ---
> anyone have any theories about this one? This is the only reported system
> having this problem, and I have no clues as to why...
I've been having the same problem since May on an Tyan ATX 1668 system
(with a 5 week hiatus when my machine was sent back to the vendor for
repairs, including problems with memory). At the time, Steve
suspected that it was hardware, but this hack does allow me to run SMP
now. Two things in common is that we both have Matrox accelerators
and NCR SCSI controllers. Strangely enough, I did have SMP running
for about a week in early May, but it stopped working about the time I
did some hardware changes.
Copyright (c) 1992-1997 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
FreeBSD 3.0-CURRENT #1: Mon Aug 11 01:21:47 CDT 1997
bruce@zuhause.mn.org:/usr/src/sys/compile/ZUHAUSE
CPU: Pentium Pro (686-class CPU)
Origin = "GenuineIntel" Id = 0x619 Stepping=9
Features=0xfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV>
real memory = 67108864 (65536K bytes)
avail memory = 62504960 (61040K bytes)
FreeBSD/SMP: Multiprocessor motherboard
cpu0 (BSP): apic id: 1, version: 0x00040011, at 0xfee00000
cpu1 (AP): apic id: 0, version: 0x00040011, at 0xfee00000
io0 (APIC): apic id: 2, version: 0x00170011, at 0xfec00000
DEVFS: ready for devices
Probing for devices on PCI bus 0:
chip0: <Intel 82440FX (Natoma) PCI and memory controller> rev 0x02 on pci0.0.0
chip1: <Intel 82371SB PCI to ISA bridge> rev 0x01 on pci0.7.0
ncr0: <ncr 53c810a fast10 scsi> rev 0x12 int a irq 18 on pci0.12.0
ncr0: minsync=25, maxsync=206, maxoffs=8, 16 dwords burst, normal dma fifo
scbus0 at ncr0 bus 0
sd1 at scbus0 target 0 lun 0
sd1: <QUANTUM P40S 940-40-94xx A.2> type 0 fixed SCSI 1
sd1: Direct-Access 40MB (82029 512 byte sectors)
sd1: with 834 cyls, 3 heads, and an average 32 sectors/track
st0 at scbus0 target 4 lun 0
st0: <ARCHIVE 4586XX 28887-XXX 4BGD> type 1 removable SCSI 2
st0: Sequential-Access
st0: 5.0 MB/s (200 ns, offset 8)
density code 0x13, 512-byte blocks, write-enabled
ch0 at scbus0 target 4 lun 1
ch0: <ARCHIVE 4586XX 28887-XXX 4BGD> type 8 removable SCSI 2
ch0: Medium-Changer 4 slots, 1 drive, 1 picker
cd0 at scbus0 target 6 lun 0
cd0: <SANYO CRD-254S 1.01> type 5 removable SCSI 2
cd0: CD-ROM
cd0: asynchronous.
cd present [293037 x 2048 byte records]
ncr1: <ncr 53c875 fast20 wide scsi> rev 0x03 int a irq 17 on pci0.13.0
ncr1: minsync=12, maxsync=137, maxoffs=16, 128 dwords burst, large dma fifo
scbus1 at ncr1 bus 0
sd0 at scbus1 target 6 lun 0
sd0: <QUANTUM FIREBALL_TM3200S 300X> type 0 fixed SCSI 2
sd0: Direct-Access
sd0: 20.0 MB/s (50 ns, offset 15)
3067MB (6281856 512 byte sectors)
sd0: with 6810 cyls, 5 heads, and an average 184 sectors/track
vga0: <VGA-compatible display device> rev 0x01 int a irq 16 on pci0.14.0
Probing for devices on the ISA bus:
sc0 at 0x60-0x6f irq 1 on motherboard
sc0: VGA color <16 virtual consoles, flags=0x0>
sio0 at 0x3f8-0x3ff irq 4 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
psm0 at 0x60-0x64 irq 12 on motherboard
psm0: device ID 0
pca0 on motherboard
pca0: PC speaker audio driver
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fdc0: NEC 72065B
fd0: 1.44MB 3.5in
npx0 on motherboard
npx0: INT 16 interface
sb0 at 0x220-0x22f irq 5 drq 1 on isa
sb0: <SoundBlaster 16 4.13>
sbxvi0 drq 5 on isa
sbxvi0: <SoundBlaster 16 4.13>
sbmidi0 at 0x330-0x331 on isa
sbmidi0: <SoundBlaster 16 MPU-401>
joy0 at 0x201 on isa
joy0: joystick
DEVFS: ready to run
APIC_IO: routing 8254 via 8259 on pin 0
SMP: All idle procs online.
SMP: *** AUTO *** starting 1st AP!
SMP: AP CPU #1 LAUNCHED!! Starting Scheduling...
SMP: TADA! CPU #1 made it into the scheduler!.
SMP: All 2 CPU's are online!
-------
===============================================================================
MPTable, version 2.0.13
-------------------------------------------------------------------------------
MP Floating Pointer Structure:
location: BIOS
physical address: 0x000fb100
signature: '_MP_'
length: 16 bytes
version: 1.1
checksum: 0xf7
mode: Virtual Wire
-------------------------------------------------------------------------------
MP Config Table Header:
physical address: 0x000f5d40
signature: 'PCMP'
base table length: 284
version: 1.1
checksum: 0x93
OEM ID: 'INTEL '
Product ID: '440FX '
OEM table pointer: 0x00000000
OEM table size: 0
entry count: 27
local APIC address: 0xfee00000
extended table length: 0
extended table checksum: 0
-------------------------------------------------------------------------------
MP Config Base Table Entries:
--
Processors: APIC ID Version State Family Model Step Flags
1 0x11 BSP, usable 6 1 9 0xfbff
0 0x11 AP, usable 6 1 9 0xfbff
--
Bus: Bus ID Type
0 PCI
1 ISA
--
I/O APICs: APIC ID Version State Address
2 0x11 usable 0xfec00000
--
I/O Ints: Type Polarity Trigger Bus ID IRQ APIC ID INT#
ExtINT conforms conforms 1 0 2 0
INT conforms conforms 1 1 2 1
INT conforms conforms 1 0 2 2
INT conforms conforms 1 3 2 3
INT conforms conforms 1 4 2 4
INT conforms conforms 1 5 2 5
INT conforms conforms 1 6 2 6
INT conforms conforms 1 7 2 7
INT active-hi edge 1 8 2 8
INT conforms conforms 1 9 2 9
INT conforms conforms 1 10 2 10
INT conforms conforms 1 11 2 11
INT conforms conforms 1 12 2 12
INT conforms conforms 1 13 2 13
INT conforms conforms 1 14 2 14
INT conforms conforms 1 15 2 15
INT active-lo level 0 14:A 2 16
INT active-lo level 0 13:A 2 17
INT active-lo level 0 12:A 2 18
SMI conforms conforms 1 0 2 23
--
Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID INT#
ExtINT conforms conforms 0 0:A 255 0
NMI conforms conforms 0 0:A 255 1
-------------------------------------------------------------------------------
# SMP kernel config file options:
# Required:
options SMP # Symmetric MultiProcessor Kernel
options APIC_IO # Symmetric (APIC) I/O
# Useful:
#options SMP_AUTOSTART # start the additional CPUs during boot
# Optional (built-in defaults will work in most cases):
#options NCPU=2 # number of CPUs
#options NBUS=2 # number of busses
#options NAPIC=1 # number of IO APICs
#options NINTR=24 # number of INTs
===============================================================================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708110633.BAA00276>
