From owner-freebsd-current@FreeBSD.ORG Thu Sep 9 20:02:39 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 467FC16A4CE; Thu, 9 Sep 2004 20:02:39 +0000 (GMT) Received: from avscan2.sentex.ca (avscan2.sentex.ca [199.212.134.19]) by mx1.FreeBSD.org (Postfix) with ESMTP id D319B43D4C; Thu, 9 Sep 2004 20:02:38 +0000 (GMT) (envelope-from mike@sentex.net) Received: from localhost (localhost.sentex.ca [127.0.0.1]) by avscan2.sentex.ca (8.12.11/8.12.11) with ESMTP id i89K2cfR050814; Thu, 9 Sep 2004 16:02:38 -0400 (EDT) (envelope-from mike@sentex.net) Received: from avscan2.sentex.ca ([127.0.0.1]) by localhost (avscan2.sentex.ca [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 50609-03; Thu, 9 Sep 2004 16:02:38 -0400 (EDT) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by avscan2.sentex.ca (8.12.11/8.12.11) with ESMTP id i89K2ciH050776; Thu, 9 Sep 2004 16:02:38 -0400 (EDT) (envelope-from mike@sentex.net) Received: from simian.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.12.11/8.12.11) with ESMTP id i89K2TIB001886; Thu, 9 Sep 2004 16:02:30 -0400 (EDT) (envelope-from mike@sentex.net) Message-Id: <6.1.2.0.0.20040909154407.08b1a9f8@64.7.153.2> X-Sender: mdtpop@64.7.153.2 (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 6.1.2.0 Date: Thu, 09 Sep 2004 16:07:29 -0400 To: John Baldwin , freebsd-current@FreeBSD.org From: Mike Tancsa In-Reply-To: <200409091322.19501.jhb@FreeBSD.org> References: <6.1.2.0.0.20040908152736.07440148@64.7.153.2> <200409091322.19501.jhb@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-Virus-Scanned: by amavisd-new X-Virus-Scanned: by amavisd-new at avscan2b Subject: Re: SIO Interrupt storms and unhandled interrupts X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Sep 2004 20:02:39 -0000 At 01:22 PM 09/09/2004, John Baldwin wrote: > > > > My question is this-- Is the root cause the same issue on RELENG_4 and > > RELENG_5 ? Are we going about it the best way to fix the problem ? Or is > > the underlying problem something else ? > > > > Attached is a dmesg and acpidump > >You can do a similar hack to puc/sio in 5.x, but you also need to remove the >'INTR_FAST' flag to bus_setup_intr() for it to work. Hi, Thanks for the response! We found a different solution / approach which seems to work on both RELENG_4 and RELENG_5. The problem is that the modem is not being seen as a PCI / PUC device and instead is being seen as an ISA SIO device ?? The following RELENG_5 and RELENG_4 patches seem to fix the problem. I wonder if the other modems listed in sio.c suffer the same fate ? Also fixed in this are those "cant re-use leafs" at bootup time. The modem is seen as a PUC device now.... At the bottom is a diff between the boot -v (Patches are done by keith@sentex.ca) --- orig/sio_pci.c Thu Sep 9 15:44:19 2004 +++ sio_pci.c Thu Sep 9 14:51:16 2004 @@ -76,7 +76,9 @@ { 0x048011c1, "Lucent kermit based PCI Modem", 0x14 }, { 0x95211415, "Oxford Semiconductor PCI Dual Port Serial", 0x10 }, { 0x7101135e, "SeaLevel Ultra 530.PCI Single Port Serial", 0x18 }, - { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 }, +/* Removed 2004/09/09 - KDW + { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 }, +*/ { 0x0103115d, "Xircom Cardbus modem", 0x10 }, { 0x98459710, "Netmos Nm9845 PCI Bridge with Dual UART", 0x10 }, { 0x432214e4, "Broadcom 802.11g/GPRS CardBus (Serial)", 0x10 }, releng-5-pioneer# diff -u orig/pucdata.c pucdata.c --- orig/pucdata.c Thu Sep 9 15:45:33 2004 +++ pucdata.c Thu Sep 9 15:00:43 2004 @@ -818,6 +818,17 @@ }, }, +/* ADDED 2004/09/09 - KDW - { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 }, */ + /* "SmartLink 5634PCV SurfRider */ + { "SmartLink 5634PCV SurfRider", + { 0x151f, 0x0000, 0, 0 }, + { 0xffff, 0xffff, 0, 0 }, + { + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + }, + }, +/* END KDW */ + /* US Robotics (3Com) PCI Modems */ { "US Robotics (3Com) 3CP5609 PCI 16550 Modem", { 0x12b9, 0x1008, 0, 0 }, releng-5-pioneer# vmstat now sees that the PUC device shares the interrupt and all seems well! releng-5-pioneer# vmstat -i interrupt total rate irq0: clk 205278 99 irq1: atkbd0 2 0 irq4: sio0 188 0 irq6: fdc0 1 0 irq7: uhci2 1 0 irq8: rtc 262759 127 irq12: uhci1 puc0 1194 0 irq13: npx0 1 0 irq14: ata0 1724 0 irq15: vr0 ata1 4274 2 Total 475422 231 releng-5-pioneer# and on RELENG_4 # diff -u pucdata.c orig/pucdata.c --- /usr/src/sys/dev/puc/pucdata.c Thu Sep 9 14:18:56 2004 +++ /usr/src/sys/dev/puc/orig/pucdata.c Thu Sep 9 15:50:14 2004 @@ -803,16 +803,6 @@ { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, }, }, - -/* { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 }, */ - /* KDW/GE SurfRider */ - { "SmartLink 5634PCV SurfRider", - { 0x151f, 0x0000, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, - { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - }, - }, /* Actiontec 56K PCI Master */ { "Actiontec 56K PCI Master", --- /usr/src/sys/isa/orig/sio.c Thu Sep 9 15:51:47 2004 +++ /usr/src/sys/isa/sio.c Thu Sep 9 14:19:27 2004 @@ -602,7 +602,8 @@ { 0x048011c1, "Lucent kermit based PCI Modem", 0x14 }, { 0x95211415, "Oxford Semiconductor PCI Dual Port Serial", 0x10 }, { 0x7101135e, "SeaLevel Ultra 530.PCI Single Port Serial", 0x18 }, - { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 }, +/* next line removed 2004/09/08 by KDW */ +/* { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 }, */ { 0x98459710, "Netmos Nm9845 PCI Bridge with Dual UART", 0x10 }, { 0x00000000, NULL, 0 } }; And the boot -v diffs. Copyright (c) 1992-2004 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.3-BETA3 #1: Wed Sep 8 18:54:01 EDT 2004 - mdtancsa@releng-5-pioneer.sentex.ca:/usr/obj/usr/src/sys/pioneer +FreeBSD 5.3-BETA3 #2: Thu Sep 9 15:09:52 EDT 2004 + keith@releng-5-pioneer.sentex.ca:/usr/obj/usr/src/sys/pioneer Preloaded elf kernel "/boot/kernel/kernel" at 0xc082c000. Preloaded elf module "/boot/modules/acpi.ko" at 0xc082c1d8. -Calibrating clock(s) ... i8254 clock: 1193179 Hz +Calibrating clock(s) ... i8254 clock: 1193185 Hz CLK_USE_I8254_CALIBRATION not specified - using default frequency Timecounter "i8254" frequency 1193182 Hz quality 0 -Calibrating TSC clock ... TSC clock: 1002280114 Hz +Calibrating TSC clock ... TSC clock: 1002279822 Hz CPU: VIA C3 Nehemiah (1002.28-MHz 686-class CPU) Origin = "CentaurHauls" Id = 0x691 Stepping = 1 Features=0x380b035 @@ -330,18 +330,13 @@ vr1: bpf attached vr1: Ethernet address: 00:40:63:c9:fa:98 vr1: [MPSAFE] -sio0: Reserved 0x8 bytes for rid 0x10 type 4 at 0xe800 -sio0: irq maps: 0x1 0x1001 0x1 0x1 -sio0: port 0xe800-0xe807 irq 12 at device 20.0 on pci0 -sio0: moving to sio4 +puc0: port 0xe800-0xe807 irq 12 at device 20.0 on pci0 +puc0: Reserved 0x8 bytes for rid 0x10 type 4 at 0xe800 +sio4: on puc0 sio4: type 16550A +sio4: unable to activate interrupt in fast mode - using normal mode fdc0: port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0 sio0: irq maps: 0x1 0x11 0x1 0x1 -can't re-use a leaf (%desc)! -can't re-use a leaf (%driver)! -can't re-use a leaf (%location)! -can't re-use a leaf (%pnpinfo)! -can't re-use a leaf (%parent)! sio0 port 0x3f8-0x3ff irq 4 on acpi0 sio0: type 16550A, console sio1: irq maps: 0x1 0x9 0x1 0x1 @@ -431,7 +426,7 @@ isa_probe_children: probing PnP devices Device configuration finished. procfs registered -Timecounter "TSC" frequency 1002280114 Hz quality 800 +Timecounter "TSC" frequency 1002279822 Hz quality 800 Timecounters tick every 10.000 msec ipfw2 initialized, divert disabled, rule-based forwarding disabled, default to accept, logging limited to 2100 packets/entry by default lo0: bpf attached ---Mike