Subject: My first i386/MP experience :-)
To: None <tech-smp@netbsd.org>
From: Markus W Kilbinger <kilbi@rad.rwth-aachen.de>
List: tech-smp
Date: 02/04/2001 16:23:35
--iclkVUjrmG
Content-Type: text/plain; charset=us-ascii
Content-Description: message body text
Content-Transfer-Encoding: 7bit

Last week I've got an ASUS P2B-DS board and tried now to compile a
-current (end of Jan) i386-kernel with MP-support 'GENERIC.MPDEBUG',
simply putting in the i386 sommerfeld_i386mp_1 files: Compiling worked
without any problem! The resulting kernel booted (see attached dmesg
output) and seems to run both cpus, though the kernel first ran into
the debugger and complained about 'cpu failed to start' ??

What does 'pci_intr_map: no MP mapping found' mean?

Anyway, the kernel works stable for me, great job!

Anything I can test?

Markus.


--iclkVUjrmG
Content-Type: text/plain
Content-Description: GENERIC.MPDEBUG boot dmesg
Content-Disposition: inline;
	filename="smp.dmesg"
Content-Transfer-Encoding: 7bit

NetBSD 1.5R (GENERIC.MPDEBUG) #0: Sat Feb  3 17:58:24 MET 2001
    kilbi@qie:/amd/kilbisun.kilbi.de/usr/src/sys/arch/i386/compile/GENERIC.MPDEBUG
total memory = 255 MB
avail memory = 228 MB
using 3297 buffers containing 13188 KB of memory
biostramp installed @ 1000
BIOS32 rev. 0 found at 0xf0530
mainbus0 (root)
mainbus0: scanning 0x9fc00 to 0x9fff0 for MP signature
mainbus0: scanning 0x9f800 to 0x9fbf0 for MP signature
mainbus0: scanning 0xf0000 to 0xffff0 for MP signature
mainbus0: MP floating pointer found in bios at 0xf6e90
mainbus0: MP config table at 0xf6a80, 244 bytes long
mainbus0: Intel MP Specification (Version 1.1) (OEM00000 PROD00000000)
cpu0 at mainbus0: apid 1 (boot processor)
cpu0: Intel Pentium II/Celeron (Deschutes) (686-class), 400.93 MHz
cpu0: features 183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features 183fbff<PGE,MCA,CMOV,FGPAT,PSE36,MMX,FXSR>
cpu0: I-cache 16K 32b/line 4-way, D-cache 16K 32b/line 2/4-way
cpu0: L2 cache 512K 32b/line 4-way
cpu0: ITLB 4K: 32 entries 4-way, 4M: 2 entries
cpu0: DTLB 4K: 64 entries 4-way, 4M: 8 entries 4-way
cpu0: calibrating local timer
cpu0: apic clock running at 100 MHz
cpu0: kstack at 0xd3577000 for 8192 bytes
cpu0: idle pcb at 0xd3577000, idle sp at 0xd3578fa0
cpu1 at mainbus0: apid 0 (application processor)
cpu1: starting
cpu1: Intel Pentium II/Celeron (Deschutes) (686-class), 400.91 MHz
cpu1: features 183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu1: features 183fbff<PGE,MCA,CMOV,FGPAT,PSE36,MMX,FXSR>
cpu1: I-cache 16K 32b/line 4-way, D-cache 16K 32b/line 2/4-way
cpu1: L2 cache 512K 32b/line 4-way
cpu1: ITLB 4K: 32 entries 4-way, 4M: 2 entries
cpu1: DTLB 4K: 64 entries 4-way, 4M: 8 entries 4-way
cpu1: kstack at 0xd3579000 for 8192 bytes
cpu1: idle pcb at 0xd3579000, idle sp at 0xd357afa0
ioapic0 at mainbus0 apid 2 (I/O APIC)
ioapic0: pa 0xfec00000, virtual wire mode, version 11, 24 pins
ioapic0: int0 attached to ExtINT (type 3<type=3=ExtINT> flags 0<pol=0,trig=0>)
ioapic0: int1 attached to isa0 irq 1 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int2 attached to isa0 irq 0 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int3 attached to isa0 irq 3 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int4 attached to isa0 irq 4 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int5 attached to isa0 irq 5 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int6 attached to isa0 irq 6 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int7 attached to isa0 irq 7 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int8 attached to isa0 irq 8 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int12 attached to isa0 irq 12 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int14 attached to isa0 irq 14 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int15 attached to isa0 irq 15 (type 0<type=0> flags 0<pol=0,trig=0>)
ioapic0: int16 attached to isa0 irq 11 (type 0<type=0> flags f<pol=3=Act Lo,trig=3=Level>)
ioapic0: int18 attached to isa0 irq 10 (type 0<type=0> flags f<pol=3=Act Lo,trig=3=Level>)
ioapic0: int19 attached to isa0 irq 9 (type 0<type=0> flags f<pol=3=Act Lo,trig=3=Level>)
local apic: int0 attached to ExtINT (type 3<type=3=ExtINT> flags 5<pol=1=Act Hi,trig=1=Edge>)
local apic: int1 attached to NMI (type 1<type=1=NMI> flags 5<pol=1=Act Hi,trig=1=Edge>)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82443BX Host Bridge/Controller (rev. 0x02)
ppb0 at pci0 dev 1 function 0: Intel 82443BX AGP Interface (rev. 0x02)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
pcib0 at pci0 dev 4 function 0
pcib0: Intel 82371AB PCI-to-ISA Bridge (PIIX4) (rev. 0x02)
pciide0 at pci0 dev 4 function 1: Intel 82371AB IDE controller (PIIX4) (rev. 0x01)
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <ST52520A>
wd0: drive supports 16-sector PIO transfers, LBA addressing
wd0: 2446 MB, 4970 cyl, 16 head, 63 sec, 512 bytes/sect x 5009760 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2
wd1 at pciide0 channel 0 drive 1: <IBM-DTLA-307045>
wd1: drive supports 16-sector PIO transfers, LBA addressing
wd1: 43979 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 90069839 sectors
wd1: 32-bit data port
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
pciide0: primary channel interrupting at irq 14
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
wd1(pciide0:0:1): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
pciide0: secondary channel wired to compatibility mode
atapibus0 at pciide0 channel 1
cd0 at atapibus0 drive 0: <PLEXTOR CD-R   PX-W8432T, , 1.07> type 5 cdrom removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2
pciide0: secondary channel interrupting at irq 15
cd0(pciide0:1:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
uhci0 at pci0 dev 4 function 2: Intel 82371AB USB Host Controller (PIIX4) (rev. 0x01)
pci_intr_map: no mapping for pin D
uhci0: couldn't map interrupt
Intel 82371AB Power Management Controller (PIIX4) (miscellaneous bridge, revision 0x02) at pci0 dev 4 function 3 not configured
ahc1 at pci0 dev 6 function 0
pci_intr_map: no MP mapping found
ahc1: interrupting at irq 9
ahc1: aic7890/91 Wide Channel A, SCSI Id=7, 16/255 SCBs
scsibus0 at ahc1 channel 0: 16 targets, 8 luns per target
de0 at pci0 dev 10 function 0
pci_intr_map: no MP mapping found
de0: interrupting at irq 10
de0: SMC 21041 [10Mb/s] pass 1.1
de0: address 00:00:c0:79:5d:c4
3Dfx Interactive Voodoo (video multimedia, revision 0x02) at pci0 dev 11 function 0 not configured
vga1 at pci0 dev 12 function 0: Texas Instruments TVP4020 Permedia 2 (rev. 0x01)
wsdisplay0 at vga1: console (80x25, vt100 emulation)
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pmsiprobe: intellimode -> 6
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
lpt0 at isa0 port 0x378-0x37b irq 7
lptprobe: mask ff data 55 failed
lptprobe: mask ff data 55 failed
seaprobe: board type unknown at address 0xc8000
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
isapnp0: read port 0x203
sb1 at isapnp0 port 0x220/16,0x330/2,0x388/4 irq 5 drq 1,5
sb1: Creative ViBRA16C PnP Audio: dsp v4.13
audio0 at sb1: full duplex, mmap, independent
mpu0 at sb1
midi1 at mpu0: SB MPU-401 MIDI UART
opl0 at sb1: model OPL3
midi2 at opl0: SB Yamaha OPL3
joy0 at isapnp0 port 0x200/8
joy0: Creative ViBRA16C PnP Game
joy0: joystick not connected
biomask 0 netmask 0 ttymask 0
cpu0: prelint0 8700<vector=0,delmode=7,level,dest=0> 0<target=0>
cpu0: prelint1 400<vector=0,delmode=4,dest=0> 0<target=0>
cpu0: timer0 300d0<vector=d0,delmode=0,masked,dest=0> 0<target=0>
cpu0: pcint0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
cpu0: lint0 10700<vector=0,delmode=7,masked,dest=0> 0<target=0>
cpu0: lint1 400<vector=0,delmode=4,dest=0> 0<target=0>
cpu0: err0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: enabling
ioapic0: int0 10700<vector=0,delmode=7,masked,dest=0> 0<target=0>
ioapic0: int1 1a0<vector=a0,delmode=1,dest=0> 1000000<target=1>
ioapic0: int2 10100<vector=0,delmode=1,masked,dest=0> 0<target=0>
ioapic0: int3 1e1<vector=e1,delmode=1,dest=0> 1000000<target=1>
ioapic0: int4 1e2<vector=e2,delmode=1,dest=0> 1000000<target=1>
ioapic0: int5 1c0<vector=c0,delmode=1,dest=0> 1000000<target=1>
ioapic0: int6 170<vector=70,delmode=1,dest=0> 1000000<target=1>
ioapic0: int7 1a1<vector=a1,delmode=1,dest=0> 1000000<target=1>
ioapic0: int8 10100<vector=0,delmode=1,masked,dest=0> 0<target=0>
ioapic0: int9 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int10 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int11 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int12 1a2<vector=a2,delmode=1,dest=0> 1000000<target=1>
ioapic0: int13 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int14 171<vector=71,delmode=1,dest=0> 1000000<target=1>
ioapic0: int15 172<vector=72,delmode=1,dest=0> 1000000<target=1>
ioapic0: int16 1a100<vector=0,delmode=1,actlo,level,masked,dest=0> 0<target=0>
ioapic0: int17 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int18 f181<vector=81,delmode=1,pending,actlo,irrpending,level,dest=0> 1000000<target=1>
ioapic0: int19 a173<vector=73,delmode=1,actlo,level,dest=0> 1000000<target=1>
ioapic0: int20 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int21 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int22 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
ioapic0: int23 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
scsibus0: waiting 2 seconds for devices to settle...
de0: enabling 10baseT port
boot device: wd0
root on wd0a dumps on wd0b
mountroot: trying coda...
mountroot: trying msdos...
mountroot: trying cd9660...
mountroot: trying ntfs...
mountroot: trying nfs...
mountroot: trying lfs...
mountroot: trying ext2fs...
mountroot: trying ffs...
root file system type: ffs
cpu1: prelint0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
cpu1: prelint1 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
cpu1: timer0 200d0<vector=d0,delmode=0,dest=0> 0<target=0>
cpu1: pcint0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
cpu1: lint0 10700<vector=0,delmode=7,masked,dest=0> 0<target=0>
cpu1: lint1 400<vector=0,delmode=4,dest=0> 0<target=0>
cpu1: err0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
cpu failed to start
dropping into debugger; continue from here to resume boot
cpu1: CPU 0 running
init: copying out path `/sbin/init' 11
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0

--iclkVUjrmG--