On 9/8/20 3:10 AM, Ido Schimmel wrote:
> From: Ido Schimmel <[email protected]>
>
> Add data structures that will be used for nexthop replace and delete
> notifications in the previously introduced nexthop notification chain.
>
> New data structures are added instead of passing the existing nexthop
> code structures directly for several reasons.
>
> First, the existing structures encode a lot of bookkeeping information
> which is irrelevant for listeners of the notification chain.
>
> Second, the existing structures can be changed without worrying about
> introducing regressions in listeners since they are not accessed
> directly by them.
>
> Third, listeners of the notification chain do not need to each parse the
> relatively complex nexthop code structures. They are passing the
> required information in a simplified way.
agreed. My preference is for only nexthop.{c,h} to understand and parse
the nexthop structs.
>
> Signed-off-by: Ido Schimmel <[email protected]>
> ---
> include/net/nexthop.h | 35 +++++++++++++++++++++++++++++++++++
> 1 file changed, 35 insertions(+)
>
> diff --git a/include/net/nexthop.h b/include/net/nexthop.h
> index 2e44efe5709b..0bde1aa867c0 100644
> --- a/include/net/nexthop.h
> +++ b/include/net/nexthop.h
> @@ -109,6 +109,41 @@ enum nexthop_event_type {
> NEXTHOP_EVENT_DEL
> };
>
> +struct nh_notifier_single_info {
> + struct net_device *dev;
> + u8 gw_family;
> + union {
> + __be32 ipv4;
> + struct in6_addr ipv6;
> + };
> + u8 is_reject:1,
> + is_fdb:1,
> + is_encap:1;
use has_encap since it refers to a configuration of a nexthop versus a
nexthop type.
I take it this is a placeholder until lwt offload is supported?
besides the naming nit,
Reviewed-by: David Ahern <[email protected]>