Re: kernel: TD structure error TDindex=e
From: Francois Romieu <romieu@fr.zoreil.com>
Date: 2008-07-20 16:08:25
Udo van den Heuvel [off-list ref] : [...]
16:41:09 recorder kernel: TD structure error TDindex=e This was on a VIA EN12000 board (with VIA Velocity Gbit ethernet, running 2.6.25.7) while doing a file transfer. The card was `down` after that.
[...]
How can I avoid/fix/etc this situation ?
Can you apply the patch below to get some more information ? May I assume that it does not count as a regression ? Thanks in advance.
diff --git a/drivers/net/via-velocity.c b/drivers/net/via-velocity.c
index 370ce30..57ee35b 100644
--- a/drivers/net/via-velocity.c
+++ b/drivers/net/via-velocity.c@@ -1743,7 +1743,8 @@ static void velocity_error(struct velocity_info *vptr, int status) if (status & ISR_TXSTLI) { struct mac_regs __iomem * regs = vptr->mac_regs; - printk(KERN_ERR "TD structure error TDindex=%hx\n", readw(®s->TDIdx[0])); + printk(KERN_ERR "Tx process error TDIdx=0x%04x TXESR=0x%02x\n", + readw(®s->TDIdx[0]), readb(®s->TXESR)); BYTE_REG_BITS_ON(TXESR_TDSTR, ®s->TXESR); writew(TRDCSR_RUN, ®s->TDCSRClr); netif_stop_queue(vptr->dev);
--
Ueimor