diff options
author | Amritha Nambiar <amritha.nambiar@intel.com> | 2014-07-11 02:29:21 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-07-11 22:53:39 +0200 |
commit | d0a7ebbc119738439ff00f7fadbd343ae20ea5e8 (patch) | |
tree | 733dfd9b87e691fd28bd12b52c3a9ebb99c81e3e /net/ipv4/gre_demux.c | |
parent | farsync: fix invalid memory accesses in fst_add_one() and fst_init_card() (diff) | |
download | linux-d0a7ebbc119738439ff00f7fadbd343ae20ea5e8.tar.xz linux-d0a7ebbc119738439ff00f7fadbd343ae20ea5e8.zip |
GRE: enable offloads for GRE
To get offloads to work with Generic Routing Encapsulation (GRE), the
outer transport header has to be reset after skb_push is done. This
patch has the support for this fix and hence GRE offloading.
Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Signed-off-by: Joseph Gasparakis <joseph.gasparakis@intel.com>
Tested-By: Jim Young <jamesx.m.young@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/gre_demux.c')
-rw-r--r-- | net/ipv4/gre_demux.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/gre_demux.c b/net/ipv4/gre_demux.c index 4e9619bca732..0485bf7f8f03 100644 --- a/net/ipv4/gre_demux.c +++ b/net/ipv4/gre_demux.c @@ -68,6 +68,7 @@ void gre_build_header(struct sk_buff *skb, const struct tnl_ptk_info *tpi, skb_push(skb, hdr_len); + skb_reset_transport_header(skb); greh = (struct gre_base_hdr *)skb->data; greh->flags = tnl_flags_to_gre_flags(tpi->flags); greh->protocol = tpi->proto; |