Re: 2.6.7: sk98lin unload oops

From: Christoph Hellwig
Date: Sun Jul 04 2004 - 10:24:50 EST


On Sun, Jul 04, 2004 at 04:15:09PM +0100, Christoph Hellwig wrote:
> > Fortunality everything still works fine (I'm running the script over the
> > network of the syskonnect cards).
> >
> > This machine has two of those syskonnect cards, on another machine which has
> > only one syskonnect card this oops doesn't occur.
>
> As a colleteral damage the following huge patch should fix it, and I need
> testers for it anyway ;-)

Actually the problem sits deeper. sk98line tries to register a procfile with
the interfacename of the struct net_device. The patch below (ontop of
the previous one) makes it work unless you change the interface name manually,
but as Linux explicitly allows that the interface is fundamentally broken and
probably should just go away.


--- drivers/net/sk98lin/skge.c~ 2004-07-04 19:15:43.219326648 +0200
+++ drivers/net/sk98lin/skge.c 2004-07-04 19:18:21.562254864 +0200
@@ -5119,9 +5119,12 @@
if ((pAC->GIni.GIMacsFound == 2) && pAC->RlmtNets == 2)
have_second_mac = 1;

+ remove_proc_entry(dev->name, pSkRootDir);
unregister_netdev(dev);
- if (have_second_mac)
+ if (have_second_mac) {
+ remove_proc_entry(pAC->dev[1]->name, pSkRootDir);
unregister_netdev(pAC->dev[1]);
+ }

SkGeYellowLED(pAC, pAC->IoBase, 0);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/