Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Aug 2018 13:42:00 -0400
From:      Patrick Kelsey <pkelsey@freebsd.org>
To:        se@freebsd.org
Cc:        svn-src-head@freebsd.org
Subject:   Re: svn commit: r338253 - head/sbin/pfctl
Message-ID:  <CAD44qMU29zY5pvKggQfbp6cnYsOUFrOMOtfT7A3HLOq9Fz_wvA@mail.gmail.com>
In-Reply-To: <CAD44qMXFRQ9s8xJ5ONNDkFkP9a4qM5=kvmSnzahQq=UvyieQbg@mail.gmail.com>
References:  <201808231610.w7NGASxr000790@repo.freebsd.org> <24fcddc1-5570-943b-c3d4-b712e3ca64e3@freebsd.org> <CAD44qMXFRQ9s8xJ5ONNDkFkP9a4qM5=kvmSnzahQq=UvyieQbg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Fixed in r338260.

On Thu, Aug 23, 2018 at 1:30 PM Patrick Kelsey <pkelsey@freebsd.org> wrote:

>
>
> On Thu, Aug 23, 2018 at 1:05 PM Stefan Esser <se@freebsd.org> wrote:
>
>> Am 23.08.18 um 18:10 schrieb Patrick Kelsey:
>> > Author: pkelsey
>> > Date: Thu Aug 23 16:10:28 2018
>> > New Revision: 338253
>> > URL: https://svnweb.freebsd.org/changeset/base/338253
>> >
>> > Log:
>> >   Extend tbrsize heuristic in pfctl(8) to provide a sensible value for
>> >   higher bandwidth interfaces.  The new value is used above 2.5 Gbps,
>> >   which is the highest standard rate that could be used prior to
>> >   r338209, so the default behavior for all existing systems should
>> >   remain the same.
>> >
>> >   The value of 128 chosen is a balance between being big enough to
>> >   reduce potential precision/quantization effects stemming from frequent
>> >   bucket refills over small time intervals and being small enough to
>> >   prevent a greedy driver from burst dequeuing more packets than it has
>> >   available hardware ring slots for whenever altq transitions from idle
>> >   to backlogged.
>> >
>> >   Reviewed by:        jmallett, kp
>> >   MFC after:  2 weeks
>> >   Sponsored by:       RG Nets
>> >   Differential Revision: https://reviews.freebsd.org/D16852
>> >
>> > Modified:
>> >   head/sbin/pfctl/pfctl_altq.c
>> >
>> > Modified: head/sbin/pfctl/pfctl_altq.c
>> >
>> ==============================================================================
>> > --- head/sbin/pfctl/pfctl_altq.c      Thu Aug 23 15:01:27 2018
>> (r338252)
>> > +++ head/sbin/pfctl/pfctl_altq.c      Thu Aug 23 16:10:28 2018
>> (r338253)
>> > @@ -299,8 +299,10 @@ eval_pfaltq(struct pfctl *pf, struct pf_altq *pa,
>> stru
>> >                       size = 4;
>> >               else if (rate <= 200 * 1000 * 1000)
>> >                       size = 8;
>> > -             else
>> > +             else if (rate <= 2500 * 1000 * 1000)
>> >                       size = 24;
>> > +             else
>> > +                     size = 128;
>> >               size = size * getifmtu(pa->ifname);
>> >               pa->tbrsize = size;
>> >       }
>> >
>>
>> This breaks the build on my amd64 box:
>>
>> /usr/svn/base/head/sbin/pfctl/pfctl_altq.c:302:32: error: overflow in
>> expression; result is -1794967296 with type 'int'
>> [-Werror,-Winteger-overflow]
>>                 else if (rate <= 2500 * 1000 * 1000)
>>                                              ^
>>
>> While "rate" is unsigned long, the expression being calculated is not ...
>>
>> Regards, STefan
>>
>
> Will fix shortly...not sure why I did not encounter this error in my setup.
>
> -Patrick
>



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