]> git.proxmox.com Git - ovs.git/commitdiff
dataoath: compat: Do not use upstream fill-meta-data function for compat tunnel
authorPravin B Shelar <pshelar@nicira.com>
Mon, 18 Jul 2016 20:53:29 +0000 (13:53 -0700)
committerPravin B Shelar <pshelar@ovn.org>
Mon, 18 Jul 2016 20:53:29 +0000 (13:53 -0700)
upstream dev_fill_metadata_dst() uses upstream tunnel-dst which could
be different from OVS defined tun-dst.  Therefore use fill-meta-data
function from compat layer.

Signed-off-by: Pravin B Shelar <pshelar@ovn.org>
Acked-by: Jesse Gross <jesse@kernel.org>
datapath/linux/compat/dev-openvswitch.c
datapath/linux/compat/include/linux/netdevice.h
datapath/linux/compat/lisp.c
datapath/linux/compat/stt.c
datapath/vport-geneve.c
datapath/vport-gre.c
datapath/vport-lisp.c
datapath/vport-stt.c
datapath/vport-vxlan.c
datapath/vport.h

index 1e870431f683ec12599b72d7fc90dbeeeb680711..1a71206ea9479d3986181c9d7ab6958e56751800 100644 (file)
@@ -60,7 +60,7 @@ int rpl_rtnl_delete_link(struct net_device *dev)
        return 0;
 }
 
-#ifndef HAVE_NDO_FILL_METADATA_DST
+#ifndef USE_UPSTREAM_TUNNEL
 int ovs_dev_fill_metadata_dst(struct net_device *dev, struct sk_buff *skb)
 {
        struct ip_tunnel_info *info;
index f066e91d58ddb0dd428ae56253d631c52bcf81d4..00eaa21e8abe55d9d67d91647ce4e7ec6b80fc54 100644 (file)
@@ -249,7 +249,7 @@ do {                                                                \
 
 #endif
 
-#ifndef HAVE_NDO_FILL_METADATA_DST
+#ifndef USE_UPSTREAM_TUNNEL
 #define dev_fill_metadata_dst ovs_dev_fill_metadata_dst
 int ovs_dev_fill_metadata_dst(struct net_device *dev, struct sk_buff *skb);
 #endif
index bf65102a2bc276c351b7fbaa084dd2b530b36780..dd23059477ef944c7b72c7033fb8e617e44a47fa 100644 (file)
@@ -510,9 +510,11 @@ static const struct net_device_ops lisp_netdev_ops = {
        .ndo_change_mtu         = lisp_change_mtu,
        .ndo_validate_addr      = eth_validate_addr,
        .ndo_set_mac_address    = eth_mac_addr,
+#ifdef USE_UPSTREAM_TUNNEL
 #ifdef HAVE_NDO_FILL_METADATA_DST
        .ndo_fill_metadata_dst  = lisp_fill_metadata_dst,
 #endif
+#endif
 };
 
 static void lisp_get_drvinfo(struct net_device *dev,
index 1488afa319a149c4e55d97474e4d221bdeefd8a4..c89951776b7993eddc92ece31476b017b4cbf2f8 100644 (file)
@@ -1845,9 +1845,11 @@ static const struct net_device_ops stt_netdev_ops = {
        .ndo_change_mtu         = stt_change_mtu,
        .ndo_validate_addr      = eth_validate_addr,
        .ndo_set_mac_address    = eth_mac_addr,
+#ifdef USE_UPSTREAM_TUNNEL
 #ifdef HAVE_NDO_FILL_METADATA_DST
        .ndo_fill_metadata_dst  = stt_fill_metadata_dst,
 #endif
+#endif
 };
 
 static void stt_get_drvinfo(struct net_device *dev,
index 718b077d5bb9a2ae017174e6e1bfad64207aeba3..5821ef481d85ea93c5fd5e0136f8dd63856329c8 100644 (file)
@@ -116,7 +116,9 @@ static struct vport_ops ovs_geneve_vport_ops = {
        .create         = geneve_create,
        .destroy        = ovs_netdev_tunnel_destroy,
        .get_options    = geneve_get_options,
+#ifndef USE_UPSTREAM_TUNNEL
        .fill_metadata_dst = geneve_fill_metadata_dst,
+#endif
        .send           = geneve_xmit,
 };
 
index ffe0079caa712d9edf0521ef6dd6c327d68c85d9..32d7d9f7939b2f3a3257e05b174631f5237f9e41 100644 (file)
@@ -88,7 +88,9 @@ static struct vport_ops ovs_gre_vport_ops = {
        .type           = OVS_VPORT_TYPE_GRE,
        .create         = gre_create,
        .send           = gre_fb_xmit,
+#ifndef USE_UPSTREAM_TUNNEL
        .fill_metadata_dst = gre_fill_metadata_dst,
+#endif
        .destroy        = ovs_netdev_tunnel_destroy,
 };
 
index 25f6932d135bccf8b3ae0a22c00267c543f92378..9e894e80a7b40783fef31ceb315a0a9520f6bc54 100644 (file)
@@ -116,7 +116,9 @@ static struct vport_ops ovs_lisp_vport_ops = {
        .create         = lisp_create,
        .destroy        = ovs_netdev_tunnel_destroy,
        .get_options    = lisp_get_options,
+#ifndef USE_UPSTREAM_TUNNEL
        .fill_metadata_dst = lisp_fill_metadata_dst,
+#endif
        .send           = lisp_xmit,
 };
 
index e46bec15d42005dae9b58d8b54181426921cf7ec..1c838de76674f4bcdb335c63eab8e82a66a41e7f 100644 (file)
@@ -118,7 +118,9 @@ static struct vport_ops ovs_stt_vport_ops = {
        .create         = stt_create,
        .destroy        = ovs_netdev_tunnel_destroy,
        .get_options    = stt_get_options,
+#ifndef USE_UPSTREAM_TUNNEL
        .fill_metadata_dst = stt_fill_metadata_dst,
+#endif
        .send           = ovs_stt_xmit,
 };
 
index f73a10ccedf95a64304501ff1e844dd89f35b7f5..b830a463f0702e679280bb49160cb1728e03fefd 100644 (file)
@@ -153,7 +153,9 @@ static struct vport_ops ovs_vxlan_netdev_vport_ops = {
        .create                 = vxlan_create,
        .destroy                = ovs_netdev_tunnel_destroy,
        .get_options            = vxlan_get_options,
+#ifndef USE_UPSTREAM_TUNNEL
        .fill_metadata_dst      = vxlan_fill_metadata_dst,
+#endif
        .send                   = vxlan_xmit,
 };
 
index c9f46f2486976ebd2134f8628ce722199d3c958f..47995be08ca474bc8e9d632655b6f89501988812 100644 (file)
@@ -142,8 +142,9 @@ struct vport_ops {
        int (*get_options)(const struct vport *, struct sk_buff *);
 
        netdev_tx_t (*send)(struct sk_buff *skb);
+#ifndef USE_UPSTREAM_TUNNEL
        int  (*fill_metadata_dst)(struct net_device *dev, struct sk_buff *skb);
-
+#endif
        struct module *owner;
        struct list_head list;
 };