Subject: Re: receive ring overrun with tlp0
To: None <tech-net@netbsd.org>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: tech-net
Date: 01/10/2002 21:22:52
On Wed, Jan 09, 2002 at 05:28:19PM -0500, Scott Barron wrote:
> Hello,
>
> I ' ve been having a problem and I was wondering if anyone else has
> experienced it. I have two NICs in my computer, ne0 and tlp0. I don 't
> know exactly what kind of card the tlp0 is but it was recognized as tlp
> by GENERIC so that's what I'm using (the card came with a DSL modem we
> had last summer so it may not be the best quality). Anyway, about once
> every 1 - 2 days the card will stop sending and receiving anything, ie
> pinging the interface yields nothing as does pinging any host on the
> network the interface is on. When it does this I get this error spewed
> to my console:
>
> tlp0: receive ring overrun
>
> Can someone clarify what this error means and what could possibly be
> causing this to happen? Could it be just a cheap card? Does this
> happen to anyone else or is it one of those karma things resulting from
> my using the "it works for me!" line with so many other things? I
> briefly poked through the tlp driver code but am still not certain just
> what the receive ring is (a "ring" of buffers, is that right?).
yes, there is a pool of buffers for receive packets, used as ring.
The "receive ring overrun" is when there is a packet to store and no
buffers are available (that is, the adapter writes it to memory faster than
the host read it).
I get this on some very busy machine, I guess because of interrupt latency.
In your case it looks more like the card is buggy, and forget to update some
fields to indicate to the host that there are buffers to read.
Does a 'ifconfig tlp0 down; ifconfig tlp0 up' clear the problem ?
--
Manuel Bouyer <bouyer@antioche.eu.org>
--