diff options
author | Greg Rose <gregory.v.rose@intel.com> | 2014-05-22 02:32:02 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2014-06-11 11:48:22 -0400 |
commit | 9a173901d9969ddd527f8e6de36f4c1b11ce9fb3 (patch) | |
tree | e8a8954ff1fe0853041c0a3e2b9423eafd336872 /drivers/net | |
parent | 8c27d42ec61e9568fc24dbfb347d844252100765 (diff) |
i40e/i40evf: User ether_addr_copy instead of memcpy
Linux gives us a function to copy Ethernet MAC addresses, let's use it.
Change-ID: I0c861900029ca5ea65a53ca39565852fb633f6fd
Signed-off-by: Greg Rose <gregory.v.rose@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/ethernet/intel/i40e/i40e_main.c | 20 | ||||
-rw-r--r-- | drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 2 | ||||
-rw-r--r-- | drivers/net/ethernet/intel/i40evf/i40evf_main.c | 13 | ||||
-rw-r--r-- | drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c | 4 |
4 files changed, 18 insertions, 21 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c index 211684ce113a..e3916d00d403 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c | |||
@@ -1202,7 +1202,7 @@ struct i40e_mac_filter *i40e_add_filter(struct i40e_vsi *vsi, | |||
1202 | if (!f) | 1202 | if (!f) |
1203 | goto add_filter_out; | 1203 | goto add_filter_out; |
1204 | 1204 | ||
1205 | memcpy(f->macaddr, macaddr, ETH_ALEN); | 1205 | ether_addr_copy(f->macaddr, macaddr); |
1206 | f->vlan = vlan; | 1206 | f->vlan = vlan; |
1207 | f->changed = true; | 1207 | f->changed = true; |
1208 | 1208 | ||
@@ -1326,7 +1326,7 @@ static int i40e_set_mac(struct net_device *netdev, void *p) | |||
1326 | return -EADDRNOTAVAIL; | 1326 | return -EADDRNOTAVAIL; |
1327 | } | 1327 | } |
1328 | 1328 | ||
1329 | memcpy(vsi->back->hw.mac.addr, addr->sa_data, netdev->addr_len); | 1329 | ether_addr_copy(vsi->back->hw.mac.addr, addr->sa_data); |
1330 | } | 1330 | } |
1331 | 1331 | ||
1332 | /* In order to be sure to not drop any packets, add the new address | 1332 | /* In order to be sure to not drop any packets, add the new address |
@@ -1340,7 +1340,7 @@ static int i40e_set_mac(struct net_device *netdev, void *p) | |||
1340 | i40e_del_filter(vsi, netdev->dev_addr, I40E_VLAN_ANY, false, false); | 1340 | i40e_del_filter(vsi, netdev->dev_addr, I40E_VLAN_ANY, false, false); |
1341 | i40e_sync_vsi_filters(vsi); | 1341 | i40e_sync_vsi_filters(vsi); |
1342 | 1342 | ||
1343 | memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len); | 1343 | ether_addr_copy(netdev->dev_addr, addr->sa_data); |
1344 | 1344 | ||
1345 | return 0; | 1345 | return 0; |
1346 | } | 1346 | } |
@@ -1597,8 +1597,7 @@ int i40e_sync_vsi_filters(struct i40e_vsi *vsi) | |||
1597 | cmd_flags = 0; | 1597 | cmd_flags = 0; |
1598 | 1598 | ||
1599 | /* add to delete list */ | 1599 | /* add to delete list */ |
1600 | memcpy(del_list[num_del].mac_addr, | 1600 | ether_addr_copy(del_list[num_del].mac_addr, f->macaddr); |
1601 | f->macaddr, ETH_ALEN); | ||
1602 | del_list[num_del].vlan_tag = | 1601 | del_list[num_del].vlan_tag = |
1603 | cpu_to_le16((u16)(f->vlan == | 1602 | cpu_to_le16((u16)(f->vlan == |
1604 | I40E_VLAN_ANY ? 0 : f->vlan)); | 1603 | I40E_VLAN_ANY ? 0 : f->vlan)); |
@@ -1663,8 +1662,7 @@ int i40e_sync_vsi_filters(struct i40e_vsi *vsi) | |||
1663 | cmd_flags = 0; | 1662 | cmd_flags = 0; |
1664 | 1663 | ||
1665 | /* add to add array */ | 1664 | /* add to add array */ |
1666 | memcpy(add_list[num_add].mac_addr, | 1665 | ether_addr_copy(add_list[num_add].mac_addr, f->macaddr); |
1667 | f->macaddr, ETH_ALEN); | ||
1668 | add_list[num_add].vlan_tag = | 1666 | add_list[num_add].vlan_tag = |
1669 | cpu_to_le16( | 1667 | cpu_to_le16( |
1670 | (u16)(f->vlan == I40E_VLAN_ANY ? 0 : f->vlan)); | 1668 | (u16)(f->vlan == I40E_VLAN_ANY ? 0 : f->vlan)); |
@@ -7003,7 +7001,7 @@ static int i40e_config_netdev(struct i40e_vsi *vsi) | |||
7003 | 7001 | ||
7004 | if (vsi->type == I40E_VSI_MAIN) { | 7002 | if (vsi->type == I40E_VSI_MAIN) { |
7005 | SET_NETDEV_DEV(netdev, &pf->pdev->dev); | 7003 | SET_NETDEV_DEV(netdev, &pf->pdev->dev); |
7006 | memcpy(mac_addr, hw->mac.perm_addr, ETH_ALEN); | 7004 | ether_addr_copy(mac_addr, hw->mac.perm_addr); |
7007 | /* The following two steps are necessary to prevent reception | 7005 | /* The following two steps are necessary to prevent reception |
7008 | * of tagged packets - by default the NVM loads a MAC-VLAN | 7006 | * of tagged packets - by default the NVM loads a MAC-VLAN |
7009 | * filter that will accept any tagged packet. This is to | 7007 | * filter that will accept any tagged packet. This is to |
@@ -7021,8 +7019,8 @@ static int i40e_config_netdev(struct i40e_vsi *vsi) | |||
7021 | } | 7019 | } |
7022 | i40e_add_filter(vsi, brdcast, I40E_VLAN_ANY, false, false); | 7020 | i40e_add_filter(vsi, brdcast, I40E_VLAN_ANY, false, false); |
7023 | 7021 | ||
7024 | memcpy(netdev->dev_addr, mac_addr, ETH_ALEN); | 7022 | ether_addr_copy(netdev->dev_addr, mac_addr); |
7025 | memcpy(netdev->perm_addr, mac_addr, ETH_ALEN); | 7023 | ether_addr_copy(netdev->perm_addr, mac_addr); |
7026 | /* vlan gets same features (except vlan offload) | 7024 | /* vlan gets same features (except vlan offload) |
7027 | * after any tweaks for specific VSI types | 7025 | * after any tweaks for specific VSI types |
7028 | */ | 7026 | */ |
@@ -8524,7 +8522,7 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
8524 | goto err_mac_addr; | 8522 | goto err_mac_addr; |
8525 | } | 8523 | } |
8526 | dev_info(&pdev->dev, "MAC address: %pM\n", hw->mac.addr); | 8524 | dev_info(&pdev->dev, "MAC address: %pM\n", hw->mac.addr); |
8527 | memcpy(hw->mac.perm_addr, hw->mac.addr, ETH_ALEN); | 8525 | ether_addr_copy(hw->mac.perm_addr, hw->mac.addr); |
8528 | 8526 | ||
8529 | pci_set_drvdata(pdev, pf); | 8527 | pci_set_drvdata(pdev, pf); |
8530 | pci_save_state(pdev); | 8528 | pci_save_state(pdev); |
diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c index d9d045667a9e..f5b9d2062573 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c +++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | |||
@@ -2075,7 +2075,7 @@ int i40e_ndo_set_vf_mac(struct net_device *netdev, int vf_id, u8 *mac) | |||
2075 | ret = -EIO; | 2075 | ret = -EIO; |
2076 | goto error_param; | 2076 | goto error_param; |
2077 | } | 2077 | } |
2078 | memcpy(vf->default_lan_addr.addr, mac, ETH_ALEN); | 2078 | ether_addr_copy(vf->default_lan_addr.addr, mac); |
2079 | vf->pf_set_mac = true; | 2079 | vf->pf_set_mac = true; |
2080 | dev_info(&pf->pdev->dev, "Reload the VF driver to make this change effective.\n"); | 2080 | dev_info(&pf->pdev->dev, "Reload the VF driver to make this change effective.\n"); |
2081 | ret = 0; | 2081 | ret = 0; |
diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_main.c b/drivers/net/ethernet/intel/i40evf/i40evf_main.c index f454b58cad2e..8f681caed591 100644 --- a/drivers/net/ethernet/intel/i40evf/i40evf_main.c +++ b/drivers/net/ethernet/intel/i40evf/i40evf_main.c | |||
@@ -772,7 +772,7 @@ i40evf_mac_filter *i40evf_add_filter(struct i40evf_adapter *adapter, | |||
772 | return NULL; | 772 | return NULL; |
773 | } | 773 | } |
774 | 774 | ||
775 | memcpy(f->macaddr, macaddr, ETH_ALEN); | 775 | ether_addr_copy(f->macaddr, macaddr); |
776 | 776 | ||
777 | list_add(&f->list, &adapter->mac_filter_list); | 777 | list_add(&f->list, &adapter->mac_filter_list); |
778 | f->add = true; | 778 | f->add = true; |
@@ -805,9 +805,8 @@ static int i40evf_set_mac(struct net_device *netdev, void *p) | |||
805 | 805 | ||
806 | f = i40evf_add_filter(adapter, addr->sa_data); | 806 | f = i40evf_add_filter(adapter, addr->sa_data); |
807 | if (f) { | 807 | if (f) { |
808 | memcpy(hw->mac.addr, addr->sa_data, netdev->addr_len); | 808 | ether_addr_copy(hw->mac.addr, addr->sa_data); |
809 | memcpy(netdev->dev_addr, adapter->hw.mac.addr, | 809 | ether_addr_copy(netdev->dev_addr, adapter->hw.mac.addr); |
810 | netdev->addr_len); | ||
811 | } | 810 | } |
812 | 811 | ||
813 | return (f == NULL) ? -ENOMEM : 0; | 812 | return (f == NULL) ? -ENOMEM : 0; |
@@ -2059,8 +2058,8 @@ static void i40evf_init_task(struct work_struct *work) | |||
2059 | adapter->hw.mac.addr); | 2058 | adapter->hw.mac.addr); |
2060 | random_ether_addr(adapter->hw.mac.addr); | 2059 | random_ether_addr(adapter->hw.mac.addr); |
2061 | } | 2060 | } |
2062 | memcpy(netdev->dev_addr, adapter->hw.mac.addr, netdev->addr_len); | 2061 | ether_addr_copy(netdev->dev_addr, adapter->hw.mac.addr); |
2063 | memcpy(netdev->perm_addr, adapter->hw.mac.addr, netdev->addr_len); | 2062 | ether_addr_copy(netdev->perm_addr, adapter->hw.mac.addr); |
2064 | 2063 | ||
2065 | INIT_LIST_HEAD(&adapter->mac_filter_list); | 2064 | INIT_LIST_HEAD(&adapter->mac_filter_list); |
2066 | INIT_LIST_HEAD(&adapter->vlan_filter_list); | 2065 | INIT_LIST_HEAD(&adapter->vlan_filter_list); |
@@ -2068,7 +2067,7 @@ static void i40evf_init_task(struct work_struct *work) | |||
2068 | if (NULL == f) | 2067 | if (NULL == f) |
2069 | goto err_sw_init; | 2068 | goto err_sw_init; |
2070 | 2069 | ||
2071 | memcpy(f->macaddr, adapter->hw.mac.addr, ETH_ALEN); | 2070 | ether_addr_copy(f->macaddr, adapter->hw.mac.addr); |
2072 | f->add = true; | 2071 | f->add = true; |
2073 | adapter->aq_required |= I40EVF_FLAG_AQ_ADD_MAC_FILTER; | 2072 | adapter->aq_required |= I40EVF_FLAG_AQ_ADD_MAC_FILTER; |
2074 | 2073 | ||
diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c b/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c index 6d76f29eaac1..2dc0bac76717 100644 --- a/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c +++ b/drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c | |||
@@ -407,7 +407,7 @@ void i40evf_add_ether_addrs(struct i40evf_adapter *adapter) | |||
407 | veal->num_elements = count; | 407 | veal->num_elements = count; |
408 | list_for_each_entry(f, &adapter->mac_filter_list, list) { | 408 | list_for_each_entry(f, &adapter->mac_filter_list, list) { |
409 | if (f->add) { | 409 | if (f->add) { |
410 | memcpy(veal->list[i].addr, f->macaddr, ETH_ALEN); | 410 | ether_addr_copy(veal->list[i].addr, f->macaddr); |
411 | i++; | 411 | i++; |
412 | f->add = false; | 412 | f->add = false; |
413 | } | 413 | } |
@@ -468,7 +468,7 @@ void i40evf_del_ether_addrs(struct i40evf_adapter *adapter) | |||
468 | veal->num_elements = count; | 468 | veal->num_elements = count; |
469 | list_for_each_entry_safe(f, ftmp, &adapter->mac_filter_list, list) { | 469 | list_for_each_entry_safe(f, ftmp, &adapter->mac_filter_list, list) { |
470 | if (f->remove) { | 470 | if (f->remove) { |
471 | memcpy(veal->list[i].addr, f->macaddr, ETH_ALEN); | 471 | ether_addr_copy(veal->list[i].addr, f->macaddr); |
472 | i++; | 472 | i++; |
473 | list_del(&f->list); | 473 | list_del(&f->list); |
474 | kfree(f); | 474 | kfree(f); |