netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Duyck <alexander.h.duyck@intel.com>
To: Ben Hutchings <bhutchings@solarflare.com>
Cc: Joseph Gasparakis <joseph.gasparakis@intel.com>,
	davem@davemloft.net, shemminger@vyatta.com, chrisw@sous-sol.org,
	gospo@redhat.com, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org, dmitry@broadcom.com,
	saeed.bishara@gmail.com,
	Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Subject: Re: [PATCH v3 1/4] net: Add support for hardware-offloaded encapsulation
Date: Fri, 07 Dec 2012 08:45:21 -0800	[thread overview]
Message-ID: <50C21D21.5040101@intel.com> (raw)
In-Reply-To: <1354874847.20838.49.camel@deadeye.wl.decadent.org.uk>

On 12/07/2012 02:07 AM, Ben Hutchings wrote:
> On Thu, 2012-12-06 at 17:56 -0800, Joseph Gasparakis wrote:
>> This patch adds support in the kernel for offloading in the NIC Tx and Rx
>> checksumming for encapsulated packets (such as VXLAN and IP GRE).
> [...]
>> --- a/include/linux/netdevice.h
>> +++ b/include/linux/netdevice.h
>> @@ -1063,6 +1063,8 @@ struct net_device {
>>  	netdev_features_t	wanted_features;
>>  	/* mask of features inheritable by VLAN devices */
>>  	netdev_features_t	vlan_features;
>> +	/* mask of features inherited by encapsulating devices */
>> +	netdev_features_t	hw_enc_features;
> [...]
> 
> How will the networking core know *which* encapsulations this applies
> to?  I notice that your implementation in ixgbe does not set
> NETIF_F_HW_CSUM here, so presumably the hardware will parse headers to
> find which ranges should be checksummed and it won't cover the next
> encapsulation protocol that comes along.
> 
> Ben.
> 

Actually the offload is generic to any encapsulation that does not
compute a checksum on the inner headers.  So as long as you can treat
the outer headers as one giant L2 header you can pretty much ignore what
is in there as long as the inner network and transport header values are
set.  There are a number of tunnels that fall into that category since
most just use IP as the L2 and the L3 usually doesn't contain any checksum.

Thanks,

Alex

  reply	other threads:[~2012-12-07 16:45 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-07  1:56 [PATCH v3 net-next 0/4] tunneling: Add support for hardware-offloaded encapsulation Joseph Gasparakis
2012-12-07  1:56 ` [PATCH v3 1/4] net: " Joseph Gasparakis
2012-12-07 10:07   ` Ben Hutchings
2012-12-07 16:45     ` Alexander Duyck [this message]
2012-12-07 17:13       ` Ben Hutchings
2012-12-07 18:24         ` Joseph Gasparakis
2012-12-07 19:28           ` David Miller
2012-12-07 19:41             ` Joseph Gasparakis
2012-12-07 19:37               ` David Miller
2012-12-07 19:52                 ` Joseph Gasparakis
2012-12-07 19:52                   ` David Miller
2012-12-07 20:18                     ` Joseph Gasparakis
2012-12-07 23:15   ` Jeff Kirsher
2012-12-07  1:56 ` [PATCH v3 2/4] net: Handle encapsulated offloads before fragmentation or handing to lower dev Joseph Gasparakis
2012-12-07 23:15   ` Jeff Kirsher
2012-12-07  1:56 ` [PATCH v3 3/4] vxlan: capture inner headers during encapsulation Joseph Gasparakis
2012-12-07 23:16   ` Jeff Kirsher
2012-12-07  1:56 ` [RFC PATCH v3 4/4] ixgbe: Adding tx encapsulation capability Joseph Gasparakis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50C21D21.5040101@intel.com \
    --to=alexander.h.duyck@intel.com \
    --cc=bhutchings@solarflare.com \
    --cc=chrisw@sous-sol.org \
    --cc=davem@davemloft.net \
    --cc=dmitry@broadcom.com \
    --cc=gospo@redhat.com \
    --cc=joseph.gasparakis@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=peter.p.waskiewicz.jr@intel.com \
    --cc=saeed.bishara@gmail.com \
    --cc=shemminger@vyatta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).