From owner-freebsd-smp Fri Apr 4 03:04:23 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id DAA01690 for smp-outgoing; Fri, 4 Apr 1997 03:04:23 -0800 (PST) Received: from caleche.kecl.ntt.co.jp (elysium.kecl.ntt.co.jp [129.60.192.193]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id DAA01681 for ; Fri, 4 Apr 1997 03:04:10 -0800 (PST) Received: from localhost by caleche.kecl.ntt.co.jp (8.8.5/kecl2.0/r8v7-M2-nishio) with ESMTP id UAA12786; Fri, 4 Apr 1997 20:03:23 +0900 (JST) To: freebsd-smp@freebsd.org Subject: APIC_IO problem on Tyan S1668 Mime-Version: 1.0 Content-Type: Multipart/Mixed; boundary="--Next_Part(Fri_Apr__4_19:25:45_1997)--" Content-Transfer-Encoding: 7bit X-Dispatcher: impost version 0.95+ (Nov. 26, 1996) Lines: 461 X-Mailer: Mew version 1.54 on Emacs 19.34.1, Mule 2.3 Message-Id: <19970404200322X.nishio@elysium.kecl.ntt.co.jp> Date: Fri, 04 Apr 1997 20:03:22 +0900 From: NISHIO Shuichi Sender: owner-smp@freebsd.org X-Loop: FreeBSD.org Precedence: bulk ----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,MTRR,PGE,MCA,CMOV> real memory = 268435456 (262144K bytes) avail memory = 261296128 (255172K bytes) Probing for devices on PCI bus 0: chip0 rev 2 on pci0:0 chip1 rev 1 on pci0:7:0 chip2 rev 0 on pci0:7:1 de0 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 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 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 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 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 rev 32 int a irq 9 on pci0:11 --- > de1 rev 32 int a irq 19 on pci0:11 > Freeing (NOT implimented) irq 9 for ISA cards. 27c28,29 < ahc0 rev 0 int a irq 10 on pci0:12 --- > ahc0 rev 0 int a irq 18 on pci0:12 > Freeing (NOT implimented) irq 10 for ISA cards. 38c40,41 < ahc1 rev 0 int a irq 11 on pci0:13 --- > ahc1 rev 0 int a irq 17 on pci0:13 > Freeing (NOT implimented) irq 11 for ISA cards. 45c48,50 < ahc2 rev 0 int a irq 15 on pci0:14 --- > ahc2 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 # # # 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)----