From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anton Blanchard Subject: Re: e1000 performance hack for ppc64 (Power4) Date: Sat, 14 Jun 2003 08:38:41 +1000 Sender: netdev-bounce@oss.sgi.com Message-ID: <20030613223841.GB32097@krispykreme> References: <1055521263.3531.2055.camel@nighthawk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Herman Dierks , "Feldman, Scott" , David Gibson , Linux Kernel Mailing List , Nancy J Milliner , Ricardo C Gonzalez , Brian Twichell , netdev@oss.sgi.com Return-path: To: Dave Hansen Content-Disposition: inline In-Reply-To: <1055521263.3531.2055.camel@nighthawk> Errors-to: netdev-bounce@oss.sgi.com List-Id: netdev.vger.kernel.org > Wouldn't you get most of the benefit from copying that stuff around in > the driver if you allocated the skb->data aligned in the first place? Nice try, but my understanding is that on the transmit path we reserve the maximum sized TCP header, copy the data in then form our TCP header backwards from that point. Since the TCP header size changes with various options, its not an easy task. One thing I thought of doing was to cache the current TCP header size and align the next packet based on it, with an extra cacheline at the start for it to spill into if the TCP header grew. This is only worth it if most packets will have the same sized header. Networking guys: is this a valid assumption? Anton