From owner-freebsd-bugs@FreeBSD.ORG Sat Jun 16 17:50:03 2007 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 [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2947016A46C for ; Sat, 16 Jun 2007 17:50:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 09F2913C4B8 for ; Sat, 16 Jun 2007 17:50:03 +0000 (UTC) (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 l5GHo29o096697 for ; Sat, 16 Jun 2007 17:50:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l5GHo2CH096696; Sat, 16 Jun 2007 17:50:02 GMT (envelope-from gnats) Resent-Date: Sat, 16 Jun 2007 17:50:02 GMT Resent-Message-Id: <200706161750.l5GHo2CH096696@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, Stas Kysel Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2D7E416A400 for ; Sat, 16 Jun 2007 17:43:52 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [69.147.83.33]) by mx1.freebsd.org (Postfix) with ESMTP id 1DE3113C458 for ; Sat, 16 Jun 2007 17:43:52 +0000 (UTC) (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 l5GHhpFH026551 for ; Sat, 16 Jun 2007 17:43:51 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.13.1/8.13.1/Submit) id l5GHhpA6026550; Sat, 16 Jun 2007 17:43:51 GMT (envelope-from nobody) Message-Id: <200706161743.l5GHhpA6026550@www.freebsd.org> Date: Sat, 16 Jun 2007 17:43:51 GMT From: Stas Kysel To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.0 Cc: Subject: kern/113766: bad ip checksum when using re driver 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: Sat, 16 Jun 2007 17:50:03 -0000 >Number: 113766 >Category: kern >Synopsis: bad ip checksum when using re driver >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Jun 16 17:50:02 GMT 2007 >Closed-Date: >Last-Modified: >Originator: Stas Kysel >Release: 6.2-RELEASE >Organization: >Environment: FreeBSD xxxxx.xxxxx.xxxx.xx 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 11:05:30 UTC 2007 root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP i386 >Description: Hi. The problem is similar to PR 63982 (the same bug in "em" driver). "re" driver is using and advertizing hardware checksum capability, but NIC fails to calculate checksums, or at least to calculate them correctly, for some packets. Relevant piece of dmesg output: re0: port 0xa800-0xa8ff mem 0xff5ff0 00-0xff5fffff irq 17 at device 0.0 on pci2 miibus0: on re0 rgephy0: on miibus0 rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX -FDX, auto re0: Ethernet address: 00:18:f3:07:9e:e6 re0: [FAST] Workaround: ifconfig rl0 -txcsum >How-To-Repeat: To reproduce: 1. Use RealTek 8168B/8111B PCIe Gigabit Ethernet card on computer #1, any card on computer #2 (eg Realtek 8139). 2. Select TCP port on computer #1, eg port 333, and make sure that nothing is listening on it. 3. run tcpdump on computer #2, eg: tcpdump -i rl0 -n -s 1600 -v port 333 4. From computer #2 try to connect to closed port on computer #1, eg using telnet: telnet computer1 333 5. In tcpdump output on computer #2 you will see that TCP RST packet has bad ip checksum. >Fix: Workaround: ifconfig re0 -txcsum >Release-Note: >Audit-Trail: >Unformatted: