diff options
27 files changed, 4 insertions, 35 deletions
diff --git a/drivers/net/ethernet/adi/bfin_mac.c b/drivers/net/ethernet/adi/bfin_mac.c index c1fdb8be8bee..8c3c9cfbf864 100644 --- a/drivers/net/ethernet/adi/bfin_mac.c +++ b/drivers/net/ethernet/adi/bfin_mac.c | |||
@@ -647,7 +647,6 @@ static int bfin_mac_set_mac_address(struct net_device *dev, void *p) | |||
647 | if (netif_running(dev)) | 647 | if (netif_running(dev)) |
648 | return -EBUSY; | 648 | return -EBUSY; |
649 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); | 649 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); |
650 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
651 | setup_mac_addr(dev->dev_addr); | 650 | setup_mac_addr(dev->dev_addr); |
652 | return 0; | 651 | return 0; |
653 | } | 652 | } |
diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c index 17651c779680..7af95ce971ec 100644 --- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c +++ b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c | |||
@@ -472,7 +472,6 @@ static int atl1c_set_mac_addr(struct net_device *netdev, void *p) | |||
472 | 472 | ||
473 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); | 473 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); |
474 | memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len); | 474 | memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len); |
475 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
476 | 475 | ||
477 | atl1c_hw_set_mac_addr(&adapter->hw, adapter->hw.mac_addr); | 476 | atl1c_hw_set_mac_addr(&adapter->hw, adapter->hw.mac_addr); |
478 | 477 | ||
diff --git a/drivers/net/ethernet/atheros/atlx/atlx.c b/drivers/net/ethernet/atheros/atlx/atlx.c index 77ffbc4a5071..f82eb1699464 100644 --- a/drivers/net/ethernet/atheros/atlx/atlx.c +++ b/drivers/net/ethernet/atheros/atlx/atlx.c | |||
@@ -84,7 +84,6 @@ static int atlx_set_mac(struct net_device *netdev, void *p) | |||
84 | 84 | ||
85 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); | 85 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); |
86 | memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len); | 86 | memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len); |
87 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
88 | 87 | ||
89 | atlx_set_mac_addr(&adapter->hw); | 88 | atlx_set_mac_addr(&adapter->hw); |
90 | return 0; | 89 | return 0; |
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index f9a15cbf73ef..d17fa5ab15a8 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | |||
@@ -3904,7 +3904,6 @@ int bnx2x_change_mac_addr(struct net_device *dev, void *p) | |||
3904 | return rc; | 3904 | return rc; |
3905 | } | 3905 | } |
3906 | 3906 | ||
3907 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
3908 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); | 3907 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); |
3909 | 3908 | ||
3910 | if (netif_running(dev)) | 3909 | if (netif_running(dev)) |
diff --git a/drivers/net/ethernet/calxeda/xgmac.c b/drivers/net/ethernet/calxeda/xgmac.c index b407043ce9b0..a345e2454b83 100644 --- a/drivers/net/ethernet/calxeda/xgmac.c +++ b/drivers/net/ethernet/calxeda/xgmac.c | |||
@@ -1459,7 +1459,6 @@ static int xgmac_set_mac_address(struct net_device *dev, void *p) | |||
1459 | if (!is_valid_ether_addr(addr->sa_data)) | 1459 | if (!is_valid_ether_addr(addr->sa_data)) |
1460 | return -EADDRNOTAVAIL; | 1460 | return -EADDRNOTAVAIL; |
1461 | 1461 | ||
1462 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1463 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); | 1462 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); |
1464 | 1463 | ||
1465 | xgmac_set_mac_addr(ioaddr, dev->dev_addr, 0); | 1464 | xgmac_set_mac_addr(ioaddr, dev->dev_addr, 0); |
diff --git a/drivers/net/ethernet/cisco/enic/enic_main.c b/drivers/net/ethernet/cisco/enic/enic_main.c index 64866ff1aea0..ebccebff1437 100644 --- a/drivers/net/ethernet/cisco/enic/enic_main.c +++ b/drivers/net/ethernet/cisco/enic/enic_main.c | |||
@@ -865,7 +865,6 @@ static int enic_set_mac_addr(struct net_device *netdev, char *addr) | |||
865 | } | 865 | } |
866 | 866 | ||
867 | memcpy(netdev->dev_addr, addr, netdev->addr_len); | 867 | memcpy(netdev->dev_addr, addr, netdev->addr_len); |
868 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
869 | 868 | ||
870 | return 0; | 869 | return 0; |
871 | } | 870 | } |
diff --git a/drivers/net/ethernet/ethoc.c b/drivers/net/ethernet/ethoc.c index f380bb7653dd..b93062dac482 100644 --- a/drivers/net/ethernet/ethoc.c +++ b/drivers/net/ethernet/ethoc.c | |||
@@ -784,7 +784,6 @@ static int ethoc_set_mac_address(struct net_device *dev, void *addr) | |||
784 | ethoc_write(priv, MAC_ADDR1, (mac[0] << 8) | (mac[1] << 0)); | 784 | ethoc_write(priv, MAC_ADDR1, (mac[0] << 8) | (mac[1] << 0)); |
785 | 785 | ||
786 | memcpy(dev->dev_addr, mac, ETH_ALEN); | 786 | memcpy(dev->dev_addr, mac, ETH_ALEN); |
787 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
788 | 787 | ||
789 | return 0; | 788 | return 0; |
790 | } | 789 | } |
diff --git a/drivers/net/ethernet/intel/igbvf/netdev.c b/drivers/net/ethernet/intel/igbvf/netdev.c index 277f5dfe3d90..53281ff17315 100644 --- a/drivers/net/ethernet/intel/igbvf/netdev.c +++ b/drivers/net/ethernet/intel/igbvf/netdev.c | |||
@@ -1738,7 +1738,6 @@ static int igbvf_set_mac(struct net_device *netdev, void *p) | |||
1738 | return -EADDRNOTAVAIL; | 1738 | return -EADDRNOTAVAIL; |
1739 | 1739 | ||
1740 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); | 1740 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); |
1741 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1742 | 1741 | ||
1743 | return 0; | 1742 | return 0; |
1744 | } | 1743 | } |
diff --git a/drivers/net/ethernet/marvell/pxa168_eth.c b/drivers/net/ethernet/marvell/pxa168_eth.c index 10d678d3dd01..aa037ca314e7 100644 --- a/drivers/net/ethernet/marvell/pxa168_eth.c +++ b/drivers/net/ethernet/marvell/pxa168_eth.c | |||
@@ -627,7 +627,6 @@ static int pxa168_eth_set_mac_address(struct net_device *dev, void *addr) | |||
627 | if (!is_valid_ether_addr(sa->sa_data)) | 627 | if (!is_valid_ether_addr(sa->sa_data)) |
628 | return -EADDRNOTAVAIL; | 628 | return -EADDRNOTAVAIL; |
629 | memcpy(oldMac, dev->dev_addr, ETH_ALEN); | 629 | memcpy(oldMac, dev->dev_addr, ETH_ALEN); |
630 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
631 | memcpy(dev->dev_addr, sa->sa_data, ETH_ALEN); | 630 | memcpy(dev->dev_addr, sa->sa_data, ETH_ALEN); |
632 | netif_addr_lock_bh(dev); | 631 | netif_addr_lock_bh(dev); |
633 | update_hash_table_mac_address(pep, oldMac, dev->dev_addr); | 632 | update_hash_table_mac_address(pep, oldMac, dev->dev_addr); |
diff --git a/drivers/net/ethernet/micrel/ks8842.c b/drivers/net/ethernet/micrel/ks8842.c index b71eb39ab448..fbcb9e74d7fc 100644 --- a/drivers/net/ethernet/micrel/ks8842.c +++ b/drivers/net/ethernet/micrel/ks8842.c | |||
@@ -1080,7 +1080,6 @@ static int ks8842_set_mac(struct net_device *netdev, void *p) | |||
1080 | if (!is_valid_ether_addr(addr->sa_data)) | 1080 | if (!is_valid_ether_addr(addr->sa_data)) |
1081 | return -EADDRNOTAVAIL; | 1081 | return -EADDRNOTAVAIL; |
1082 | 1082 | ||
1083 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1084 | memcpy(netdev->dev_addr, mac, netdev->addr_len); | 1083 | memcpy(netdev->dev_addr, mac, netdev->addr_len); |
1085 | 1084 | ||
1086 | ks8842_write_mac_addr(adapter, mac); | 1085 | ks8842_write_mac_addr(adapter, mac); |
diff --git a/drivers/net/ethernet/micrel/ks8851.c b/drivers/net/ethernet/micrel/ks8851.c index 286816a4e783..d59bc0e151b3 100644 --- a/drivers/net/ethernet/micrel/ks8851.c +++ b/drivers/net/ethernet/micrel/ks8851.c | |||
@@ -1052,7 +1052,6 @@ static int ks8851_set_mac_address(struct net_device *dev, void *addr) | |||
1052 | if (!is_valid_ether_addr(sa->sa_data)) | 1052 | if (!is_valid_ether_addr(sa->sa_data)) |
1053 | return -EADDRNOTAVAIL; | 1053 | return -EADDRNOTAVAIL; |
1054 | 1054 | ||
1055 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1056 | memcpy(dev->dev_addr, sa->sa_data, ETH_ALEN); | 1055 | memcpy(dev->dev_addr, sa->sa_data, ETH_ALEN); |
1057 | return ks8851_write_mac_addr(dev); | 1056 | return ks8851_write_mac_addr(dev); |
1058 | } | 1057 | } |
diff --git a/drivers/net/ethernet/micrel/ks8851_mll.c b/drivers/net/ethernet/micrel/ks8851_mll.c index ef8f9f92e547..a343066f7b43 100644 --- a/drivers/net/ethernet/micrel/ks8851_mll.c +++ b/drivers/net/ethernet/micrel/ks8851_mll.c | |||
@@ -1237,7 +1237,6 @@ static int ks_set_mac_address(struct net_device *netdev, void *paddr) | |||
1237 | struct sockaddr *addr = paddr; | 1237 | struct sockaddr *addr = paddr; |
1238 | u8 *da; | 1238 | u8 *da; |
1239 | 1239 | ||
1240 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1241 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); | 1240 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); |
1242 | 1241 | ||
1243 | da = (u8 *)netdev->dev_addr; | 1242 | da = (u8 *)netdev->dev_addr; |
diff --git a/drivers/net/ethernet/microchip/enc28j60.c b/drivers/net/ethernet/microchip/enc28j60.c index a99456c3dd87..5d98a9f7bfc7 100644 --- a/drivers/net/ethernet/microchip/enc28j60.c +++ b/drivers/net/ethernet/microchip/enc28j60.c | |||
@@ -527,7 +527,6 @@ static int enc28j60_set_mac_address(struct net_device *dev, void *addr) | |||
527 | if (!is_valid_ether_addr(address->sa_data)) | 527 | if (!is_valid_ether_addr(address->sa_data)) |
528 | return -EADDRNOTAVAIL; | 528 | return -EADDRNOTAVAIL; |
529 | 529 | ||
530 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
531 | memcpy(dev->dev_addr, address->sa_data, dev->addr_len); | 530 | memcpy(dev->dev_addr, address->sa_data, dev->addr_len); |
532 | return enc28j60_set_hw_macaddr(dev); | 531 | return enc28j60_set_hw_macaddr(dev); |
533 | } | 532 | } |
diff --git a/drivers/net/ethernet/nvidia/forcedeth.c b/drivers/net/ethernet/nvidia/forcedeth.c index 653487dc7b52..b53bf9db471a 100644 --- a/drivers/net/ethernet/nvidia/forcedeth.c +++ b/drivers/net/ethernet/nvidia/forcedeth.c | |||
@@ -3025,7 +3025,6 @@ static int nv_set_mac_address(struct net_device *dev, void *addr) | |||
3025 | 3025 | ||
3026 | /* synchronized against open : rtnl_lock() held by caller */ | 3026 | /* synchronized against open : rtnl_lock() held by caller */ |
3027 | memcpy(dev->dev_addr, macaddr->sa_data, ETH_ALEN); | 3027 | memcpy(dev->dev_addr, macaddr->sa_data, ETH_ALEN); |
3028 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
3029 | 3028 | ||
3030 | if (netif_running(dev)) { | 3029 | if (netif_running(dev)) { |
3031 | netif_tx_lock_bh(dev); | 3030 | netif_tx_lock_bh(dev); |
diff --git a/drivers/net/ethernet/octeon/octeon_mgmt.c b/drivers/net/ethernet/octeon/octeon_mgmt.c index b5499198e029..b4a842c3b5c4 100644 --- a/drivers/net/ethernet/octeon/octeon_mgmt.c +++ b/drivers/net/ethernet/octeon/octeon_mgmt.c | |||
@@ -1534,12 +1534,10 @@ static int octeon_mgmt_probe(struct platform_device *pdev) | |||
1534 | 1534 | ||
1535 | mac = of_get_mac_address(pdev->dev.of_node); | 1535 | mac = of_get_mac_address(pdev->dev.of_node); |
1536 | 1536 | ||
1537 | if (mac && is_valid_ether_addr(mac)) { | 1537 | if (mac && is_valid_ether_addr(mac)) |
1538 | memcpy(netdev->dev_addr, mac, ETH_ALEN); | 1538 | memcpy(netdev->dev_addr, mac, ETH_ALEN); |
1539 | netdev->addr_assign_type &= ~NET_ADDR_RANDOM; | 1539 | else |
1540 | } else { | ||
1541 | eth_hw_addr_random(netdev); | 1540 | eth_hw_addr_random(netdev); |
1542 | } | ||
1543 | 1541 | ||
1544 | p->phy_np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); | 1542 | p->phy_np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); |
1545 | 1543 | ||
diff --git a/drivers/net/ethernet/smsc/smsc911x.c b/drivers/net/ethernet/smsc/smsc911x.c index e112877d15d3..04ff63cb6544 100644 --- a/drivers/net/ethernet/smsc/smsc911x.c +++ b/drivers/net/ethernet/smsc/smsc911x.c | |||
@@ -1831,7 +1831,6 @@ static int smsc911x_set_mac_address(struct net_device *dev, void *p) | |||
1831 | if (!is_valid_ether_addr(addr->sa_data)) | 1831 | if (!is_valid_ether_addr(addr->sa_data)) |
1832 | return -EADDRNOTAVAIL; | 1832 | return -EADDRNOTAVAIL; |
1833 | 1833 | ||
1834 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1835 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); | 1834 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); |
1836 | 1835 | ||
1837 | spin_lock_irq(&pdata->mac_lock); | 1836 | spin_lock_irq(&pdata->mac_lock); |
diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c index 2a3e2c56bc60..6841a22c8621 100644 --- a/drivers/net/ethernet/ti/davinci_emac.c +++ b/drivers/net/ethernet/ti/davinci_emac.c | |||
@@ -1264,7 +1264,6 @@ static int emac_dev_setmac_addr(struct net_device *ndev, void *addr) | |||
1264 | /* Store mac addr in priv and rx channel and set it in EMAC hw */ | 1264 | /* Store mac addr in priv and rx channel and set it in EMAC hw */ |
1265 | memcpy(priv->mac_addr, sa->sa_data, ndev->addr_len); | 1265 | memcpy(priv->mac_addr, sa->sa_data, ndev->addr_len); |
1266 | memcpy(ndev->dev_addr, sa->sa_data, ndev->addr_len); | 1266 | memcpy(ndev->dev_addr, sa->sa_data, ndev->addr_len); |
1267 | ndev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1268 | 1267 | ||
1269 | /* MAC address is configured only after the interface is enabled. */ | 1268 | /* MAC address is configured only after the interface is enabled. */ |
1270 | if (netif_running(ndev)) { | 1269 | if (netif_running(ndev)) { |
diff --git a/drivers/net/ethernet/tile/tilepro.c b/drivers/net/ethernet/tile/tilepro.c index 96070e9b50dc..36435499814b 100644 --- a/drivers/net/ethernet/tile/tilepro.c +++ b/drivers/net/ethernet/tile/tilepro.c | |||
@@ -2195,7 +2195,6 @@ static int tile_net_set_mac_address(struct net_device *dev, void *p) | |||
2195 | 2195 | ||
2196 | /* ISSUE: Note that "dev_addr" is now a pointer. */ | 2196 | /* ISSUE: Note that "dev_addr" is now a pointer. */ |
2197 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); | 2197 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); |
2198 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
2199 | 2198 | ||
2200 | return 0; | 2199 | return 0; |
2201 | } | 2200 | } |
diff --git a/drivers/net/ethernet/wiznet/w5100.c b/drivers/net/ethernet/wiznet/w5100.c index 352383890326..545043cc4c0b 100644 --- a/drivers/net/ethernet/wiznet/w5100.c +++ b/drivers/net/ethernet/wiznet/w5100.c | |||
@@ -570,7 +570,6 @@ static int w5100_set_macaddr(struct net_device *ndev, void *addr) | |||
570 | if (!is_valid_ether_addr(sock_addr->sa_data)) | 570 | if (!is_valid_ether_addr(sock_addr->sa_data)) |
571 | return -EADDRNOTAVAIL; | 571 | return -EADDRNOTAVAIL; |
572 | memcpy(ndev->dev_addr, sock_addr->sa_data, ETH_ALEN); | 572 | memcpy(ndev->dev_addr, sock_addr->sa_data, ETH_ALEN); |
573 | ndev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
574 | w5100_write_macaddr(priv); | 573 | w5100_write_macaddr(priv); |
575 | return 0; | 574 | return 0; |
576 | } | 575 | } |
diff --git a/drivers/net/ethernet/wiznet/w5300.c b/drivers/net/ethernet/wiznet/w5300.c index 9d1d986f8d40..7cbd0e6fc6f3 100644 --- a/drivers/net/ethernet/wiznet/w5300.c +++ b/drivers/net/ethernet/wiznet/w5300.c | |||
@@ -490,7 +490,6 @@ static int w5300_set_macaddr(struct net_device *ndev, void *addr) | |||
490 | if (!is_valid_ether_addr(sock_addr->sa_data)) | 490 | if (!is_valid_ether_addr(sock_addr->sa_data)) |
491 | return -EADDRNOTAVAIL; | 491 | return -EADDRNOTAVAIL; |
492 | memcpy(ndev->dev_addr, sock_addr->sa_data, ETH_ALEN); | 492 | memcpy(ndev->dev_addr, sock_addr->sa_data, ETH_ALEN); |
493 | ndev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
494 | w5300_write_macaddr(priv); | 493 | w5300_write_macaddr(priv); |
495 | return 0; | 494 | return 0; |
496 | } | 495 | } |
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c index 68a43fe602e7..80c6f927a7b4 100644 --- a/drivers/net/macvlan.c +++ b/drivers/net/macvlan.c | |||
@@ -375,7 +375,6 @@ static int macvlan_set_mac_address(struct net_device *dev, void *p) | |||
375 | 375 | ||
376 | if (!(dev->flags & IFF_UP)) { | 376 | if (!(dev->flags & IFF_UP)) { |
377 | /* Just copy in the new address */ | 377 | /* Just copy in the new address */ |
378 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
379 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); | 378 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); |
380 | } else { | 379 | } else { |
381 | /* Rehash and update the device filters */ | 380 | /* Rehash and update the device filters */ |
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index 78c7d8724614..2ea4f0ec54b0 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c | |||
@@ -1500,7 +1500,6 @@ static int team_set_mac_address(struct net_device *dev, void *p) | |||
1500 | if (dev->type == ARPHRD_ETHER && !is_valid_ether_addr(addr->sa_data)) | 1500 | if (dev->type == ARPHRD_ETHER && !is_valid_ether_addr(addr->sa_data)) |
1501 | return -EADDRNOTAVAIL; | 1501 | return -EADDRNOTAVAIL; |
1502 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); | 1502 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); |
1503 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1504 | rcu_read_lock(); | 1503 | rcu_read_lock(); |
1505 | list_for_each_entry_rcu(port, &team->port_list, list) | 1504 | list_for_each_entry_rcu(port, &team->port_list, list) |
1506 | if (team->ops.port_change_dev_addr) | 1505 | if (team->ops.port_change_dev_addr) |
@@ -1770,7 +1769,6 @@ static void team_setup_by_port(struct net_device *dev, | |||
1770 | dev->mtu = port_dev->mtu; | 1769 | dev->mtu = port_dev->mtu; |
1771 | memcpy(dev->broadcast, port_dev->broadcast, port_dev->addr_len); | 1770 | memcpy(dev->broadcast, port_dev->broadcast, port_dev->addr_len); |
1772 | memcpy(dev->dev_addr, port_dev->dev_addr, port_dev->addr_len); | 1771 | memcpy(dev->dev_addr, port_dev->dev_addr, port_dev->addr_len); |
1773 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
1774 | } | 1772 | } |
1775 | 1773 | ||
1776 | static int team_dev_type_check_change(struct net_device *dev, | 1774 | static int team_dev_type_check_change(struct net_device *dev, |
diff --git a/drivers/staging/octeon/ethernet.c b/drivers/staging/octeon/ethernet.c index ef32dc1bbc80..9a2ec251ae4d 100644 --- a/drivers/staging/octeon/ethernet.c +++ b/drivers/staging/octeon/ethernet.c | |||
@@ -453,12 +453,10 @@ int cvm_oct_common_init(struct net_device *dev) | |||
453 | if (priv->of_node) | 453 | if (priv->of_node) |
454 | mac = of_get_mac_address(priv->of_node); | 454 | mac = of_get_mac_address(priv->of_node); |
455 | 455 | ||
456 | if (mac && is_valid_ether_addr(mac)) { | 456 | if (mac && is_valid_ether_addr(mac)) |
457 | memcpy(dev->dev_addr, mac, ETH_ALEN); | 457 | memcpy(dev->dev_addr, mac, ETH_ALEN); |
458 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | 458 | else |
459 | } else { | ||
460 | eth_hw_addr_random(dev); | 459 | eth_hw_addr_random(dev); |
461 | } | ||
462 | 460 | ||
463 | /* | 461 | /* |
464 | * Force the interface to use the POW send if always_use_pow | 462 | * Force the interface to use the POW send if always_use_pow |
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index 6b548fde8e04..fa388b2c60d7 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c | |||
@@ -124,7 +124,6 @@ static int batadv_interface_set_mac_addr(struct net_device *dev, void *p) | |||
124 | batadv_tt_local_add(dev, addr->sa_data, BATADV_NULL_IFINDEX); | 124 | batadv_tt_local_add(dev, addr->sa_data, BATADV_NULL_IFINDEX); |
125 | } | 125 | } |
126 | 126 | ||
127 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
128 | return 0; | 127 | return 0; |
129 | } | 128 | } |
130 | 129 | ||
diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c index 7c78e2640190..38974f70ec7b 100644 --- a/net/bridge/br_device.c +++ b/net/bridge/br_device.c | |||
@@ -172,7 +172,6 @@ static int br_set_mac_address(struct net_device *dev, void *p) | |||
172 | 172 | ||
173 | spin_lock_bh(&br->lock); | 173 | spin_lock_bh(&br->lock); |
174 | if (!ether_addr_equal(dev->dev_addr, addr->sa_data)) { | 174 | if (!ether_addr_equal(dev->dev_addr, addr->sa_data)) { |
175 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
176 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); | 175 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); |
177 | br_fdb_change_mac_address(br, addr->sa_data); | 176 | br_fdb_change_mac_address(br, addr->sa_data); |
178 | br_stp_change_bridge_id(br, addr->sa_data); | 177 | br_stp_change_bridge_id(br, addr->sa_data); |
diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c index 4efad533e5f6..bc39c8c8f589 100644 --- a/net/ethernet/eth.c +++ b/net/ethernet/eth.c | |||
@@ -290,8 +290,6 @@ int eth_mac_addr(struct net_device *dev, void *p) | |||
290 | if (!is_valid_ether_addr(addr->sa_data)) | 290 | if (!is_valid_ether_addr(addr->sa_data)) |
291 | return -EADDRNOTAVAIL; | 291 | return -EADDRNOTAVAIL; |
292 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); | 292 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); |
293 | /* if device marked as NET_ADDR_RANDOM, reset it */ | ||
294 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
295 | return 0; | 293 | return 0; |
296 | } | 294 | } |
297 | EXPORT_SYMBOL(eth_mac_addr); | 295 | EXPORT_SYMBOL(eth_mac_addr); |
diff --git a/net/openvswitch/vport-internal_dev.c b/net/openvswitch/vport-internal_dev.c index 5d460c37df07..44cd5c3a4c22 100644 --- a/net/openvswitch/vport-internal_dev.c +++ b/net/openvswitch/vport-internal_dev.c | |||
@@ -69,7 +69,6 @@ static int internal_dev_mac_addr(struct net_device *dev, void *p) | |||
69 | 69 | ||
70 | if (!is_valid_ether_addr(addr->sa_data)) | 70 | if (!is_valid_ether_addr(addr->sa_data)) |
71 | return -EADDRNOTAVAIL; | 71 | return -EADDRNOTAVAIL; |
72 | dev->addr_assign_type &= ~NET_ADDR_RANDOM; | ||
73 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); | 72 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len); |
74 | return 0; | 73 | return 0; |
75 | } | 74 | } |