Commit 7ced5440 authored by dingtianhong's avatar dingtianhong Committed by David S. Miller

net: ksz884x: slight optimization of addr compare

Use possibly more efficient ether_addr_equal
to instead of memcmp.

Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: default avatarDing Tianhong <dingtianhong@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c0623e58
...@@ -4128,10 +4128,10 @@ static int hw_add_addr(struct ksz_hw *hw, u8 *mac_addr) ...@@ -4128,10 +4128,10 @@ static int hw_add_addr(struct ksz_hw *hw, u8 *mac_addr)
int i; int i;
int j = ADDITIONAL_ENTRIES; int j = ADDITIONAL_ENTRIES;
if (!memcmp(hw->override_addr, mac_addr, ETH_ALEN)) if (ether_addr_equal(hw->override_addr, mac_addr))
return 0; return 0;
for (i = 0; i < hw->addr_list_size; i++) { for (i = 0; i < hw->addr_list_size; i++) {
if (!memcmp(hw->address[i], mac_addr, ETH_ALEN)) if (ether_addr_equal(hw->address[i], mac_addr))
return 0; return 0;
if (ADDITIONAL_ENTRIES == j && empty_addr(hw->address[i])) if (ADDITIONAL_ENTRIES == j && empty_addr(hw->address[i]))
j = i; j = i;
...@@ -4149,7 +4149,7 @@ static int hw_del_addr(struct ksz_hw *hw, u8 *mac_addr) ...@@ -4149,7 +4149,7 @@ static int hw_del_addr(struct ksz_hw *hw, u8 *mac_addr)
int i; int i;
for (i = 0; i < hw->addr_list_size; i++) { for (i = 0; i < hw->addr_list_size; i++) {
if (!memcmp(hw->address[i], mac_addr, ETH_ALEN)) { if (ether_addr_equal(hw->address[i], mac_addr)) {
memset(hw->address[i], 0, ETH_ALEN); memset(hw->address[i], 0, ETH_ALEN);
writel(0, hw->io + ADD_ADDR_INCR * i + writel(0, hw->io + ADD_ADDR_INCR * i +
KS_ADD_ADDR_0_HI); KS_ADD_ADDR_0_HI);
...@@ -7104,8 +7104,7 @@ static int pcidev_init(struct pci_dev *pdev, const struct pci_device_id *id) ...@@ -7104,8 +7104,7 @@ static int pcidev_init(struct pci_dev *pdev, const struct pci_device_id *id)
ETH_ALEN); ETH_ALEN);
else { else {
memcpy(dev->dev_addr, sw->other_addr, ETH_ALEN); memcpy(dev->dev_addr, sw->other_addr, ETH_ALEN);
if (!memcmp(sw->other_addr, hw->override_addr, if (ether_addr_equal(sw->other_addr, hw->override_addr))
ETH_ALEN))
dev->dev_addr[5] += port->first_port; dev->dev_addr[5] += port->first_port;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment