ipv6: drop the judgement in rt6_alloc_cow()
authorDuan Jiong <duanj.fnst@cn.fujitsu.com>
Tue, 5 Nov 2013 05:34:53 +0000 (13:34 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 6 Nov 2013 03:17:05 +0000 (22:17 -0500)
Now rt6_alloc_cow() is only called by ip6_pol_route() when
rt->rt6i_flags doesn't contain both RTF_NONEXTHOP and RTF_GATEWAY,
and rt->rt6i_flags hasn't been changed in ip6_rt_copy().
So there is no neccessary to judge whether rt->rt6i_flags contains
RTF_GATEWAY or not.

Signed-off-by: Duan Jiong <duanj.fnst@cn.fujitsu.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/route.c

index fd399ac6c1f7c5d6663a10b3e1f0af3f82cb66ae..c28cdda3f5dbc02a0da37b1c42596133c60c50cf 100644 (file)
@@ -871,11 +871,9 @@ static struct rt6_info *rt6_alloc_cow(struct rt6_info *ort,
        rt = ip6_rt_copy(ort, daddr);
 
        if (rt) {
-               if (!(rt->rt6i_flags & RTF_GATEWAY)) {
-                       if (ort->rt6i_dst.plen != 128 &&
-                           ipv6_addr_equal(&ort->rt6i_dst.addr, daddr))
-                               rt->rt6i_flags |= RTF_ANYCAST;
-               }
+               if (ort->rt6i_dst.plen != 128 &&
+                   ipv6_addr_equal(&ort->rt6i_dst.addr, daddr))
+                       rt->rt6i_flags |= RTF_ANYCAST;
 
                rt->rt6i_flags |= RTF_CACHE;