Re: Lance driver

Thomas Bogendoerfer (tsbogend@bigbug.franken.de)
Tue, 14 May 1996 22:40:24 +0200 (MET DST)


> However, if I try to use the interface my machine dies a horrible death.
> So the question is: why is the eth0 interface not disabled after the
> error-condition is detected?

it's it a bug in dev_open, which is already present in 1.2.x and
probably before. Following patch should solve the problem, at least
it does it for me:-)

Thomas.

diff -ru orig/linux-pre-2.0.4/net/core/dev.c linux-pre-2.0.4/net/core/dev.c
--- orig/linux-pre-2.0.4/net/core/dev.c Tue May 14 00:20:14 1996
+++ linux-pre-2.0.4/net/core/dev.c Tue May 14 22:37:12 1996
@@ -45,6 +45,8 @@
* Alan Cox : Cleaned up the backlog initialise.
* Craig Metz : SIOCGIFCONF fix if space for under
* 1 device.
+ * Thomas Bogendoerfer : Return ENODEV for dev_open, if there
+ * is no device open function.
*
*/

@@ -236,7 +238,7 @@

int dev_open(struct device *dev)
{
- int ret = 0;
+ int ret = -ENODEV;

/*
* Call device private open method

-- 
That process _deserves_ to die ("My name is Linus Torvalds, prepare to 
die").                                [Linus Torvalds on linux-kernel]