net: call add_device_randomness() only after successful mac change
[deliverable/linux.git] / net / core / dev.c
index 21c5b976dcf3b649f49c15298dc545cf3daa5004..c85e32b30f0447a800d4a36fd36c527fe7007876 100644 (file)
@@ -5020,10 +5020,11 @@ int dev_set_mac_address(struct net_device *dev, struct sockaddr *sa)
        if (!netif_device_present(dev))
                return -ENODEV;
        err = ops->ndo_set_mac_address(dev, sa);
-       if (!err)
-               call_netdevice_notifiers(NETDEV_CHANGEADDR, dev);
+       if (err)
+               return err;
+       call_netdevice_notifiers(NETDEV_CHANGEADDR, dev);
        add_device_randomness(dev->dev_addr, dev->addr_len);
-       return err;
+       return 0;
 }
 EXPORT_SYMBOL(dev_set_mac_address);
 
This page took 0.070376 seconds and 5 git commands to generate.