On 5/25/17 9:31 AM, Vladislav Yasevich wrote:
> @@ -911,4 +912,14 @@ enum {
>  
>  #define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1)
>  
> +enum {
> +     IFLA_EVENT_UNSPEC,
> +     IFLA_EVENT_REBOOT,
> +     IFLA_EVENT_FEAT_CHANGE,
> +     IFLA_EVENT_BONDING_FAILOVER,
> +     IFLA_EVENT_NOTIFY_PEERS,
> +     IFLA_EVENT_RESEND_IGMP,
> +     IFLA_EVENT_CHANGE_INFO_DATA,
> +};
> +
>  #endif /* _UAPI_LINUX_IF_LINK_H */

I agree these are unique events that userspace might care about.

I'd prefer better names for the userspace api for a couple of those
along with a description in the header file so userspace knows why the
event was generated.

How about something like this:

enum {
        IFLA_EVENT_NONE,
        IFLA_EVENT_REBOOT,              /* internal reset / reboot */
        IFLA_EVENT_FEATURES,            /* change in offload features */
        IFLA_EVENT_BONDING_FAILOVER,    /* change in active slave */
        IFLA_EVENT_NOTIFY_PEERS,        /* re-sent grat. arp/ndisc */
        IFLA_EVENT_IGMP_RESEND,         /* re-sent IGMP JOIN */
        IFLA_EVENT_BONDING_OPTIONS,     /* change in bonding options */
};

Also, generically the IFLA_EVENT attribute should be considered
independent of NETDEV_ events.

For example, userspace should be notified if the speed / duplex for a
device changes, so we could have another one of these -- e.g.,
IFLA_EVENT_SPEED -- that does not correlate to NETDEV_SPEED since
nothing internal to the network stack cares about speed changes, or
perhaps more generically it is IFLA_EVENT_LINK_SETTING.

The rest of the patch looks ok to me.

Reply via email to