From owner-freebsd-i386@FreeBSD.ORG Thu Apr 22 12:50:26 2004 Return-Path: Delivered-To: freebsd-i386@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0B0DA16A4CE for ; Thu, 22 Apr 2004 12:50:26 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id E343343D4C for ; Thu, 22 Apr 2004 12:50:25 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) i3MJoPbv077224 for ; Thu, 22 Apr 2004 12:50:25 -0700 (PDT) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.10/8.12.10/Submit) id i3MJoPJC077223; Thu, 22 Apr 2004 12:50:25 -0700 (PDT) (envelope-from gnats) Resent-Date: Thu, 22 Apr 2004 12:50:25 -0700 (PDT) Resent-Message-Id: <200404221950.i3MJoPJC077223@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-i386@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, "Sean O'Connell" Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 96D7316A4CE for ; Thu, 22 Apr 2004 12:42:50 -0700 (PDT) Received: from www.freebsd.org (www.freebsd.org [216.136.204.117]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7AC8043D31 for ; Thu, 22 Apr 2004 12:42:50 -0700 (PDT) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.12.10/8.12.10) with ESMTP id i3MJgo72030741 for ; Thu, 22 Apr 2004 12:42:50 -0700 (PDT) (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.12.10/8.12.10/Submit) id i3MJgovc030740; Thu, 22 Apr 2004 12:42:50 -0700 (PDT) (envelope-from nobody) Message-Id: <200404221942.i3MJgovc030740@www.freebsd.org> Date: Thu, 22 Apr 2004 12:42:50 -0700 (PDT) From: "Sean O'Connell" To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-2.3 Subject: i386/65896: 5.2-RELEASE re(4) driver, kernel panic on boot when NIC connected to a 100Mbps port X-BeenThere: freebsd-i386@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: I386-specific issues for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Apr 2004 19:50:26 -0000 >Number: 65896 >Category: i386 >Synopsis: 5.2-RELEASE re(4) driver, kernel panic on boot when NIC connected to a 100Mbps port >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-i386 >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Apr 22 12:50:25 PDT 2004 >Closed-Date: >Last-Modified: >Originator: Sean O'Connell >Release: 5.2-RELEASE >Organization: Venturi Partners >Environment: FreeBSD testbox.venturipartners.com 5.2-RELEASE FreeBSD 5.2-RELEASE #0: Thu Apr 15 19:14:42 GMT root@testbox.venturipartners.com:/usr/obj/usr/src/sys/VENTURI i386 >Description: When the re(4) driver loads during boot and attempts to initialize a RealTek 8139-based NIC connected to a 100Mbps-only hub or switch port, or a 10/100 autosensing port that has been manually set to 100 (full or half duplex), the kernel panics with the following: re1: port 0xe000-0xe0ff mem 0xe1107000-0xe11070ff irq 10 at device 10.0 on pci0 re1: Ethernet address: 00:0a:9d:04:01:3d miibus2: on re1 rlphy1: on miibus2 rlphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto re1: diagnostic failed, failed to receive packet in loopback mode re1: attach aborted due to hardware diag failure Fatal trap 12: page fault while in kernel mode fault virtual address = 0x98 fault code = supervisor write, page not present instruction pointer = 0x8: 0xc04afad5 stack pointer = 0x10: 0xc0821a50 frame pointer = 0x10: 0xc0821a60 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def 32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL=0 current process = 0 (swapper) trap number = 12 panic: page fault uptime: 1s If connected to a 10Mbps port (full or half duplex) or an autosensing port configured for Auto, the driver loads normally and the system completes boot. If the NIC is disconnected from the hub or switch during boot, and then reconnected once the system has loaded, the interface will operate normally. If re(4) is not compiled into the kernel, and is loaded as a module with kldload once the system has booted up, the driver will load normally. If the driver is loaded as a module DURING boot (if_re_load="YES" in loader.conf), a kernel panic occurs. This condition consistently recurred during testing with multiple RealTek 8139-based NICs connected to various networking hardware (a selection of about ten different hubs and switches from Cisco, 3Com, and NetGear). >How-To-Repeat: Take an i386 computer with a RealTek 8139-based NIC and connect the NIC in turn to the listed hub/switch port configurations, while the system boots. The following results will be observed: Not connected: OK 10baseT Half Duplex: OK 10baseT Full Duplex: OK 100baseT Half Duplex: PANIC 100baseTX Full Duplex: PANIC Auto-sensing: OK >Fix: None. Workaround is to boot the system with the NIC unplugged. >Release-Note: >Audit-Trail: >Unformatted: