Le 30/01/2017 à 03:57, David Ahern a écrit : > On 1/29/17 7:20 PM, Roopa Prabhu wrote: >>> 2. Delete - 1 notification for each hop for all combinations of delete >>> commands >> >> here I was trying to say, for people deleting the full multipath route, you >> should send a RTA_MULTIPATH. > > The only way to do that is to call inet6_rt_notify() *before* the route > delete work has been done in fib6_del_route. Right now it is called at the > end - after all sibling associations have been dropped, a time in which it > can no longer fill in RTA_MULTIPATH. > > fib6_del_route function does not have any failure paths and is called with > the write lock held, so moving the notification might be ok. But it also > means ignoring all subsequent failures from fib6_del, again which might be ok > since the only failure is ENOENT which can not happen if we are walking the > sibling list. Is it not possible to prepare the RTA_MULTIPATH attribute during the deletion (when needed information are still available) and to use/copy it later when the notification is done?
Or at least, having RTA_MUTLTIPATH with one nexthop only, so that the user knows that this route was part of an ECMP routes?