vxlan: Set inner protocol before transmit
Call skb_set_inner_protocol to set inner Ethernet protocol to ETH_P_TEB before transmit. This is needed for GSO with UDP tunnels. Signed-off-by: Tom Herbert <therbert@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
54bc9bac30
commit
996c9fd167
|
@ -1610,6 +1610,8 @@ static int vxlan6_xmit_skb(struct vxlan_sock *vs,
|
|||
vxh->vx_flags = htonl(VXLAN_FLAGS);
|
||||
vxh->vx_vni = vni;
|
||||
|
||||
skb_set_inner_protocol(skb, htons(ETH_P_TEB));
|
||||
|
||||
udp_tunnel6_xmit_skb(vs->sock, dst, skb, dev, saddr, daddr, prio,
|
||||
ttl, src_port, dst_port);
|
||||
return 0;
|
||||
|
@ -1652,6 +1654,8 @@ int vxlan_xmit_skb(struct vxlan_sock *vs,
|
|||
vxh->vx_flags = htonl(VXLAN_FLAGS);
|
||||
vxh->vx_vni = vni;
|
||||
|
||||
skb_set_inner_protocol(skb, htons(ETH_P_TEB));
|
||||
|
||||
return udp_tunnel_xmit_skb(vs->sock, rt, skb, src, dst, tos,
|
||||
ttl, df, src_port, dst_port, xnet);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue