ethernet: use eth_hw_addr_set() for dev->addr_len cases
authorJakub Kicinski <kuba@kernel.org>
Mon, 4 Oct 2021 16:05:21 +0000 (09:05 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 Oct 2021 12:16:48 +0000 (13:16 +0100)
Convert all Ethernet drivers from memcpy(... dev->addr_len)
to eth_hw_addr_set():

  @@
  expression dev, np;
  @@
  - memcpy(dev->dev_addr, np, dev->addr_len)
  + eth_hw_addr_set(dev, np)

In theory addr_len may not be ETH_ALEN, but we don't expect
non-Ethernet devices to live under this directory, and only
the following cases of setting addr_len exist:
 - cxgb4 for mgmt device,
and the drivers which set it to ETH_ALEN: s2io, mlx4, vxge.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
76 files changed:
drivers/net/ethernet/8390/ne2k-pci.c
drivers/net/ethernet/actions/owl-emac.c
drivers/net/ethernet/aeroflex/greth.c
drivers/net/ethernet/alteon/acenic.c
drivers/net/ethernet/amd/amd8111e.c
drivers/net/ethernet/amd/atarilance.c
drivers/net/ethernet/amd/xgbe/xgbe-drv.c
drivers/net/ethernet/amd/xgbe/xgbe-main.c
drivers/net/ethernet/arc/emac_main.c
drivers/net/ethernet/atheros/alx/main.c
drivers/net/ethernet/atheros/atl1c/atl1c_main.c
drivers/net/ethernet/atheros/atl1e/atl1e_main.c
drivers/net/ethernet/atheros/atlx/atl1.c
drivers/net/ethernet/atheros/atlx/atl2.c
drivers/net/ethernet/atheros/atlx/atlx.c
drivers/net/ethernet/broadcom/b44.c
drivers/net/ethernet/broadcom/bcmsysport.c
drivers/net/ethernet/broadcom/bnx2.c
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/tg3.c
drivers/net/ethernet/calxeda/xgmac.c
drivers/net/ethernet/cavium/liquidio/lio_main.c
drivers/net/ethernet/cavium/liquidio/lio_vf_main.c
drivers/net/ethernet/cavium/thunder/nicvf_main.c
drivers/net/ethernet/chelsio/cxgb/cxgb2.c
drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
drivers/net/ethernet/chelsio/cxgb4vf/cxgb4vf_main.c
drivers/net/ethernet/cirrus/cs89x0.c
drivers/net/ethernet/cisco/enic/enic_main.c
drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
drivers/net/ethernet/freescale/enetc/enetc_pf.c
drivers/net/ethernet/freescale/fec_main.c
drivers/net/ethernet/freescale/fec_mpc52xx.c
drivers/net/ethernet/freescale/ucc_geth.c
drivers/net/ethernet/hisilicon/hisi_femac.c
drivers/net/ethernet/hisilicon/hns/hns_enet.c
drivers/net/ethernet/ibm/ehea/ehea_main.c
drivers/net/ethernet/ibm/emac/core.c
drivers/net/ethernet/intel/e100.c
drivers/net/ethernet/intel/e1000/e1000_main.c
drivers/net/ethernet/intel/e1000e/netdev.c
drivers/net/ethernet/intel/ice/ice_main.c
drivers/net/ethernet/intel/igb/igb_main.c
drivers/net/ethernet/intel/igbvf/netdev.c
drivers/net/ethernet/intel/igc/igc_main.c
drivers/net/ethernet/intel/ixgb/ixgb_main.c
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
drivers/net/ethernet/jme.c
drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c
drivers/net/ethernet/mellanox/mlxsw/spectrum.c
drivers/net/ethernet/micrel/ks8842.c
drivers/net/ethernet/microchip/encx24j600.c
drivers/net/ethernet/moxa/moxart_ether.c
drivers/net/ethernet/neterion/s2io.c
drivers/net/ethernet/neterion/vxge/vxge-main.c
drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
drivers/net/ethernet/pasemi/pasemi_mac.c
drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c
drivers/net/ethernet/qlogic/qla3xxx.c
drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
drivers/net/ethernet/realtek/8139cp.c
drivers/net/ethernet/realtek/8139too.c
drivers/net/ethernet/rocker/rocker_main.c
drivers/net/ethernet/seeq/sgiseeq.c
drivers/net/ethernet/sgi/ioc3-eth.c
drivers/net/ethernet/sun/niu.c
drivers/net/ethernet/sun/sungem.c
drivers/net/ethernet/synopsys/dwc-xlgmac-common.c
drivers/net/ethernet/synopsys/dwc-xlgmac-net.c
drivers/net/ethernet/tehuti/tehuti.c
drivers/net/ethernet/ti/davinci_emac.c
drivers/net/ethernet/xilinx/xilinx_emaclite.c

index d6715008e04d7bfa50dccc94100d76bf4cb8a2b0..6a0a2039600a0ae2f648b00a85ac6f88ccb2e300 100644 (file)
@@ -390,7 +390,7 @@ static int ne2k_pci_init_one(struct pci_dev *pdev,
        dev->ethtool_ops = &ne2k_pci_ethtool_ops;
        NS8390_init(dev, 0);
 
-       memcpy(dev->dev_addr, SA_prom, dev->addr_len);
+       eth_hw_addr_set(dev, SA_prom);
 
        i = register_netdev(dev);
        if (i)
index c4ecf4fcadf841b319d9c333b573c2f776f6c96d..2c25ff3623cd3c73abb31a5e12801e3b5c277099 100644 (file)
@@ -1173,7 +1173,7 @@ static int owl_emac_ndo_set_mac_addr(struct net_device *netdev, void *addr)
        if (netif_running(netdev))
                return -EBUSY;
 
-       memcpy(netdev->dev_addr, skaddr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, skaddr->sa_data);
        owl_emac_set_hw_mac_addr(netdev);
 
        return owl_emac_setup_frame_xmit(netdev_priv(netdev));
index c560ad06f0be3e80a3f6db56b3c47f1c3cd8ec62..cc34eaf0491ff4740804ac5c06146b28219fae74 100644 (file)
@@ -1025,7 +1025,7 @@ static int greth_set_mac_add(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        GRETH_REGSAVE(regs->esa_msb, dev->dev_addr[0] << 8 | dev->dev_addr[1]);
        GRETH_REGSAVE(regs->esa_lsb, dev->dev_addr[2] << 24 | dev->dev_addr[3] << 16 |
                      dev->dev_addr[4] << 8 | dev->dev_addr[5]);
index 9dc12b13061f814fd93a076f1e1eff8765a4a56e..7aaef593b03175a6855dd0adfbb5e05750222afc 100644 (file)
@@ -2718,7 +2718,7 @@ static int ace_set_mac_addr(struct net_device *dev, void *p)
        if(netif_running(dev))
                return -EBUSY;
 
-       memcpy(dev->dev_addr, addr->sa_data,dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        da = (u8 *)dev->dev_addr;
 
index 92e4246dc359cf5acb4601b5d31089de6dd7e125..0b493467b04218ade626241012d27107573994b6 100644 (file)
@@ -1500,7 +1500,7 @@ static int amd8111e_set_mac_address(struct net_device *dev, void *p)
        int i;
        struct sockaddr *addr = p;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        spin_lock_irq(&lp->lock);
        /* Setting the MAC address to the device */
        for (i = 0; i < ETH_ALEN; i++)
index 515e1f279da5a95224fef3839acc71e25086cf65..9c7d9690d00c4fc6a9c4380fd2136cb2bc7a8732 100644 (file)
@@ -1123,7 +1123,7 @@ static int lance_set_mac_address( struct net_device *dev, void *addr )
                return -EIO;
        }
 
-       memcpy( dev->dev_addr, saddr->sa_data, dev->addr_len );
+       eth_hw_addr_set(dev, saddr->sa_data);
        for( i = 0; i < 6; i++ )
                MEM->init.hwaddr[i] = dev->dev_addr[i^1]; /* <- 16 bit swap! */
        lp->memcpy_f( RIEBL_HWADDR_ADDR, dev->dev_addr, 6 );
index 17a585adfb49ce9aa18664c40538dbd39459205c..b5bf5af8db5f61baf9f5d7c0fe39ebc371564cd5 100644 (file)
@@ -2016,7 +2016,7 @@ static int xgbe_set_mac_address(struct net_device *netdev, void *addr)
        if (!is_valid_ether_addr(saddr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, saddr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, saddr->sa_data);
 
        hw_if->set_mac_address(pdata, netdev->dev_addr);
 
index a218dc6f2edd563074a918f783999589735b481b..0e8698928e4d73d5ae2df9e54390c23db6e597e1 100644 (file)
@@ -267,7 +267,7 @@ int xgbe_config_netdev(struct xgbe_prv_data *pdata)
 
        netdev->irq = pdata->dev_irq;
        netdev->base_addr = (unsigned long)pdata->xgmac_regs;
-       memcpy(netdev->dev_addr, pdata->mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, pdata->mac_addr);
 
        /* Initialize ECC timestamps */
        pdata->tx_sec_period = jiffies;
index 38c288ec9059013419c8e283957a9446b93e7a08..215b5144b88515c7aaa67af1e9b2aaf1ebe2d852 100644 (file)
@@ -773,7 +773,7 @@ static int arc_emac_set_address(struct net_device *ndev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(ndev->dev_addr, addr->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, addr->sa_data);
 
        arc_emac_set_address_internal(ndev);
 
index cf5903ac792be8846cc67406b86e9106508185f1..4ad3fc72e74e323f65a333bd2baad0e815ea34b0 100644 (file)
@@ -607,7 +607,7 @@ static int alx_set_mac_address(struct net_device *netdev, void *data)
        if (netdev->addr_assign_type & NET_ADDR_RANDOM)
                netdev->addr_assign_type ^= NET_ADDR_RANDOM;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(hw->mac_addr, addr->sa_data, netdev->addr_len);
        alx_set_macaddr(hw, hw->mac_addr);
 
index 1c258e4ddc96c285b5f754b8f8e644c51cac45ed..da595242bc13a5379975c1978e87028f8c1d4177 100644 (file)
@@ -482,7 +482,7 @@ static int atl1c_set_mac_addr(struct net_device *netdev, void *p)
        if (netif_running(netdev))
                return -EBUSY;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len);
 
        atl1c_hw_set_mac_addr(&adapter->hw, adapter->hw.mac_addr);
@@ -2767,7 +2767,7 @@ static int atl1c_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                /* got a random MAC address, set NET_ADDR_RANDOM to netdev */
                netdev->addr_assign_type = NET_ADDR_RANDOM;
        }
-       memcpy(netdev->dev_addr, adapter->hw.mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, adapter->hw.mac_addr);
        if (netif_msg_probe(adapter))
                dev_dbg(&pdev->dev, "mac address : %pM\n",
                        adapter->hw.mac_addr);
index 2e22483a9040f61a24ee7f2e423edd83b3ddac06..56e5f440e6665e892c3085265e033da03d0bf3c8 100644 (file)
@@ -374,7 +374,7 @@ static int atl1e_set_mac_addr(struct net_device *netdev, void *p)
        if (netif_running(netdev))
                return -EBUSY;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len);
 
        atl1e_hw_set_mac_addr(&adapter->hw);
@@ -2390,7 +2390,7 @@ static int atl1e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                goto err_eeprom;
        }
 
-       memcpy(netdev->dev_addr, adapter->hw.mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, adapter->hw.mac_addr);
        netdev_dbg(netdev, "mac address : %pM\n", adapter->hw.mac_addr);
 
        INIT_WORK(&adapter->reset_task, atl1e_reset_task);
index 68f6c0bbd945c975965e2623faf926dbe21021d9..b4c9e805e98106791421a17b60173960571ccad4 100644 (file)
@@ -3027,7 +3027,7 @@ static int atl1_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                /* mark random mac */
                netdev->addr_assign_type = NET_ADDR_RANDOM;
        }
-       memcpy(netdev->dev_addr, adapter->hw.mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, adapter->hw.mac_addr);
 
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                err = -EIO;
index b69298ddb647fe9922d352d7859027bda52c5c08..bbc4d7b08a498f72fd93d626c434bfbcef1578c7 100644 (file)
@@ -931,7 +931,7 @@ static int atl2_set_mac(struct net_device *netdev, void *p)
        if (netif_running(netdev))
                return -EBUSY;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len);
 
        atl2_set_mac_addr(&adapter->hw);
@@ -1405,7 +1405,7 @@ static int atl2_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        /* copy the MAC address out of the EEPROM */
        atl2_read_mac_addr(&adapter->hw);
-       memcpy(netdev->dev_addr, adapter->hw.mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, adapter->hw.mac_addr);
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                err = -EIO;
                goto err_eeprom;
index 0941d07d083397dc1ca09cf1d1d543607ad05f69..e8cfbf4ff1b53da7ab73cc8d16718ff3a37b0ae9 100644 (file)
@@ -69,7 +69,7 @@ static int atlx_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(adapter->hw.mac_addr, addr->sa_data, netdev->addr_len);
 
        atlx_set_mac_addr(&adapter->hw);
index 20f439aaac1a094e83a5d1f0917c3e5e1ed8f129..55c9e6fcb4716cdf8e14f3b14ca2eff3a21db668 100644 (file)
@@ -1383,7 +1383,7 @@ static int b44_set_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EINVAL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        spin_lock_irq(&bp->lock);
 
index 7fa1b695400d78938b60153726334ebaa5b11450..0c34bef1a431101338b6de83c55b9626a819b2e8 100644 (file)
@@ -1850,7 +1850,7 @@ static int bcm_sysport_change_mac(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EINVAL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        /* interface is disabled, changes to MAC will be reflected on next
         * open call
index b1d7076e4c9a8e298d3d9457730280bac0c3165a..248b81249cb06c8476039918cf4a327b0e66576e 100644 (file)
@@ -7910,7 +7910,7 @@ bnx2_change_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        if (netif_running(dev))
                bnx2_set_mac_addr(bp, bp->dev->dev_addr, 0);
 
index b5d954cb409ae4de9e6e6d70dede933a2154bbfa..e8e8c2d593c558f15a9282c424ed23db7a256e71 100644 (file)
@@ -4336,7 +4336,7 @@ int bnx2x_change_mac_addr(struct net_device *dev, void *p)
                        return rc;
        }
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        if (netif_running(dev))
                rc = bnx2x_set_eth_mac(bp, true);
index 50c975bb7c495200204a1e3a767acba4b5e37060..f05f4271d4c16e3164f0858708bfe998515238e3 100644 (file)
@@ -12369,7 +12369,7 @@ static int bnxt_change_mac_addr(struct net_device *dev, void *p)
        if (rc)
                return rc;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        if (netif_running(dev)) {
                bnxt_close_nic(bp, false, false);
                rc = bnxt_open_nic(bp, false, false);
index 5e0e0e70d80146ee1522108eaf8a5b78c6073229..d95b114808656246e709dc987f55fc2ea8776df6 100644 (file)
@@ -9366,7 +9366,7 @@ static int tg3_set_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        if (!netif_running(dev))
                return 0;
index b6a066404f4bfb742c5556eb07019196a665265f..dc51f36fdf2a0c7beea7fe9dcc0c483d43dac91a 100644 (file)
@@ -1479,7 +1479,7 @@ static int xgmac_set_mac_address(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        xgmac_set_mac_addr(ioaddr, dev->dev_addr, 0);
 
index 5d865ba7aed42182f0c073901276dfbd5f31d076..1daf63e437cec6be234855a1089e8d32725ceab5 100644 (file)
@@ -2024,7 +2024,7 @@ static int liquidio_set_mac(struct net_device *netdev, void *p)
                return -EIO;
        }
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(((u8 *)&lio->linfo.hw_addr) + 2, addr->sa_data, ETH_ALEN);
 
        return 0;
index 8a969a9d4b6377466dcf1145a77f78593e88ee12..c607756b731f07e76f8ad92ee208ae6bfef4323b 100644 (file)
@@ -1168,7 +1168,7 @@ static int liquidio_set_mac(struct net_device *netdev, void *p)
                return -EPERM;
        }
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        ether_addr_copy(((u8 *)&lio->linfo.hw_addr) + 2, addr->sa_data);
 
        return 0;
index 5ef704c8d839fa64da2d0faf4a38f362fc2df384..35021281882c76c450208e6d346a45542f8ae263 100644 (file)
@@ -1611,7 +1611,7 @@ static int nicvf_set_mac_address(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
 
        if (nic->pdev->msix_enabled) {
                if (nicvf_hw_set_mac_addr(nic, netdev))
index d246eee4b6d5c1896820b225c413b195432d30f2..609820e214a343804e2639506ded0cf4dda2e3a5 100644 (file)
@@ -853,7 +853,7 @@ static int t1_set_mac_addr(struct net_device *dev, void *p)
        if (!mac->ops->macaddress_set)
                return -EOPNOTSUPP;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        mac->ops->macaddress_set(mac, dev->dev_addr);
        return 0;
 }
index 38e47703f9abd98ab3137e0a35566894b7ad7041..9cf9e33664e4f7dd0b10507664e137211a58204e 100644 (file)
@@ -2586,7 +2586,7 @@ static int cxgb_set_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        t3_mac_set_address(&pi->mac, LAN_MAC_IDX, dev->dev_addr);
        if (offload_running(adapter))
                write_smt_entry(adapter, pi->port_id);
index 0d9cda4ab30374b1b100670337296b644894c648..dde1cf51d0abf4dbbec6d2bc5558a767bf634bf9 100644 (file)
@@ -3468,7 +3468,7 @@ static int cxgb_set_mac_addr(struct net_device *dev, void *p)
        if (ret < 0)
                return ret;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        return 0;
 }
 
index 4920a80a0460792c6f5de7be6793825c1eef41fe..64479c464b4ec5a1f6ab82f789b2834f031e8ee6 100644 (file)
@@ -1218,7 +1218,7 @@ static int cxgb4vf_set_mac_addr(struct net_device *dev, void *_addr)
        if (ret < 0)
                return ret;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        return 0;
 }
 
index d0c4c8b7a15ab00b627a778aa14f748d9938bce9..bd7920ab166f45861273282cef2336245da91887 100644 (file)
@@ -1227,7 +1227,7 @@ static int set_mac_address(struct net_device *dev, void *p)
        if (netif_running(dev))
                return -EBUSY;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        cs89_dbg(0, debug, "%s: Setting MAC address to %pM\n",
                 dev->name, dev->dev_addr);
index 13dbdd5d07b40b2fb80efc5f8e8ef1178c86f8d7..66348cc3aaafa94f3ad5d0bf67d465d5614606f8 100644 (file)
@@ -985,7 +985,7 @@ static int enic_set_mac_addr(struct net_device *netdev, char *addr)
                        return -EADDRNOTAVAIL;
        }
 
-       memcpy(netdev->dev_addr, addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr);
 
        return 0;
 }
index 685d2d8a3b366268ec4a06e0e51bdf8a65549edf..cd8a7d94f60c28c0ff58b313921c4139c81bdc9e 100644 (file)
@@ -268,7 +268,7 @@ static int dpaa_netdev_init(struct net_device *net_dev,
 
        if (is_valid_ether_addr(mac_addr)) {
                memcpy(net_dev->perm_addr, mac_addr, net_dev->addr_len);
-               memcpy(net_dev->dev_addr, mac_addr, net_dev->addr_len);
+               eth_hw_addr_set(net_dev, mac_addr);
        } else {
                eth_hw_addr_random(net_dev);
                err = priv->mac_dev->change_addr(priv->mac_dev->fman_mac,
index 03c168b1712fcad9eefd8ac1d36f5371a418fe99..34f189271ef2b6801b6df3af9c30152bc684fadb 100644 (file)
@@ -4013,7 +4013,7 @@ static int dpaa2_eth_set_mac_addr(struct dpaa2_eth_priv *priv)
                                return err;
                        }
                }
-               memcpy(net_dev->dev_addr, mac_addr, net_dev->addr_len);
+               eth_hw_addr_set(net_dev, mac_addr);
        } else if (is_zero_ether_addr(dpni_mac_addr)) {
                /* No MAC address configured, fill in net_dev->dev_addr
                 * with a random one
@@ -4038,7 +4038,7 @@ static int dpaa2_eth_set_mac_addr(struct dpaa2_eth_priv *priv)
                /* NET_ADDR_PERM is default, all we have to do is
                 * fill in the device addr.
                 */
-               memcpy(net_dev->dev_addr, dpni_mac_addr, net_dev->addr_len);
+               eth_hw_addr_set(net_dev, dpni_mac_addr);
        }
 
        return 0;
index 175f15c46842e3ee074c3c3ac9da8a592476d4a7..d039457928b0dd2adea8cb0d4703dcb6aaf2f9f6 100644 (file)
@@ -980,7 +980,7 @@ static int dpaa2_switch_port_set_mac_addr(struct ethsw_port_priv *port_priv)
 
        /* First check if firmware has any address configured by bootloader */
        if (!is_zero_ether_addr(mac_addr)) {
-               memcpy(net_dev->dev_addr, mac_addr, net_dev->addr_len);
+               eth_hw_addr_set(net_dev, mac_addr);
        } else {
                /* No MAC address configured, fill in net_dev->dev_addr
                 * with a random one
index 8c6fa134599628d9f85deec26e614a5dc6e9dcd6..628a74ba630cfc4a8e4f8d0b04d44c02fe83f9d4 100644 (file)
@@ -40,7 +40,7 @@ static int enetc_pf_set_mac_addr(struct net_device *ndev, void *addr)
        if (!is_valid_ether_addr(saddr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(ndev->dev_addr, saddr->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, saddr->sa_data);
        enetc_pf_set_primary_mac_addr(&priv->si->hw, 0, saddr->sa_data);
 
        return 0;
index a8280005b50bf09def6cd39c866e6cea7ce53f6a..47a6fc702ac7efaaa8bfa142a0228a79dfcd2221 100644 (file)
@@ -3326,7 +3326,7 @@ fec_set_mac_address(struct net_device *ndev, void *p)
        if (addr) {
                if (!is_valid_ether_addr(addr->sa_data))
                        return -EADDRNOTAVAIL;
-               memcpy(ndev->dev_addr, addr->sa_data, ndev->addr_len);
+               eth_hw_addr_set(ndev, addr->sa_data);
        }
 
        /* Add netif status check here to avoid system hang in below case:
index 73ff359a15f1aa6751f4f502ec9c9ebb72ce2f89..5e418850d32df74b5c3cd7d48397aacaab78fcf4 100644 (file)
@@ -112,7 +112,7 @@ static int mpc52xx_fec_set_mac_address(struct net_device *dev, void *addr)
 {
        struct sockaddr *sock = addr;
 
-       memcpy(dev->dev_addr, sock->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, sock->sa_data);
 
        mpc52xx_fec_set_paddr(dev, sock->sa_data);
        return 0;
index 3eb288d10b0c32d784158cb1c30a38b26db5b510..e84517a4d2458f0fff6dd14e5354c516f6d75de9 100644 (file)
@@ -3205,7 +3205,7 @@ static int ucc_geth_set_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        /*
         * If device is not running, we will set mac addr register
index 22bf914f2dbd0dd8a6b3f899eedef943faef2ad3..c4057de39523c07f362dccee05a8f58cde86c4c6 100644 (file)
@@ -555,7 +555,7 @@ static int hisi_femac_set_mac_address(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(skaddr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, skaddr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, skaddr->sa_data);
        dev->addr_assign_type &= ~NET_ADDR_RANDOM;
 
        hisi_femac_set_hw_mac_addr(priv, dev->dev_addr);
index 343c605c4be86223c042e68f8369d890401a5bd4..2c4801e49aa1bb12f580aea110cedd5ce4475070 100644 (file)
@@ -1194,7 +1194,7 @@ static int hns_nic_net_set_mac_address(struct net_device *ndev, void *p)
                return ret;
        }
 
-       memcpy(ndev->dev_addr, mac_addr->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, mac_addr->sa_data);
 
        return 0;
 }
index b76ebbdbafd12ee1c80a049e385a636d247a2b2c..bad94e4d50f4e7071170ab64131b9b5895ec0268 100644 (file)
@@ -1741,7 +1741,7 @@ static int ehea_set_mac_addr(struct net_device *dev, void *sa)
                goto out_free;
        }
 
-       memcpy(dev->dev_addr, mac_addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, mac_addr->sa_data);
 
        /* Deregister old MAC in pHYP */
        if (port->state == EHEA_PORT_UP) {
index 523c488c71f65fb75cf03d38166217f996666400..8db0ec38bbeeec67e82ba7403337bbf4d9d22ea0 100644 (file)
@@ -1013,7 +1013,7 @@ static int emac_set_mac_address(struct net_device *ndev, void *sa)
 
        mutex_lock(&dev->link_lock);
 
-       memcpy(ndev->dev_addr, addr->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, addr->sa_data);
 
        emac_rx_disable(dev);
        emac_tx_disable(dev);
index b620fdfb15b9afdd11c25b7829ca880c415a06ed..5039a25369517b03344e0f6add5af324759ea985 100644 (file)
@@ -2259,7 +2259,7 @@ static int e100_set_mac_address(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        e100_exec_cb(nic, NULL, e100_setup_iaaddr);
 
        return 0;
index bed4f040face41b6c9e5a501e3561d096c1f509a..669060a2e6aa6c7834971d04122e7a8a24d3f497 100644 (file)
@@ -1103,7 +1103,7 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                        e_err(probe, "EEPROM Read Error\n");
        }
        /* don't block initialization here due to bad MAC address */
-       memcpy(netdev->dev_addr, hw->mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, hw->mac_addr);
 
        if (!is_valid_ether_addr(netdev->dev_addr))
                e_err(probe, "Invalid MAC Address\n");
@@ -2209,7 +2209,7 @@ static int e1000_set_mac(struct net_device *netdev, void *p)
        if (hw->mac_type == e1000_82542_rev2_0)
                e1000_enter_82542_rst(adapter);
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(hw->mac_addr, addr->sa_data, netdev->addr_len);
 
        e1000_rar_set(hw, hw->mac_addr, 0);
index 900b3ab998bd8c433a6055d63f4503617d33aa96..ff8672ae2b6ce69c15f2b56c5d425d433c704340 100644 (file)
@@ -4786,7 +4786,7 @@ static int e1000_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(adapter->hw.mac.addr, addr->sa_data, netdev->addr_len);
 
        hw->mac.ops.rar_set(&adapter->hw, adapter->hw.mac.addr, 0);
@@ -7589,7 +7589,7 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                dev_err(&pdev->dev,
                        "NVM Read Error while reading MAC address\n");
 
-       memcpy(netdev->dev_addr, adapter->hw.mac.addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, adapter->hw.mac.addr);
 
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                dev_err(&pdev->dev, "Invalid MAC Address: %pM\n",
index 57e24aeffbc56b77b765d85d4a889b74573319da..cabe84bb29fe4995c02a196c74b8f40c29d70df4 100644 (file)
@@ -5144,7 +5144,7 @@ static int ice_set_mac_address(struct net_device *netdev, void *pi)
        netif_addr_lock_bh(netdev);
        ether_addr_copy(old_mac, netdev->dev_addr);
        /* change the netdev's MAC address */
-       memcpy(netdev->dev_addr, mac, netdev->addr_len);
+       eth_hw_addr_set(netdev, mac);
        netif_addr_unlock_bh(netdev);
 
        /* Clean up old MAC filter. Not an error if old filter doesn't exist */
index 751de06019a0e87e7f070bbc96224fdd92eedc47..e67a71c3f141b22c4869663570e5a87971a0f060 100644 (file)
@@ -3356,7 +3356,7 @@ static int igb_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                        dev_err(&pdev->dev, "NVM Read Error\n");
        }
 
-       memcpy(netdev->dev_addr, hw->mac.addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, hw->mac.addr);
 
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                dev_err(&pdev->dev, "Invalid MAC Address\n");
@@ -4988,7 +4988,7 @@ static int igb_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(hw->mac.addr, addr->sa_data, netdev->addr_len);
 
        /* set the correct pool for the new PF MAC address in entry 0 */
index d32e72d953c8dfb661eb5249a23c3c042e0d9acf..74ccd622251a2396d3628dc38f5f287534de3eec 100644 (file)
@@ -1527,8 +1527,7 @@ static void igbvf_reset(struct igbvf_adapter *adapter)
        spin_unlock_bh(&hw->mbx_lock);
 
        if (is_valid_ether_addr(adapter->hw.mac.addr)) {
-               memcpy(netdev->dev_addr, adapter->hw.mac.addr,
-                      netdev->addr_len);
+               eth_hw_addr_set(netdev, adapter->hw.mac.addr);
                memcpy(netdev->perm_addr, adapter->hw.mac.addr,
                       netdev->addr_len);
        }
@@ -1813,7 +1812,7 @@ static int igbvf_set_mac(struct net_device *netdev, void *p)
        if (!ether_addr_equal(addr->sa_data, hw->mac.addr))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
 
        return 0;
 }
@@ -2816,8 +2815,7 @@ static int igbvf_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
                else if (is_zero_ether_addr(adapter->hw.mac.addr))
                        dev_info(&pdev->dev,
                                 "MAC address not assigned by administrator.\n");
-               memcpy(netdev->dev_addr, adapter->hw.mac.addr,
-                      netdev->addr_len);
+               eth_hw_addr_set(netdev, adapter->hw.mac.addr);
        }
 
        spin_unlock_bh(&hw->mbx_lock);
index 0e19b4d02e628ac6afecbc9a1fc19616e4cb4a80..7ffb1045f00c2287e2ea7f12ef56ca4ace4a1889 100644 (file)
@@ -949,7 +949,7 @@ static int igc_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(hw->mac.addr, addr->sa_data, netdev->addr_len);
 
        /* set the correct pool for the new PF MAC address in entry 0 */
@@ -6377,7 +6377,7 @@ static int igc_probe(struct pci_dev *pdev,
                        dev_err(&pdev->dev, "NVM Read Error\n");
        }
 
-       memcpy(netdev->dev_addr, hw->mac.addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, hw->mac.addr);
 
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                dev_err(&pdev->dev, "Invalid MAC Address\n");
index 1588376d4c6734cf7f8643f5ee5e756ba66f4ca5..5e1e2f0db82ae848fe4fa948c435649c776c5422 100644 (file)
@@ -1030,7 +1030,7 @@ ixgb_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
 
        ixgb_rar_set(&adapter->hw, addr->sa_data, 0);
 
index 69e8bd9aa1a8df9245befcc825c10b2cbe7b24ac..0f9f022260d70f0653960690a19e89d6ac4bed8c 100644 (file)
@@ -8792,7 +8792,7 @@ static int ixgbe_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        memcpy(hw->mac.addr, addr->sa_data, netdev->addr_len);
 
        ixgbe_mac_set_default_filter(adapter);
@@ -10927,7 +10927,7 @@ skip_sriov:
        eth_platform_get_mac_address(&adapter->pdev->dev,
                                     adapter->hw.mac.perm_addr);
 
-       memcpy(netdev->dev_addr, hw->mac.perm_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, hw->mac.perm_addr);
 
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                e_dev_err("invalid MAC address\n");
index 3ecee2058a40441916f56c4c5df655ca1911d5ea..439674fc976509155954fac8ec55f1c93ea3ef95 100644 (file)
@@ -2254,7 +2254,7 @@ jme_set_macaddr(struct net_device *netdev, void *p)
                return -EBUSY;
 
        spin_lock_bh(&jme->macaddr_lock);
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        jme_set_unicastaddr(netdev);
        spin_unlock_bh(&jme->macaddr_lock);
 
index 9826a9012737568d0a6f7a676dfa685ed7f50be4..0c89eb8a670bb419b82bb0c7d67a4751365206e1 100644 (file)
@@ -203,7 +203,7 @@ int otx2_set_mac_address(struct net_device *netdev, void *p)
                return -EADDRNOTAVAIL;
 
        if (!otx2_hw_set_mac_addr(pfvf, addr->sa_data)) {
-               memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+               eth_hw_addr_set(netdev, addr->sa_data);
                /* update dmac field in vlan offload rule */
                if (netif_running(netdev) &&
                    pfvf->flags & OTX2_FLAG_RX_VLAN_SUPPORT)
index 0e81ae723bc8583bf0eefc852fa77626e4f6aac8..d366786ce0f89983284ae58c41df6e0f83728b4f 100644 (file)
@@ -674,7 +674,7 @@ static int mlxsw_sp_port_set_mac_address(struct net_device *dev, void *p)
        err = mlxsw_sp_port_dev_addr_set(mlxsw_sp_port, addr->sa_data);
        if (err)
                return err;
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        return 0;
 }
 
index b27713906d3a65bd442df0f10fefa3d45a0d4fe2..37ccf8c570b559969c4a034ba52319450f83b200 100644 (file)
@@ -1064,7 +1064,7 @@ static int ks8842_set_mac(struct net_device *netdev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, mac, netdev->addr_len);
+       eth_hw_addr_set(netdev, mac);
 
        ks8842_write_mac_addr(adapter, mac);
        return 0;
@@ -1191,8 +1191,7 @@ static int ks8842_probe(struct platform_device *pdev)
 
                if (i < netdev->addr_len)
                        /* an address was passed, use it */
-                       memcpy(netdev->dev_addr, pdata->macaddr,
-                               netdev->addr_len);
+                       eth_hw_addr_set(netdev, pdata->macaddr);
        }
 
        if (i == netdev->addr_len) {
index c548e63723529535c701fb69d129b0876807a069..d4680113e2497bebc8c2cbe75ac9eb9292c9074a 100644 (file)
@@ -761,7 +761,7 @@ static int encx24j600_set_mac_address(struct net_device *dev, void *addr)
        if (!is_valid_ether_addr(address->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, address->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, address->sa_data);
        return encx24j600_set_hw_macaddr(dev);
 }
 
index 49def6934cad1bbe8ed5fe1a5146d3bc31d49e36..15179b9529e1377ee7c2b7927da4029fa4e91df6 100644 (file)
@@ -65,7 +65,7 @@ static int moxart_set_mac_address(struct net_device *ndev, void *addr)
        if (!is_valid_ether_addr(address->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(ndev->dev_addr, address->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, address->sa_data);
        moxart_update_mac_address(ndev);
 
        return 0;
index 7e325d1697a9935b15dc9fcd8efe8a84ac81523e..5454c1c2f8ad48b32c69d6e67322f34e97aa51d6 100644 (file)
@@ -5202,7 +5202,7 @@ static int s2io_set_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        /* store the MAC address in CAM */
        return do_s2io_prog_unicast(dev, dev->dev_addr);
index f3ee51bf0e568d59bdd6d2d47bd7e717793932e2..1969009a91e79b16eaf325de02b81e885c341727 100644 (file)
@@ -1328,7 +1328,7 @@ static int vxge_set_mac_addr(struct net_device *dev, void *p)
        }
 
        if (unlikely(!is_vxge_card_up(vdev))) {
-               memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+               eth_hw_addr_set(dev, addr->sa_data);
                return VXGE_HW_OK;
        }
 
@@ -1341,7 +1341,7 @@ static int vxge_set_mac_addr(struct net_device *dev, void *p)
                        return -EINVAL;
        }
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        return status;
 }
index ec3e558f890eebb5b8e4d4a13f409a099a6b687f..71d234291fc576b4cd08d6cbcfc53097cf35b410 100644 (file)
@@ -2137,7 +2137,7 @@ static int pch_gbe_set_mac(struct net_device *netdev, void *addr)
        if (!is_valid_ether_addr(skaddr->sa_data)) {
                ret_val = -EADDRNOTAVAIL;
        } else {
-               memcpy(netdev->dev_addr, skaddr->sa_data, netdev->addr_len);
+               eth_hw_addr_set(netdev, skaddr->sa_data);
                memcpy(adapter->hw.mac.addr, skaddr->sa_data, netdev->addr_len);
                pch_gbe_mac_mar_set(&adapter->hw, adapter->hw.mac.addr, 0);
                ret_val = 0;
@@ -2555,7 +2555,7 @@ static int pch_gbe_probe(struct pci_dev *pdev,
                goto err_free_adapter;
        }
 
-       memcpy(netdev->dev_addr, adapter->hw.mac.addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, adapter->hw.mac.addr);
        if (!is_valid_ether_addr(netdev->dev_addr)) {
                /*
                 * If the MAC is invalid (or just missing), display a warning
index 7e096b2888b926e61d32d3302a91a9a162d82766..5512e43bafc1fe2a276be2ee6d536674b498a27c 100644 (file)
@@ -221,7 +221,7 @@ static int pasemi_mac_set_mac_addr(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        adr0 = dev->dev_addr[2] << 24 |
               dev->dev_addr[3] << 16 |
index 344ea11434549f82e77a0625c8937083142b9fc4..b4e094e6f58cbb51b467f2de227836c1987c8916 100644 (file)
@@ -500,7 +500,7 @@ static int netxen_nic_set_mac(struct net_device *netdev, void *p)
        }
 
        memcpy(adapter->mac_addr, addr->sa_data, netdev->addr_len);
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        adapter->macaddr_set(adapter, addr->sa_data);
 
        if (netif_running(netdev)) {
index c00ad57575eab15e982028aa4f0f02d1ffe87873..395f054e9e0c505b7af08728769c655d3c47416d 100644 (file)
@@ -3564,7 +3564,7 @@ static int ql3xxx_set_mac_address(struct net_device *ndev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(ndev->dev_addr, addr->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, addr->sa_data);
 
        spin_lock_irqsave(&qdev->hw_lock, hw_flags);
        /* Program lower 32 bits of the MAC address */
index 73996f47b1e48d08a9b96ea731da52fce71b4b20..ed84f0f97623053b87d3ea87916dba4392a4870f 100644 (file)
@@ -356,7 +356,7 @@ static int qlcnic_set_mac(struct net_device *netdev, void *p)
 
        qlcnic_delete_adapter_mac(adapter);
        memcpy(adapter->mac_addr, addr->sa_data, netdev->addr_len);
-       memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, addr->sa_data);
        qlcnic_set_multi(adapter->netdev);
 
        if (test_bit(__QLCNIC_DEV_UP, &adapter->state)) {
index 2b84b4565e64f128479bdfd0be449129297c8627..614aac780b6b7a1f72322242138815afde875f8f 100644 (file)
@@ -1624,7 +1624,7 @@ static int cp_set_mac_address(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        spin_lock_irq(&cp->lock);
 
index 2e6923cc653e210b2db31379edb604810cea61ab..75b5ac91132b54088148de2ef9f8d40ed17f2d28 100644 (file)
@@ -2238,7 +2238,7 @@ static int rtl8139_set_mac_address(struct net_device *dev, void *p)
        if (!is_valid_ether_addr(addr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
 
        spin_lock_irq(&tp->lock);
 
index 3364b6a56bd1eb465651be5e3a1021580ac8c0e9..f28c0c36b6069300b07e5abf59a7364eb8e0dbcb 100644 (file)
@@ -1954,7 +1954,7 @@ static int rocker_port_set_mac_address(struct net_device *dev, void *p)
        err = rocker_cmd_set_port_settings_macaddr(rocker_port, addr->sa_data);
        if (err)
                return err;
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        return 0;
 }
 
index 16f7410bb714845bd22fe201b498ea3e38128968..96065dfc747bb7a7561595ecb8f11117d41b9c28 100644 (file)
@@ -167,7 +167,7 @@ static int sgiseeq_set_mac_address(struct net_device *dev, void *addr)
        struct sgiseeq_private *sp = netdev_priv(dev);
        struct sockaddr *sa = addr;
 
-       memcpy(dev->dev_addr, sa->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, sa->sa_data);
 
        spin_lock_irq(&sp->tx_lock);
        __sgiseeq_set_mac_address(dev);
index 6220616937a7d20abf03def8b8d0775d588371a3..e2d009866a7b34036d276dda15dd9555e13763bf 100644 (file)
@@ -243,7 +243,7 @@ static int ioc3_set_mac_address(struct net_device *dev, void *addr)
        struct ioc3_private *ip = netdev_priv(dev);
        struct sockaddr *sa = addr;
 
-       memcpy(dev->dev_addr, sa->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, sa->sa_data);
 
        spin_lock_irq(&ip->ioc3_lock);
        __ioc3_set_mac_address(dev);
index 825aca3c68fa5f2d4709e09a45e10d85df81fa3c..1a73a9401347c9f2779da76866a5f05915ed9a08 100644 (file)
@@ -9235,7 +9235,7 @@ static int niu_get_of_props(struct niu *np)
                netdev_err(dev, "%pOF: OF MAC address prop len (%d) is wrong\n",
                           dp, prop_len);
        }
-       memcpy(dev->dev_addr, mac_addr, dev->addr_len);
+       eth_hw_addr_set(dev, mac_addr);
        if (!is_valid_ether_addr(&dev->dev_addr[0])) {
                netdev_err(dev, "%pOF: OF MAC address is invalid\n", dp);
                netdev_err(dev, "%pOF: [ %pM ]\n", dp, dev->dev_addr);
index a5bda9b34fba8b188879455dacd16473d65629f8..5f786d6fa150ee4a92f67f576f277fdbf5f0ac62 100644 (file)
@@ -2437,7 +2437,7 @@ static int gem_set_mac_address(struct net_device *dev, void *addr)
        if (!is_valid_ether_addr(macaddr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(dev->dev_addr, macaddr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, macaddr->sa_data);
 
        /* We'll just catch it later when the device is up'd or resumed */
        if (!netif_running(dev) || !netif_device_present(dev))
index df26cea459048af0ac583cefca0e41c80a9a2b28..5c9b6c90942b64e906902d89f8da39f66ebd9ecf 100644 (file)
@@ -78,7 +78,7 @@ static int xlgmac_init(struct xlgmac_pdata *pdata)
        netdev->irq = pdata->dev_irq;
        netdev->base_addr = (unsigned long)pdata->mac_regs;
        xlgmac_read_mac_addr(pdata);
-       memcpy(netdev->dev_addr, pdata->mac_addr, netdev->addr_len);
+       eth_hw_addr_set(netdev, pdata->mac_addr);
 
        /* Set all the function pointers */
        xlgmac_init_all_ops(pdata);
index 1db7104fef3aaf41a45cc932d2caeb6af424ad6a..d435519236e43e08632ab7ef855763a207b246c5 100644 (file)
@@ -798,7 +798,7 @@ static int xlgmac_set_mac_address(struct net_device *netdev, void *addr)
        if (!is_valid_ether_addr(saddr->sa_data))
                return -EADDRNOTAVAIL;
 
-       memcpy(netdev->dev_addr, saddr->sa_data, netdev->addr_len);
+       eth_hw_addr_set(netdev, saddr->sa_data);
 
        hw_ops->set_mac_address(pdata, netdev->dev_addr);
 
index 6b409f9c586395b64d28b6cf6109b2b3cbfd8c82..3e8a3fde8302cef3b979fb6c66adb3977b451bad 100644 (file)
@@ -832,7 +832,7 @@ static int bdx_set_mac(struct net_device *ndev, void *p)
           if (netif_running(dev))
           return -EBUSY
         */
-       memcpy(ndev->dev_addr, addr->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, addr->sa_data);
        bdx_restore_mac(ndev, priv);
        RET(0);
 }
index e4b4624be2ae9bd796f07349fb972ac725713507..4538e597eefeb4bc85d3223741ae01e22bc7723f 100644 (file)
@@ -1132,7 +1132,7 @@ static int emac_dev_setmac_addr(struct net_device *ndev, void *addr)
 
        /* Store mac addr in priv and rx channel and set it in EMAC hw */
        memcpy(priv->mac_addr, sa->sa_data, ndev->addr_len);
-       memcpy(ndev->dev_addr, sa->sa_data, ndev->addr_len);
+       eth_hw_addr_set(ndev, sa->sa_data);
 
        /* MAC address is configured only after the interface is enabled. */
        if (netif_running(ndev)) {
index b780aad3550aa3a98ba5eb7da4d1f57e7cbc868e..0d4394125d51333b1859e7d524b04397da8ecbf1 100644 (file)
@@ -511,7 +511,7 @@ static int xemaclite_set_mac_address(struct net_device *dev, void *address)
        if (netif_running(dev))
                return -EBUSY;
 
-       memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
+       eth_hw_addr_set(dev, addr->sa_data);
        xemaclite_update_address(lp, dev->dev_addr);
        return 0;
 }