From owner-cvs-all@FreeBSD.ORG Sun Jun 3 07:47:40 2007 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B714516A421; Sun, 3 Jun 2007 07:47:40 +0000 (UTC) (envelope-from yongari@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id A8DDB13C455; Sun, 3 Jun 2007 07:47:40 +0000 (UTC) (envelope-from yongari@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.8/8.13.8) with ESMTP id l537le8n035130; Sun, 3 Jun 2007 07:47:40 GMT (envelope-from yongari@repoman.freebsd.org) Received: (from yongari@localhost) by repoman.freebsd.org (8.13.8/8.13.8/Submit) id l537leHu035129; Sun, 3 Jun 2007 07:47:40 GMT (envelope-from yongari) Message-Id: <200706030747.l537leHu035129@repoman.freebsd.org> From: Pyun YongHyeon Date: Sun, 3 Jun 2007 07:47:40 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: RELENG_6 Cc: Subject: cvs commit: src/sys/dev/re if_re.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Jun 2007 07:47:40 -0000 yongari 2007-06-03 07:47:40 UTC FreeBSD src repository Modified files: (Branch: RELENG_6) sys/dev/re if_re.c Log: MFC if_re.c, 1.84 to RELENG_6 The TCP checksum offload handling in the 8111B/8168B and 8101E PCIe can apparently be confused by short TCP segments that have been manually padded to the minimum ethernet frame size. The driver does short frame padding in software as a workaround for a bug in the 8169 PCI devices that causes short IP fragments to be corrupted due to an apparent conflict between the hardware autopadding and hardware IP checksumming. To fix this, we avoid software padding for short TCP segments, since the hardware seems to autopad and checksum these correctly (even the older 8169 NICs get these right). Short UDP packets appear to be handled correctly in all cases. This should work around the IP header checksum bug in the 8169 while not tripping the TCP checksum bug in the 8111B/8168B and 8101E. PR: 112089 Revision Changes Path 1.46.2.29 +6 -1 src/sys/dev/re/if_re.c