Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 May 2021 18:04:19 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Michael Tuexen <michael.tuexen@macmic.franken.de>
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:  <CANCZdfo9nX4_gwNDMnQtw7SsWbD_aT4vLX4Ju_NvNZ2qjdYevQ@mail.gmail.com>
In-Reply-To: <504C85E6-8967-40CC-8E12-F20F78B3226F@macmic.franken.de>
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>

next in thread | previous in thread | raw e-mail | index | archive | help
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:
> >
> > https://reviews.freebsd.org/D30163
> >
> > 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?
>

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...

Warner

Best regards
> Michael
> >
> > Warner
> >
> > 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:
> > >
> > > 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:
> > >>>
> > >>> The branch main has been updated by rrs:
> > >>>
> > >>> URL:
> https://cgit.FreeBSD.org/src/commit/?id=5d8fd932e418f03e98b3469c4088a36f0ef34ffe
> > >>>
> > >>> 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
> > >>>
> > >>>    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..
> > >>>
> > >>>    Sponsored by:           Netflix
> > >>>    Reviewed by:            rscheff, mtuexen
> > >>>    Differential Revision:  https://reviews.freebsd.org/D30036
> > >>
> > >> This seems braking LINT kernel build of powerpc:
> > >>
> > >> https://ci.freebsd.org/job/FreeBSD-main-powerpc-LINT/6082/console
> > >>
> > >> Searching "error:" leads to:
> > >>
> > >> 00:08:15.153
> /workspace/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]
> > >> 00:08:15.153                         high_rate =
> > >> tcp_hw_highest_rate(rack->r_ctl.crte);
> > >> 00:08:15.153                                     ^
> > >>
> > >> and
> > >>
> > >> 00:08:15.163
> /workspace/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]
> > >> 00:08:15.163                         high_rate =
> > >> tcp_hw_highest_rate_ifp(rack->rc_inp->inp_route.ro_nh->nh_ifp,
> > >> rack->rc_inp);
> > >> 00:08:15.163                                     ^
> > >>
> > >> I suspect this is because RATELIMIT is not defined in default powerpc
> > >> build? Is it safe to enable it?
> > >>
> > >> Best,
> > >> Li-Wen
> > >
> > > That should not be something RATELIMT related. I regular test
> 14-CURRENT on a
> > > RPi4B and the build today fails with
> > >
> > > --------------------------------------------------------------
> > >>>> 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 =
> 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 =
> 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 = 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 =
> 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
> > >
> > >
> > > 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
> >
> > tuexen@parallels:~/freebsd-src/sys/arm64/conf % cat SCTP
> > include         GENERIC
> > ident           SCTP
> >
> > makeoptions     WITH_EXTRA_TCP_STACKS=1
> > options         SCTP
> > options         SCTP_DEBUG
> > options         TCPHPTS
> > options         TCP_BLACKBOX
> > options         RATELIMIT
> > options         DEBUG_REDZONE
> > options         IPFIREWALL
> > options         IPFIREWALL_VERBOSE
> > options         IPFIREWALL_VERBOSE_LIMIT=5
> > options         IPFIREWALL_DEFAULT_TO_ACCEPT
> >
> > It looks like RATELIMIT is not defined, when tcp_ratelimit.h is
> included...
> >
> > Best regards
> > Michael
> >
> > > --Gordon
> >
>
>



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