[ovs-dev] [PATCH] datapath: Provide alternate name for setup_udp_tunnel_sock()

Tuan Nguyen tuan.nguyen at veriksystems.com
Mon Apr 20 11:33:28 UTC 2015


Hi Thomas Graf,

Thanks for your help, I tried this patch and got a same bug with functions:
udp_tunnel_xmit_skb, udp_tunnel_sock_release
.
I tried to fix like your patch and all work well now.

--- a/datapath/linux/compat/include/net/udp_tunnel.h
+++ b/datapath/linux/compat/include/net/udp_tunnel.h
@@ -65,16 +65,18 @@
 };

 /* Setup the given (UDP) sock to receive UDP encapsulated packets */
+#define setup_udp_tunnel_sock rpl_setup_udp_tunnel_sock
 void setup_udp_tunnel_sock(struct net *net, struct socket *sock,
                struct udp_tunnel_sock_cfg *sock_cfg);

 /* Transmit the skb using UDP encapsulation. */
+#define udp_tunnel_xmit_skb rpl_udp_tunnel_xmit_skb
 int udp_tunnel_xmit_skb(struct rtable *rt, struct sk_buff *skb,
             __be32 src, __be32 dst, __u8 tos, __u8 ttl,
             __be16 df, __be16 src_port, __be16 dst_port,
             bool xnet, bool nocheck);

-
+#define udp_tunnel_sock_release rpl_udp_tunnel_sock_release
 void udp_tunnel_sock_release(struct socket *sock);

 void ovs_udp_gso(struct sk_buff *skb);

Thanks
Tuan Nguyen

On Mon, Apr 20, 2015 at 3:24 PM, Thomas Graf <tgraf at noironetworks.com>
wrote:

> On 04/20/15 at 10:16am, Thomas Graf wrote:
> > On 04/20/15 at 11:25am, Tuan Nguyen wrote:
> > > Hi Ben,
> > >
> > > I tried with newest openvswitch in github (
> > > https://github.com/openvswitch/ovs) with OpenWrt version in trunk.
> > > When kernel booting, it shows:
> > >          openvswitch: exports duplicate symbol setup_udp_tunnel_sock
> (owned
> > > by udp_tunnel)
> > >
> > > Is it a issue ? I traced and saw 2 files below have export the same
> > > function: setup_udp_tunnel_sock
> > >
> > > openvswitch source: /datapath/linux/compat/udp_tunnel.c
> > > kernel (3.18.11): /net/ipv4/udp_tunnel.c
> > >
> > > How about I comment a export line in openvswitch source ?
> >
> > This is a bug. We need to rename our compat function. I'll send
> > a patch.
>
> Please try this patch
>
> Reported-by: Tuan Nguyen <tuan.nguyen at veriksystems.com>
> Signed-off-by: Thomas Graf <tgraf at noironetworks.com>
> ---
>  datapath/linux/compat/include/net/udp_tunnel.h | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/datapath/linux/compat/include/net/udp_tunnel.h
> b/datapath/linux/compat/include/net/udp_tunnel.h
> index 6c25ca5..6f9d458 100644
> --- a/datapath/linux/compat/include/net/udp_tunnel.h
> +++ b/datapath/linux/compat/include/net/udp_tunnel.h
> @@ -65,6 +65,7 @@ struct udp_tunnel_sock_cfg {
>  };
>
>  /* Setup the given (UDP) sock to receive UDP encapsulated packets */
> +#define setup_udp_tunnel_sock rpl_setup_udp_tunnel_sock
>  void setup_udp_tunnel_sock(struct net *net, struct socket *sock,
>                            struct udp_tunnel_sock_cfg *sock_cfg);
>
> --
> 2.3.5
>
>



More information about the dev mailing list