On Tue, Dec 15, 2015 at 11:24:33AM -0800, Joe Stringer wrote:
> If the ip fragmentation backport is enabled, we should always use our
> own {,__}ipv6_select_ident(). This fixes the following issue on some
> v3.19 kernels:
>
> datapath/linux/ip6_output.c:93:12: error: conflicting types for
> ‘__ipv6_select_ident’
> static u32 __ipv6_select_ident(struct net *net, u32 hashrnd,
>
> Reported-by: Simon Horman <[email protected]>
> Signed-off-by: Joe Stringer <[email protected]>
Tested-by: Simon Horman <[email protected]>
> ---
> datapath/linux/compat/ip6_output.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/datapath/linux/compat/ip6_output.c
> b/datapath/linux/compat/ip6_output.c
> index 004575c5abab..5c0cdec4b382 100644
> --- a/datapath/linux/compat/ip6_output.c
> +++ b/datapath/linux/compat/ip6_output.c
> @@ -90,7 +90,7 @@ static u32 rpl_ip_idents_reserve(u32 hash, int segs)
> return atomic_add_return(segs + delta, p_id) - segs;
> }
>
> -static u32 __ipv6_select_ident(struct net *net, u32 hashrnd,
> +static u32 rpl___ipv6_select_ident(struct net *net, u32 hashrnd,
> const struct in6_addr *dst,
> const struct in6_addr *src)
> {
> @@ -111,7 +111,6 @@ static u32 __ipv6_select_ident(struct net *net, u32
> hashrnd,
> return id;
> }
>
> -/* XXX: Exported in 3.19. */
> static __be32 rpl_ipv6_select_ident(struct net *net,
> const struct in6_addr *daddr,
> const struct in6_addr *saddr)
> @@ -121,7 +120,7 @@ static __be32 rpl_ipv6_select_ident(struct net *net,
>
> net_get_random_once(&ip6_idents_hashrnd, sizeof(ip6_idents_hashrnd));
>
> - id = __ipv6_select_ident(net, ip6_idents_hashrnd, daddr, saddr);
> + id = rpl___ipv6_select_ident(net, ip6_idents_hashrnd, daddr, saddr);
> return htonl(id);
> }
>
> --
> 2.1.4
>
> _______________________________________________
> dev mailing list
> [email protected]
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev