Re: PROBLEM: 2.6.23-rc "NETDEV WATCHDOG: eth0: transmit timed out"

From: Francois Romieu
Date: Tue Aug 14 2007 - 18:49:39 EST


Karl Meyer <adhocrocker@xxxxxxxxx> :
> I did some additional testing, the results are:
> [0e4851502f846b13b29b7f88f1250c980d57e944] r8169: merge with version
> 8.001.00 of Realtek's r8168 driver
> does not work, I after some traffic the transmit timeout occurs.
> [6dccd16b7c2703e8bbf8bca62b5cf248332afbe2] r8169: merge with version
> 6.001.00 of Realtek's r8169 driver
> Seems to be the last version to work. I did some stress testing (much
> more than the level that was enough to make
> [0e4851502f846b13b29b7f88f1250c980d57e944] break) and am currently
> using this version and no problems so far.

Thanks for the quick feedback.

Can you try the patch below on top of 2.6.23-rc3 ?

If it does not work I'll dissect 0e4851502f846b13b29b7f88f1250c980d57e944
tomorrow.

diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
index b85ab4a..cdb8a08 100644
--- a/drivers/net/r8169.c
+++ b/drivers/net/r8169.c
@@ -2749,6 +2749,7 @@ static irqreturn_t rtl8169_interrupt(int irq, void *dev_instance)
if (!(status & tp->intr_event))
break;

+#if 0
/* Work around for rx fifo overflow */
if (unlikely(status & RxFIFOOver) &&
(tp->mac_version == RTL_GIGA_MAC_VER_11)) {
@@ -2756,6 +2757,7 @@ static irqreturn_t rtl8169_interrupt(int irq, void *dev_instance)
rtl8169_tx_timeout(dev);
break;
}
+#endif

if (unlikely(status & SYSErr)) {
rtl8169_pcierr_interrupt(dev);
--
Ueimor
-
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/