Date: Wed, 18 Sep 2019 06:50:35 -0700 From: Randall Stewart <rrs@netflix.com> To: =?utf-8?Q?Michael_T=C3=BCxen?= <michael.tuexen@lurchi.franken.de> Cc: vm finance <vm.finance2@gmail.com>, freebsd-net <freebsd-net@freebsd.org>, Jamie Landeg-Jones <jamie@catflap.org>, Ryan Stone <rysto32@gmail.com> Subject: Re: BBR patches? Message-ID: <98E195A0-AFE2-4182-BE90-493E76A0DB1C@netflix.com> In-Reply-To: <EE614FCD-C0B1-4934-98A5-F60C5054C077@lurchi.franken.de> References: <CAKy-8=jUu=dbp1s7nhYBwgeh%2BiO-XY-YEnh1MJ81aYJoopVonA@mail.gmail.com> <201909091232.x89CWl4b047025@donotpassgo.dyslexicfish.net> <CAKy-8=gZ8E73PZdxb33aN=TmfigcNyTvZP4wP3M-mAy9no-v6w@mail.gmail.com> <CAFMmRNxbX5f3s0ZZk=Epr7Gu7%2Bsjat8F0TV0aX_RwoFgX0s%2ByA@mail.gmail.com> <CAKy-8=g=3LC8u_vc_3_Pfe6pgoUxpvx7N_j=xv7nRaM%2BD1Oz-A@mail.gmail.com> <D35AF884-C631-42CE-ABFD-F4AA76AA6693@netflix.com> <CAKy-8=jSdSFPJWL=cLeea-KSc=9wxR6vQTODibw7-GUh0XpCfw@mail.gmail.com> <27AD43DA-3237-490A-B3A6-C1792F9674E5@netflix.com> <CAKy-8=idqzA0-Trm%2B5gZSQs=vyXrPm40gP3AsbMf_YQj-NEHaA@mail.gmail.com> <CAKy-8=jpGvKU1khALK%2Ba5Ojp7btg7y1W%2BELtTLQaniVNtgBj3g@mail.gmail.com> <AD906F45-B083-476F-952E-3318F36BD828@netflix.com> <BCC20B79-ECEF-4D7C-AA7E-5F8A0869753A@netflix.com> <5B630235-ABC7-4122-9082-F59BCCCDE14A@netflix.com> <CAKy-8=jwoV8=gXXUCCMARe4%2BELuqDXuYY=J9Rn7ej0536xTJvQ@mail.gmail.com> <84C20AED-44B1-4673-A29E-1A6FA61D8F27@netflix.com> <DEA3139A-ED05-47D9-833E-F1631E7185AD@gmail.com> <CAKy-8=gAFZu0wWgWCNwuYDzKcyoLDwHgUPGNA%2BaLCucEfFrgYg@mail.gmail.com> <EE614FCD-C0B1-4934-98A5-F60C5054C077@lurchi.franken.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Thats great idea Michael. =46rom the look fo the build log I was sent, his blow-up has nothing to = do with the patches. He should probably 1) Check out a fresh version of head. 2) Follow the instructions in UPDATING to get a clean build. =E2=80=94 make buildworld =E2=80=94 make buildkernel KERNCONF=3Dhis-conf =E2=80=94 make installkernel KERNCONF=3Dhis-conf =20 ** do the reboot and merge master ** Then after that he could 3) Apply the current patch in the review 4) do build that =E2=80=94 make buildkernel KERNCONF=3Dhis_conf -DNO_CLEAN = -DNO_CLEANDIR =E2=80=94 make install kernel KERNCONF=3Dhis_conf And he should have it all working :) I have done multiple builds with the latest head from yesterday both = with and without the extra stacks and hpts.. and I can=E2=80=99t get a build failure.. = this would verify he can at least build head.. R > On Sep 18, 2019, at 12:10 AM, Michael Tuexen = <michael.tuexen@lurchi.franken.de> wrote: >=20 >> On 18. Sep 2019, at 08:19, vm finance <vm.finance2@gmail.com> wrote: >>=20 >> correcting a typo: >>=20 >> svn co svn://svn.freebsd.org/base/head /usr/src >> current revision: 352434 > I suggest to build/install head first without any patches. After that = has worked, > apply the patches you are interested in. That way it is easy to = separate generic > build issues and issue specific to a patch. >=20 > Best regards > Michael >>=20 >> Thank you! >>=20 >> On Tue, Sep 17, 2019 at 10:11 PM vm finance <vm.finance2@gmail.com> = wrote: >>=20 >>> Actually I am on head already as mentioned previously. Pulled it = using >>> yesterday: >>>=20 >>> svn co svn://svn.freebsd.org/base/head /use/src >>>=20 >>>=20 >>> If you could pls let me know the new patch, I can try that. >>>=20 >>> Thanks >>>=20 >>> Sent from my iPhone >>>=20 >>> On 18-Sep-2019, at 8:56 AM, Randall Stewart <rrs@netflix.com> wrote: >>>=20 >>> There have been several patches pre-this one that provide >>> the infrastructure to support BBR. >>>=20 >>> Release 12.0 will *not* have these patches and will *not* compile = it. >>>=20 >>> I have no intention at this point in doing a MFC of this work.. so = if you >>> want >>> to run BBR you need to run Head >>>=20 >>> R >>>=20 >>> On Sep 17, 2019, at 7:26 PM, vm finance <vm.finance2@gmail.com> = wrote: >>>=20 >>>=20 >>> Hi Randall, >>>=20 >>>=20 >>> Could you please provide a pointer to the latest patch. I had = applied the >>> one you published Sep-10. >>>=20 >>>=20 >>> Following is what I have done: >>>=20 >>> 1. Picked FreeBSD 12.0 RELEASE VM from osboxes.org >>>=20 >>> 2. Got VM up under VMPlayer on x86 laptop >>>=20 >>> 3. Checked out latest codebase from freebsd repo: >>>=20 >>> svn co svn://svn.freebsd.org/base/head /usr/src* >>>=20 >>> cd /usr/src; >>>=20 >>> make buildworld buildkernel >>>=20 >>> [this is where make fails when patch is applied] >>>=20 >>>=20 >>> I could try to build with your latest patch - please send me a = pointer. >>>=20 >>>=20 >>> Thanks for your help! >>>=20 >>>=20 >>>=20 >>> On Tue, Sep 17, 2019 at 1:33 PM Randall Stewart <rrs@netflix.com> = wrote: >>>=20 >>> Looking at your make file log I can=E2=80=99t really tell what you = are doing. >>>=20 >>>=20 >>> Its not the BBR or Rack code that is blowing up=E2=80=A6 >>>=20 >>>=20 >>> Are you cross compiling? >>>=20 >>>=20 >>> I have done the old fashioned kernel make >>>=20 >>>=20 >>> i.e. >>>=20 >>>=20 >>> cd src/sys/amd64/config >>>=20 >>> config headvm >>>=20 >>> cd ../compile/headvm >>>=20 >>>=20 >>> make cleandepend ; make depend; make -j3 >>>=20 >>>=20 >>> I have done >>>=20 >>>=20 >>> cd src >>>=20 >>> make buildkernel KERNCONF=3Dheadvm >>>=20 >>>=20 >>> And even >>>=20 >>>=20 >>> make buildkernel KERNCONF=3DGENERIC >>>=20 >>>=20 >>> to make sure that the build works without bbr. >>>=20 >>>=20 >>> I attach my headvm config.. >>>=20 >>>=20 >>> What exactly are you building and how? kernel config too please? >>>=20 >>>=20 >>> R >>>=20 >>>=20 >>>=20 >>>=20 >>>=20 >>> On Sep 17, 2019, at 1:11 PM, Randall Stewart <rrs@netflix.com> = wrote: >>>=20 >>>=20 >>> looking >>>=20 >>>=20 >>> I was at 352408.. let me update and try it >>>=20 >>>=20 >>> R >>>=20 >>>=20 >>> On Sep 17, 2019, at 1:10 PM, Randall Stewart <rrs@netflix.com> = wrote: >>>=20 >>>=20 >>> Hmm >>>=20 >>>=20 >>> Did you get the patch I updated too this am? >>>=20 >>>=20 >>> I have built it both with and without the bbr stack and had no = issue.. >>> there was >>>=20 >>> an issue with KTLS before the update though. >>>=20 >>>=20 >>> I don=E2=80=99t recognize what you have below there though=E2=80=A6 >>>=20 >>>=20 >>> R >>>=20 >>>=20 >>> On Sep 17, 2019, at 11:47 AM, vm finance <vm.finance2@gmail.com> = wrote: >>>=20 >>>=20 >>> Got it - thank you! >>>=20 >>>=20 >>> btw, I tried to build the patch but its giving an error. Following = is SVN >>> info + make error mesg. >>>=20 >>>=20 >>> Please let me know what am I missing here? >>>=20 >>>=20 >>> Thanks! >>>=20 >>>=20 >>> #svnlite revision >>>=20 >>> Path: . >>>=20 >>> Working Copy Root Path: /usr/src >>>=20 >>> URL: svn://svn.freebsd.org/base/head >>>=20 >>> Relative URL: ^/head >>>=20 >>> Repository Root: svn://svn.freebsd.org/base >>>=20 >>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f >>>=20 >>> Revision: 352436 >>>=20 >>> Node Kind: directory >>>=20 >>> Schedule: normal >>>=20 >>> Last Changed Author: jah >>>=20 >>> Last Changed Rev: 352434 >>>=20 >>> Last Changed Date: 2019-09-17 03:39:31 +0000 (Tue, 17 Sep 2019) >>>=20 >>>=20 >>> root@osboxes:/usr/src # >>>=20 >>>=20 >>> -------------------------------------------- snip >>> ---------------------------- >>>=20 >>>=20 >>> ad_elf64_obj.llo reloc_elf64.llo disk.llo part.llo vdisk.llo = dev_net.llo >>> bcache.llo interp_simple.llo zfs_cmd.llo >>>=20 >>> rm -f .depend .depend.* GPATH GRTAGS GSYMS GTAGS >>>=20 >>> =3D=3D=3D> sys (cleandir) >>>=20 >>> rm -f export_syms machine x86 tcp_bbr.ko tcp_bbr.kld bbr.o = sack_filter.o >>> rack_bbr_common.o opt_inet.h opt_inet6.h opt_ipsec.h opt_tcpdebug.h >>> opt_kern_tls.h >>>=20 >>> rm: x86: is a directory >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make[3]: stopped in /usr/src/sys >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make[2]: stopped in /usr/src >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make[1]: stopped in /usr/src >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make: stopped in /usr/src >>>=20 >>>=20 >>>=20 >>> On Tue, Sep 17, 2019 at 6:41 PM vm finance <vm.finance2@gmail.com> = wrote: >>>=20 >>> Got it - thank you! >>>=20 >>>=20 >>> btw, I tried to build the patch but its giving an error. Following = is SVN >>> info + make error mesg. >>>=20 >>> I have also attached the entire build log...snippet is below >>>=20 >>>=20 >>> Please let me know what am I missing here? >>>=20 >>>=20 >>> Thanks! >>>=20 >>>=20 >>> #svnlite revision >>>=20 >>> Path: . >>>=20 >>> Working Copy Root Path: /usr/src >>>=20 >>> URL: svn://svn.freebsd.org/base/head >>>=20 >>> Relative URL: ^/head >>>=20 >>> Repository Root: svn://svn.freebsd.org/base >>>=20 >>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f >>>=20 >>> Revision: 352436 >>>=20 >>> Node Kind: directory >>>=20 >>> Schedule: normal >>>=20 >>> Last Changed Author: jah >>>=20 >>> Last Changed Rev: 352434 >>>=20 >>> Last Changed Date: 2019-09-17 03:39:31 +0000 (Tue, 17 Sep 2019) >>>=20 >>>=20 >>> root@osboxes:/usr/src # >>>=20 >>>=20 >>> -------------------------------------------- snip >>> ---------------------------- >>>=20 >>>=20 >>> ad_elf64_obj.llo reloc_elf64.llo disk.llo part.llo vdisk.llo = dev_net.llo >>> bcache.llo interp_simple.llo zfs_cmd.llo >>>=20 >>> rm -f .depend .depend.* GPATH GRTAGS GSYMS GTAGS >>>=20 >>> =3D=3D=3D> sys (cleandir) >>>=20 >>> rm -f export_syms machine x86 tcp_bbr.ko tcp_bbr.kld bbr.o = sack_filter.o >>> rack_bbr_common.o opt_inet.h opt_inet6.h opt_ipsec.h opt_tcpdebug.h >>> opt_kern_tls.h >>>=20 >>> rm: x86: is a directory >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make[3]: stopped in /usr/src/sys >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make[2]: stopped in /usr/src >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make[1]: stopped in /usr/src >>>=20 >>> *** Error code 1 >>>=20 >>>=20 >>> Stop. >>>=20 >>> make: stopped in /usr/src >>>=20 >>>=20 >>>=20 >>> On Tue, Sep 17, 2019 at 6:27 PM Randall Stewart <rrs@netflix.com> = wrote: >>>=20 >>> Pacing is provided by tcp_hpts.c. The current linux patches do not = have >>>=20 >>> to have fq.. they built an alternate means of doing pacing into bbr. >>>=20 >>>=20 >>> In either case our testing has shown that our pacing is more = accurate than >>>=20 >>> either fq or the internal pacer :) >>>=20 >>>=20 >>> R >>>=20 >>>=20 >>> On Sep 17, 2019, at 11:05 AM, vm finance <vm.finance2@gmail.com> = wrote: >>>=20 >>>=20 >>> Thanks Randall. >>>=20 >>> I was able to apply the patch - now rebuilding the kernel. Would = update on >>> how it goes. >>>=20 >>>=20 >>> BTW, is there any description on how lack of tc_fq under FreeBSD is >>> compensated here? >>>=20 >>> The original BBR patches on Linux show that as a must-have? Is that >>> functionality implemented via tcp_ratelimit.[ch]? >>>=20 >>>=20 >>> Any pointers to existing presentations/discussions highly = appreciated? >>>=20 >>>=20 >>> Thanks a lot. >>>=20 >>>=20 >>> On Tue, Sep 17, 2019 at 5:39 AM Randall Stewart <rrs@netflix.com> = wrote: >>>=20 >>> You should be able to compile it against the current head. I = re-doing that >>> now (had an >>>=20 >>> issue with my machine and had to roll it back to a backup). >>>=20 >>>=20 >>> When I put the patch up on Sept 10th it complied with and without = BBR on >>> whatever >>>=20 >>> was that rev.. >>>=20 >>>=20 >>> Looking in the commit logs that would have been around 352191 >>>=20 >>>=20 >>> Hope that helps >>>=20 >>>=20 >>> R >>>=20 >>>=20 >>> On Sep 17, 2019, at 3:32 AM, vm finance <vm.finance2@gmail.com> = wrote: >>>=20 >>>=20 >>> Hi Randall, >>>=20 >>>=20 >>> Thanks for releasing BBR patch: >>>=20 >>> https://reviews.freebsd.org/D21582#change-xcAWBif3E9Jq >>>=20 >>>=20 >>> Could you please let me know what SVN/GIT label tag this is based = on? I >>> would like to patch and experiment with it. I couldn't find this = info in >>> the released patch. >>>=20 >>>=20 >>> Thanks a lot! >>>=20 >>>=20 >>> On Tue, Sep 10, 2019 at 10:26 AM Ryan Stone <rysto32@gmail.com> = wrote: >>>=20 >>> rrs@ has just posted the BBR patch to phabricator: >>>=20 >>>=20 >>> https://reviews.freebsd.org/D21582 >>>=20 >>>=20 >>> ------ >>>=20 >>> Randall Stewart >>>=20 >>> rrs@netflix.com >>>=20 >>>=20 >>>=20 >>>=20 >>>=20 >>> ------ >>>=20 >>> Randall Stewart >>>=20 >>> rrs@netflix.com >>>=20 >>>=20 >>>=20 >>>=20 >>>=20 >>> ------ >>>=20 >>> Randall Stewart >>>=20 >>> rrs@netflix.com >>>=20 >>>=20 >>>=20 >>>=20 >>>=20 >>> ------ >>>=20 >>> Randall Stewart >>>=20 >>> rrs@netflix.com >>>=20 >>>=20 >>>=20 >>>=20 >>>=20 >>> ------ >>>=20 >>> Randall Stewart >>>=20 >>> rrs@netflix.com >>>=20 >>>=20 >>>=20 >>>=20 >>>=20 >>> ------ >>> Randall Stewart >>> rrs@netflix.com >>>=20 >>>=20 >>>=20 >>>=20 >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to = "freebsd-net-unsubscribe@freebsd.org" ------ Randall Stewart rrs@netflix.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?98E195A0-AFE2-4182-BE90-493E76A0DB1C>