From f63ec19dca6df70560fc7d5c5e2ebe40c1bd2154 Mon Sep 17 00:00:00 2001 From: Hannes Reinecke Date: Tue, 3 Jun 2014 14:01:16 +0200 Subject: [PATCH] [igbvf] Assign random MAC address if none is set If the VF doesn't have a MAC address assigned we should create a random MAC address. Signed-off-by: Hannes Reinecke Modified-by: Michael Brown Signed-off-by: Michael Brown --- src/drivers/net/igbvf/igbvf_main.c | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/drivers/net/igbvf/igbvf_main.c b/src/drivers/net/igbvf/igbvf_main.c index cd189ecb..901bba95 100644 --- a/src/drivers/net/igbvf/igbvf_main.c +++ b/src/drivers/net/igbvf/igbvf_main.c @@ -871,20 +871,14 @@ int igbvf_probe ( struct pci_device *pdev ) DBG ("Error reading MAC address\n"); goto err_hw_init; } + if ( ! is_valid_ether_addr(adapter->hw.mac.addr) ) { + /* Assign random MAC address */ + eth_random_addr(adapter->hw.mac.addr); + } } memcpy ( netdev->hw_addr, adapter->hw.mac.addr, ETH_ALEN ); - if ( ! is_valid_ether_addr( netdev->hw_addr ) ) { - DBG ("Invalid MAC Address: " - "%02x:%02x:%02x:%02x:%02x:%02x\n", - netdev->hw_addr[0], netdev->hw_addr[1], - netdev->hw_addr[2], netdev->hw_addr[3], - netdev->hw_addr[4], netdev->hw_addr[5]); - err = -EIO; - goto err_hw_init; - } - /* reset the hardware with the new settings */ igbvf_reset ( adapter );