From owner-freebsd-bugs@FreeBSD.ORG Wed Feb 1 10:40:03 2006 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AD08C16A420 for ; Wed, 1 Feb 2006 10:40:03 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2AC1F43D45 for ; Wed, 1 Feb 2006 10:40:03 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k11Ae2sB070823 for ; Wed, 1 Feb 2006 10:40:03 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k11Ae2Gt070819; Wed, 1 Feb 2006 10:40:02 GMT (envelope-from gnats) Resent-Date: Wed, 1 Feb 2006 10:40:02 GMT Resent-Message-Id: <200602011040.k11Ae2Gt070819@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Dan Bilik Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7C06316A422 for ; Wed, 1 Feb 2006 10:30:47 +0000 (GMT) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [216.136.204.117]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF2B743D72 for ; Wed, 1 Feb 2006 10:30:39 +0000 (GMT) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.13.1/8.13.1) with ESMTP id k11AUdbE059495 for ; Wed, 1 Feb 2006 10:30:39 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.13.1/8.13.1/Submit) id k11AUcwS059493; Wed, 1 Feb 2006 10:30:39 GMT (envelope-from nobody) Message-Id: <200602011030.k11AUcwS059493@www.freebsd.org> Date: Wed, 1 Feb 2006 10:30:39 GMT From: Dan Bilik To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-2.3 Cc: Subject: kern/92675: [fxp] [patch] fxp(4) unable to recover from occasional receiver unit allocation failure X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Feb 2006 10:40:03 -0000 >Number: 92675 >Category: kern >Synopsis: [fxp] [patch] fxp(4) unable to recover from occasional receiver unit allocation failure >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Feb 01 10:40:02 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Dan Bilik >Release: FreeBSD 6.0-STABLE >Organization: >Environment: FreeBSD xxx.yyy.zz 6.0-STABLE FreeBSD 6.0-STABLE #0: Mon Jan 2 16:19:49 CET 2006 Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Pentium(R) III CPU family 1266MHz (1261.31-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x6b1 Stepping = 1 Features=0x383fbff real memory = 1073659904 (1023 MB) avail memory = 1043476480 (995 MB) MPTable: FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 3 cpu1 (AP): APIC ID: 0 ioapic0: Assuming intbase of 0 ioapic1: Assuming intbase of 16 ioapic1 irqs 16-31 on motherboard ioapic0 irqs 0-15 on motherboard fxp0: port 0x2200-0x223f mem 0xfeb7f000-0xfeb7ffff,0xfea00000-0xfeafffff irq 27 at device 2.0 on pci0 fxp0: Disabling dynamic standby mode in EEPROM fxp0: New EEPROM ID: 0x48a0 fxp0: EEPROM checksum @ 0x3f: 0xaef7 -> 0xaef7 miibus0: on fxp0 inphy0: on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto fxp0: Ethernet address: 00:02:55:c6:e8:67 >Description: Sometimes, mostly under heavy network load, receiver unit on the fxp(4) interface suffers an allocation failure and wedges. Affected machine then cannot receive any new packets, thus seems unreachable on the network. Turning off ACPI and/or using polling(4) on the interface doesn't solve the problem. >How-To-Repeat: Very hard to. From two identical boxes running the same tasks, one is wedging almost each day while the second one runs without a wedge for two weeks. I haven't figured out what exactly it depends on. >Fix: It can be unwedged by reinitializing the interface (for example by 'ifconfig promisc') or by generating software interrupt. I have small patch that does this each tick and it completely resolved occasional wedges on our boxes that were previously hanging almost each day. It's available at http://neosystem.cz/freebsd/releng_6.if_fxp.rx_alloc_bug.patch. >Release-Note: >Audit-Trail: >Unformatted: