Tue, Aug 28, 2018 at 10:58:11PM CEST, mar...@holtmann.org wrote: >The name value from SET_NETDEV_DEVTYPE only ended up in the uevent sysfs >file as DEVTYPE= information. To avoid any kind of race conditions >between netlink messages and reading from sysfs, it is useful to add the >same string as new IFLA_DEVTYPE attribute included in the RTM_NEWLINK >messages. > >For network managing daemons that have to classify ARPHRD_ETHER network >devices into different types (like Wireless LAN, Bluetooth etc.), this >avoids the extra round trip to sysfs and parsing of the uevent file. > >Signed-off-by: Marcel Holtmann <mar...@holtmann.org> >--- > include/uapi/linux/if_link.h | 2 ++ > net/core/rtnetlink.c | 12 ++++++++++++ > 2 files changed, 14 insertions(+) > >diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h >index 43391e2d1153..781294972bb4 100644 >--- a/include/uapi/linux/if_link.h >+++ b/include/uapi/linux/if_link.h >@@ -166,6 +166,8 @@ enum { > IFLA_NEW_IFINDEX, > IFLA_MIN_MTU, > IFLA_MAX_MTU, >+ IFLA_DEVTYPE, /* Name value from SET_NETDEV_DEVTYPE */
This is not something netdev-related. dev->dev.type is struct device_type. This is a generic "device" thing. Incorrect to expose over netdev-specific API. Please use "device" API for this.