Thread (1 message) 1 message, 1 author, 2016-08-04

Re: net: vrf: Handle ipv6 multicast and link-local addresses

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2016-08-04 09:43:29
Also in: lkml

Hi David,

On Thu, Aug 4, 2016 at 7:01 AM, David Ahern [off-list ref] wrote:
Does making the code the same between those 2 functions matter?
Yes, it does make the warning go away.
quoted hunk
diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
index 1ce7420322ee..3951a2c98431 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
@@ -862,15 +862,17 @@ static void vrf_ip6_input_dst(struct sk_buff *skb, struct net_device *vrf_dev,
                              int ifindex)
 {
        const struct ipv6hdr *iph = ipv6_hdr(skb);
+       struct net *net = dev_net(vrf_dev);
        struct flowi6 fl6 = {
+               .flowi6_oif     = 0,
+               .flowi6_iif     = ifindex,
                .daddr          = iph->daddr,
                .saddr          = iph->saddr,
                .flowlabel      = ip6_flowinfo(iph),
                .flowi6_mark    = skb->mark,
                .flowi6_proto   = iph->nexthdr,
-               .flowi6_iif     = ifindex,
+               .flowi6_flags   = 0,
        };
-       struct net *net = dev_net(vrf_dev);
        struct rt6_info *rt6;
The critical change seems to be moving the initialization of
.flowi6_iif: if that
is done before the initialization of .flowlabel, there's no compiler warning.

The generated asm output is identical, though, so I think this is some sort of
false positive or compiler bug. Hence let's ignore it.

Thanks!

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help