projects
/
GitHub
/
moto-9609
/
android_kernel_motorola_exynos9610.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ec449f4
)
openvswitch: Fix GSO with multiple MPLS label.
author
Pravin B Shelar
<pshelar@nicira.com>
Wed, 24 Dec 2014 00:20:28 +0000
(16:20 -0800)
committer
David S. Miller
<davem@davemloft.net>
Wed, 24 Dec 2014 04:57:31 +0000
(23:57 -0500)
MPLS GSO needs to know inner most protocol to process GSO packets.
Fixes:
25cd9ba0abc
("openvswitch: Add basic MPLS support to
kernel").
Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/openvswitch/actions.c
patch
|
blob
|
blame
|
history
diff --git
a/net/openvswitch/actions.c
b/net/openvswitch/actions.c
index 764fdc39c63b6565d29d2c4a1d1ed7629924c412..770064c837112ca23fb1bbecf75b2d84643e88b0 100644
(file)
--- a/
net/openvswitch/actions.c
+++ b/
net/openvswitch/actions.c
@@
-147,7
+147,8
@@
static int push_mpls(struct sk_buff *skb, struct sw_flow_key *key,
hdr = eth_hdr(skb);
hdr->h_proto = mpls->mpls_ethertype;
- skb_set_inner_protocol(skb, skb->protocol);
+ if (!skb->inner_protocol)
+ skb_set_inner_protocol(skb, skb->protocol);
skb->protocol = mpls->mpls_ethertype;
invalidate_flow_key(key);