Messages in this thread | | | Date | Mon, 16 Jan 2012 07:42:55 -0800 | From | Darren Hart <> | Subject | Re: [PATCH] pch_gbe: Use a randomly generated MAC instead of failing probe |
| |
On 01/16/2012 04:31 AM, Alan Cox wrote: >> Saving MAC address into external ROM is generic method, I think. >> Though I know the ROM-less system using eg20t-pch, however I think >> this system is not common. >> So, I think pch_gbe shouldn't have auto-mac address assignment. > > The problem is the module load fails for those cases. You cannot load > the module and use the standard ifconfig eth0 hw aa:bb:cc:dd:ee:ff > interface. The better fix might be to make sure it loads. > > So change from > > memcpy(netdev->dev_addr, adapter->hw.mac.addr, > netdev->addr_len); > if (!is_valid_ether_addr(netdev->dev_addr)) { > dev_err(&pdev->dev, "Invalid MAC Address\n"); > ret = -EIO; > goto err_free_adapter; > } > > to just printing a warning, and check the current address when a user > tries to ifconfig it up and refuse to allow the port to go active.
I can go this route I suppose. I don't really understand the objection to the use of a random mac addr in the special case given the prevalence of this approach within existing drivers.
One reason I don't care for this alternative approach is that this particular hardware is targeted at embedded use where we can't assume a full init system is available, etc. It can be made to work of course, it just isn't as automated.
David, would you orefer/accept an alternative patch which allows the driver to load without a MAC address so the user can set it via ifconfig after boot?
-- Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel
| |