From owner-freebsd-current@FreeBSD.ORG Fri May 26 20:46:19 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1C30816B9AE for ; Fri, 26 May 2006 20:46:19 +0000 (UTC) (envelope-from gallatin@cs.duke.edu) Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id B224C43D46 for ; Fri, 26 May 2006 20:46:17 +0000 (GMT) (envelope-from gallatin@cs.duke.edu) Received: from grasshopper.cs.duke.edu (grasshopper.cs.duke.edu [152.3.145.30]) by duke.cs.duke.edu (8.13.6/8.13.6) with ESMTP id k4QKk0WJ004647 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Fri, 26 May 2006 16:46:00 -0400 (EDT) Received: (from gallatin@localhost) by grasshopper.cs.duke.edu (8.12.9p2/8.12.9/Submit) id k4QKjsC9059312; Fri, 26 May 2006 16:45:54 -0400 (EDT) (envelope-from gallatin) From: Andrew Gallatin MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <17527.26882.835189.53889@grasshopper.cs.duke.edu> Date: Fri, 26 May 2006 16:45:54 -0400 (EDT) To: Alexander Leidinger In-Reply-To: <20060526133017.224cff08@Magellan.Leidinger.net> References: <20060524180802.GA59176@central.0xfce3.net> <200605250517.12054.max@love2party.net> <20060525104000.GA4962@central.0xfce3.net> <20060525115447.GB724@turion.vk2pj.dyndns.org> <17525.55617.272397.806798@grasshopper.cs.duke.edu> <20060526133017.224cff08@Magellan.Leidinger.net> X-Mailer: VM 6.75 under 21.1 (patch 12) "Channel Islands" XEmacs Lucid Cc: Max Laier , Peter Jeremy , freebsd-current@freebsd.org, Andrew Gallatin , Gordon Bergling Subject: Re: Take 2: new IP Checksum Code from DragonFlyBSD X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 May 2006 20:46:25 -0000 Alexander Leidinger writes: > Quoting Andrew Gallatin (Thu, 25 May 2006 12:20:17 -0400 (EDT)): > > > If we're going to do anything, I'd prefer to see us skip > > the checksum on everything sent across lo0 and stick with > > the slower, yet known to work, existing checksum code for > > slow interfaces. > > The current code is known to work with the current gcc we use. It is > known to *not* work with the Intel C compiler. It may or may not work > with an upcomming gcc version. > > The current code is a maze of assembly and macros, the new one is > straight forward C and a little bit of assembly. And the new one is > also known to work in DragonFlyBSD. Do you expect *this* code to act > differently between FreeBSD and DragonFlyBSD? If it is is really known to work and it is higher quality, then it is fine with me. The original poster presented the new code as a performance enhancement over the old. My position is simply that that the performance of the software checksumming code is irrelevant, as it should never be used in a situation where performace is important. All 1Gb and 10Gb nics do hardware checksum offload, and we should not be checksumming local traffic. Drew