From: Danny Kukawka Date: Fri, 17 Feb 2012 05:43:25 +0000 (+0000) Subject: xilinx ll_temac: use eth_hw_addr_random() instead of random_ether_addr() X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=5a5e7c36448664a58d13aab5a9006b01f6a58910;p=~shefty%2Frdma-dev.git xilinx ll_temac: use eth_hw_addr_random() instead of random_ether_addr() Use eth_hw_addr_random() instead of calling random_ether_addr() to set addr_assign_type correctly to NET_ADDR_RANDOM. Reset the state to NET_ADDR_PERM as soon as the MAC get changed via .ndo_set_mac_address. v2: reworked to prevent using an extra variable Signed-off-by: Danny Kukawka Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/xilinx/ll_temac_main.c b/drivers/net/ethernet/xilinx/ll_temac_main.c index d8eb9c9e3ee..eb285418924 100644 --- a/drivers/net/ethernet/xilinx/ll_temac_main.c +++ b/drivers/net/ethernet/xilinx/ll_temac_main.c @@ -327,7 +327,9 @@ static int temac_set_mac_address(struct net_device *ndev, void *address) memcpy(ndev->dev_addr, address, ETH_ALEN); if (!is_valid_ether_addr(ndev->dev_addr)) - random_ether_addr(ndev->dev_addr); + eth_hw_addr_random(ndev); + else + dev->addr_assign_type &= ~NET_ADDR_RANDOM; /* set up unicast MAC address filter set its mac address */ mutex_lock(&lp->indirect_mutex);