Subject: Re: altq 3.0 and pppd ? ( log vs queue )
To: Kenjiro Cho <firstname.lastname@example.org>
From: Hendra Widarta <email@example.com>
Date: 01/31/2002 05:58:31
The patches work nicely.
Traffic has been tested for PPP itself and other protocols over PPP (PPTP/L2TP).
--- Kenjiro Cho <firstname.lastname@example.org> wrote:
> It turns out that the problem is caused by a simple merge mistake
> when I back-ported if_ppp.c from KAME.
> In KAME (and NetBSD-current),
> (1) "#include "opt_inet.h"" is moved upwards.
> (2) "#define VJC" is moved in "#ifdef INET".
> I missed (1) and merged only (2).
> Its result is pretty nasty:
> The size of "struct ppp_softc" doesn't agree in if_ppp.c and ppp_tty.c
> since part of the fields are in "#ifdef VJC".
> pppasyncstart() sees sc_outm to be zero but pppintr() always evaluates
> the same field to be non-zero, which leads to an infinite loop!
> This only happens on altq-3.0 for NetBSD-1.5.2. (KAME and
> NetBSD-current are ok.)
> The first patch attached fixes this.
> To use ALTQ on kernel ppp, you also need the second patch for
> ppp_tty.c in addition to the previous patch I posted. This prevents
> pppintr() from looping under rate-limiting.
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions!