diff options
author | Tom Herbert <therbert@google.com> | 2015-01-20 14:23:05 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-01-25 02:15:40 -0500 |
commit | af33c1adae1e095e90d14fe35501256ebb07aabf (patch) | |
tree | 81666ac4a5bb62098501eb04372a87a2d2643059 /net/openvswitch | |
parent | d998f8efa47221405ceae129aa93fa6d4ac8510d (diff) |
vxlan: Eliminate dependency on UDP socket in transmit path
In the vxlan transmit path there is no need to reference the socket
for a tunnel which is needed for the receive side. We do, however,
need the vxlan_dev flags. This patch eliminate references
to the socket in the transmit path, and changes VXLAN_F_UNSHAREABLE
to be VXLAN_F_RCV_FLAGS. This mask is used to store the flags
applicable to receive (GBP, CSUM6_RX, and REMCSUM_RX) in the
vxlan_sock flags.
Signed-off-by: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/openvswitch')
-rw-r--r-- | net/openvswitch/vport-vxlan.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/openvswitch/vport-vxlan.c b/net/openvswitch/vport-vxlan.c index 8a2d54cba9ba..3cc983bf444a 100644 --- a/net/openvswitch/vport-vxlan.c +++ b/net/openvswitch/vport-vxlan.c | |||
@@ -252,12 +252,10 @@ static int vxlan_tnl_send(struct vport *vport, struct sk_buff *skb) | |||
252 | md.vni = htonl(be64_to_cpu(tun_key->tun_id) << 8); | 252 | md.vni = htonl(be64_to_cpu(tun_key->tun_id) << 8); |
253 | md.gbp = vxlan_ext_gbp(skb); | 253 | md.gbp = vxlan_ext_gbp(skb); |
254 | 254 | ||
255 | err = vxlan_xmit_skb(vxlan_port->vs, rt, skb, | 255 | err = vxlan_xmit_skb(rt, skb, fl.saddr, tun_key->ipv4_dst, |
256 | fl.saddr, tun_key->ipv4_dst, | ||
257 | tun_key->ipv4_tos, tun_key->ipv4_ttl, df, | 256 | tun_key->ipv4_tos, tun_key->ipv4_ttl, df, |
258 | src_port, dst_port, | 257 | src_port, dst_port, |
259 | &md, | 258 | &md, false, vxlan_port->exts); |
260 | false); | ||
261 | if (err < 0) | 259 | if (err < 0) |
262 | ip_rt_put(rt); | 260 | ip_rt_put(rt); |
263 | return err; | 261 | return err; |