Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 04 Apr 1997 20:03:22 +0900
From:      NISHIO Shuichi <nishio@caleche.kecl.ntt.co.jp>
To:        freebsd-smp@freebsd.org
Subject:   APIC_IO problem on Tyan S1668
Message-ID:  <19970404200322X.nishio@elysium.kecl.ntt.co.jp>

next in thread | raw e-mail | index | archive | help
----Next_Part(Fri_Apr__4_19:25:45_1997)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hello,

I today tried installing the SMP kernel on my machine, with 
Tyan S1668 ATX and 2 200MHz Pentium Pro processors.

The kernel created without APIC_IO and SMP_INVLTLB seems to be working
fine, both with 1 and 2 CPUs (it's been up for about hours, and I'm
writing this main on it). 

However, when I tried the kernel with APIC_IO and SMP_INVLTLB, the
following problem occured:

(a) one (out of two) ethernet interface won't work

on booting, kernel says

> de0: transmission timeout

and this interface (10BaseT) won't even respond to pings, although
ifconfig says it's up. The other interface, de1(100BaseT), seemed to
be working.


(b) system freezes on NFS

I tried using NFS on the alive interface de1 (100BaseTX), but while
copying files, the system suddenly freezed, and I had to do a hardware 
reset.


What I did is:
(1) Installed 3.0-970209-SNAP (worked fine)
(2) cvsup-ed the SMP kernel source
(3) did "cvs update -Pd -D '02/10/97 00:00:00 GMT"
(4) applied the recent patch to exception.s
	(from <199703281714.KAA25923@Ilsa.StevesCafe.com>)
(5) compiled the kernel, with options from mptable output


So, my question is:
(a) Am I missing something in creating the kernel?
(b) Do I need to recompile everything with the SMP kernel headers?
At least, dmesg didn't work, with the message
	kvm_read: Bad address


Attached below is
(1) extracts from /var/log/messages, while booting the kernel
    without APIC_IO (dmesg didn't work)
(2) difference in messages for kernels with and without APIC_IO
(3) output of "mptable -verbose -dmesg"
(4) kernel configuration file I used


My machine contains
	Tyan S1668 ATX Motherboard
	200MHz Pentium Pro (256K cache) x 2
	256MB memory
	Adaptec AHA-2940 x1
	Adaptec AHA-2940U x1
	Adaptec AHA-2940UW x1
	DEC Fast EtherWORKS PCI 10/100 x 2
	(one connected to 10BaseT Hub, another to 100BaseT Hub)
	ISA video card
	SCSI HDD x 6
	DAT drive x 1

I am not using X-window on this, nor am I using any mouse.


Thank you for any help,


Nishio Shuichi


----Next_Part(Fri_Apr__4_19:25:45_1997)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Copyright (c) 1992-1996 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
	The Regents of the University of California.  All rights reserved.

FreeBSD 3.0-SMP #0: Fri Apr  4 12:41:24 JST 1997
    root@elysium.kecl.ntt.co.jp:/mnt2/cvs/sys-MP/compile/SMP
FreeBSD/SMP: Multiprocessor motherboard
 cpu0 (BSP): apic id: 1, version: 0x00040011
 cpu1 (AP):  apic id: 0, version: 0x00040011
 Warning: APIC I/O disabled
Calibrating clock(s) relative to mc146818A clock ... i8254 clock: 1193054 Hz
CPU: Pentium Pro (686-class CPU)
  Origin = "GenuineIntel"  Id = 0x619  Stepping=9
  Features=0xfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,<b11>,MTRR,PGE,MCA,CMOV>
real memory  = 268435456 (262144K bytes)
avail memory = 261296128 (255172K bytes)
Probing for devices on PCI bus 0:
chip0 <Intel 82440FX (Natoma) PCI and memory controller> rev 2 on pci0:0
chip1 <Intel 82371SB PCI-ISA bridge> rev 1 on pci0:7:0
chip2 <Intel 82371SB IDE interface> rev 0 on pci0:7:1
de0 <Digital 21140A Fast Ethernet> rev 32 int a irq 15 on pci0:10
de0: DE500-AA 21140A [10-100Mb/s] pass 2.0
de0: address 00:00:f8:03:ef:59
de1 <Digital 21140A Fast Ethernet> rev 32 int a irq 9 on pci0:11
de1: DE500-AA 21140A [10-100Mb/s] pass 2.0
de1: address 00:00:f8:03:e9:ec
ahc0 <Adaptec 2940 SCSI host adapter> rev 0 int a irq 10 on pci0:12
ahc0: aic7870 Single Channel, SCSI Id=7, 16 SCBs
ahc0 waiting for scsi devices to settle
(ahc0:0:0): "SEAGATE ST31230N 0250" type 0 fixed SCSI 2
sd0(ahc0:0:0): Direct-Access 1010MB (2069860 512 byte sectors)
(ahc0:1:0): "SEAGATE ST31230N 0250" type 0 fixed SCSI 2
sd1(ahc0:1:0): Direct-Access 1010MB (2069860 512 byte sectors)
(ahc0:2:0): "SEAGATE ST410800N 0019" type 0 fixed SCSI 2
sd2(ahc0:2:0): Direct-Access 8669MB (17755614 512 byte sectors)
(ahc0:4:0): "HP C1533A 9503" type 1 removable SCSI 2
st0(ahc0:4:0): Sequential-Access density code 0x24,  drive empty
ahc1 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 11 on pci0:13
ahc1: aic7880 Single Channel, SCSI Id=7, 16 SCBs
ahc1 waiting for scsi devices to settle
(ahc1:5:0): "Quantum XP34300 81HB" type 0 fixed SCSI 2
sd3(ahc1:5:0): Direct-Access 4101MB (8399520 512 byte sectors)
(ahc1:6:0): "Quantum XP34300 81HB" type 0 fixed SCSI 2
sd4(ahc1:6:0): Direct-Access 4101MB (8399520 512 byte sectors)
ahc2 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 15 on pci0:14
ahc2: aic7880 Wide Channel, SCSI Id=7, 16 SCBs
ahc2 waiting for scsi devices to settle
(ahc2:4:0): "QUANTUM XP39100S LXY4" type 0 fixed SCSI 2
sd5(ahc2:4:0): Direct-Access 8682MB (17781520 512 byte sectors)
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
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
ccd0-3: Concatenated disk drivers
SMP: All idle procs online.
de1: link up: enabling 100baseTX port
de0: link up: enabling 10baseT port
SMP: 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!

----Next_Part(Fri_Apr__4_19:25:45_1997)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

5,6c5,6
< FreeBSD 3.0-SMP #0: Fri Apr  4 12:41:24 JST 1997
<     root@elysium.kecl.ntt.co.jp:/mnt2/cvs/sys-MP/compile/SMP
---
> FreeBSD 3.0-SMP #0: Fri Apr  4 13:35:28 JST 1997
>     nishio@elysium.kecl.ntt.co.jp:/mnt2/cvs/sys-MP/compile/SMP-APIC
10,11c10,11
<  Warning: APIC I/O disabled
< Calibrating clock(s) relative to mc146818A clock ... i8254 clock: 1193054 Hz
---
>  io0 (APIC): apic id: 2, version: 0x00170011
> Calibrating clock(s) relative to mc146818A clock ... i8254 clock: 1193049 Hz
16c16
< avail memory = 261296128 (255172K bytes)
---
> avail memory = 261283840 (255160K bytes)
24c24,25
< de1 <Digital 21140A Fast Ethernet> rev 32 int a irq 9 on pci0:11
---
> de1 <Digital 21140A Fast Ethernet> rev 32 int a irq 19 on pci0:11
> Freeing (NOT implimented) irq 9 for ISA cards.
27c28,29
< ahc0 <Adaptec 2940 SCSI host adapter> rev 0 int a irq 10 on pci0:12
---
> ahc0 <Adaptec 2940 SCSI host adapter> rev 0 int a irq 18 on pci0:12
> Freeing (NOT implimented) irq 10 for ISA cards.
38c40,41
< ahc1 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 11 on pci0:13
---
> ahc1 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 17 on pci0:13
> Freeing (NOT implimented) irq 11 for ISA cards.
45c48,50
< ahc2 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 15 on pci0:14
---
> ahc2 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 16 on pci0:14
> Freeing (NOT implimented) irq 15 for ISA cards.
> pcibus_ihandler_attach: counting pci irq16's as clk0 irqs
61a67
> Enabled INTs: 1, 2, 3, 4, 6, 8, 15, 16, 17, 18, 19, imen: 0x00f07ea1
64d69
< de1: link up: enabling 100baseTX port
65a71,72
> de1: link up: enabling 100baseTX port
> de0: transmission timeout

----Next_Part(Fri_Apr__4_19:25:45_1997)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Description: "mptable output"


===============================================================================

MPTable, version 2.0.6

 looking for EBDA pointer @ 0x040e, NOT found
 searching CMOS 'top of mem' @ 0x0009fc00 (639K)
 searching BIOS @ 0x000f0000

 MP FPS found in BIOS @ physical addr: 0x000f0920

-------------------------------------------------------------------------------

MP Floating Pointer Structure:

  location:			BIOS
  physical address:		0x000f0920
  signature:			'_MP_'
  length:			16 bytes
  version:			1.1
  checksum:			0x57
  mode:				Virtual Wire

-------------------------------------------------------------------------------

MP Config Table Header:

  physical address:		0x000f0934
  signature:			'PCMP'
  base table length:		292
  version:			1.1
  checksum:			0xab
  OEM ID:			'OEM00000'
  Product ID:			'PROD00000000'
  OEM table pointer:		0x00000000
  OEM table size:		0
  entry count:			28
  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	 ISA   
		 1	 PCI   
--
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	     0	   0	      2	   0
		INT	 conforms    conforms	     0	   1	      2	   1
		INT	 conforms    conforms	     0	   0	      2	   2
		INT	 conforms    conforms	     0	   3	      2	   3
		INT	 conforms    conforms	     0	   4	      2	   4
		INT	 conforms    conforms	     0	   5	      2	   5
		INT	 conforms    conforms	     0	   6	      2	   6
		INT	 conforms    conforms	     0	   7	      2	   7
		INT	 conforms    conforms	     0	   8	      2	   8
		INT	 conforms    conforms	     0	   9	      2	   9
		INT	 conforms    conforms	     0	  10	      2	  10
		INT	 conforms    conforms	     0	  11	      2	  11
		INT	 conforms    conforms	     0	  12	      2	  12
		INT	 conforms    conforms	     0	  13	      2	  13
		INT	 conforms    conforms	     0	  14	      2	  14
		INT	 conforms    conforms	     0	  15	      2	  15
		INT	active-lo       level	     1	14:A	      2	  16
		INT	active-lo       level	     1	13:A	      2	  17
		INT	active-lo       level	     1	12:A	      2	  18
		INT	active-lo       level	     1	11:A	      2	  19
		SMI	 conforms    conforms	     0	   0	      2	  23
--
Local Ints:	Type	Polarity    Trigger	Bus ID	 IRQ	APIC ID	INT#
		ExtINT	active-hi        edge	     0	   0	    255	   0
		NMI	active-hi        edge	     0	   0	    255	   1

-------------------------------------------------------------------------------

# SMP kernel config file options:

options		SMP			# Symmetric MultiProcessor Kernel
options		APIC_IO			# Symmetric (APIC) I/O
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
options		SMP_INVLTLB		# 
#options		SMP_PRIVPAGES		# BROKEN, DO NOT use!
#options		SMP_AUTOSTART		# BROKEN, DO NOT use!
#options		SERIAL_DEBUG		# com port debug output

-------------------------------------------------------------------------------

dmesg output:

dmesg: kvm_read: kvm_read: Bad address

===============================================================================


----Next_Part(Fri_Apr__4_19:25:45_1997)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Description: "kernel configuration (without APIC_IO)"

#
# GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks
#
# For more information read the handbook part System Administration -> 
# Configuring the FreeBSD Kernel -> The Configuration File. 
# The handbook is available in /usr/share/doc/handbook or online as
# latest version from the FreeBSD World Wide Web server 
# <URL:http://www.FreeBSD.ORG/>;
#
# An exhaustive list of options and more detailed explanations of the 
# device lines is present in the ./LINT configuration file. If you are 
# in doubt as to the purpose or necessity of a line, check first in LINT.
#
#	$Id: GENERIC,v 1.82 1996/12/21 02:09:04 se Exp $

machine		"i386"
#cpu		"I386_CPU"
#cpu		"I486_CPU"
#cpu		"I586_CPU"
cpu		"I686_CPU"
ident		SMP
maxusers	10

#options		MATH_EMULATE		#Support for x87 emulation
options		INET			#InterNETworking
options		FFS			#Berkeley Fast Filesystem
options		NFS			#Network Filesystem
options		MSDOSFS			#MSDOS Filesystem
options		"CD9660"		#ISO 9660 Filesystem
options		PROCFS			#Process filesystem
options		"COMPAT_43"		#Compatible with BSD 4.3 [KEEP THIS!]
options		SCSI_DELAY=15		#Be pessimistic about Joe SCSI device
#options		BOUNCE_BUFFERS		#include support for DMA bounce buffers
options		UCONSOLE		#Allow users to grab the console
options		FAILSAFE		#Be conservative
#options		USERCONFIG		#boot -c editor
#options		VISUAL_USERCONFIG	#visual boot -c editor

config		kernel	root on sd1

controller	isa0
controller	eisa0
controller	pci0

controller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk		fd0	at fdc0 drive 0

# A single entry for any of these controllers (ncr, ahb, ahc, amd) is
# sufficient for any number of installed devices.
controller	ahc0

controller	scbus0
device		sd0
#device		od0	#See LINT for possible `od' options.
device		st0
device		cd0	#Only need one of these, the code dynamically grows

# syscons is the default console driver, resembling an SCO console
device		sc0	at isa? port "IO_KBD" tty irq 1 vector scintr
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device		vt0	at isa? port "IO_KBD" tty irq 1 vector pcrint
#options		PCVT_FREEBSD=210	# pcvt running on FreeBSD >= 2.0.5
#options		XSERVER			# include code for XFree86
#options		FAT_CURSOR		# start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
#options		PCVT_SCANSET=2		# IBM keyboards are non-std

# Mandatory, don't remove
device		npx0	at isa? port "IO_NPX" irq 13 vector npxintr

device		sio0	at isa? port "IO_COM1" tty irq 4 vector siointr
device		sio1	at isa? port "IO_COM2" tty irq 3 vector siointr

# Order is important here due to intrusive probes, do *not* alphabetize
# this list of network interfaces until the probes have been fixed.
# Right now it appears that the ie0 must be probed before ep0. See
# revision 1.20 of this file.
device de0

pseudo-device	loop
pseudo-device	ether
pseudo-device	log
pseudo-device	pty	16
pseudo-device	gzip		# Exec gzipped a.out's
pseudo-device	bpfilter	32	#Berkeley packet filter
pseudo-device	snp	3	#Snoop device - to look at pty/vty/etc..
pseudo-device	ccd	4	#Concatenated disk driver

# KTRACE enables the system-call tracing facility ktrace(2).
# This adds 4 KB bloat to your kernel, and slightly increases
# the costs of each syscall.
options		KTRACE		#kernel tracing

options		"MAXMEM=(256*1024)"

# SMP kernel config file options:

options         SMP                     # Symmetric MultiProcessor Kernel
#options         APIC_IO                 # Symmetric (APIC) I/O
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
#options         SMP_INVLTLB             # 
#options                SMP_PRIVPAGES           # BROKEN, DO NOT use!
#options                SMP_AUTOSTART           # BROKEN, DO NOT use!
#options                SERIAL_DEBUG            # com port debug output

----Next_Part(Fri_Apr__4_19:25:45_1997)----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970404200322X.nishio>