Commit 631ae320 authored by Stephen Hemminger's avatar Stephen Hemminger Committed by Jeff Garzik

[PATCH] skge: dont allow bad hardware address from ROM

Sometimes boards don't reset properly, and the address read out of the
EEPROM is zero. Stop the insanity before the device gets registered.
Signed-off-by: default avatarStephen Hemminger <shemminger@osdl.org>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 7c442fa1
...@@ -3362,6 +3362,14 @@ static int __devinit skge_probe(struct pci_dev *pdev, ...@@ -3362,6 +3362,14 @@ static int __devinit skge_probe(struct pci_dev *pdev,
if ((dev = skge_devinit(hw, 0, using_dac)) == NULL) if ((dev = skge_devinit(hw, 0, using_dac)) == NULL)
goto err_out_led_off; goto err_out_led_off;
if (!is_valid_ether_addr(dev->dev_addr)) {
printk(KERN_ERR PFX "%s: bad (zero?) ethernet address in rom\n",
pci_name(pdev));
err = -EIO;
goto err_out_free_netdev;
}
err = register_netdev(dev); err = register_netdev(dev);
if (err) { if (err) {
printk(KERN_ERR PFX "%s: cannot register net device\n", printk(KERN_ERR PFX "%s: cannot register net device\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment