Re: 2.6.0-test6, connntrack/sis900/net (?) Badness inlocal_bh_enable at kernel/softirq.c:119

From: Andrew Morton
Date: Mon Oct 20 2003 - 18:15:38 EST


Jacek Kawa <jfk@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
> I found it in logs (2.6.0-test6). It happened little while after
> I had reloaded dhcpd configuration.
>
> I'm not sure if it's related to NIC or ip-conntrack, but as both
> are mentioned...
>
> System information below.
>
> eth0: Media Link Off
> NETDEV WATCHDOG: eth0: transmit timed out
> eth0: Transmit timeout, status 00000004 00000000
> Badness in local_bh_enable at kernel/softirq.c:119
> Call Trace:
> [local_bh_enable+137/144] local_bh_enable+0x89/0x90
> [_end+130859013/1069963240] ip_ct_find_proto+0x3d/0x60 [ip_conntrack]
> [_end+130860013/1069963240] destroy_conntrack+0x15/0x110 [ip_conntrack]
> [sock_wfree+73/80] sock_wfree+0x49/0x50
> [__kfree_skb+143/272] __kfree_skb+0x8f/0x110
> [_end+130608961/1069963240] sis900_tx_timeout+0x99/0x150 [sis900]
> [dev_watchdog+0/208] dev_watchdog+0x0/0xd0
> [dev_watchdog+191/208] dev_watchdog+0xbf/0xd0

This should fix it up.


diff -puN drivers/net/sis900.c~sis900-tx_timeout-fix drivers/net/sis900.c
--- 25/drivers/net/sis900.c~sis900-tx_timeout-fix Mon Oct 20 16:10:04 2003
+++ 25-akpm/drivers/net/sis900.c Mon Oct 20 16:10:11 2003
@@ -1438,7 +1438,7 @@ static void sis900_tx_timeout(struct net
pci_unmap_single(sis_priv->pci_dev,
sis_priv->tx_ring[i].bufptr, skb->len,
PCI_DMA_TODEVICE);
- dev_kfree_skb(skb);
+ dev_kfree_skb_irq(skb);
sis_priv->tx_skbuff[i] = 0;
sis_priv->tx_ring[i].cmdsts = 0;
sis_priv->tx_ring[i].bufptr = 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/