Date: Sun, 12 Jan 2003 23:32:12 +0100 From: Gary Jennejohn <garyj@jennejohn.org> To: G Hasse <gh@raditex.se> Cc: freebsd-isdn@FreeBSD.ORG Subject: Re: Problem with "no bufferspace" Message-ID: <200301122232.h0CMWCs5042107@peedub.jennejohn.org> In-Reply-To: Your message of "Sun, 12 Jan 2003 23:18:58 GMT." <20030112230724.P51762-100000@gandalf.raditex.se>
next in thread | previous in thread | raw e-mail | index | archive | help
G Hasse writes: > If I have one connection to one site the othere sites will be > blocked (offcourse). And there will be a message "no bufferspace > available". This is offcourse correct. > > But after a while when the first connection goes away this > condition will persist, and I cant connect to any other site. > > I have to restart the interface > > ifconfig isp3 delete -link1 down > .. > ifconfig isp3 inet 192.168.63.1 192.168.63.2 netmask 0xffffffff link1 > etc > > And it all works again. > OK, I don't know whether my analysis is correct, but here goes: The kernel limits the number of packets queued for transmission to (normally) 50, see the _IF_QFULL macro. Once that many packets are in a queue there's no way to add more to it. You are apparently running into this limitation, although I don't understand how packets are being sent to non-active interfaces. You must be doing something weird. Since only one connection can be active at a time, and the "full" interfaces have no active connection, there is no way for the kernel to drain the full queues. And because the queues are full, there's no way for the kernel to add more packets to them to establish the connection. It's a real circus vitiosus. ifconfig'ing the interface down throws away all the queued packets, which is why the interface starts working again. Stop sending packets to interfaces which have no active connection. --- Gary Jennejohn / garyj@jennejohn.org gj@freebsd.org gj@denx.de To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isdn" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301122232.h0CMWCs5042107>