net: ipv6: Change notifications for multipath delete to RTA_MULTIPATH
authorDavid Ahern <dsa@cumulusnetworks.com>
Thu, 2 Feb 2017 20:37:11 +0000 (12:37 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 5 Feb 2017 00:58:14 +0000 (19:58 -0500)
commit16a16cd35ee29d9bea54dd60e55d9c1cc685a37d
tree9b1e0754092bc242f81e25e16cc443e2f5d83681
parent3b1137fe74829e021f483756a648cbb87c8a1b4a
net: ipv6: Change notifications for multipath delete to RTA_MULTIPATH

If an entire multipath route is deleted using prefix and len (without any
nexthops), send a single RTM_DELROUTE notification with the full route
using RTA_MULTIPATH. This is done by generating the skb before the route
delete when all of the sibling routes are still present but sending it
after the route has been removed from the FIB. The skip_notify flag
is used to tell the lower fib code not to send notifications for the
individual nexthop routes.

If a route is deleted using RTA_MULTIPATH for any nexthops or a single
nexthop entry is deleted, then the nexthops are deleted one at a time with
notifications sent as each hop is deleted. This is necessary given that
IPv6 allows individual hops within a route to be deleted.

Signed-off-by: David Ahern <dsa@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_fib.c
net/ipv6/route.c