net: etherdevice: add address inherit helper
Some etherdevices inherit their address from a parent or master device. The addr_assign_type should be updated along with the address in these cases. Adding a helper function to simplify this. Signed-off-by: Bjørn Mork <bjorn@mork.no> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
5a17a390de
commit
83a093b486
@@ -198,6 +198,21 @@ static inline void eth_hw_addr_random(struct net_device *dev)
|
|||||||
eth_random_addr(dev->dev_addr);
|
eth_random_addr(dev->dev_addr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* eth_hw_addr_inherit - Copy dev_addr from another net_device
|
||||||
|
* @dst: pointer to net_device to copy dev_addr to
|
||||||
|
* @src: pointer to net_device to copy dev_addr from
|
||||||
|
*
|
||||||
|
* Copy the Ethernet address from one net_device to another along with
|
||||||
|
* the address attributes (addr_assign_type).
|
||||||
|
*/
|
||||||
|
static inline void eth_hw_addr_inherit(struct net_device *dst,
|
||||||
|
struct net_device *src)
|
||||||
|
{
|
||||||
|
dst->addr_assign_type = src->addr_assign_type;
|
||||||
|
memcpy(dst->dev_addr, src->dev_addr, ETH_ALEN);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* compare_ether_addr - Compare two Ethernet addresses
|
* compare_ether_addr - Compare two Ethernet addresses
|
||||||
* @addr1: Pointer to a six-byte array containing the Ethernet address
|
* @addr1: Pointer to a six-byte array containing the Ethernet address
|
||||||
|
Reference in New Issue
Block a user