Re: 2.4.9-pre13aa1 & 2.4.9-pre14: SMP + 3c59x: feature/bug?

From: Andrew Morton (akpm@zip.com.au)
Date: Sat Sep 22 2001 - 15:08:53 EST


Mario Vanoni wrote:
>
> Dual SMP PIII550 BX400 1024MB mem
> according "Documentation/Changes" all >= update.
>
> Both kernels compiled *_without_* modules:
> lilo.conf with append="ether=0,0,3,eth0".
> Ethernet doesn't work anymore,
> with 2.2.19pre#aa#, 2.2.20pre#aa# perfect.
>
> Both kernels compiled with 3c59x as module:
> modules.conf:
> alias eth0 3c59x
> options 3c59x options=3
> obviously without append in lilo.conf.
> Ethernet works as usual.
>
> No difference on all other application.

Net drivers which use the new alloc_etherdev API do not
support the `ether=' kernel boot option.

Going back to the old init_etherdev() API will make it
work again.

--- linux-2.4.10-pre14/drivers/net/3c59x.c Sat Sep 22 10:41:53 2001
+++ linux-akpm/drivers/net/3c59x.c Sat Sep 22 12:59:07 2001
@@ -984,7 +984,7 @@ static int __devinit vortex_probe1(struc
 
         print_name = pdev ? pdev->slot_name : "3c59x";
 
- dev = alloc_etherdev(sizeof(*vp));
+ dev = init_etherdev(NULL, sizeof(*vp));
         retval = -ENOMEM;
         if (!dev) {
                 printk (KERN_ERR PFX "unable to allocate etherdev, aborting\n");
@@ -1328,9 +1328,6 @@ static int __devinit vortex_probe1(struc
                  pci_save_state(vp->pdev, vp->power_state);
                  acpi_set_WOL(dev);
         }
- retval = register_netdev(dev);
- if (retval == 0)
- return 0;
 
 free_ring:
         pci_free_consistent(pdev,
@@ -1341,6 +1338,7 @@ free_ring:
 free_region:
         if (vp->must_free_region)
                 release_region(ioaddr, vci->io_size);
+ unregister_netdevice(dev);
         kfree (dev);
         printk(KERN_ERR PFX "vortex_probe1 fails. Returns %d\n", retval);
 out:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Sep 23 2001 - 21:00:50 EST