summaryrefslogtreecommitdiffstats
path: root/net/core/skbuff.c
diff options
context:
space:
mode:
authorPravin B Shelar <pshelar@nicira.com>2013-03-07 14:21:46 +0100
committerDavid S. Miller <davem@davemloft.net>2013-03-09 22:08:57 +0100
commitaefbd2b3c2a9c657605e4337f9919d6c6273e8e6 (patch)
treeb38e3de33fe5cce01bdcbc76e71906e06d40e15d /net/core/skbuff.c
parentnet: Add skb_headers_offset_update helper function. (diff)
downloadlinux-aefbd2b3c2a9c657605e4337f9919d6c6273e8e6.tar.xz
linux-aefbd2b3c2a9c657605e4337f9919d6c6273e8e6.zip
tunneling: Capture inner mac header during encapsulation.
This patch adds inner mac header. This will be used in next patch to find tunner header length. Header len is required to copy tunnel header to each gso segment. This patch does not change any functionality. Signed-off-by: Pravin B Shelar <pshelar@nicira.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/skbuff.c')
-rw-r--r--net/core/skbuff.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 0278c7f787bf..31c6737d3189 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -673,6 +673,7 @@ static void __copy_skb_header(struct sk_buff *new, const struct sk_buff *old)
new->mac_header = old->mac_header;
new->inner_transport_header = old->inner_transport_header;
new->inner_network_header = old->inner_network_header;
+ new->inner_mac_header = old->inner_mac_header;
skb_dst_copy(new, old);
new->rxhash = old->rxhash;
new->ooo_okay = old->ooo_okay;
@@ -876,6 +877,7 @@ static void skb_headers_offset_update(struct sk_buff *skb, int off)
skb->mac_header += off;
skb->inner_transport_header += off;
skb->inner_network_header += off;
+ skb->inner_mac_header += off;
}
static void copy_skb_header(struct sk_buff *new, const struct sk_buff *old)