Date: Sat, 8 May 2021 06:56:35 +0200 From: Michael Tuexen <Michael.Tuexen@macmic.franken.de> To: Warner Losh <imp@bsdimp.com> Cc: Gordon Bergling <gbe@freebsd.org>, Li-Wen Hsu <lwhsu@freebsd.org>, Randall Stewart <rrs@freebsd.org>, src-committers <src-committers@freebsd.org>, "<dev-commits-src-all@freebsd.org>" <dev-commits-src-all@freebsd.org>, dev-commits-src-main@freebsd.org Subject: Re: git: 5d8fd932e418 - main - This brings into sync FreeBSD with the netflix versions of rack and bbr. This fixes several breakages (panics) since the tcp_lro code was committed that have been reported. Quite a few new features are now in rack (prefecting of DGP -- Dynamic Goodput Pacing among the largest). There is also support for ack-war prevention. Documents comming soon on rack.. Message-ID: <FB0DFBFC-D278-4CE7-A6A4-204F2D333DF1@macmic.franken.de> In-Reply-To: <CANCZdfo9nX4_gwNDMnQtw7SsWbD_aT4vLX4Ju_NvNZ2qjdYevQ@mail.gmail.com> References: <202105061526.146FQS0E008755@gitrepo.freebsd.org> <CAKBkRUy-5MCGEOYRHGk%2BtC3FKjgXmhKg5ppvn1x9eFtbcK1=VQ@mail.gmail.com> <YJV9GlMm19s2prD7@lion.0xfce3.net> <78FF7B31-B84D-4D97-9E57-D000A6B09D7D@macmic.franken.de> <CANCZdfoh6FsPL6%2BTiVZ5_k6b6Vyi0TOR-BKo3Rcmdg0FB_AhHw@mail.gmail.com> <504C85E6-8967-40CC-8E12-F20F78B3226F@macmic.franken.de> <CANCZdfo9nX4_gwNDMnQtw7SsWbD_aT4vLX4Ju_NvNZ2qjdYevQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 8. May 2021, at 02:04, Warner Losh <imp@bsdimp.com> wrote: >=20 >=20 >=20 > On Fri, May 7, 2021, 12:38 PM Michael Tuexen = <michael.tuexen@macmic.franken.de> wrote: > > On 7. May 2021, at 20:26, Warner Losh <imp@bsdimp.com> wrote: > >=20 > > https://reviews.freebsd.org/D30163 > >=20 > > May be the ticket to solve this... > I don't understand that. RACK should just compile fine when RATELIMIT = is defined > in the kernel config. Gordon states that this is the case for him. > Whu do you think that D30163 is needed to compile RACK on a platform = where > RATELIMIT is in the kernel config? >=20 > We need ot to compile the module when it isn't in the kernel. Modules = have to compile, even for illegal combinations of options or be omitted = from building... Understood. But Gordon stated that he has RATELIMIT defined in his kernel config. So I guess he is experiencing a different issue, which I would like to = understand the root cause for. Best regards Michael >=20 > Warner=20 >=20 > Best regards > Michael > >=20 > > Warner=20 > >=20 > > On Fri, May 7, 2021, 12:03 PM Michael Tuexen = <michael.tuexen@macmic.franken.de> wrote: > > > On 7. May 2021, at 19:47, Gordon Bergling <gbe@FreeBSD.org> wrote: > > >=20 > > > On Fri, May 07, 2021 at 05:39:37PM +0800, Li-Wen Hsu wrote: > > >> On Thu, May 6, 2021 at 11:26 PM Randall Stewart <rrs@freebsd.org> = wrote: > > >>>=20 > > >>> The branch main has been updated by rrs: > > >>>=20 > > >>> URL: = https://cgit.FreeBSD.org/src/commit/?id=3D5d8fd932e418f03e98b3469c4088a36f= 0ef34ffe > > >>>=20 > > >>> commit 5d8fd932e418f03e98b3469c4088a36f0ef34ffe > > >>> Author: Randall Stewart <rrs@FreeBSD.org> > > >>> AuthorDate: 2021-05-06 15:22:26 +0000 > > >>> Commit: Randall Stewart <rrs@FreeBSD.org> > > >>> CommitDate: 2021-05-06 15:22:26 +0000 > > >>>=20 > > >>> This brings into sync FreeBSD with the netflix versions of = rack and bbr. > > >>> This fixes several breakages (panics) since the tcp_lro code = was > > >>> committed that have been reported. Quite a few new features = are > > >>> now in rack (prefecting of DGP -- Dynamic Goodput Pacing = among the > > >>> largest). There is also support for ack-war prevention. = Documents > > >>> comming soon on rack.. > > >>>=20 > > >>> Sponsored by: Netflix > > >>> Reviewed by: rscheff, mtuexen > > >>> Differential Revision: https://reviews.freebsd.org/D30036 > > >>=20 > > >> This seems braking LINT kernel build of powerpc: > > >>=20 > > >> https://ci.freebsd.org/job/FreeBSD-main-powerpc-LINT/6082/console > > >>=20 > > >> Searching "error:" leads to: > > >>=20 > > >> 00:08:15.153 = /workspace/src/sys/modules/tcp/rack/../../../netinet/tcp_stacks/rack.c:214= 3:16: > > >> error: implicit declaration of function 'tcp_hw_highest_rate' is > > >> invalid in C99 [-Werror,-Wimplicit-function-declaration] > > >> 00:08:15.153 high_rate =3D > > >> tcp_hw_highest_rate(rack->r_ctl.crte); > > >> 00:08:15.153 ^ > > >>=20 > > >> and > > >>=20 > > >> 00:08:15.163 = /workspace/src/sys/modules/tcp/rack/../../../netinet/tcp_stacks/rack.c:216= 5:16: > > >> error: implicit declaration of function 'tcp_hw_highest_rate_ifp' = is > > >> invalid in C99 [-Werror,-Wimplicit-function-declaration] > > >> 00:08:15.163 high_rate =3D > > >> tcp_hw_highest_rate_ifp(rack->rc_inp->inp_route.ro_nh->nh_ifp, > > >> rack->rc_inp); > > >> 00:08:15.163 ^ > > >>=20 > > >> I suspect this is because RATELIMIT is not defined in default = powerpc > > >> build? Is it safe to enable it? > > >>=20 > > >> Best, > > >> Li-Wen > > >=20 > > > That should not be something RATELIMT related. I regular test = 14-CURRENT on a > > > RPi4B and the build today fails with > > >=20 > > > -------------------------------------------------------------- > > >>>> stage 3.1: building everything > > > -------------------------------------------------------------- > > > = /tank/nfs_public/tiny/src/sys/modules/tcp/rack/../../../netinet/tcp_stacks= /rack.c:2143:16: error: implicit declaration of function = 'tcp_hw_highest_rate' is invalid in C99 = [-Werror,-Wimplicit-function-declaration] > > > high_rate =3D = tcp_hw_highest_rate(rack->r_ctl.crte); > > > ^ > > > = /tank/nfs_public/tiny/src/sys/modules/tcp/rack/../../../netinet/tcp_stacks= /rack.c:2165:16: error: implicit declaration of function = 'tcp_hw_highest_rate_ifp' is invalid in C99 = [-Werror,-Wimplicit-function-declaration] > > > high_rate =3D = tcp_hw_highest_rate_ifp(rack->rc_inp->inp_route.ro_nh->nh_ifp, = rack->rc_inp); > > > ^ > > > = /tank/nfs_public/tiny/src/sys/modules/tcp/rack/../../../netinet/tcp_stacks= /rack.c:14166:15: error: implicit declaration of function = 'tcp_hw_highest_rate' is invalid in C99 = [-Werror,-Wimplicit-function-declaration] > > > high_rate =3D = tcp_hw_highest_rate(rack->r_ctl.crte); > > > ^ > > > = /tank/nfs_public/tiny/src/sys/modules/tcp/rack/../../../netinet/tcp_stacks= /rack.c:14193:15: error: implicit declaration of function = 'tcp_hw_highest_rate_ifp' is invalid in C99 = [-Werror,-Wimplicit-function-declaration] > > > high_rate =3D = tcp_hw_highest_rate_ifp(rack->rc_inp->inp_route.ro_nh->nh_ifp, = rack->rc_inp); > > > ^ > > > 4 errors generated. > > > --- rack.o --- > > > *** [rack.o] Error code 1 > > >=20 > > >=20 > > > RATELIMIT is included in my KERNCONF since I use tcp_bbr(4) for a > > > while on the RPi4B now. > > Can you post the kernel config you are using? I'm building the = kernel on an arm64 platform by using > >=20 > > tuexen@parallels:~/freebsd-src/sys/arm64/conf % cat SCTP=20 > > include GENERIC > > ident SCTP =20 > >=20 > > makeoptions WITH_EXTRA_TCP_STACKS=3D1 > > options SCTP > > options SCTP_DEBUG > > options TCPHPTS > > options TCP_BLACKBOX > > options RATELIMIT > > options DEBUG_REDZONE > > options IPFIREWALL > > options IPFIREWALL_VERBOSE > > options IPFIREWALL_VERBOSE_LIMIT=3D5 > > options IPFIREWALL_DEFAULT_TO_ACCEPT > >=20 > > It looks like RATELIMIT is not defined, when tcp_ratelimit.h is = included... > >=20 > > Best regards > > Michael > >=20 > > > --Gordon > >=20 >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FB0DFBFC-D278-4CE7-A6A4-204F2D333DF1>