• Michal Kubecek's avatar
    ethtool: support for netlink notifications · 6b08d6c1
    Michal Kubecek authored
    Add infrastructure for ethtool netlink notifications. There is only one
    multicast group "monitor" which is used to notify userspace about changes
    and actions performed. Notification messages (types using suffix _NTF)
    share the format with replies to GET requests.
    
    Notifications are supposed to be broadcasted on every configuration change,
    whether it is done using the netlink interface or ioctl one. Netlink SET
    requests only trigger a notification if some data is actually changed.
    
    To trigger an ethtool notification, both ethtool netlink and external code
    use ethtool_notify() helper. This helper requires RTNL to be held and may
    sleep. Handlers sending messages for specific notification message types
    are registered in ethnl_notify_handlers array. As notifications can be
    triggered from other code, ethnl_ok flag is used to prevent an attempt to
    send notification before genetlink family is registered.
    Signed-off-by: default avatarMichal Kubecek <mkubecek@suse.cz>
    Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    6b08d6c1
netlink.c 6.15 KB