Possible bug in e1000 driver from ORe package
doebel at os.inf.tu-dresden.de
Tue Mar 3 17:05:34 CET 2009
-----BEGIN PGP SIGNED MESSAGE-----
> There is possible bug in e1000 driver from ORe package.
> The heart of the problem is that e1000_probe() function in
> /trunk/l4/pkg/ore/server/lib26/net/e1000/e1000_main.c file does NOT set
> 'irq' field in 'net_device' structure (e.g. with assignment netdev->irq =
> pdev->irq;). Instead it stores pointer to pci_device structure and uses its
> 'irq' field value (like this adapter->pdev->irq).
> As a result ORe always outputs message like this one (because it uses
> netdev->irq value):
> ore | Device = lo, IRQ = 0, MAC = 00:00:00:00:00:00
> ore | Device = eth0, IRQ = 0, MAC = 00:30:18:49:F9:DA
> ore | Device = eth1, IRQ = 0, MAC = 00:30:18:49:F9:DB
> And when I try to boot L4Linux with ORe stub driver, the driver fails to
> init device due to wrong irq number:
> eth0: Overwriting IRQ type for IRQ 0 with l4ore type!
> eth0: request_irq(0, ...)
> EBUSY is returned.
Hmm. In this case, this would be a bug in Linux' 18.104.22.168 e1000 driver.
Do you know if (and how) this has been fixed in some recent version? If
so, a future update will fix this bug and you should use your workaround
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
More information about the l4-hackers