diff options
author | Pravin B Shelar <pshelar@nicira.com> | 2013-02-22 07:30:40 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-02-25 15:47:41 -0500 |
commit | 8dc98eb2e8ccfbfb90348f8dc42f4a528a8a9961 (patch) | |
tree | 649e89e4d615380aceec12a958b649bd9287d107 /drivers/net/vxlan.c | |
parent | 490ab08127cebc25e3a260a74556b56ce5f47c0f (diff) | |
download | op-kernel-dev-8dc98eb2e8ccfbfb90348f8dc42f4a528a8a9961.zip op-kernel-dev-8dc98eb2e8ccfbfb90348f8dc42f4a528a8a9961.tar.gz |
VXLAN: Use tunnel_ip_select_ident() for tunnel IP-Identification.
tunnel_ip_select_ident() is more efficient when generating ip-header
id given inner packet is of ipv4 type.
Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/vxlan.c')
-rw-r--r-- | drivers/net/vxlan.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c index 9d70421..f736823 100644 --- a/drivers/net/vxlan.c +++ b/drivers/net/vxlan.c @@ -33,6 +33,7 @@ #include <net/arp.h> #include <net/ndisc.h> #include <net/ip.h> +#include <net/ipip.h> #include <net/icmp.h> #include <net/udp.h> #include <net/rtnetlink.h> @@ -962,13 +963,13 @@ static netdev_tx_t vxlan_xmit(struct sk_buff *skb, struct net_device *dev) iph->daddr = dst; iph->saddr = fl4.saddr; iph->ttl = ttl ? : ip4_dst_hoplimit(&rt->dst); + tunnel_ip_select_ident(skb, old_iph, &rt->dst); vxlan_set_owner(dev, skb); /* See iptunnel_xmit() */ if (skb->ip_summed != CHECKSUM_PARTIAL) skb->ip_summed = CHECKSUM_NONE; - ip_select_ident(iph, &rt->dst, NULL); err = ip_local_out(skb); if (likely(net_xmit_eval(err) == 0)) { |