lkml.org 
[lkml]   [2002]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] remove a wrong release_region in eexpress.c
Hello,

I was trying the eexpress.c driver for my Intel EtherExpress 16 NIC
(isa) and I got some errors when I unloaded the module (kernel
2.4.18-pre7).

The problem was that it was trying to release an already released i/o
region. I'm attaching a patch to remove that release_region.

I have also a question: I'm reading Rubini's Linux Device Drivers (2nd
edition) and he writes that irq and regions should be registered when
the device is open (and not in the hw-probe function). Why network
drivers should register the resources they use only on open and not on
probe (like other drivers do) ?

I don't know if this is related but I had a problem few months ago when
the ISDN card (a pci one) tried to share the same IRQ of the Network
Card (isa). The result was the nic didn't work (the NIC was a 3c509b
ISA PNP card) and I had to explicitly change the nic irq via a kernel parameter
on boot. Now I wonder if this could have happened if the driver had
registered its irq on probe and not on open (i.e. after that the hisax
module was loaded).

Greeting,

Gianluca Anzolin
--- eexpress.c.old Mon Jan 28 13:47:44 2002
+++ eexpress.c Mon Jan 28 13:48:19 2002
@@ -1674,7 +1674,6 @@
unregister_netdev(dev);
kfree(dev->priv);
dev->priv = NULL;
- release_region(dev->base_addr, EEXP_IO_EXTENT);
}
}
}
\
 
 \ /
  Last update: 2005-03-22 13:15    [W:0.034 / U:0.388 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site