Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Dec 2012 12:40:12 +0600
From:      Tsaregorodtsev Denis <telemat@extrim.it>
To:        Ryan Stone <rysto32@gmail.com>
Cc:        freebsd-net <freebsd-net@freebsd.org>
Subject:   Re: 'no buffer space available' after switch goes down on freeBSD 7.3
Message-ID:  <50D94A4C.1020407@extrim.it>
In-Reply-To: <CAFMmRNz9VDGg12_XbdhAfURPm3Vs5=nH6aEzqA0281Rq5iOOMA@mail.gmail.com>
References:  <50D45282.5080708@extrim.it> <CAFMmRNy26AvdJjW9N4zPNPYrVYn1a2Qr8W5qy9MTV_30dvCqCA@mail.gmail.com> <50D7F61A.5020304@extrim.it> <CAFMmRNz9VDGg12_XbdhAfURPm3Vs5=nH6aEzqA0281Rq5iOOMA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 25.12.2012 07:01, Ryan Stone wrote:
>
> I don't believe that this is fixed in later versions of the driver. 
> The problem is that when the interface loses link the transmit queue 
> can fill up. Once that happens the driver never gets any more calls 
> from the network stack to make it send packets. Pinging the interface 
> fixes it because the driver processes rx.and tx from the same context, 
> so when it receives a packet it starts transmitting again.
>
> The patch that I sent fixes the problem by forcing the driver to 
> process the tx queue when ever links goes from down to up.
>
but on my production machine, when i see 'no buffer space available', 
pinging the interface does not fixes it. Last time I tried to ping, ssh 
to the machine, but machine stayed unavailable. Only `/etc/rc.d/netif 
restart` from local console helped.
I will try to reproduce the situation on test machine. if this happens, 
I will try the patch.
Thanks



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50D94A4C.1020407>