rtnl: Add support for netdev event to link messages

When netdev events happen, a rtnetlink_event() handler will send
messages for every event in it's white list.  These messages contain
current information about a particular device, but they do not include
the iformation about which event just happened.  The consumer of
the message has to try to infer this information.  In some cases
(ex: NETDEV_NOTIFY_PEERS), that is not possible.

This patch adds a new extension to RTM_NEWLINK message called IFLA_EVENT
that would have an encoding of the which event triggered this
message.  This would allow the the message consumer to easily determine
if it is interested in a particular event or not.

Signed-off-by: Vladislav Yasevich <vyasevic@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Vlad Yasevich
2017-04-04 09:23:42 -04:00
committed by David S. Miller
parent 5138e86f17
commit def12888c1
4 changed files with 107 additions and 11 deletions

View File

@@ -157,6 +157,7 @@ enum {
IFLA_GSO_MAX_SIZE,
IFLA_PAD,
IFLA_XDP,
IFLA_EVENT,
__IFLA_MAX
};
@@ -899,4 +900,24 @@ enum {
#define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1)
enum {
IFLA_EVENT_UNSPEC,
IFLA_EVENT_REBOOT,
IFLA_EVENT_CHANGE_MTU,
IFLA_EVENT_CHANGE_ADDR,
IFLA_EVENT_CHANGE_NAME,
IFLA_EVENT_FEAT_CHANGE,
IFLA_EVENT_BONDING_FAILOVER,
IFLA_EVENT_POST_TYPE_CHANGE,
IFLA_EVENT_NOTIFY_PEERS,
IFLA_EVENT_CHANGE_UPPER,
IFLA_EVENT_RESEND_IGMP,
IFLA_EVENT_PRE_CHANGE_MTU,
IFLA_EVENT_CHANGE_INFO_DATA,
IFLA_EVENT_PRE_CHANGE_UPPER,
IFLA_EVENT_CHANGE_LOWER_STATE,
IFLA_EVENT_UDP_TUNNEL_PUSH_INFO,
IFLA_EVENT_CHANGE_TX_QUEUE_LEN,
};
#endif /* _UAPI_LINUX_IF_LINK_H */