From owner-freebsd-net@freebsd.org Wed Sep 18 13:53:34 2019 Return-Path: Delivered-To: freebsd-net@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC0ABFE115 for ; Wed, 18 Sep 2019 13:53:34 +0000 (UTC) (envelope-from rrs@netflix.com) Received: from mail-pl1-x641.google.com (mail-pl1-x641.google.com [IPv6:2607:f8b0:4864:20::641]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46YLzf27KBz4LQp for ; Wed, 18 Sep 2019 13:53:33 +0000 (UTC) (envelope-from rrs@netflix.com) Received: by mail-pl1-x641.google.com with SMTP id s17so3229910plp.2 for ; Wed, 18 Sep 2019 06:53:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=X5ljNATsEgZqo1ZtnC/A/PaekYumL8m8yiLlu268MMY=; b=Er/6Bs682i15dPnoQr1stzcR57qWvCasSOjDm54mTQLKhCXUKBqIGWe5HqTt/ciZ8e BjZ1EXjphfIq5z7clEqbwd2S523kxoF7ciPd1VOWnBbcmdj/7+izIaV7okWzDTLptSTb 9+SagVnoj8axHJnJJ7b+yhkAO/v9/dO9s2RglbEstnZGVc2zgdYqwZwFR8rDlozN+Zus m+QR2u0xmujVZq3ETa7yxyDtxbKxFYnqgfSjGUgO1VyUFkiWoT+TMvK3RLrBLCo2jwLU egfzcXINLNg/8ZdgbDKs4rfkWIBcOmSOoUaK7xlQRIYvVyNOFraxmdNxyUgbCwBkGnHg 3vUw== X-Gm-Message-State: APjAAAU1Lit36/x6IgSfoDqiOY7Ylvbt5Q9sRlzZOIJYuxMvzcRMxVUa 1yGDHK4QIf199/kqKbXtXZHKpg== X-Google-Smtp-Source: APXvYqytwkuD/bTCYpbDLIW0inEnkmgVDAV+SLxCrBbI2rFs7cUOacV16H1OGjuVClpGyDksiwUbYg== X-Received: by 2002:a17:902:8d95:: with SMTP id v21mr4001383plo.77.1568814812650; Wed, 18 Sep 2019 06:53:32 -0700 (PDT) Received: from ?IPv6:2607:fb10:7021:1::c2ea? ([2607:fb10:7021:1::c2ea]) by smtp.gmail.com with ESMTPSA id b10sm6340129pfi.85.2019.09.18.06.53.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 18 Sep 2019 06:53:32 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Subject: Re: BBR patches? From: Randall Stewart In-Reply-To: <98E195A0-AFE2-4182-BE90-493E76A0DB1C@netflix.com> Date: Wed, 18 Sep 2019 06:53:30 -0700 Cc: vm finance , freebsd-net , Jamie Landeg-Jones , Ryan Stone Content-Transfer-Encoding: quoted-printable Message-Id: <9F3B0B5B-EF6A-42E1-99B8-9644DD0B39AB@netflix.com> References: <201909091232.x89CWl4b047025@donotpassgo.dyslexicfish.net> <27AD43DA-3237-490A-B3A6-C1792F9674E5@netflix.com> <5B630235-ABC7-4122-9082-F59BCCCDE14A@netflix.com> <84C20AED-44B1-4673-A29E-1A6FA61D8F27@netflix.com> <98E195A0-AFE2-4182-BE90-493E76A0DB1C@netflix.com> To: =?utf-8?Q?Michael_T=C3=BCxen?= X-Mailer: Apple Mail (2.3445.9.1) X-Rspamd-Queue-Id: 46YLzf27KBz4LQp X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.07 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_SPF_ALLOW(0.00)[+ip6:2607:f8b0:4000::/36:c]; MV_CASE(0.50)[]; RCPT_COUNT_FIVE(0.00)[5]; RCVD_COUNT_THREE(0.00)[3]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[netflix.com:+]; DMARC_POLICY_ALLOW(0.00)[netflix.com,reject]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; SUBJECT_ENDS_QUESTION(1.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.97)[-0.973,0]; R_DKIM_ALLOW(0.00)[netflix.com:s=google]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-0.997,0]; TAGGED_RCPT(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-net@freebsd.org]; MIME_GOOD(-0.10)[text/plain]; BAD_REP_POLICIES(0.10)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; WHITELIST_DMARC(-7.00)[netflix.com:D:+]; RCVD_IN_DNSWL_NONE(0.00)[1.4.6.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; URIBL_BLACK(7.50)[osboxes.org.multi.uribl.com]; WHITELIST_SPF_DKIM(-3.00)[netflix.com:d:+,netflix.com:s:+]; FREEMAIL_CC(0.00)[gmail.com]; RCVD_TLS_ALL(0.00)[]; IP_SCORE(-1.10)[ip: (-0.54), ipnet: 2607:f8b0::/32(-2.68), asn: 15169(-2.23), country: US(-0.05)] X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Sep 2019 13:53:34 -0000 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=E2=80=A6.=20 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 wrote: >=20 > Thats great idea Michael. >=20 > =46rom the look fo the build log I was sent, his blow-up has nothing = to do > with the patches. >=20 > He should probably >=20 > 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 ** >=20 > Then after that he could >=20 > 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 >=20 > And he should have it all working :) >=20 > 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.. >=20 > R >=20 >> On Sep 18, 2019, at 12:10 AM, Michael Tuexen = wrote: >>=20 >>> On 18. Sep 2019, at 08:19, vm finance 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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 = 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" >=20 > ------ > Randall Stewart > rrs@netflix.com >=20 >=20 >=20 ------ Randall Stewart rrs@netflix.com