From owner-cvs-src@FreeBSD.ORG Thu Jan 25 17:30:31 2007 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 12F8116A404; Thu, 25 Jan 2007 17:30:31 +0000 (UTC) (envelope-from wpaul@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 0476F13C45E; Thu, 25 Jan 2007 17:30:31 +0000 (UTC) (envelope-from wpaul@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l0PHUUEQ088548; Thu, 25 Jan 2007 17:30:30 GMT (envelope-from wpaul@repoman.freebsd.org) Received: (from wpaul@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l0PHUUf7088546; Thu, 25 Jan 2007 17:30:30 GMT (envelope-from wpaul) Message-Id: <200701251730.l0PHUUf7088546@repoman.freebsd.org> From: Bill Paul Date: Thu, 25 Jan 2007 17:30:30 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/dev/re if_re.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Jan 2007 17:30:31 -0000 wpaul 2007-01-25 17:30:30 UTC FreeBSD src repository Modified files: sys/dev/re if_re.c Log: 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. Revision Changes Path 1.84 +6 -1 src/sys/dev/re/if_re.c