Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Sep 2019 13:06:58 -0700
From:      Randall Stewart <rrs@netflix.com>
To:        Li-Wen Hsu <lwhsu@freebsd.org>
Cc:        "O. Hartmann" <ohartmann@walstatt.org>, Randall Ray Stewart <rrs@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r352657 - in head/sys: conf kern modules/tcp modules/tcp/bbr netinet netinet/tcp_stacks sys
Message-ID:  <56FBEE27-FBDA-44E0-BBBF-F5D9A4755047@netflix.com>
In-Reply-To: <CAKBkRUweRxUWtKp25hrrORRNoo-Bt-smwMOvchaTDUvDn2GdmA@mail.gmail.com>
References:  <201909241818.x8OIIBNr039667@repo.freebsd.org> <20190924212918.01e52920@thor.intern.walstatt.dynvpn.de> <CAKBkRUyca5hNLU8Xy1BgtiqYzrmHQQoFDm-uEighR5TvwPqgkQ@mail.gmail.com> <F8F9CA94-A04A-4C42-AD32-0445F98BC895@netflix.com> <CAKBkRUweRxUWtKp25hrrORRNoo-Bt-smwMOvchaTDUvDn2GdmA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Right

Thats because GENERIC does not add the optional TCP stacks.

Ok the problem is fixed with r352659

The tcp_ratelimit.h had a mixed up ifdef

i.e.

#ifdef RATELIMIT
#ifdef _KERNEL

definitions

#else

macro definitions that return error
#endif
#endif


Which should have  been the opposite

#ifdef _KERNEL
#ifdef RATELIMIT
=20
definitions

#else


macros def=E2=80=99s returning errors

#endif
#endif

Reversing that will fix the issue if you add the extra stacks but fail =
to add RATELIMIT

R

> On Sep 24, 2019, at 1:01 PM, Li-Wen Hsu <lwhsu@freebsd.org> wrote:
>=20
> I mean the head (r352657) world and GENERIC kernel can be built
> successfully on 12.0-R, which is we guaranteed.
> Also the LINT kernel build is fine on CI:
> https://ci.freebsd.org/job/FreeBSD-head-amd64-LINT/13781/
>=20
> So I was curious about the build environment of that build failure.
>=20
> Best,
> Li-Wen
>=20
> On Tue, Sep 24, 2019 at 9:55 PM Randall Stewart <rrs@netflix.com> =
wrote:
>>=20
>> 12.0R would not have BBR .. its only in head=E2=80=A6 hmm it could be =
a issue with TCP_RATELIMIT not defined
>> though I did compile GENERIC without the extra stacks (and without =
rate limit and hpts) and that
>> compiled ok..
>>=20
>> R
>>=20
>>> On Sep 24, 2019, at 12:49 PM, Li-Wen Hsu <lwhsu@freebsd.org> wrote:
>>>=20
>>> On Tue, Sep 24, 2019 at 9:29 PM O. Hartmann <ohartmann@walstatt.org> =
wrote:
>>>>=20
>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>> Hash: SHA256
>>>>=20
>>>> Am Tue, 24 Sep 2019 18:18:11 +0000 (UTC)
>>>> Randall Stewart <rrs@FreeBSD.org> schrieb:
>>>>=20
>>>>> Author: rrs
>>>>> Date: Tue Sep 24 18:18:11 2019
>>>>> New Revision: 352657
>>>>> URL: https://svnweb.freebsd.org/changeset/base/352657
>>>=20
>>> ...
>>>=20
>>>> This break kernel builds:
>>>>=20
>>>> [...]
>>>> =
/usr/src/sys/modules/tcp/bbr/../../../netinet/tcp_stacks/bbr.c:5613:9: =
error: implicit
>>>> declaration of function 'tcp_chg_pacing_rate' is invalid in C99
>>>> [-Werror,-Wimplicit-function-declaration] nrte =3D =
tcp_chg_pacing_rate(bbr->r_ctl.crte, ^
>>>> =
/usr/src/sys/modules/tcp/bbr/../../../netinet/tcp_stacks/bbr.c:5613:9: =
error: this function
>>>> declaration is not a prototype [-Werror,-Wstrict-prototypes]
>>>> =
/usr/src/sys/modules/tcp/bbr/../../../netinet/tcp_stacks/bbr.c:5613:7: =
error: incompatible
>>>> integer to pointer conversion assigning to 'const struct =
tcp_hwrate_limit_table *' from 'int'
>>>> [-Werror,-Wint-conversion] nrte =3D =
tcp_chg_pacing_rate(bbr->r_ctl.crte, ^
>>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --- all_subdir_toecore --- =
Building
>>>> =
/usr/obj/usr/src/amd64.amd64/sys/THOR/modules/usr/src/sys/modules/toecore/=
toecore.ko ---
>>>> all_subdir_tcp --- =
/usr/src/sys/modules/tcp/bbr/../../../netinet/tcp_stacks/bbr.c:10443:4:
>>>> error: implicit declaration of function 'tcp_rel_pacing_rate' is =
invalid in C99
>>>> [-Werror,-Wimplicit-function-declaration] =
tcp_rel_pacing_rate(bbr->r_ctl.crte, bbr->rc_tp); ^
>>>> - --- all_subdir_tpm ---
>>>> =3D=3D=3D> tpm (all)
>>>> - --- all_subdir_tcp ---
>>>> =
/usr/src/sys/modules/tcp/bbr/../../../netinet/tcp_stacks/bbr.c:10443:4: =
error: this function
>>>> declaration is not a prototype [-Werror,-Wstrict-prototypes] --- =
all_subdir_trm ---
>>>> =3D=3D=3D> trm (all)
>>>> - --- all_subdir_tcp ---
>>>> =
/usr/src/sys/modules/tcp/bbr/../../../netinet/tcp_stacks/bbr.c:14307:21: =
error: implicit
>>>> declaration of function 'tcp_set_pacing_rate' is invalid in C99
>>>> [-Werror,-Wimplicit-function-declaration] bbr->r_ctl.crte =3D =
tcp_set_pacing_rate(bbr->rc_tp,
>>>=20
>>> CI completed a clean build on 12.0-R:
>>> https://ci.freebsd.org/job/FreeBSD-head-amd64-build/14672/
>>>=20
>>> What's your build environment and platform?
>>>=20
>>> Best,
>>> Li-Wen
>>=20
>> ------
>> Randall Stewart
>> rrs@netflix.com
>>=20
>>=20
>>=20

------
Randall Stewart
rrs@netflix.com






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56FBEE27-FBDA-44E0-BBBF-F5D9A4755047>