public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* kernel: TD structure error TDindex=e
@ 2008-07-20 15:00 Udo van den Heuvel
  2008-07-20 16:08 ` Francois Romieu
  0 siblings, 1 reply; 5+ messages in thread
From: Udo van den Heuvel @ 2008-07-20 15:00 UTC (permalink / raw)
  To: LKML

Hello,

In the logs I found a message:

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.
After ifconfig eth0 down, ifconfig eth0 up the device was functional
again but the system froze at a new file transfer attempt.

How can I avoid/fix/etc this situation?

Kind regards,
Udo


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: kernel: TD structure error TDindex=e
  2008-07-20 15:00 kernel: TD structure error TDindex=e Udo van den Heuvel
@ 2008-07-20 16:08 ` Francois Romieu
  2008-07-20 16:14   ` Udo van den Heuvel
       [not found]   ` <48836EB3.3050707@xs4all.nl>
  0 siblings, 2 replies; 5+ messages in thread
From: Francois Romieu @ 2008-07-20 16:08 UTC (permalink / raw)
  To: Udo van den Heuvel; +Cc: LKML, netdev

Udo van den Heuvel <udovdh@xs4all.nl> :
[...]
> 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(&regs->TDIdx[0]));
+		printk(KERN_ERR "Tx process error TDIdx=0x%04x TXESR=0x%02x\n",
+		       readw(&regs->TDIdx[0]), readb(&regs->TXESR));
 		BYTE_REG_BITS_ON(TXESR_TDSTR, &regs->TXESR);
 		writew(TRDCSR_RUN, &regs->TDCSRClr);
 		netif_stop_queue(vptr->dev);
-- 
Ueimor

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: kernel: TD structure error TDindex=e
  2008-07-20 16:08 ` Francois Romieu
@ 2008-07-20 16:14   ` Udo van den Heuvel
       [not found]   ` <48836EB3.3050707@xs4all.nl>
  1 sibling, 0 replies; 5+ messages in thread
From: Udo van den Heuvel @ 2008-07-20 16:14 UTC (permalink / raw)
  To: Francois Romieu; +Cc: LKML, netdev

Francois Romieu wrote:
> Udo van den Heuvel <udovdh@xs4all.nl> :
> [...]
>> 16:41:09 recorder kernel: TD structure error TDindex=e
(...)
>> How can I avoid/fix/etc this situation ?
> 
> Can you apply the patch below to get some more information ?

Will do, will look for an earliest opportinuty to boot the machine with
the patched kernel.

> May I assume that it does not count as a regression ?

Can't confirm/deny.
It has 'hung' before.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: kernel: TD structure error TDindex=e
       [not found]     ` <20080720171440.GB23278@electric-eye.fr.zoreil.com>
@ 2008-07-23 15:52       ` Udo van den Heuvel
  2008-07-26 13:31       ` Udo van den Heuvel
  1 sibling, 0 replies; 5+ messages in thread
From: Udo van den Heuvel @ 2008-07-23 15:52 UTC (permalink / raw)
  To: Francois Romieu; +Cc: LKML

Francois Romieu wrote:
> Udo van den Heuvel <udovdh@xs4all.nl> :
>> Francois Romieu wrote:
>>> Can you apply the patch below to get some more information ?
>> Patch applied well.
>> Did come file transfers (recordings from MythTV via MythWeb). Worked Ok
>> until after a few files the system hang. No special logging, though:
>>
>> Jul 20 18:24:31 recorder ntpd[1524]: synchronized to 192.168.10.98,
>> stratum 1
>> Jul 20 18:24:48 recorder kernel: eth0: excessive work at interrupt.
>> Jul 20 18:26:44 recorder kernel: eth0: excessive work at interrupt.
> 
> Shit.
> 
> Can you apply the bandaid below too ?
> 
With that patch, so far, it doesn't hang. I transfered multiple GB's
from the EN12000 via it's MythTV web interface, receiving the data on my
workstation with wget.
I get transfers of ~40MB/s.
Transfers are 40+MB/s with some small pauses here and there.

I only see sometimes messages like kernel: eth0: excessive work at
interrupt. Not often.

Kind regards,
Udo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: kernel: TD structure error TDindex=e
       [not found]     ` <20080720171440.GB23278@electric-eye.fr.zoreil.com>
  2008-07-23 15:52       ` Udo van den Heuvel
@ 2008-07-26 13:31       ` Udo van den Heuvel
  1 sibling, 0 replies; 5+ messages in thread
From: Udo van den Heuvel @ 2008-07-26 13:31 UTC (permalink / raw)
  To: Francois Romieu; +Cc: LKML

Francois Romieu wrote:
> Can you apply the bandaid below too ?

Today, during a http transfer of a 5.xGB file the EN12000 system hang.
There was nothing in /var/log/messages.

So even with this patch something still goes wrong during
high-speed/large transfers, be it perhaps less often (as it appears)
since using the patch.

Udo

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-07-26 13:31 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-20 15:00 kernel: TD structure error TDindex=e Udo van den Heuvel
2008-07-20 16:08 ` Francois Romieu
2008-07-20 16:14   ` Udo van den Heuvel
     [not found]   ` <48836EB3.3050707@xs4all.nl>
     [not found]     ` <20080720171440.GB23278@electric-eye.fr.zoreil.com>
2008-07-23 15:52       ` Udo van den Heuvel
2008-07-26 13:31       ` Udo van den Heuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox