Fix "(unregistered net_device): Features changed" message
authorMichał Mirosław <mirq-linux@rere.qmqm.pl>
Tue, 22 Feb 2011 16:52:28 +0000 (16:52 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 23 Feb 2011 22:23:31 +0000 (14:23 -0800)
Fix netdev_update_features() messages on register time by moving
the call further in register_netdevice(). When
netdev->reg_state != NETREG_REGISTERED, netdev_name() returns
"(unregistered netdevice)" even if the dev's name is already filled.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/dev.c

index 578415c1ef758d0a8d86c8c14ae3665718a895b0..77e5edb724f4b3d8647a801d0821cac7da9d24e8 100644 (file)
@@ -5483,8 +5483,6 @@ int register_netdevice(struct net_device *dev)
        if (!(dev->wanted_features & NETIF_F_SG))
                dev->wanted_features &= ~NETIF_F_GSO;
 
-       netdev_update_features(dev);
-
        /* Enable GRO and NETIF_F_HIGHDMA for vlans by default,
         * vlan_dev_init() will do the dev->features check, so these features
         * are enabled only if supported by underlying device.
@@ -5501,6 +5499,8 @@ int register_netdevice(struct net_device *dev)
                goto err_uninit;
        dev->reg_state = NETREG_REGISTERED;
 
+       netdev_update_features(dev);
+
        /*
         *      Default initial state at registry is that the
         *      device is present.