Received: with ECARTIS (v1.0.0; list netdev); Fri, 13 Jun 2003 15:39:24 -0700 (PDT) Received: from lists.samba.org (dp.samba.org [66.70.73.150]) by oss.sgi.com (8.12.9/8.12.9) with SMTP id h5DMdA2x018754 for ; Fri, 13 Jun 2003 15:39:11 -0700 Received: by lists.samba.org (Postfix, from userid 504) id CD7FE2C10D; Fri, 13 Jun 2003 22:39:09 +0000 (GMT) Date: Sat, 14 Jun 2003 08:38:41 +1000 From: Anton Blanchard To: Dave Hansen Cc: Herman Dierks , "Feldman, Scott" , David Gibson , Linux Kernel Mailing List , Nancy J Milliner , Ricardo C Gonzalez , Brian Twichell , netdev@oss.sgi.com Subject: Re: e1000 performance hack for ppc64 (Power4) Message-ID: <20030613223841.GB32097@krispykreme> References: <1055521263.3531.2055.camel@nighthawk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1055521263.3531.2055.camel@nighthawk> User-Agent: Mutt/1.5.4i X-archive-position: 3217 X-ecartis-version: Ecartis v1.0.0 Sender: netdev-bounce@oss.sgi.com Errors-to: netdev-bounce@oss.sgi.com X-original-sender: anton@samba.org Precedence: bulk X-list: netdev > 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