Date: Thu, 17 Jan 2002 12:37:20 +0100 (CET) From: Ruben van Staveren <ruben@verweg.com> To: FreeBSD-gnats-submit@freebsd.org Subject: i386/33986: SMP and audio causes hard lockups (random) Message-ID: <200201171137.g0HBbK708374@helium-vw.xs4all.nl>
next in thread | raw e-mail | index | archive | help
>Number: 33986 >Category: i386 >Synopsis: SMP and audio causes hard lockups (random) >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Jan 17 03:40:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Ruben van Staveren >Release: FreeBSD 4.5-RC i386 >Organization: Verweg dot Com >Environment: System: FreeBSD helium.verweg.com 4.5-RC FreeBSD 4.5-RC #1: Sat Jan 12 14:08:38 CET 2002 root@helium.verweg.com:/usr/obj/usr/cvsup/4.0-stable/src/sys/GENERIC-SMP i386 Motherboard is a ASUS P2B-DS, Bios rev. 1012B 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 4.5-RC #1: Sat Jan 12 14:08:38 CET 2002 root@helium.verweg.com:/usr/obj/usr/cvsup/4.0-stable/src/sys/GENERIC-SMP Timecounter "i8254" frequency 1193182 Hz CPU: Pentium II/Pentium II Xeon/Celeron (400.91-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x652 Stepping = 2 Features=0x183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR> real memory = 268423168 (262132K bytes) avail memory = 257302528 (251272K bytes) Programming 24 pins in IOAPIC #0 IOAPIC #0 intpin 2 -> irq 0 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 Preloaded elf kernel "kernel" at 0xc0398000. Pentium Pro MTRR support enabled md0: Malloc disk Using $PIR table, 7 entries at 0xc00f0d20 apm0: <APM BIOS> on motherboard apm: found APM BIOS v1.2, connected at v1.2 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Intel 82443BX (440 BX) host to PCI bridge> on motherboard IOAPIC #0 intpin 19 -> irq 2 IOAPIC #0 intpin 18 -> irq 9 IOAPIC #0 intpin 17 -> irq 11 pci0: <PCI bus> on pcib0 pcib1: <Intel 82443BX (440 BX) PCI-PCI (AGP) bridge> at device 1.0 on pci0 IOAPIC #0 intpin 16 -> irq 13 pci1: <PCI bus> on pcib1 pci1: <VGA-compatible display device> at 0.0 irq 13 isab0: <Intel 82371AB PCI to ISA bridge> at device 4.0 on pci0 isa0: <ISA bus> on isab0 pci0: <Intel PIIX4 ATA controller> at 4.1 uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0xd400-0xd41f irq 2 at device 4.2 on pci0 usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered Timecounter "PIIX" frequency 3579545 Hz chip1: <Intel 82371AB Power management controller> port 0xe800-0xe80f at device 4.3 on pci0 ahc0: <Adaptec aic7890/91 Ultra2 SCSI adapter> port 0xd000-0xd0ff mem 0xe0800000-0xe0800fff irq 2 at device 6.0 on pci0 aic7890/91: Ultra2 Wide Channel A, SCSI Id=7, 32/255 SCBs fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0xb800-0xb81f mem 0xe0000000-0xe00fffff,0xe3000000-0xe3000fff irq 2 at device 9.0 on pci0 fxp0: Ethernet address 00:90:27:35:f5:2f inphy0: <i82555 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto fxp1: <Intel Pro 10/100B/100+ Ethernet> port 0xb400-0xb43f mem 0xdf000000-0xdf0fffff,0xdf800000-0xdf800fff irq 9 at device 10.0 on pci0 fxp1: Ethernet address 00:90:27:90:19:ba inphy1: <i82555 10/100 media interface> on miibus1 inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: <unknown card> (vendor=0x1274, dev=0x5000) at 11.0 irq 11 orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xc8fff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model MouseMan+, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/9 bytes threshold ppi0: <Parallel I/O> on ppbus0 plip0: <PLIP network interface> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port APIC_IO: Testing 8254 interrupt delivery APIC_IO: routing 8254 via IOAPIC #0 intpin 2 DUMMYNET initialized (011031) IPv6 packet filtering initialized, logging disabled IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to deny, logging disabled Waiting 5 seconds for SCSI devices to settle SMP: AP CPU #1 Launched! Mounting root from ufs:/dev/da0s1a da0 at ahc0 bus 0 target 6 lun 0 da0: <IBM DDRS-39130D DC1B> Fixed Direct Access SCSI-2 device da0: 80.000MB/s transfers (40.000MHz, offset 15, 16bit), Tagged Queueing Enabled da0: 8715MB (17850000 512 byte sectors: 255H 63S/T 1111C) # # GENERIC -- Generic kernel configuration file for FreeBSD/i386 # # For more information on this file, please read the handbook section on # Kernel Configuration Files: # # http://www.FreeBSD.org/handbook/kernelconfig-config.html # # The handbook is also available locally in /usr/share/doc/handbook # if you've installed the doc distribution, otherwise always see the # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the # latest information. # # An exhaustive list of options and more detailed explanations of the # device lines is also present in the ./LINT configuration file. If you are # in doubt as to the purpose or necessity of a line, check first in LINT. # # $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246.2.37 2001/12/19 18:34:45 iedowse Exp $ machine i386 cpu I586_CPU cpu I686_CPU ident GENERIC-SMP maxusers 0 #makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options INET6 #IPv6 communications protocols options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options SOFTUPDATES #Enable FFS soft updates support options UFS_DIRHASH #Improve performance on big directories options MFS #Memory Filesystem options MD_ROOT #MD is a potential root device options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, NFS required options MSDOSFS #MSDOS Filesystem options CD9660 #ISO 9660 Filesystem options CD9660_ROOT #CD-ROM usable as root, CD9660 required options PROCFS #Process filesystem options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI options UCONSOLE #Allow users to grab the console options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options P1003_1B #Posix P1003_1B real-time extensions options _KPOSIX_PRIORITY_SCHEDULING options ICMP_BANDLIM #Rate limit bad replies options KBD_INSTALL_CDEV # install a CDEV entry in /dev # To make an SMP kernel, the next two are needed options SMP # Symmetric MultiProcessor Kernel options APIC_IO # Symmetric (APIC) I/O device isa device eisa device pci # Floppy drives device fdc0 at isa? port IO_FD1 irq 6 drq 2 device fd0 at fdc0 drive 0 device fd1 at fdc0 drive 1 # # If you have a Toshiba Libretto with its Y-E Data PCMCIA floppy, # don't use the above line for fdc0 but the following one: #device fdc0 device ahc # AHA2940 and onboard AIC7xxx devices # SCSI peripherals device scbus # SCSI bus (required) device da # Direct Access (disks) device sa # Sequential Access (tape etc) device cd # CD device pass # Passthrough device (direct SCSI access) # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc0 at isa? port IO_KBD device atkbd0 at atkbdc? irq 1 flags 0x1 device psm0 at atkbdc? irq 12 device vga0 at isa? # splash screen/screen saver pseudo-device splash # syscons is the default console driver, resembling an SCO console device sc0 at isa? flags 0x100 # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver #device vt0 at isa? #options XSERVER # support for X server on a vt console #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 # Floating point support - do not disable. device npx0 at nexus? port IO_NPX irq 13 # Power management support (see LINT for more options) # device apm0 at nexus? disable flags 0x20 # Advanced Power Management device apm0 # Serial (COM) ports device sio0 at isa? port IO_COM1 flags 0x10 irq 4 device sio1 at isa? port IO_COM2 irq 3 device sio2 at isa? disable port IO_COM3 irq 5 device sio3 at isa? disable port IO_COM4 irq 9 # Parallel port device ppc0 at isa? irq 7 device ppbus # Parallel port bus (required) device lpt # Printer device plip # TCP/IP over parallel device ppi # Parallel port interface device #device vpo # Requires scbus and da # PCI Ethernet NICs that use the common MII bus controller code. # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! device miibus # MII bus support device fxp # Intel EtherExpress PRO/100B (82557, 82558) # Pseudo devices - the number indicates how many units to allocate. pseudo-device loop # Network loopback pseudo-device ether # Ethernet support pseudo-device sl 1 # Kernel SLIP pseudo-device ppp 1 # Kernel PPP pseudo-device tun # Packet tunnel. pseudo-device pty # Pseudo-ttys (telnet etc) pseudo-device md # Memory "disks" pseudo-device gif # IPv6 and IPv4 tunneling pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation) # The `bpf' pseudo-device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! pseudo-device bpf #Berkeley packet filter # USB support device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface device usb # USB Bus (required) 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 uscanner # Scanners device urio # Diamond Rio MP3 Player # USB Ethernet, requires mii device aue # ADMtek USB ethernet device cue # CATC USB ethernet device kue # Kawasaki LSI USB ethernet options IPFIREWALL #firewall options IPFIREWALL_FORWARD #enable transparent proxy support options IPV6FIREWALL #firewall for IPv6 options IPDIVERT #divert sockets options IPSTEALTH #support for stealth forwarding options DUMMYNET options USER_LDT #allow user-level control of i386 ldt # Disk quotas are supported when this option is enabled. options QUOTA #enable disk quotas =============================================================================== MPTable, version 2.0.15 looking for EBDA pointer @ 0x040e, found, searching EBDA @ 0x0009f800 searching CMOS 'top of mem' @ 0x0009f400 (637K) searching default 'top of mem' @ 0x0009fc00 (639K) searching BIOS @ 0x000f0000 MP FPS found in BIOS @ physical addr: 0x000f6ed0 ------------------------------------------------------------------------------- MP Floating Pointer Structure: location: BIOS physical address: 0x000f6ed0 signature: '_MP_' length: 16 bytes version: 1.4 checksum: 0x59 mode: Virtual Wire ------------------------------------------------------------------------------- MP Config Table Header: physical address: 0x000f6ace signature: 'PCMP' base table length: 268 version: 1.4 checksum: 0x41 OEM ID: 'OEM00000' Product ID: 'PROD00000000' OEM table pointer: 0x00000000 OEM table size: 0 entry count: 25 local APIC address: 0xfee00000 extended table length: 124 extended table checksum: 192 ------------------------------------------------------------------------------- MP Config Base Table Entries: -- Processors: APIC ID Version State Family Model Step Flags 1 0x11 BSP, usable 6 5 2 0x183fbff 0 0x11 AP, usable 6 5 2 0x183fbff -- Bus: Bus ID Type 0 PCI 1 PCI 2 ISA -- I/O APICs: APIC ID Version State Address 2 0x11 usable 0xfec00000 -- I/O Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# ExtINT conforms conforms 2 0 2 0 INT conforms conforms 2 1 2 1 INT conforms conforms 2 0 2 2 INT conforms conforms 2 3 2 3 INT conforms conforms 2 4 2 4 INT conforms conforms 2 5 2 5 INT conforms conforms 2 6 2 6 INT conforms conforms 2 7 2 7 INT conforms conforms 2 8 2 8 INT conforms conforms 2 10 2 10 INT conforms conforms 2 12 2 12 INT active-lo level 1 0:A 2 16 INT active-lo level 0 4:D 2 19 INT active-lo level 0 6:A 2 19 INT active-lo level 0 9:A 2 19 INT active-lo level 0 10:A 2 18 INT active-lo level 0 11:A 2 17 -- Local Ints: Type Polarity Trigger Bus ID IRQ APIC ID PIN# ExtINT active-hi edge 2 0 255 0 NMI active-hi edge 2 0 255 1 ------------------------------------------------------------------------------- MP Config Extended Table Entries: -- System Address Space bus ID: 0 address type: I/O address address base: 0x0 address range: 0x10000 -- System Address Space bus ID: 0 address type: memory address address base: 0x10000000 address range: 0xd2e00000 -- System Address Space bus ID: 0 address type: prefetch address address base: 0xe2e00000 address range: 0x5200000 -- System Address Space bus ID: 0 address type: memory address address base: 0xe8000000 address range: 0x18000000 -- System Address Space bus ID: 0 address type: memory address address base: 0xa0000 address range: 0x20000 -- Bus Heirarchy bus ID: 2 bus info: 0x01 parent bus ID: 0 -- Compatibility Bus Address bus ID: 0 address modifier: add predefined range: 0x00000000 -- Compatibility Bus Address bus ID: 0 address modifier: add predefined range: 0x00000001 =============================================================================== /boot/loader.conf #snd_es137x_load="YES" # es1370/es1371/es1373/ct5880 pci >Description: Message-ID: <20020116092057.GA11305@erg.verweg.com> References: <20020104101054.A26506@mikea.ath.cx> <20020104160606.F46320-100000@galatea.internal.lustygrapes.net> On Mon, Jan 07, 2002 at 07:55:14PM +0100, Ruben van Staveren wrote: > These hangs seem very similar to what I am experiencing and wrote earlier > about in message id's <20011115205310.A13588@erg.verweg.com> and > <20011226235825.A9317@erg.verweg.com> > > I've recompiled almost everything on my system that possibly could interact > with kernel internals. I set my bios to MPS 1.4 specification (I still wonder > what it does, has something to do with interrupt assignment ?) but still > these lockups while running a SMP kernel. Uniprocessor is just fine. > > For the moment I have unloaded my audio device drivers from loader.conf > (FYI, it is an AudioPCI ES1370 card (SB 128 PCI)) System is running just fine ever since, putting back in the audio support makes it unstable again. Lockups show up in a couple of minutes or after several hours and always when running a X session. >How-To-Repeat: Load audiodrivers, run GENERIC-SMP kernel on a ASUS P2B-DS start a xsession with either a windowmaker or gnome desktop and your lockup will show up sooner or later. Not necessarely when playing audio, and load does not seem to be a factor too. System lockups hard and good. No break to serial debugger possible. Sometimes the system may unlock to lockup again after a few minutes Trying to hog the system with either mplayer or xmms may speed things up It was also mentioned by other people that running a dnetc client made the system unstable, but my case seems to be the audio <-> SMP interaction. The hard lockups where introduced sometime after 4.3-RELEASE, and it worked with no instability issues before. >Fix: I haven't the faintest idea, but a good starting point would be scrutinizing the changelogs/changes of the SMP and (new)pcm subsystems. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200201171137.g0HBbK708374>