|
@@ -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);
|
|
|
|