Date: Thu, 23 Aug 2018 13:30:51 -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: <CAD44qMXFRQ9s8xJ5ONNDkFkP9a4qM5=kvmSnzahQq=UvyieQbg@mail.gmail.com> In-Reply-To: <24fcddc1-5570-943b-c3d4-b712e3ca64e3@freebsd.org> References: <201808231610.w7NGASxr000790@repo.freebsd.org> <24fcddc1-5570-943b-c3d4-b712e3ca64e3@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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?CAD44qMXFRQ9s8xJ5ONNDkFkP9a4qM5=kvmSnzahQq=UvyieQbg>