Hi Tom, > In systemd's networkd and udevd, we would like to give the administrator a > simple way to filter ethernet devices by their DEVTYPE. In order to avoid > having a special treatment of the case where DEVTYPE=(null), initialize it to > a default value, "ethernet", in the kernel. > > Signed-off-by: Tom Gundersen <[email protected]> > Cc: Marcel Holtmann <[email protected]> > Cc: Greg KH <[email protected]> > --- > > Hi Greg and Marcel, > > This patch seems to do the right thing for me. Any comments before I send it > off to LKML? > > I suppose it may make sense to hide this behind a kernel option in case we are > worried about breaking existing users (but if ConnMan is adapted, I don't know > of any other issues, NetworkManager is not affected at least). > > Cheers, > > Tom > > net/core/dev.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/net/core/dev.c b/net/core/dev.c > index ba3b7ea..62881e0 100644 > --- a/net/core/dev.c > +++ b/net/core/dev.c > @@ -6215,6 +6215,10 @@ void netdev_freemem(struct net_device *dev) > kfree(addr); > } > > +static const struct device_type ethernet_type = { > + .name = "ethernet", > +}; > + > /** > * alloc_netdev_mqs - allocate network device > * @sizeof_priv: size of private data to allocate space for > @@ -6305,6 +6309,8 @@ struct net_device *alloc_netdev_mqs(int sizeof_priv, > const char *name, > goto free_all; > #endif > > + SET_NETDEV_DEVTYPE(dev, ðernet_type); > + > strcpy(dev->name, name); > dev->group = INIT_NETDEV_GROUP; > if (!dev->ethtool_ops)
this means that every single netdev is defaulting to Ethernet. This includes also the fake ones like IrDA or raw IP ones like PPP or TUN devices. I do not think that is something we really want here. Regards Marcel _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
