Date: Thu, 19 Sep 2019 06:08:10 +0000 From: vm finance <vm.finance2@gmail.com> To: Randall Stewart <rrs@netflix.com> Cc: =?UTF-8?Q?Michael_T=C3=BCxen?= <michael.tuexen@lurchi.franken.de>, freebsd-net <freebsd-net@freebsd.org>, Jamie Landeg-Jones <jamie@catflap.org>, Ryan Stone <rysto32@gmail.com> Subject: Re: BBR patches? Message-ID: <CAKy-8=hHDbGNHKESYBkhMfXaouJHWn%2BiV08ed2SdU4uoqDUcSg@mail.gmail.com> In-Reply-To: <8474687C-8E5D-45F0-A3DE-0BF62ED2D28B@netflix.com> 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> <98E195A0-AFE2-4182-BE90-493E76A0DB1C@netflix.com> <9F3B0B5B-EF6A-42E1-99B8-9644DD0B39AB@netflix.com> <CAKy-8=gjXXz8VRkxaHXQY4Z%2BJpAkFusFbv_eFnM8huwWZgQD_g@mail.gmail.com> <CAKy-8=jH1LcWycm5tM3sZMvUL6ETBaZ_V4DdgKmHTPe7QyfPww@mail.gmail.com> <F9C36F36-8369-4318-86A2-2CC7865D87C2@netflix.com> <CAKy-8=jsqs6_LbX94zV4OT9hBJZLvC9tofu6JOEmV=AMb_=GWw@mail.gmail.com> <CAKy-8=iTC_hvJsjBpGgZMO6RWDF9Ak_RAv_KTeGOpKLZO-VUZg@mail.gmail.com> <8474687C-8E5D-45F0-A3DE-0BF62ED2D28B@netflix.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Hi Randall, I applied the patch available at: https://reviews.freebsd.org/D21582?id=62213 NOTE: This raw patch seems to be exactly the same as the one I downloaded on Sep10...hope I'm not missing anything here... I clicked on "download raw diff" and saved it to bbr_patch.diff file on my local machine Step 1: Apply PATCH: cd /usr/src/sys patch < bbr_patch.diff Patch was applied successfully - no errors seen there. Step 2: Update kernel config: cp /usr/src/sys/amd64/conf/GENERIC /usr/src/sys/amd64/conf/MYKERNEL Added three options to MYKERNEL (per ur email - I have also attached the compile MYKERNEL file) cd /usr/src/sys/amd64/compile/MYKERNEL make cleandepend =>This fails due to missing "bbr" under /usr/src/sys/modules/tcp/ [pls find the attached log file for exact error] make depend => This also fails due to missing "/usr/src/sys/modules/tcp/bbr" STEP 3: cd /usr/src/ make buildkernel KERNCONF=MYKERNEL This also fails due to prior errors in Step 2. Please find MYKERNEL config file + error logs. Many many thanks for taking time to help me through this! PS: I did a make buildkernel without any KERNCONF=MYKERNEL, and that successfully finished. On Thu, Sep 19, 2019 at 12:19 PM Randall Stewart <rrs@netflix.com> wrote: > You can look in the config I sent.. but here is what > I have added to enable BBR and Rack to be built > ***** > makeoptions WITH_EXTRA_TCP_STACKS=1 > options TCPHPTS > options RATELIMIT > ****** > > So you should > 1) Apply the current patch in phabricator > 2) edit your config and add the above three lines > 3) go to the src dir and type > make buildkernel KERNCONF=myconf > > That should build and get you a kernel that will include bbr and rack. You > will > need to, after it boots up type > > kldload tcp_bbr > > or > > kldload tcp_rack > > To get the modules loaded > > R > > > > > On Sep 18, 2019, at 2:31 PM, vm finance <vm.finance2@gmail.com> wrote: > > > > Hi Randall, Michael, > > > > Build is done successfully. I would appreciate if you could share config > changes needed for BBR. > > > > My svn revision is: 352483 > > > > ======================================================= > > awk -f /usr/src/sys/conf/kmod_syms.awk zlib.ko.full export_syms | xargs > -J% objcopy % zlib.ko.full > > objcopy --only-keep-debug zlib.ko.full zlib.ko.debug > > objcopy --strip-debug --add-gnu-debuglink=zlib.ko.debug zlib.ko.full > zlib.ko > > -------------------------------------------------------------- > > >>> Kernel build for GENERIC completed on Wed Sep 18 21:08:31 UTC 2019 > > -------------------------------------------------------------- > > >>> Kernel(s) GENERIC built in 1972 seconds, ncpu: 4 > > ======================================================= > > > > Thank you > > Vishal. > > > > > > On Wed, Sep 18, 2019 at 3:34 PM vm finance <vm.finance2@gmail.com> > wrote: > > I'm using amd64. I'd get back as soon as base build is complete. > > > > Thanks! > > > > On Wed, Sep 18, 2019 at 7:09 AM Randall Stewart <rrs@netflix.com> wrote: > > To get bbr running you will need to change your kernel config. > > > > Are you building i386 or amd64? > > > > After you have successfully did > > > > 1) buildworld > > 2) buildkernel > > 3) installkernel > > > > (you can look in UPDATING for instructions .. though the file is long :D) > > > > successfully let me know.. and then I will give you the tweaks you need > to add > > to the kerneconf. > > > > It won’t take as long to build because at that point you can add in the > > NO_CLEAN NO_CLEANDIR options as well since you will have built everything > > the first time > > > > R > > > > > On Sep 18, 2019, at 7:06 AM, vm finance <vm.finance2@gmail.com> wrote: > > > > > > BTW, if you think I should be making any changes in configs, please do > let me know. > > > My goal is to build a freebsd image with BBR patches on x86 VM. > > > Nothing fancy. > > > > > > thanks! > > > > > > On Wed, Sep 18, 2019 at 7:03 AM vm finance <vm.finance2@gmail.com> > wrote: > > > Thanks Randall, Michael, > > > > > > I did "svn svn://svn.freebsd.org/base/head /usr/src" > > > and now doing "make buildworld buildkernel" > > > [I didn't change anything in configs - just whatever are the defaults] > > > > > > I would update as soon as its done. > > > > > > Thanks again! > > > > > > On Wed, Sep 18, 2019 at 6:53 AM Randall Stewart <rrs@netflix.com> > wrote: > > > One other note.. I notice his kernel conf he sent does not have > > > the right things to get BBR even to attempt to build. > > > > > > I would suggest using that config for the first steps.. then he must > add > > > the additional tcp stacks and the hpts in order to get bbr/rack and > any other > > > extra stack…. > > > > > > But I would suggest to build with his current config first and once he > has > > > that in place and building > > > > > > a) apply the patch > > > b) add the extra kernel options > > > > > > R > > > > > > > On Sep 18, 2019, at 6:50 AM, Randall Stewart <rrs@netflix.com> > wrote: > > > > > > > > Thats great idea Michael. > > > > > > > > From 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. > > > > — make buildworld > > > > — make buildkernel KERNCONF=his-conf > > > > — make installkernel KERNCONF=his-conf > > > > > > > > ** do the reboot and merge master ** > > > > > > > > Then after that he could > > > > > > > > 3) Apply the current patch in the review > > > > 4) do build that > > > > — make buildkernel KERNCONF=his_conf -DNO_CLEAN -DNO_CLEANDIR > > > > — make install kernel KERNCONF=his_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’t 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: > > > >> > > > >>> On 18. Sep 2019, at 08:19, vm finance <vm.finance2@gmail.com> > wrote: > > > >>> > > > >>> correcting a typo: > > > >>> > > > >>> 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. > > > >> > > > >> Best regards > > > >> Michael > > > >>> > > > >>> Thank you! > > > >>> > > > >>> On Tue, Sep 17, 2019 at 10:11 PM vm finance <vm.finance2@gmail.com> > wrote: > > > >>> > > > >>>> Actually I am on head already as mentioned previously. Pulled it > using > > > >>>> yesterday: > > > >>>> > > > >>>> svn co svn://svn.freebsd.org/base/head /use/src > > > >>>> > > > >>>> > > > >>>> If you could pls let me know the new patch, I can try that. > > > >>>> > > > >>>> Thanks > > > >>>> > > > >>>> Sent from my iPhone > > > >>>> > > > >>>> On 18-Sep-2019, at 8:56 AM, Randall Stewart <rrs@netflix.com> > wrote: > > > >>>> > > > >>>> There have been several patches pre-this one that provide > > > >>>> the infrastructure to support BBR. > > > >>>> > > > >>>> Release 12.0 will *not* have these patches and will *not* compile > it. > > > >>>> > > > >>>> 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 > > > >>>> > > > >>>> R > > > >>>> > > > >>>> On Sep 17, 2019, at 7:26 PM, vm finance <vm.finance2@gmail.com> > wrote: > > > >>>> > > > >>>> > > > >>>> Hi Randall, > > > >>>> > > > >>>> > > > >>>> Could you please provide a pointer to the latest patch. I had > applied the > > > >>>> one you published Sep-10. > > > >>>> > > > >>>> > > > >>>> Following is what I have done: > > > >>>> > > > >>>> 1. Picked FreeBSD 12.0 RELEASE VM from osboxes.org > > > >>>> > > > >>>> 2. Got VM up under VMPlayer on x86 laptop > > > >>>> > > > >>>> 3. Checked out latest codebase from freebsd repo: > > > >>>> > > > >>>> svn co svn://svn.freebsd.org/base/head /usr/src* > > > >>>> > > > >>>> cd /usr/src; > > > >>>> > > > >>>> make buildworld buildkernel > > > >>>> > > > >>>> [this is where make fails when patch is applied] > > > >>>> > > > >>>> > > > >>>> I could try to build with your latest patch - please send me a > pointer. > > > >>>> > > > >>>> > > > >>>> Thanks for your help! > > > >>>> > > > >>>> > > > >>>> > > > >>>> On Tue, Sep 17, 2019 at 1:33 PM Randall Stewart <rrs@netflix.com> > wrote: > > > >>>> > > > >>>> Looking at your make file log I can’t really tell what you are > doing. > > > >>>> > > > >>>> > > > >>>> Its not the BBR or Rack code that is blowing up… > > > >>>> > > > >>>> > > > >>>> Are you cross compiling? > > > >>>> > > > >>>> > > > >>>> I have done the old fashioned kernel make > > > >>>> > > > >>>> > > > >>>> i.e. > > > >>>> > > > >>>> > > > >>>> cd src/sys/amd64/config > > > >>>> > > > >>>> config headvm > > > >>>> > > > >>>> cd ../compile/headvm > > > >>>> > > > >>>> > > > >>>> make cleandepend ; make depend; make -j3 > > > >>>> > > > >>>> > > > >>>> I have done > > > >>>> > > > >>>> > > > >>>> cd src > > > >>>> > > > >>>> make buildkernel KERNCONF=headvm > > > >>>> > > > >>>> > > > >>>> And even > > > >>>> > > > >>>> > > > >>>> make buildkernel KERNCONF=GENERIC > > > >>>> > > > >>>> > > > >>>> to make sure that the build works without bbr. > > > >>>> > > > >>>> > > > >>>> I attach my headvm config.. > > > >>>> > > > >>>> > > > >>>> What exactly are you building and how? kernel config too please? > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 1:11 PM, Randall Stewart <rrs@netflix.com> > wrote: > > > >>>> > > > >>>> > > > >>>> looking > > > >>>> > > > >>>> > > > >>>> I was at 352408.. let me update and try it > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 1:10 PM, Randall Stewart <rrs@netflix.com> > wrote: > > > >>>> > > > >>>> > > > >>>> Hmm > > > >>>> > > > >>>> > > > >>>> Did you get the patch I updated too this am? > > > >>>> > > > >>>> > > > >>>> I have built it both with and without the bbr stack and had no > issue.. > > > >>>> there was > > > >>>> > > > >>>> an issue with KTLS before the update though. > > > >>>> > > > >>>> > > > >>>> I don’t recognize what you have below there though… > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 11:47 AM, vm finance <vm.finance2@gmail.com> > wrote: > > > >>>> > > > >>>> > > > >>>> Got it - thank you! > > > >>>> > > > >>>> > > > >>>> btw, I tried to build the patch but its giving an error. > Following is SVN > > > >>>> info + make error mesg. > > > >>>> > > > >>>> > > > >>>> Please let me know what am I missing here? > > > >>>> > > > >>>> > > > >>>> Thanks! > > > >>>> > > > >>>> > > > >>>> #svnlite revision > > > >>>> > > > >>>> Path: . > > > >>>> > > > >>>> Working Copy Root Path: /usr/src > > > >>>> > > > >>>> URL: svn://svn.freebsd.org/base/head > > > >>>> > > > >>>> Relative URL: ^/head > > > >>>> > > > >>>> Repository Root: svn://svn.freebsd.org/base > > > >>>> > > > >>>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f > > > >>>> > > > >>>> Revision: 352436 > > > >>>> > > > >>>> Node Kind: directory > > > >>>> > > > >>>> Schedule: normal > > > >>>> > > > >>>> Last Changed Author: jah > > > >>>> > > > >>>> Last Changed Rev: 352434 > > > >>>> > > > >>>> Last Changed Date: 2019-09-17 03:39:31 +0000 (Tue, 17 Sep 2019) > > > >>>> > > > >>>> > > > >>>> root@osboxes:/usr/src # > > > >>>> > > > >>>> > > > >>>> -------------------------------------------- snip > > > >>>> ---------------------------- > > > >>>> > > > >>>> > > > >>>> ad_elf64_obj.llo reloc_elf64.llo disk.llo part.llo vdisk.llo > dev_net.llo > > > >>>> bcache.llo interp_simple.llo zfs_cmd.llo > > > >>>> > > > >>>> rm -f .depend .depend.* GPATH GRTAGS GSYMS GTAGS > > > >>>> > > > >>>> ===> sys (cleandir) > > > >>>> > > > >>>> 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 > > > >>>> > > > >>>> rm: x86: is a directory > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make[3]: stopped in /usr/src/sys > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make[2]: stopped in /usr/src > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make[1]: stopped in /usr/src > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make: stopped in /usr/src > > > >>>> > > > >>>> > > > >>>> > > > >>>> On Tue, Sep 17, 2019 at 6:41 PM vm finance <vm.finance2@gmail.com> > wrote: > > > >>>> > > > >>>> Got it - thank you! > > > >>>> > > > >>>> > > > >>>> btw, I tried to build the patch but its giving an error. > Following is SVN > > > >>>> info + make error mesg. > > > >>>> > > > >>>> I have also attached the entire build log...snippet is below > > > >>>> > > > >>>> > > > >>>> Please let me know what am I missing here? > > > >>>> > > > >>>> > > > >>>> Thanks! > > > >>>> > > > >>>> > > > >>>> #svnlite revision > > > >>>> > > > >>>> Path: . > > > >>>> > > > >>>> Working Copy Root Path: /usr/src > > > >>>> > > > >>>> URL: svn://svn.freebsd.org/base/head > > > >>>> > > > >>>> Relative URL: ^/head > > > >>>> > > > >>>> Repository Root: svn://svn.freebsd.org/base > > > >>>> > > > >>>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f > > > >>>> > > > >>>> Revision: 352436 > > > >>>> > > > >>>> Node Kind: directory > > > >>>> > > > >>>> Schedule: normal > > > >>>> > > > >>>> Last Changed Author: jah > > > >>>> > > > >>>> Last Changed Rev: 352434 > > > >>>> > > > >>>> Last Changed Date: 2019-09-17 03:39:31 +0000 (Tue, 17 Sep 2019) > > > >>>> > > > >>>> > > > >>>> root@osboxes:/usr/src # > > > >>>> > > > >>>> > > > >>>> -------------------------------------------- snip > > > >>>> ---------------------------- > > > >>>> > > > >>>> > > > >>>> ad_elf64_obj.llo reloc_elf64.llo disk.llo part.llo vdisk.llo > dev_net.llo > > > >>>> bcache.llo interp_simple.llo zfs_cmd.llo > > > >>>> > > > >>>> rm -f .depend .depend.* GPATH GRTAGS GSYMS GTAGS > > > >>>> > > > >>>> ===> sys (cleandir) > > > >>>> > > > >>>> 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 > > > >>>> > > > >>>> rm: x86: is a directory > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make[3]: stopped in /usr/src/sys > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make[2]: stopped in /usr/src > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make[1]: stopped in /usr/src > > > >>>> > > > >>>> *** Error code 1 > > > >>>> > > > >>>> > > > >>>> Stop. > > > >>>> > > > >>>> make: stopped in /usr/src > > > >>>> > > > >>>> > > > >>>> > > > >>>> On Tue, Sep 17, 2019 at 6:27 PM Randall Stewart <rrs@netflix.com> > wrote: > > > >>>> > > > >>>> Pacing is provided by tcp_hpts.c. The current linux patches do > not have > > > >>>> > > > >>>> to have fq.. they built an alternate means of doing pacing into > bbr. > > > >>>> > > > >>>> > > > >>>> In either case our testing has shown that our pacing is more > accurate than > > > >>>> > > > >>>> either fq or the internal pacer :) > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 11:05 AM, vm finance <vm.finance2@gmail.com> > wrote: > > > >>>> > > > >>>> > > > >>>> Thanks Randall. > > > >>>> > > > >>>> I was able to apply the patch - now rebuilding the kernel. Would > update on > > > >>>> how it goes. > > > >>>> > > > >>>> > > > >>>> BTW, is there any description on how lack of tc_fq under FreeBSD > is > > > >>>> compensated here? > > > >>>> > > > >>>> The original BBR patches on Linux show that as a must-have? Is > that > > > >>>> functionality implemented via tcp_ratelimit.[ch]? > > > >>>> > > > >>>> > > > >>>> Any pointers to existing presentations/discussions highly > appreciated? > > > >>>> > > > >>>> > > > >>>> Thanks a lot. > > > >>>> > > > >>>> > > > >>>> On Tue, Sep 17, 2019 at 5:39 AM Randall Stewart <rrs@netflix.com> > wrote: > > > >>>> > > > >>>> You should be able to compile it against the current head. I > re-doing that > > > >>>> now (had an > > > >>>> > > > >>>> issue with my machine and had to roll it back to a backup). > > > >>>> > > > >>>> > > > >>>> When I put the patch up on Sept 10th it complied with and without > BBR on > > > >>>> whatever > > > >>>> > > > >>>> was that rev.. > > > >>>> > > > >>>> > > > >>>> Looking in the commit logs that would have been around 352191 > > > >>>> > > > >>>> > > > >>>> Hope that helps > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 3:32 AM, vm finance <vm.finance2@gmail.com> > wrote: > > > >>>> > > > >>>> > > > >>>> Hi Randall, > > > >>>> > > > >>>> > > > >>>> Thanks for releasing BBR patch: > > > >>>> > > > >>>> https://reviews.freebsd.org/D21582#change-xcAWBif3E9Jq > > > >>>> > > > >>>> > > > >>>> 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. > > > >>>> > > > >>>> > > > >>>> Thanks a lot! > > > >>>> > > > >>>> > > > >>>> On Tue, Sep 10, 2019 at 10:26 AM Ryan Stone <rysto32@gmail.com> > wrote: > > > >>>> > > > >>>> rrs@ has just posted the BBR patch to phabricator: > > > >>>> > > > >>>> > > > >>>> https://reviews.freebsd.org/D21582 > > > >>>> > > > >>>> > > > >>>> ------ > > > >>>> > > > >>>> Randall Stewart > > > >>>> > > > >>>> rrs@netflix.com > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> ------ > > > >>>> > > > >>>> Randall Stewart > > > >>>> > > > >>>> rrs@netflix.com > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> ------ > > > >>>> > > > >>>> Randall Stewart > > > >>>> > > > >>>> rrs@netflix.com > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> ------ > > > >>>> > > > >>>> Randall Stewart > > > >>>> > > > >>>> rrs@netflix.com > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> ------ > > > >>>> > > > >>>> Randall Stewart > > > >>>> > > > >>>> rrs@netflix.com > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>>> ------ > > > >>>> Randall Stewart > > > >>>> rrs@netflix.com > > > >>>> > > > >>>> > > > >>>> > > > >>>> > > > >>> _______________________________________________ > > > >>> 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 > > > > > > > > > > > > > > > > > > ------ > > > Randall Stewart > > > rrs@netflix.com > > > > > > > > > > > > > ------ > > Randall Stewart > > rrs@netflix.com > > > > > > > > ------ > Randall Stewart > rrs@netflix.com > > > > [-- Attachment #2 --] # # GENERIC -- Generic kernel configuration file for FreeBSD/amd64 # # For more information on this file, please read the config(5) manual page, # and/or the handbook section on Kernel Configuration Files: # # https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html # # The handbook is also available locally in /usr/share/doc/handbook # if you've installed the doc distribution, otherwise always see the # FreeBSD World Wide Web server (https://www.FreeBSD.org/) for the # latest information. # # An exhaustive list of options and more detailed explanations of the # device lines is also present in the ../../conf/NOTES and NOTES files. # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # # $FreeBSD: head/sys/amd64/conf/GENERIC 349253 2019-06-21 00:16:30Z cem $ cpu HAMMER ident GENERIC makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support makeoptions WITH_EXTRA_TCP_STACKS=1 #Vishal for BBR options TCPHPTS options RATELIMIT options SCHED_ULE # ULE scheduler options NUMA # Non-Uniform Memory Architecture support options PREEMPTION # Enable kernel thread preemption options VIMAGE # Subsystem virtualization, e.g. VNET options INET # InterNETworking options INET6 # IPv6 communications protocols options IPSEC_SUPPORT # Allow kldload of ipsec and tcpmd5 options TCP_OFFLOAD # TCP offload options TCP_BLACKBOX # Enhanced TCP event logging options TCP_HHOOK # hhook(9) framework for TCP options TCP_RFC7413 # TCP Fast Open options SCTP # Stream Control Transmission Protocol options FFS # Berkeley Fast Filesystem options SOFTUPDATES # Enable FFS soft updates support options UFS_ACL # Support for access control lists options UFS_DIRHASH # Improve performance on big directories options UFS_GJOURNAL # Enable gjournal-based UFS journaling options QUOTA # Enable disk quotas for UFS options MD_ROOT # MD is a potential root device options NFSCL # Network Filesystem Client options NFSD # Network Filesystem Server options NFSLOCKD # Network Lock Manager options NFS_ROOT # NFS usable as /, requires NFSCL options MSDOSFS # MSDOS Filesystem options CD9660 # ISO 9660 Filesystem options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_RAID # Soft RAID functionality. options GEOM_LABEL # Provides labelization options EFIRT # EFI Runtime Services support options COMPAT_FREEBSD32 # Compatible with i386 binaries options COMPAT_FREEBSD4 # Compatible with FreeBSD4 options COMPAT_FREEBSD5 # Compatible with FreeBSD5 options COMPAT_FREEBSD6 # Compatible with FreeBSD6 options COMPAT_FREEBSD7 # Compatible with FreeBSD7 options COMPAT_FREEBSD9 # Compatible with FreeBSD9 options COMPAT_FREEBSD10 # Compatible with FreeBSD10 options COMPAT_FREEBSD11 # Compatible with FreeBSD11 options COMPAT_FREEBSD12 # Compatible with FreeBSD12 options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI options KTRACE # ktrace(1) support options STACK # stack(9) support options SYSVSHM # SYSV-style shared memory options SYSVMSG # SYSV-style message queues options SYSVSEM # SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. options KBD_INSTALL_CDEV # install a CDEV entry in /dev options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) options AUDIT # Security event auditing options CAPABILITY_MODE # Capsicum capability mode options CAPABILITIES # Capsicum capabilities options MAC # TrustedBSD MAC Framework options KDTRACE_FRAME # Ensure frames are compiled in options KDTRACE_HOOKS # Kernel DTrace hooks options DDB_CTF # Kernel ELF linker loads CTF data options INCLUDE_CONFIG_FILE # Include this file in kernel options RACCT # Resource accounting framework options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default options RCTL # Resource limits # Debugging support. Always need this: options KDB # Enable kernel debugger support. options KDB_TRACE # Print a stack trace for a panic. # For full debugger support use (turn off in stable branch): options BUF_TRACKING # Track buffer history options DDB # Support DDB. options FULL_BUF_TRACKING # Track more buffer history options GDB # Support remote GDB. options DEADLKRES # Enable the deadlock resolver options INVARIANTS # Enable calls of extra sanity checking options INVARIANT_SUPPORT # Extra sanity checks of internal structures, required by INVARIANTS options WITNESS # Enable checks to detect deadlocks and cycles options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones options VERBOSE_SYSINIT=0 # Support debug.verbose_sysinit, off by default # Kernel Sanitizers #options COVERAGE # Generic kernel coverage. Used by KCOV #options KCOV # Kernel Coverage Sanitizer # Warning: KUBSAN can result in a kernel too large for loader to load #options KUBSAN # Kernel Undefined Behavior Sanitizer # Kernel dump features. options EKCD # Support for encrypted kernel dumps options GZIO # gzip-compressed kernel and user dumps options ZSTDIO # zstd-compressed kernel and user dumps options NETDUMP # netdump(4) client support # Make an SMP-capable kernel by default options SMP # Symmetric MultiProcessor Kernel options EARLY_AP_STARTUP # CPU frequency control device cpufreq # Bus support. device acpi options ACPI_DMAR device pci options PCI_HP # PCI-Express native HotPlug options PCI_IOV # PCI SR-IOV support # Floppy drives device fdc # ATA controllers device ahci # AHCI-compatible SATA controllers device ata # Legacy ATA/SATA controllers device mvs # Marvell 88SX50XX/88SX60XX/88SX70XX/SoC SATA device siis # SiliconImage SiI3124/SiI3132/SiI3531 SATA # SCSI Controllers device ahc # AHA2940 and onboard AIC7xxx devices device ahd # AHA39320/29320 and onboard AIC79xx devices device esp # AMD Am53C974 (Tekram DC-390(T)) device hptiop # Highpoint RocketRaid 3xxx series device isp # Qlogic family #device ispfw # Firmware for QLogic HBAs- normally a module device mpt # LSI-Logic MPT-Fusion device mps # LSI-Logic MPT-Fusion 2 device mpr # LSI-Logic MPT-Fusion 3 device sym # NCR/Symbios Logic device trm # Tekram DC395U/UW/F DC315U adapters device isci # Intel C600 SAS controller device ocs_fc # Emulex FC adapters # ATA/SCSI peripherals device scbus # SCSI bus (required for ATA/SCSI) device ch # SCSI media changers device da # Direct Access (disks) device sa # Sequential Access (tape etc) device cd # CD device pass # Passthrough device (direct ATA/SCSI access) device ses # Enclosure Services (SES and SAF-TE) #device ctl # CAM Target Layer # RAID controllers interfaced to the SCSI subsystem device amr # AMI MegaRAID device arcmsr # Areca SATA II RAID device ciss # Compaq Smart RAID 5* device hptmv # Highpoint RocketRAID 182x device hptnr # Highpoint DC7280, R750 device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx device hpt27xx # Highpoint RocketRAID 27xx device iir # Intel Integrated RAID device ips # IBM (Adaptec) ServeRAID device mly # Mylex AcceleRAID/eXtremeRAID device twa # 3ware 9000 series PATA/SATA RAID device smartpqi # Microsemi smartpqi driver device tws # LSI 3ware 9750 SATA+SAS 6Gb/s RAID controller # RAID controllers device aac # Adaptec FSA RAID device aacp # SCSI passthrough for aac (requires CAM) device aacraid # Adaptec by PMC RAID device ida # Compaq Smart RAID device mfi # LSI MegaRAID SAS device mlx # Mylex DAC960 family device mrsas # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s device pmspcv # PMC-Sierra SAS/SATA Controller driver #XXX pointer/int warnings #device pst # Promise Supertrak SX6000 device twe # 3ware ATA RAID # NVM Express (NVMe) support device nvme # base NVMe driver device nvd # expose NVMe namespaces as disks, depends on nvme # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc # AT keyboard controller device atkbd # AT keyboard device psm # PS/2 mouse device kbdmux # keyboard multiplexer device vga # VGA video card driver options VESA # Add support for VESA BIOS Extensions (VBE) device splash # Splash screen and screen saver support # syscons is the default console driver, resembling an SCO console device sc options SC_PIXEL_MODE # add support for the raster text mode # vt is the new video console driver device vt device vt_vga device vt_efifb device agp # support several AGP chipsets # PCCARD (PCMCIA) support # PCMCIA and cardbus bridge support device cbb # cardbus (yenta) bridge device pccard # PC Card (16-bit) bus device cardbus # CardBus (32-bit) bus # Serial (COM) ports device uart # Generic UART driver # Parallel port device ppc device ppbus # Parallel port bus (required) device lpt # Printer device ppi # Parallel port interface device #device vpo # Requires scbus and da device puc # Multi I/O cards and multi-channel UARTs # PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure device iflib device em # Intel PRO/1000 Gigabit Ethernet Family device ix # Intel PRO/10GbE PCIE PF Ethernet device ixv # Intel PRO/10GbE PCIE VF Ethernet device ixl # Intel 700 Series Physical Function device iavf # Intel Adaptive Virtual Function device vmx # VMware VMXNET3 Ethernet # PCI Ethernet NICs. device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE device le # AMD Am7900 LANCE and Am79C9xx PCnet device ti # Alteon Networks Tigon I/II gigabit Ethernet # PCI Ethernet NICs that use the common MII bus controller code. # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! device miibus # MII bus support device ae # Attansic/Atheros L2 FastEthernet device age # Attansic/Atheros L1 Gigabit Ethernet device alc # Atheros AR8131/AR8132 Ethernet device ale # Atheros AR8121/AR8113/AR8114 Ethernet device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet device bfe # Broadcom BCM440x 10/100 Ethernet device bge # Broadcom BCM570xx Gigabit Ethernet device cas # Sun Cassini/Cassini+ and NS DP83065 Saturn device dc # DEC/Intel 21143 and various workalikes device et # Agere ET1310 10/100/Gigabit Ethernet device fxp # Intel EtherExpress PRO/100B (82557, 82558) device gem # Sun GEM/Sun ERI/Apple GMAC device hme # Sun HME (Happy Meal Ethernet) device jme # JMicron JMC250 Gigabit/JMC260 Fast Ethernet device lge # Level 1 LXT1001 gigabit Ethernet device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet device nfe # nVidia nForce MCP on-board Ethernet device nge # NatSemi DP83820 gigabit Ethernet device re # RealTek 8139C+/8169/8169S/8110S device rl # RealTek 8129/8139 device sge # Silicon Integrated Systems SiS190/191 device sis # Silicon Integrated Systems SiS 900/SiS 7016 device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet device ste # Sundance ST201 (D-Link DFE-550TX) device stge # Sundance/Tamarack TC9021 gigabit Ethernet device vge # VIA VT612x gigabit Ethernet device vr # VIA Rhine, Rhine II device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'') # Wireless NIC cards device wlan # 802.11 support options IEEE80211_DEBUG # enable debug msgs options IEEE80211_SUPPORT_MESH # enable 802.11s draft support device wlan_wep # 802.11 WEP support device wlan_ccmp # 802.11 CCMP support device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device an # Aironet 4500/4800 802.11 wireless NICs. device ath # Atheros NICs device ath_pci # Atheros pci/cardbus glue device ath_hal # pci/cardbus chip support options AH_AR5416_INTERRUPT_MITIGATION # AR5416 interrupt mitigation options ATH_ENABLE_11N # Enable 802.11n support for AR5416 and later device ath_rate_sample # SampleRate tx rate control for ath #device bwi # Broadcom BCM430x/BCM431x wireless NICs. #device bwn # Broadcom BCM43xx wireless NICs. device ipw # Intel 2100 wireless NICs. device iwi # Intel 2200BG/2225BG/2915ABG wireless NICs. device iwn # Intel 4965/1000/5000/6000 wireless NICs. device malo # Marvell Libertas wireless NICs. device mwl # Marvell 88W8363 802.11n wireless NICs. device ral # Ralink Technology RT2500 wireless NICs. device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs. device wpi # Intel 3945ABG wireless NICs. # Pseudo devices. device crypto # core crypto support device loop # Network loopback device padlock_rng # VIA Padlock RNG device rdrand_rng # Intel Bull Mountain RNG device ether # Ethernet support device vlan # 802.1Q VLAN support device tuntap # Packet tunnel. device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! # Note that 'bpf' is required for DHCP. device bpf # Berkeley packet filter # USB support options USB_DEBUG # enable debug msgs device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface device ehci # EHCI PCI->USB interface (USB 2.0) device xhci # XHCI PCI->USB interface (USB 3.0) device usb # USB Bus (required) device ukbd # Keyboard device umass # Disks/Mass storage - Requires scbus and da # Sound support device sound # Generic sound driver (required) device snd_cmi # CMedia CMI8338/CMI8738 device snd_csa # Crystal Semiconductor CS461x/428x device snd_emu10kx # Creative SoundBlaster Live! and Audigy device snd_es137x # Ensoniq AudioPCI ES137x device snd_hda # Intel High Definition Audio device snd_ich # Intel, NVidia and other ICH AC'97 Audio device snd_via8233 # VIA VT8233x Audio # MMC/SD device mmc # MMC/SD bus device mmcsd # MMC/SD memory card device sdhci # Generic PCI SD Host Controller # VirtIO support device virtio # Generic VirtIO bus (required) device virtio_pci # VirtIO PCI device device vtnet # VirtIO Ethernet device device virtio_blk # VirtIO Block device device virtio_scsi # VirtIO SCSI device device virtio_balloon # VirtIO Memory Balloon device # HyperV drivers and enhancement support device hyperv # HyperV drivers # Xen HVM Guest Optimizations # NOTE: XENHVM depends on xenpci. They must be added or removed together. options XENHVM # Xen HVM kernel infrastructure device xenpci # Xen HVM Hypervisor services driver # Netmap provides direct access to TX/RX rings on supported NICs device netmap # netmap(4) support # evdev interface options EVDEV_SUPPORT # evdev support in legacy drivers device evdev # input event device support device uinput # install /dev/uinput cdev [-- Attachment #3 --] root@osboxes:/usr/src/sys/amd64/compile/MYKERNEL # make cleandepend [...snip...] rm -f machine x86 .depend .depend.* GPATH GRTAGS GSYMS GTAGS ===> tcp (cleandepend) ===> tcp/bbr (cleandepend) cd: /usr/src/sys/modules/tcp/bbr: No such file or directory *** Error code 2 Stop. make[2]: stopped in /usr/src/sys/modules/tcp *** Error code 1 Stop. make[1]: stopped in /usr/src/sys/modules *** Error code 1 Stop. make: stopped in /usr/src/sys/amd64/compile/MYKERNEL root@osboxes:/usr/src/sys/amd64/compile/MYKERNEL # ls /usr/src/sys/modules/tcp/ Makefile Makefile.orig rack tcpmd5
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAKy-8=hHDbGNHKESYBkhMfXaouJHWn%2BiV08ed2SdU4uoqDUcSg>
