* [PATCH] Re: Problem with Madge Tokenring (abyss.o) in 2.4.1-pre10
2001-01-23 14:42 Problem with Madge Tokenring (abyss.o) in 2.4.1-pre10 Bart Dorsey
@ 2001-01-23 15:23 ` Jeff Garzik
2001-01-23 23:14 ` Adam Fritzler
1 sibling, 0 replies; 3+ messages in thread
From: Jeff Garzik @ 2001-01-23 15:23 UTC (permalink / raw)
To: Bart Dorsey; +Cc: linux-kernel, mid, phillim, alan, Linus Torvalds
[-- Attachment #1: Type: text/plain, Size: 696 bytes --]
Bart Dorsey wrote:
> I constantly get this message on the console while using a Madge Smart
> 16/4 PCI Mk2 (Abyss) token ring card.
>
> kernel: Warning: kfree_skb on hard IRQ d08cfea9
The attached patch, against 2.4.1-pre10, should fix things. tms380tr,
the base module that abyss driver uses, needed to be updated to use
special IRQ versions of the dev_kfree_skb function.
Linus (and others), the patch also adds a missing dev->last_rx
assignment (which records the time of last packet reception).
--
Jeff Garzik | "You see, in this world there's two kinds of
Building 1024 | people, my friend: Those with loaded guns
MandrakeSoft | and those who dig. You dig." --Blondie
[-- Attachment #2: tms380tr.patch --]
[-- Type: text/plain, Size: 1342 bytes --]
Index: linux_2_4/drivers/net/tokenring/tms380tr.c
diff -u linux_2_4/drivers/net/tokenring/tms380tr.c:1.1.1.3 linux_2_4/drivers/net/tokenring/tms380tr.c:1.1.1.3.76.2
--- linux_2_4/drivers/net/tokenring/tms380tr.c:1.1.1.3 Sun Oct 22 14:56:23 2000
+++ linux_2_4/drivers/net/tokenring/tms380tr.c Tue Jan 23 07:19:16 2001
@@ -1977,7 +1977,7 @@
printk(KERN_INFO "Cancel tx (%08lXh).\n", (unsigned long)tpl);
- dev_kfree_skb(tpl->Skb);
+ dev_kfree_skb_any(tpl->Skb);
}
for(;;)
@@ -1986,7 +1986,7 @@
if(skb == NULL)
break;
tp->QueueSkb++;
- dev_kfree_skb(skb);
+ dev_kfree_skb_any(skb);
}
return;
@@ -2053,7 +2053,7 @@
}
tp->MacStat.tx_packets++;
- dev_kfree_skb(tpl->Skb);
+ dev_kfree_skb_irq(tpl->Skb);
tpl->BusyFlag = 0; /* "free" TPL */
}
@@ -2127,7 +2127,7 @@
printk(KERN_INFO "%s: Received my own frame\n",
dev->name);
if(rpl->Skb != NULL)
- dev_kfree_skb(rpl->Skb);
+ dev_kfree_skb_irq(rpl->Skb);
}
else
#endif
@@ -2171,13 +2171,14 @@
skb_trim(skb,Length);
skb->protocol = tr_type_trans(skb,dev);
netif_rx(skb);
+ dev->last_rx = jiffies;
}
}
}
else /* Invalid frame */
{
if(rpl->Skb != NULL)
- dev_kfree_skb(rpl->Skb);
+ dev_kfree_skb_irq(rpl->Skb);
/* Skip list. */
if(rpl->Status & RX_START_FRAME)
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: Problem with Madge Tokenring (abyss.o) in 2.4.1-pre10
2001-01-23 14:42 Problem with Madge Tokenring (abyss.o) in 2.4.1-pre10 Bart Dorsey
2001-01-23 15:23 ` [PATCH] " Jeff Garzik
@ 2001-01-23 23:14 ` Adam Fritzler
1 sibling, 0 replies; 3+ messages in thread
From: Adam Fritzler @ 2001-01-23 23:14 UTC (permalink / raw)
To: Bart Dorsey; +Cc: linux-kernel
I was planning on submitting a MAINTAINERS patch with my next tms380tr
patchset, but I've yet to get to doing that (!).
Thanks for the patch, Jeff!
---
Adam Fritzler
{ mid@zigamorph.net, adam@activebuddy.com }
http://www.zigamorph.net/~mid/
On Tue, 23 Jan 2001, Bart Dorsey wrote:
> I've tried to contact the driver maintainer, but his email bounced.
>
> I constantly get this message on the console while using a Madge Smart
> 16/4 PCI Mk2 (Abyss) token ring card.
>
> kernel: Warning: kfree_skb on hard IRQ d08cfea9
>
> My quick "not knowing what I'm doing" fix was to comment out the
> printk. ;)
>
> I dunno if this is the right place to ask, but maybe the maintainer will
> see this message, or perhaps someone else can pick up the ball on this
> one.
>
> Thanks,
> Bart Dorsey
> echo@thebucket.org
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> Please read the FAQ at http://www.tux.org/lkml/
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 3+ messages in thread