mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 03:40:35 +09:00
net/ipv6: use configured metric when add peer route
[ Upstream commit07758eb9ff] When we add peer address with metric configured, IPv4 could set the dest metric correctly, but IPv6 do not. e.g. ]# ip addr add 192.0.2.1 peer 192.0.2.2/32 dev eth1 metric 20 ]# ip route show dev eth1 192.0.2.2 proto kernel scope link src 192.0.2.1 metric 20 ]# ip addr add 2001:db8::1 peer 2001:db8::2/128 dev eth1 metric 20 ]# ip -6 route show dev eth1 2001:db8::1 proto kernel metric 20 pref medium 2001:db8::2 proto kernel metric 256 pref medium Fix this by using configured metric instead of default one. Reported-by: Jianlin Shi <jishi@redhat.com> Fixes:8308f3ff17("net/ipv6: Add support for specifying metric of connected routes") Reviewed-by: David Ahern <dsahern@gmail.com> Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
eb273bb820
commit
53e404eddd
@@ -5706,9 +5706,9 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
|
||||
if (ifp->idev->cnf.forwarding)
|
||||
addrconf_join_anycast(ifp);
|
||||
if (!ipv6_addr_any(&ifp->peer_addr))
|
||||
addrconf_prefix_route(&ifp->peer_addr, 128, 0,
|
||||
ifp->idev->dev, 0, 0,
|
||||
GFP_ATOMIC);
|
||||
addrconf_prefix_route(&ifp->peer_addr, 128,
|
||||
ifp->rt_priority, ifp->idev->dev,
|
||||
0, 0, GFP_ATOMIC);
|
||||
break;
|
||||
case RTM_DELADDR:
|
||||
if (ifp->idev->cnf.forwarding)
|
||||
|
||||
Reference in New Issue
Block a user