diff options
author | Ido Schimmel <idosch@mellanox.com> | 2019-06-18 18:12:45 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-06-18 09:45:36 -0700 |
commit | d4b96c7b51e8fe9bcf94c8ab8cd5717d2f005b04 (patch) | |
tree | 145663e2831fefcde02779646de16e344904ea5a /include/net | |
parent | c82481f7ea21be8ec960a28aef07bf258f6820b7 (diff) | |
download | linux-stable-d4b96c7b51e8fe9bcf94c8ab8cd5717d2f005b04.tar.gz linux-stable-d4b96c7b51e8fe9bcf94c8ab8cd5717d2f005b04.tar.bz2 linux-stable-d4b96c7b51e8fe9bcf94c8ab8cd5717d2f005b04.zip |
ipv6: Extend notifier info for multipath routes
Extend the IPv6 FIB notifier info with number of sibling routes being
notified.
This will later allow listeners to process one notification for a
multipath routes instead of N, where N is the number of nexthops.
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Reviewed-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/ip6_fib.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/net/ip6_fib.h b/include/net/ip6_fib.h index 1e92f1500b87..7c3d5ab05879 100644 --- a/include/net/ip6_fib.h +++ b/include/net/ip6_fib.h @@ -377,6 +377,8 @@ typedef struct rt6_info *(*pol_lookup_t)(struct net *, struct fib6_entry_notifier_info { struct fib_notifier_info info; /* must be first */ struct fib6_info *rt; + unsigned int nsiblings; + bool multipath_rt; }; /* @@ -450,6 +452,11 @@ int call_fib6_entry_notifiers(struct net *net, enum fib_event_type event_type, struct fib6_info *rt, struct netlink_ext_ack *extack); +int call_fib6_multipath_entry_notifiers(struct net *net, + enum fib_event_type event_type, + struct fib6_info *rt, + unsigned int nsiblings, + struct netlink_ext_ack *extack); void fib6_rt_update(struct net *net, struct fib6_info *rt, struct nl_info *info); void inet6_rt_notify(int event, struct fib6_info *rt, struct nl_info *info, |