ethernet: sxgbe: use eth_hw_addr_set()
Commit 406f42fa0d
("net-next: When a bond have a massive amount
of VLANs...") introduced a rbtree for faster Ethernet address look
up. To maintain netdev->dev_addr in this tree we need to make all
the writes to it got through appropriate helpers.
Read the address into an array on the stack, then call
eth_hw_addr_set().
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
298b0e0c5f
commit
15fa05bf41
@ -931,10 +931,13 @@ static int sxgbe_get_hw_features(struct sxgbe_priv_data * const priv)
|
||||
static void sxgbe_check_ether_addr(struct sxgbe_priv_data *priv)
|
||||
{
|
||||
if (!is_valid_ether_addr(priv->dev->dev_addr)) {
|
||||
u8 addr[ETH_ALEN];
|
||||
|
||||
priv->hw->mac->get_umac_addr((void __iomem *)
|
||||
priv->ioaddr,
|
||||
priv->dev->dev_addr, 0);
|
||||
if (!is_valid_ether_addr(priv->dev->dev_addr))
|
||||
priv->ioaddr, addr, 0);
|
||||
if (is_valid_ether_addr(addr))
|
||||
eth_hw_addr_set(priv->dev, addr);
|
||||
else
|
||||
eth_hw_addr_random(priv->dev);
|
||||
}
|
||||
dev_info(priv->device, "device MAC address %pM\n",
|
||||
|
Loading…
Reference in New Issue
Block a user