On 6/19/19 11:55 AM, Ido Schimmel wrote: > diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c > index 1d16a01eccf5..241a0e9a07c3 100644 > --- a/net/ipv6/ip6_fib.c > +++ b/net/ipv6/ip6_fib.c > @@ -393,6 +393,8 @@ int call_fib6_multipath_entry_notifiers(struct net *net, > .nsiblings = nsiblings, > }; > > + if (!rt) > + return -EINVAL; > rt->fib6_table->fib_seq++; > return call_fib6_notifiers(net, event_type, &info.info); > }
The call to call_fib6_multipath_entry_notifiers in ip6_route_multipath_add happens without rt_notif set because the MPATH spec is empty? It seems like that check should be done in ip6_route_multipath_add rather than call_fib6_multipath_entry_notifiers with an extack saying the reason for the failure. My expectation for call_fib6_multipath_entry_notifiers is any errors are only for offload handlers. (And we need to get extack added to that for relaying reasons.)