From owner-freebsd-current Mon Feb 25 21:40: 6 2002 Delivered-To: freebsd-current@freebsd.org Received: from panzer.kdm.org (panzer.kdm.org [216.160.178.169]) by hub.freebsd.org (Postfix) with ESMTP id BA9EF37B41E; Mon, 25 Feb 2002 21:39:41 -0800 (PST) Received: (from ken@localhost) by panzer.kdm.org (8.11.6/8.9.1) id g1Q5dUU56617; Mon, 25 Feb 2002 22:39:30 -0700 (MST) (envelope-from ken) Date: Mon, 25 Feb 2002 22:39:30 -0700 From: "Kenneth D. Merry" To: Matthew Dillon Cc: Glenn Gombert , Andrew Kenneth Milton , current@FreeBSD.ORG, joe@FreeBSD.ORG, n_hibma@FreeBSD.ORG Subject: Re: -current hangs with SMP enabled Message-ID: <20020225223929.A56577@panzer.kdm.org> References: <20020224175635.A47442@panzer.kdm.org> <20020224175635.A47442@panzer.kdm.org> <20020225111513.G40004@zeus.theinternet.com.au> <3.0.6.32.20020224210202.00da4f18@imatowns.com> <20020224193029.A48055@panzer.kdm.org> <200202250715.g1P7FYi46805@apollo.backplane.com> <20020225221648.A56396@panzer.kdm.org> <200202260529.g1Q5TiB56359@apollo.backplane.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="uAKRQypu60I7Lcqm" Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <200202260529.g1Q5TiB56359@apollo.backplane.com>; from dillon@apollo.backplane.com on Mon, Feb 25, 2002 at 09:29:44PM -0800 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --uAKRQypu60I7Lcqm Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, Feb 25, 2002 at 21:29:44 -0800, Matthew Dillon wrote: > > :> Just as a data point, I've been running -current on a 2xCPU SMP > :> system (DELL2550) for a few weeks and it's always booted fine. > :> > :> For the last few months I have noticed occassional freezes occuring > :> at odd times long after boot. I have no idea why it happens. > : > :Your config works! > : > :I've attached the dmesg. Now the question is, what is the difference > :between GENERIC and your config that is causing the problem? > : > :(I suppose it makes sense that your config would work, since I think that > :Dell is a Serverworks-based system too.) > : > :I'll see if I can figure it out... > : > :Ken > :-- > :Kenneth Merry > > Wow, I didn't actually expect my config would make things work > differenty on your box. I'm very interested in whatever you > turn up. The answer is...the USB code. [ Nick and Joe CCed ] If I comment out the following lines in my standard config for this machine, SMP works: # USB support device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface device usb # USB Bus (required) #device udbp # USB Double Bulk Pipe devices device ugen # Generic device uhid # "Human Interface Devices" device ukbd # Keyboard device ulpt # Printer device umass # Disks/Mass storage - Requires scbus and da device ums # Mouse device urio # Diamond Rio 500 MP3 player device uscanner # Scanners # USB Ethernet, requires mii device aue # ADMtek USB ethernet device cue # CATC USB ethernet device kue # Kawasaki LSI USB ethernet The USB module is still loaded when usbd cranks up, but it doesn't hang the machine when it is loaded as a module. I've tried two kernels, with the only difference being whether the usb code (as listed above) is enabled or not. The kernel with the USB stuff hangs. I've attached dmesg output from the working boot. Ken -- Kenneth Merry ken@kdm.org --uAKRQypu60I7Lcqm Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="dmesg.gondolin.nousb" Copyright (c) 1992-2002 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.0-CURRENT #4: Mon Feb 25 22:23:37 MST 2002 ken@gondolin.kdm.org:/usr/home/ken/perforce/FreeBSD-ken/src/sys/i386/compile/gondolin Preloaded elf kernel "/boot/kernel.gondolin.smp/kernel" at 0xc04c7000. Preloaded elf module "/boot/kernel.gondolin.smp/acpi.ko" at 0xc04c70b8. Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III/Pentium III Xeon/Celeron (1266.07-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x6b1 Stepping = 1 Features=0x383fbff real memory = 2684289024 (2621376K bytes) avail memory = 2609504256 (2548344K bytes) Programming 16 pins in IOAPIC #0 IOAPIC #0 intpin 2 -> irq 0 Programming 16 pins in IOAPIC #1 FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfee00000 cpu1 (AP): apic id: 1, version: 0x00040011, at 0xfee00000 io0 (APIC): apic id: 4, version: 0x000f0011, at 0xfec00000 io1 (APIC): apic id: 5, version: 0x000f0011, at 0xfec01000 Pentium Pro MTRR support enabled Using $PIR table, 10 entries at 0xc00f52e0 ACPI-0204: *** Error: AcpiLoadTables: Could not load namespace: AE_NOT_FOUND ACPI-0213: *** Error: AcpiLoadTables: Could not load tables: AE_NOT_FOUND ACPI: table load failed: AE_NOT_FOUND npx0: on motherboard npx0: INT 16 interface pcib0: at pcibus 0 on motherboard IOAPIC #1 intpin 10 -> irq 2 IOAPIC #1 intpin 11 -> irq 5 IOAPIC #1 intpin 15 -> irq 9 pci0: on pcib0 pcib1: at device 0.1 on pci0 IOAPIC #1 intpin 14 -> irq 11 pci1: on pcib1 pci1: at device 0.0 (no driver attached) ahc0: port 0xd000-0xd0ff mem 0xfeafc000-0xfeafcfff irq 2 at device 5.0 on pci0 aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/255 SCBs ahc1: port 0xd800-0xd8ff mem 0xfeaff000-0xfeafffff irq 5 at device 5.1 on pci0 aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/255 SCBs fxp0: port 0xd400-0xd43f mem 0xfe900000-0xfe9fffff,0xfeafd000-0xfeafdfff irq 9 at device 6.0 on pci0 fxp0: Ethernet address 00:30:48:21:bb:74 inphy0: on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto isab0: port 0x580-0x58f at device 15.0 on pci0 isa0: on isab0 atapci0: port 0xffa0-0xffaf at device 15.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 pci0: at device 15.2 (no driver attached) pcib2: at pcibus 2 on motherboard IOAPIC #1 intpin 8 -> irq 16 pci2: on pcib2 ti0: mem 0xfebfc000-0xfebfffff irq 16 at device 2.0 on pci2 ti0: Ethernet address: 00:02:e3:00:34:10 ata: ata0 already exists; skipping it ata: ata1 already exists; skipping it sc: sc0 already exists; skipping it vga: vga0 already exists; skipping it orm0: