From owner-freebsd-net@freebsd.org Thu Sep 19 16:58:45 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 1B5B3128A50 for ; Thu, 19 Sep 2019 16:58:45 +0000 (UTC) (envelope-from vm.finance2@gmail.com) Received: from mail-io1-xd34.google.com (mail-io1-xd34.google.com [IPv6:2607:f8b0:4864:20::d34]) (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 46Z32r2W43z40nV for ; Thu, 19 Sep 2019 16:58:44 +0000 (UTC) (envelope-from vm.finance2@gmail.com) Received: by mail-io1-xd34.google.com with SMTP id r26so9368686ioh.8 for ; Thu, 19 Sep 2019 09:58:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=V7KJ/gJ0lc4R4pMoBSvlOpnQb1CzKxE9xCSvV2hpIjY=; b=DTu37js6DxI45Sd1ZQV2MsztXj78mBWhhNlBAz2LJVJ8yKp3kKOZyrNj3FZzzs3UU2 u8a3z19C2jLj3GdW426MO5TklgX9/dZCiky3g9+QIPOHcccHsdGFZpfiuCaZY6+SBFa8 BPhqSoX62ntC5tjPQkGZZvZDSELWOANWitalezLH7SWcLWAJDgfjwJUsDc3aTugl8bZB PktRLKDR7R+p1XVdpHON9PssBQOVC1+a6cFRH5XZjAQS+R9rLqOlAe8g6f/93hjpUHY9 uiz0dAQkzsQ4GNjCki1r48aaR0gXBBcHYneGx45Q9piCNKsjmqX4+5yRyL+Qu+SXB31j 4w+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=V7KJ/gJ0lc4R4pMoBSvlOpnQb1CzKxE9xCSvV2hpIjY=; b=sxw4kHBCOTkzi93iX/bMt9TZQX+AZsdNMLGGVcJvzlYYtTi6zS2flG7VK1jIOTedjT +EUwvgI4WfeA1LG5YsztVocaslXVxjAYJPljhi9XV3gpxkB3k4SUB9uudTO6AKjjWVla LQgenS8OWfU5TsIq9A8iGKW+cbOHxII9qSl9gT8o2bs/c8iKVDmRqCywz9gyJjKsLsR/ FuUZ04jItiN4YMPZS9rB5z7o04DHqpDIjXTIP4zf8iIz70yloqAjdmu4tyMtIyTKO2/S x0qnQziHhKLcPfVSKRQ+k5uswRGzWi99kX+iCQ6+0x6RgkJSmL5KGAgL9dX4HGgAT2uF TBnA== X-Gm-Message-State: APjAAAVK1wnXWBTVQyKqPOe/E16qdTQHG9yLeQ2NgYtxlqkzUupEcnv+ y+E6HKxKHbDlHzsWA1TngdHLOeqlCpwjjxG2A4E= X-Google-Smtp-Source: APXvYqxlMXZivzPoe6Q2rccOxdjupJ9QYHgaz3ohogYpMEKkf3lvlggymdPGZNSKWdseDDdppApXzn5vIrCSPA6zo5w= X-Received: by 2002:a5e:da0a:: with SMTP id x10mr13753006ioj.286.1568912323022; Thu, 19 Sep 2019 09:58:43 -0700 (PDT) MIME-Version: 1.0 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> <9F3B0B5B-EF6A-42E1-99B8-9644DD0B39AB@netflix.com> <8474687C-8E5D-45F0-A3DE-0BF62ED2D28B@netflix.com> In-Reply-To: <8474687C-8E5D-45F0-A3DE-0BF62ED2D28B@netflix.com> From: vm finance Date: Thu, 19 Sep 2019 06:08:10 +0000 Message-ID: Subject: Re: BBR patches? To: Randall Stewart Cc: =?UTF-8?Q?Michael_T=C3=BCxen?= , freebsd-net , Jamie Landeg-Jones , Ryan Stone Content-Type: multipart/mixed; boundary="000000000000b31ec50592eadd1d" X-Rspamd-Queue-Id: 46Z32r2W43z40nV X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=DTu37js6; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of vmfinance2@gmail.com designates 2607:f8b0:4864:20::d34 as permitted sender) smtp.mailfrom=vmfinance2@gmail.com X-Spamd-Result: default: False [-2.00 / 15.00]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; HAS_ATTACHMENT(0.00)[]; RCPT_COUNT_FIVE(0.00)[5]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~,4:~,5:~]; SUBJECT_ENDS_QUESTION(1.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; TAGGED_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/mixed,multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-net@freebsd.org]; IP_SCORE_FREEMAIL(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[4.3.d.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]; IP_SCORE(0.00)[ip: (-4.24), ipnet: 2607:f8b0::/32(-2.67), asn: 15169(-2.22), country: US(-0.05)]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] X-Content-Filtered-By: Mailman/MimeDel 2.1.29 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: Thu, 19 Sep 2019 16:58:45 -0000 --000000000000b31ec50592eadd1d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Randall, I applied the patch available at: https://reviews.freebsd.org/D21582?id=3D62213 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 =3D>This fails due to missing "bbr" under /usr/src/sys/modules/tcp/ [pls find the attached log file for exact error] make depend =3D> This also fails due to missing "/usr/src/sys/modules/tcp/bbr" STEP 3: cd /usr/src/ make buildkernel KERNCONF=3DMYKERNEL 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=3DMYKERNEL, and that successfully finished. On Thu, Sep 19, 2019 at 12:19 PM Randall Stewart 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=3D1 > 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=3Dmyconf > > That should build and get you a kernel that will include bbr and rack. Yo= u > 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 wrote: > > > > Hi Randall, Michael, > > > > Build is done successfully. I would appreciate if you could share confi= g > changes needed for BBR. > > > > My svn revision is: 352483 > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > > awk -f /usr/src/sys/conf/kmod_syms.awk zlib.ko.full export_syms | xarg= s > -J% objcopy % zlib.ko.full > > objcopy --only-keep-debug zlib.ko.full zlib.ko.debug > > objcopy --strip-debug --add-gnu-debuglink=3Dzlib.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 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > > > > Thank you > > Vishal. > > > > > > On Wed, Sep 18, 2019 at 3:34 PM vm finance > 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 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=E2=80=99t take as long to build because at that point you can ad= d in the > > NO_CLEAN NO_CLEANDIR options as well since you will have built everythi= ng > > the first time > > > > R > > > > > On Sep 18, 2019, at 7:06 AM, vm finance wrote= : > > > > > > BTW, if you think I should be making any changes in configs, please d= o > 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 > 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 > 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=E2=80=A6. > > > > > > But I would suggest to build with his current config first and once h= e > 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: > > > > > > > > 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. > > > > =E2=80=94 make buildworld > > > > =E2=80=94 make buildkernel KERNCONF=3Dhis-conf > > > > =E2=80=94 make installkernel KERNCONF=3Dhis-conf > > > > > > > > ** 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 -DN= O_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 bot= h > 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: > > > >> > > > >>> On 18. Sep 2019, at 08:19, vm finance > 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 > 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 > 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* compil= e > 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 > 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 > wrote: > > > >>>> > > > >>>> Looking at your make file log I can=E2=80=99t really tell what y= ou are > doing. > > > >>>> > > > >>>> > > > >>>> Its not the BBR or Rack code that is blowing up=E2=80=A6 > > > >>>> > > > >>>> > > > >>>> 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=3Dheadvm > > > >>>> > > > >>>> > > > >>>> And even > > > >>>> > > > >>>> > > > >>>> make buildkernel KERNCONF=3DGENERIC > > > >>>> > > > >>>> > > > >>>> 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 > wrote: > > > >>>> > > > >>>> > > > >>>> looking > > > >>>> > > > >>>> > > > >>>> I was at 352408.. let me update and try it > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 1:10 PM, Randall Stewart > 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=E2=80=99t recognize what you have below there though=E2=80= =A6 > > > >>>> > > > >>>> > > > >>>> R > > > >>>> > > > >>>> > > > >>>> On Sep 17, 2019, at 11:47 AM, vm finance > 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 > > > >>>> > > > >>>> =3D=3D=3D> 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 > 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 > > > >>>> > > > >>>> =3D=3D=3D> 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 > 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 > 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 > 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 withou= t > 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 > 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 base= d > 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 > 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 > > > > --000000000000b31ec50592eadd1d Content-Type: application/octet-stream; name=MYKERNEL Content-Disposition: attachment; filename=MYKERNEL Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k0qajp8f0 IwojIEdFTkVSSUMgLS0gR2VuZXJpYyBrZXJuZWwgY29uZmlndXJhdGlvbiBmaWxlIGZvciBGcmVl QlNEL2FtZDY0CiMKIyBGb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGZpbGUsIHBsZWFzZSBy ZWFkIHRoZSBjb25maWcoNSkgbWFudWFsIHBhZ2UsCiMgYW5kL29yIHRoZSBoYW5kYm9vayBzZWN0 aW9uIG9uIEtlcm5lbCBDb25maWd1cmF0aW9uIEZpbGVzOgojCiMgICAgaHR0cHM6Ly93d3cuRnJl ZUJTRC5vcmcvZG9jL2VuX1VTLklTTzg4NTktMS9ib29rcy9oYW5kYm9vay9rZXJuZWxjb25maWct Y29uZmlnLmh0bWwKIwojIFRoZSBoYW5kYm9vayBpcyBhbHNvIGF2YWlsYWJsZSBsb2NhbGx5IGlu IC91c3Ivc2hhcmUvZG9jL2hhbmRib29rCiMgaWYgeW91J3ZlIGluc3RhbGxlZCB0aGUgZG9jIGRp c3RyaWJ1dGlvbiwgb3RoZXJ3aXNlIGFsd2F5cyBzZWUgdGhlCiMgRnJlZUJTRCBXb3JsZCBXaWRl IFdlYiBzZXJ2ZXIgKGh0dHBzOi8vd3d3LkZyZWVCU0Qub3JnLykgZm9yIHRoZQojIGxhdGVzdCBp bmZvcm1hdGlvbi4KIwojIEFuIGV4aGF1c3RpdmUgbGlzdCBvZiBvcHRpb25zIGFuZCBtb3JlIGRl dGFpbGVkIGV4cGxhbmF0aW9ucyBvZiB0aGUKIyBkZXZpY2UgbGluZXMgaXMgYWxzbyBwcmVzZW50 IGluIHRoZSAuLi8uLi9jb25mL05PVEVTIGFuZCBOT1RFUyBmaWxlcy4KIyBJZiB5b3UgYXJlIGlu IGRvdWJ0IGFzIHRvIHRoZSBwdXJwb3NlIG9yIG5lY2Vzc2l0eSBvZiBhIGxpbmUsIGNoZWNrIGZp cnN0CiMgaW4gTk9URVMuCiMKIyAkRnJlZUJTRDogaGVhZC9zeXMvYW1kNjQvY29uZi9HRU5FUklD IDM0OTI1MyAyMDE5LTA2LTIxIDAwOjE2OjMwWiBjZW0gJAoKY3B1CQlIQU1NRVIKaWRlbnQJCUdF TkVSSUMKCm1ha2VvcHRpb25zCURFQlVHPS1nCQkjIEJ1aWxkIGtlcm5lbCB3aXRoIGdkYigxKSBk ZWJ1ZyBzeW1ib2xzCm1ha2VvcHRpb25zCVdJVEhfQ1RGPTEJCSMgUnVuIGN0ZmNvbnZlcnQoMSkg Zm9yIERUcmFjZSBzdXBwb3J0Cm1ha2VvcHRpb25zCVdJVEhfRVhUUkFfVENQX1NUQUNLUz0xICNW aXNoYWwgZm9yIEJCUgpvcHRpb25zICAgICAgICAgVENQSFBUUwpvcHRpb25zICAgICAgICAgUkFU RUxJTUlUCm9wdGlvbnMgCVNDSEVEX1VMRQkJIyBVTEUgc2NoZWR1bGVyCm9wdGlvbnMgCU5VTUEJ CQkjIE5vbi1Vbmlmb3JtIE1lbW9yeSBBcmNoaXRlY3R1cmUgc3VwcG9ydApvcHRpb25zIAlQUkVF TVBUSU9OCQkjIEVuYWJsZSBrZXJuZWwgdGhyZWFkIHByZWVtcHRpb24Kb3B0aW9ucyAJVklNQUdF CQkJIyBTdWJzeXN0ZW0gdmlydHVhbGl6YXRpb24sIGUuZy4gVk5FVApvcHRpb25zIAlJTkVUCQkJ IyBJbnRlck5FVHdvcmtpbmcKb3B0aW9ucyAJSU5FVDYJCQkjIElQdjYgY29tbXVuaWNhdGlvbnMg cHJvdG9jb2xzCm9wdGlvbnMgCUlQU0VDX1NVUFBPUlQJCSMgQWxsb3cga2xkbG9hZCBvZiBpcHNl YyBhbmQgdGNwbWQ1Cm9wdGlvbnMgCVRDUF9PRkZMT0FECQkjIFRDUCBvZmZsb2FkCm9wdGlvbnMg CVRDUF9CTEFDS0JPWAkJIyBFbmhhbmNlZCBUQ1AgZXZlbnQgbG9nZ2luZwpvcHRpb25zIAlUQ1Bf SEhPT0sJCSMgaGhvb2soOSkgZnJhbWV3b3JrIGZvciBUQ1AKb3B0aW9ucwkJVENQX1JGQzc0MTMJ CSMgVENQIEZhc3QgT3BlbgpvcHRpb25zIAlTQ1RQCQkJIyBTdHJlYW0gQ29udHJvbCBUcmFuc21p c3Npb24gUHJvdG9jb2wKb3B0aW9ucyAJRkZTCQkJIyBCZXJrZWxleSBGYXN0IEZpbGVzeXN0ZW0K b3B0aW9ucyAJU09GVFVQREFURVMJCSMgRW5hYmxlIEZGUyBzb2Z0IHVwZGF0ZXMgc3VwcG9ydApv cHRpb25zIAlVRlNfQUNMCQkJIyBTdXBwb3J0IGZvciBhY2Nlc3MgY29udHJvbCBsaXN0cwpvcHRp b25zIAlVRlNfRElSSEFTSAkJIyBJbXByb3ZlIHBlcmZvcm1hbmNlIG9uIGJpZyBkaXJlY3Rvcmll cwpvcHRpb25zIAlVRlNfR0pPVVJOQUwJCSMgRW5hYmxlIGdqb3VybmFsLWJhc2VkIFVGUyBqb3Vy bmFsaW5nCm9wdGlvbnMgCVFVT1RBCQkJIyBFbmFibGUgZGlzayBxdW90YXMgZm9yIFVGUwpvcHRp b25zIAlNRF9ST09UCQkJIyBNRCBpcyBhIHBvdGVudGlhbCByb290IGRldmljZQpvcHRpb25zIAlO RlNDTAkJCSMgTmV0d29yayBGaWxlc3lzdGVtIENsaWVudApvcHRpb25zIAlORlNECQkJIyBOZXR3 b3JrIEZpbGVzeXN0ZW0gU2VydmVyCm9wdGlvbnMgCU5GU0xPQ0tECQkjIE5ldHdvcmsgTG9jayBN YW5hZ2VyCm9wdGlvbnMgCU5GU19ST09UCQkjIE5GUyB1c2FibGUgYXMgLywgcmVxdWlyZXMgTkZT Q0wKb3B0aW9ucyAJTVNET1NGUwkJCSMgTVNET1MgRmlsZXN5c3RlbQpvcHRpb25zIAlDRDk2NjAJ CQkjIElTTyA5NjYwIEZpbGVzeXN0ZW0Kb3B0aW9ucyAJUFJPQ0ZTCQkJIyBQcm9jZXNzIGZpbGVz eXN0ZW0gKHJlcXVpcmVzIFBTRVVET0ZTKQpvcHRpb25zIAlQU0VVRE9GUwkJIyBQc2V1ZG8tZmls ZXN5c3RlbSBmcmFtZXdvcmsKb3B0aW9ucyAJR0VPTV9SQUlECQkjIFNvZnQgUkFJRCBmdW5jdGlv bmFsaXR5LgpvcHRpb25zIAlHRU9NX0xBQkVMCQkjIFByb3ZpZGVzIGxhYmVsaXphdGlvbgpvcHRp b25zIAlFRklSVAkJCSMgRUZJIFJ1bnRpbWUgU2VydmljZXMgc3VwcG9ydApvcHRpb25zIAlDT01Q QVRfRlJFRUJTRDMyCSMgQ29tcGF0aWJsZSB3aXRoIGkzODYgYmluYXJpZXMKb3B0aW9ucyAJQ09N UEFUX0ZSRUVCU0Q0CQkjIENvbXBhdGlibGUgd2l0aCBGcmVlQlNENApvcHRpb25zIAlDT01QQVRf RlJFRUJTRDUJCSMgQ29tcGF0aWJsZSB3aXRoIEZyZWVCU0Q1Cm9wdGlvbnMgCUNPTVBBVF9GUkVF QlNENgkJIyBDb21wYXRpYmxlIHdpdGggRnJlZUJTRDYKb3B0aW9ucyAJQ09NUEFUX0ZSRUVCU0Q3 CQkjIENvbXBhdGlibGUgd2l0aCBGcmVlQlNENwpvcHRpb25zIAlDT01QQVRfRlJFRUJTRDkJCSMg Q29tcGF0aWJsZSB3aXRoIEZyZWVCU0Q5Cm9wdGlvbnMgCUNPTVBBVF9GUkVFQlNEMTAJIyBDb21w YXRpYmxlIHdpdGggRnJlZUJTRDEwCm9wdGlvbnMgCUNPTVBBVF9GUkVFQlNEMTEJIyBDb21wYXRp YmxlIHdpdGggRnJlZUJTRDExCm9wdGlvbnMgCUNPTVBBVF9GUkVFQlNEMTIJIyBDb21wYXRpYmxl IHdpdGggRnJlZUJTRDEyCm9wdGlvbnMgCVNDU0lfREVMQVk9NTAwMAkJIyBEZWxheSAoaW4gbXMp IGJlZm9yZSBwcm9iaW5nIFNDU0kKb3B0aW9ucyAJS1RSQUNFCQkJIyBrdHJhY2UoMSkgc3VwcG9y dApvcHRpb25zIAlTVEFDSwkJCSMgc3RhY2soOSkgc3VwcG9ydApvcHRpb25zIAlTWVNWU0hNCQkJ IyBTWVNWLXN0eWxlIHNoYXJlZCBtZW1vcnkKb3B0aW9ucyAJU1lTVk1TRwkJCSMgU1lTVi1zdHls ZSBtZXNzYWdlIHF1ZXVlcwpvcHRpb25zIAlTWVNWU0VNCQkJIyBTWVNWLXN0eWxlIHNlbWFwaG9y ZXMKb3B0aW9ucyAJX0tQT1NJWF9QUklPUklUWV9TQ0hFRFVMSU5HICMgUE9TSVggUDEwMDNfMUIg cmVhbC10aW1lIGV4dGVuc2lvbnMKb3B0aW9ucyAJUFJJTlRGX0JVRlJfU0laRT0xMjgJIyBQcmV2 ZW50IHByaW50ZiBvdXRwdXQgYmVpbmcgaW50ZXJzcGVyc2VkLgpvcHRpb25zIAlLQkRfSU5TVEFM TF9DREVWCSMgaW5zdGFsbCBhIENERVYgZW50cnkgaW4gL2RldgpvcHRpb25zIAlIV1BNQ19IT09L UwkJIyBOZWNlc3Nhcnkga2VybmVsIGhvb2tzIGZvciBod3BtYyg0KQpvcHRpb25zIAlBVURJVAkJ CSMgU2VjdXJpdHkgZXZlbnQgYXVkaXRpbmcKb3B0aW9ucyAJQ0FQQUJJTElUWV9NT0RFCQkjIENh cHNpY3VtIGNhcGFiaWxpdHkgbW9kZQpvcHRpb25zIAlDQVBBQklMSVRJRVMJCSMgQ2Fwc2ljdW0g Y2FwYWJpbGl0aWVzCm9wdGlvbnMgCU1BQwkJCSMgVHJ1c3RlZEJTRCBNQUMgRnJhbWV3b3JrCm9w dGlvbnMgCUtEVFJBQ0VfRlJBTUUJCSMgRW5zdXJlIGZyYW1lcyBhcmUgY29tcGlsZWQgaW4Kb3B0 aW9ucyAJS0RUUkFDRV9IT09LUwkJIyBLZXJuZWwgRFRyYWNlIGhvb2tzCm9wdGlvbnMgCUREQl9D VEYJCQkjIEtlcm5lbCBFTEYgbGlua2VyIGxvYWRzIENURiBkYXRhCm9wdGlvbnMgCUlOQ0xVREVf Q09ORklHX0ZJTEUJIyBJbmNsdWRlIHRoaXMgZmlsZSBpbiBrZXJuZWwKb3B0aW9ucyAJUkFDQ1QJ CQkjIFJlc291cmNlIGFjY291bnRpbmcgZnJhbWV3b3JrCm9wdGlvbnMgCVJBQ0NUX0RFRkFVTFRf VE9fRElTQUJMRUQgIyBTZXQga2Vybi5yYWNjdC5lbmFibGU9MCBieSBkZWZhdWx0Cm9wdGlvbnMg CVJDVEwJCQkjIFJlc291cmNlIGxpbWl0cwoKIyBEZWJ1Z2dpbmcgc3VwcG9ydC4gIEFsd2F5cyBu ZWVkIHRoaXM6Cm9wdGlvbnMgCUtEQgkJCSMgRW5hYmxlIGtlcm5lbCBkZWJ1Z2dlciBzdXBwb3J0 LgpvcHRpb25zIAlLREJfVFJBQ0UJCSMgUHJpbnQgYSBzdGFjayB0cmFjZSBmb3IgYSBwYW5pYy4K IyBGb3IgZnVsbCBkZWJ1Z2dlciBzdXBwb3J0IHVzZSAodHVybiBvZmYgaW4gc3RhYmxlIGJyYW5j aCk6Cm9wdGlvbnMgCUJVRl9UUkFDS0lORwkJIyBUcmFjayBidWZmZXIgaGlzdG9yeQpvcHRpb25z IAlEREIJCQkjIFN1cHBvcnQgRERCLgpvcHRpb25zIAlGVUxMX0JVRl9UUkFDS0lORwkjIFRyYWNr IG1vcmUgYnVmZmVyIGhpc3RvcnkKb3B0aW9ucyAJR0RCCQkJIyBTdXBwb3J0IHJlbW90ZSBHREIu Cm9wdGlvbnMgCURFQURMS1JFUwkJIyBFbmFibGUgdGhlIGRlYWRsb2NrIHJlc29sdmVyCm9wdGlv bnMgCUlOVkFSSUFOVFMJCSMgRW5hYmxlIGNhbGxzIG9mIGV4dHJhIHNhbml0eSBjaGVja2luZwpv cHRpb25zIAlJTlZBUklBTlRfU1VQUE9SVAkjIEV4dHJhIHNhbml0eSBjaGVja3Mgb2YgaW50ZXJu YWwgc3RydWN0dXJlcywgcmVxdWlyZWQgYnkgSU5WQVJJQU5UUwpvcHRpb25zIAlXSVRORVNTCQkJ IyBFbmFibGUgY2hlY2tzIHRvIGRldGVjdCBkZWFkbG9ja3MgYW5kIGN5Y2xlcwpvcHRpb25zIAlX SVRORVNTX1NLSVBTUElOCSMgRG9uJ3QgcnVuIHdpdG5lc3Mgb24gc3BpbmxvY2tzIGZvciBzcGVl ZApvcHRpb25zIAlNQUxMT0NfREVCVUdfTUFYWk9ORVM9OAkjIFNlcGFyYXRlIG1hbGxvYyg5KSB6 b25lcwpvcHRpb25zIAlWRVJCT1NFX1NZU0lOSVQ9MAkjIFN1cHBvcnQgZGVidWcudmVyYm9zZV9z eXNpbml0LCBvZmYgYnkgZGVmYXVsdAoKIyBLZXJuZWwgU2FuaXRpemVycwojb3B0aW9ucyAJQ09W RVJBR0UJCSMgR2VuZXJpYyBrZXJuZWwgY292ZXJhZ2UuIFVzZWQgYnkgS0NPVgojb3B0aW9ucyAJ S0NPVgkJCSMgS2VybmVsIENvdmVyYWdlIFNhbml0aXplcgojIFdhcm5pbmc6IEtVQlNBTiBjYW4g cmVzdWx0IGluIGEga2VybmVsIHRvbyBsYXJnZSBmb3IgbG9hZGVyIHRvIGxvYWQKI29wdGlvbnMg CUtVQlNBTgkJCSMgS2VybmVsIFVuZGVmaW5lZCBCZWhhdmlvciBTYW5pdGl6ZXIKCiMgS2VybmVs IGR1bXAgZmVhdHVyZXMuCm9wdGlvbnMgCUVLQ0QJCQkjIFN1cHBvcnQgZm9yIGVuY3J5cHRlZCBr ZXJuZWwgZHVtcHMKb3B0aW9ucyAJR1pJTwkJCSMgZ3ppcC1jb21wcmVzc2VkIGtlcm5lbCBhbmQg dXNlciBkdW1wcwpvcHRpb25zIAlaU1RESU8JCQkjIHpzdGQtY29tcHJlc3NlZCBrZXJuZWwgYW5k IHVzZXIgZHVtcHMKb3B0aW9ucyAJTkVURFVNUAkJCSMgbmV0ZHVtcCg0KSBjbGllbnQgc3VwcG9y dAoKIyBNYWtlIGFuIFNNUC1jYXBhYmxlIGtlcm5lbCBieSBkZWZhdWx0Cm9wdGlvbnMgCVNNUAkJ CSMgU3ltbWV0cmljIE11bHRpUHJvY2Vzc29yIEtlcm5lbApvcHRpb25zIAlFQVJMWV9BUF9TVEFS VFVQCgojIENQVSBmcmVxdWVuY3kgY29udHJvbApkZXZpY2UJCWNwdWZyZXEKCiMgQnVzIHN1cHBv cnQuCmRldmljZQkJYWNwaQpvcHRpb25zIAlBQ1BJX0RNQVIKZGV2aWNlCQlwY2kKb3B0aW9ucyAJ UENJX0hQCQkJIyBQQ0ktRXhwcmVzcyBuYXRpdmUgSG90UGx1ZwpvcHRpb25zCQlQQ0lfSU9WCQkJ IyBQQ0kgU1ItSU9WIHN1cHBvcnQKCiMgRmxvcHB5IGRyaXZlcwpkZXZpY2UJCWZkYwoKIyBBVEEg Y29udHJvbGxlcnMKZGV2aWNlCQlhaGNpCQkJIyBBSENJLWNvbXBhdGlibGUgU0FUQSBjb250cm9s bGVycwpkZXZpY2UJCWF0YQkJCSMgTGVnYWN5IEFUQS9TQVRBIGNvbnRyb2xsZXJzCmRldmljZQkJ bXZzCQkJIyBNYXJ2ZWxsIDg4U1g1MFhYLzg4U1g2MFhYLzg4U1g3MFhYL1NvQyBTQVRBCmRldmlj ZQkJc2lpcwkJCSMgU2lsaWNvbkltYWdlIFNpSTMxMjQvU2lJMzEzMi9TaUkzNTMxIFNBVEEKCiMg U0NTSSBDb250cm9sbGVycwpkZXZpY2UJCWFoYwkJCSMgQUhBMjk0MCBhbmQgb25ib2FyZCBBSUM3 eHh4IGRldmljZXMKZGV2aWNlCQlhaGQJCQkjIEFIQTM5MzIwLzI5MzIwIGFuZCBvbmJvYXJkIEFJ Qzc5eHggZGV2aWNlcwpkZXZpY2UJCWVzcAkJCSMgQU1EIEFtNTNDOTc0IChUZWtyYW0gREMtMzkw KFQpKQpkZXZpY2UJCWhwdGlvcAkJCSMgSGlnaHBvaW50IFJvY2tldFJhaWQgM3h4eCBzZXJpZXMK ZGV2aWNlCQlpc3AJCQkjIFFsb2dpYyBmYW1pbHkKI2RldmljZQkJaXNwZncJCQkjIEZpcm13YXJl IGZvciBRTG9naWMgSEJBcy0gbm9ybWFsbHkgYSBtb2R1bGUKZGV2aWNlCQltcHQJCQkjIExTSS1M b2dpYyBNUFQtRnVzaW9uCmRldmljZQkJbXBzCQkJIyBMU0ktTG9naWMgTVBULUZ1c2lvbiAyCmRl dmljZQkJbXByCQkJIyBMU0ktTG9naWMgTVBULUZ1c2lvbiAzCmRldmljZQkJc3ltCQkJIyBOQ1Iv U3ltYmlvcyBMb2dpYwpkZXZpY2UJCXRybQkJCSMgVGVrcmFtIERDMzk1VS9VVy9GIERDMzE1VSBh ZGFwdGVycwpkZXZpY2UJCWlzY2kJCQkjIEludGVsIEM2MDAgU0FTIGNvbnRyb2xsZXIKZGV2aWNl CQlvY3NfZmMJCQkjIEVtdWxleCBGQyBhZGFwdGVycwoKIyBBVEEvU0NTSSBwZXJpcGhlcmFscwpk ZXZpY2UJCXNjYnVzCQkJIyBTQ1NJIGJ1cyAocmVxdWlyZWQgZm9yIEFUQS9TQ1NJKQpkZXZpY2UJ CWNoCQkJIyBTQ1NJIG1lZGlhIGNoYW5nZXJzCmRldmljZQkJZGEJCQkjIERpcmVjdCBBY2Nlc3Mg KGRpc2tzKQpkZXZpY2UJCXNhCQkJIyBTZXF1ZW50aWFsIEFjY2VzcyAodGFwZSBldGMpCmRldmlj ZQkJY2QJCQkjIENECmRldmljZQkJcGFzcwkJCSMgUGFzc3Rocm91Z2ggZGV2aWNlIChkaXJlY3Qg QVRBL1NDU0kgYWNjZXNzKQpkZXZpY2UJCXNlcwkJCSMgRW5jbG9zdXJlIFNlcnZpY2VzIChTRVMg YW5kIFNBRi1URSkKI2RldmljZQkJY3RsCQkJIyBDQU0gVGFyZ2V0IExheWVyCgojIFJBSUQgY29u dHJvbGxlcnMgaW50ZXJmYWNlZCB0byB0aGUgU0NTSSBzdWJzeXN0ZW0KZGV2aWNlCQlhbXIJCQkj IEFNSSBNZWdhUkFJRApkZXZpY2UJCWFyY21zcgkJCSMgQXJlY2EgU0FUQSBJSSBSQUlECmRldmlj ZQkJY2lzcwkJCSMgQ29tcGFxIFNtYXJ0IFJBSUQgNSoKZGV2aWNlCQlocHRtdgkJCSMgSGlnaHBv aW50IFJvY2tldFJBSUQgMTgyeApkZXZpY2UJCWhwdG5yCQkJIyBIaWdocG9pbnQgREM3MjgwLCBS NzUwCmRldmljZQkJaHB0cnIJCQkjIEhpZ2hwb2ludCBSb2NrZXRSQUlEIDE3eHgsIDIyeHgsIDIz eHgsIDI1eHgKZGV2aWNlCQlocHQyN3h4CQkJIyBIaWdocG9pbnQgUm9ja2V0UkFJRCAyN3h4CmRl dmljZQkJaWlyCQkJIyBJbnRlbCBJbnRlZ3JhdGVkIFJBSUQKZGV2aWNlCQlpcHMJCQkjIElCTSAo QWRhcHRlYykgU2VydmVSQUlECmRldmljZQkJbWx5CQkJIyBNeWxleCBBY2NlbGVSQUlEL2VYdHJl bWVSQUlECmRldmljZQkJdHdhCQkJIyAzd2FyZSA5MDAwIHNlcmllcyBQQVRBL1NBVEEgUkFJRApk ZXZpY2UJCXNtYXJ0cHFpCQkjIE1pY3Jvc2VtaSBzbWFydHBxaSBkcml2ZXIKZGV2aWNlCQl0d3MJ CQkjIExTSSAzd2FyZSA5NzUwIFNBVEErU0FTIDZHYi9zIFJBSUQgY29udHJvbGxlcgoKIyBSQUlE IGNvbnRyb2xsZXJzCmRldmljZQkJYWFjCQkJIyBBZGFwdGVjIEZTQSBSQUlECmRldmljZQkJYWFj cAkJCSMgU0NTSSBwYXNzdGhyb3VnaCBmb3IgYWFjIChyZXF1aXJlcyBDQU0pCmRldmljZQkJYWFj cmFpZAkJCSMgQWRhcHRlYyBieSBQTUMgUkFJRApkZXZpY2UJCWlkYQkJCSMgQ29tcGFxIFNtYXJ0 IFJBSUQKZGV2aWNlCQltZmkJCQkjIExTSSBNZWdhUkFJRCBTQVMKZGV2aWNlCQltbHgJCQkjIE15 bGV4IERBQzk2MCBmYW1pbHkKZGV2aWNlCQltcnNhcwkJCSMgTFNJL0F2YWdvIE1lZ2FSQUlEIFNB Uy9TQVRBLCA2R2IvcyBhbmQgMTJHYi9zCmRldmljZQkJcG1zcGN2CQkJIyBQTUMtU2llcnJhIFNB Uy9TQVRBIENvbnRyb2xsZXIgZHJpdmVyCiNYWFggcG9pbnRlci9pbnQgd2FybmluZ3MKI2Rldmlj ZQkJcHN0CQkJIyBQcm9taXNlIFN1cGVydHJhayBTWDYwMDAKZGV2aWNlCQl0d2UJCQkjIDN3YXJl IEFUQSBSQUlECgojIE5WTSBFeHByZXNzIChOVk1lKSBzdXBwb3J0CmRldmljZQkJbnZtZQkJCSMg YmFzZSBOVk1lIGRyaXZlcgpkZXZpY2UJCW52ZAkJCSMgZXhwb3NlIE5WTWUgbmFtZXNwYWNlcyBh cyBkaXNrcywgZGVwZW5kcyBvbiBudm1lCgojIGF0a2JkYzAgY29udHJvbHMgYm90aCB0aGUga2V5 Ym9hcmQgYW5kIHRoZSBQUy8yIG1vdXNlCmRldmljZQkJYXRrYmRjCQkJIyBBVCBrZXlib2FyZCBj b250cm9sbGVyCmRldmljZQkJYXRrYmQJCQkjIEFUIGtleWJvYXJkCmRldmljZQkJcHNtCQkJIyBQ Uy8yIG1vdXNlCgpkZXZpY2UJCWtiZG11eAkJCSMga2V5Ym9hcmQgbXVsdGlwbGV4ZXIKCmRldmlj ZQkJdmdhCQkJIyBWR0EgdmlkZW8gY2FyZCBkcml2ZXIKb3B0aW9ucyAJVkVTQQkJCSMgQWRkIHN1 cHBvcnQgZm9yIFZFU0EgQklPUyBFeHRlbnNpb25zIChWQkUpCgpkZXZpY2UJCXNwbGFzaAkJCSMg U3BsYXNoIHNjcmVlbiBhbmQgc2NyZWVuIHNhdmVyIHN1cHBvcnQKCiMgc3lzY29ucyBpcyB0aGUg ZGVmYXVsdCBjb25zb2xlIGRyaXZlciwgcmVzZW1ibGluZyBhbiBTQ08gY29uc29sZQpkZXZpY2UJ CXNjCm9wdGlvbnMgCVNDX1BJWEVMX01PREUJCSMgYWRkIHN1cHBvcnQgZm9yIHRoZSByYXN0ZXIg dGV4dCBtb2RlCgojIHZ0IGlzIHRoZSBuZXcgdmlkZW8gY29uc29sZSBkcml2ZXIKZGV2aWNlCQl2 dApkZXZpY2UJCXZ0X3ZnYQpkZXZpY2UJCXZ0X2VmaWZiCgpkZXZpY2UJCWFncAkJCSMgc3VwcG9y dCBzZXZlcmFsIEFHUCBjaGlwc2V0cwoKIyBQQ0NBUkQgKFBDTUNJQSkgc3VwcG9ydAojIFBDTUNJ QSBhbmQgY2FyZGJ1cyBicmlkZ2Ugc3VwcG9ydApkZXZpY2UJCWNiYgkJCSMgY2FyZGJ1cyAoeWVu dGEpIGJyaWRnZQpkZXZpY2UJCXBjY2FyZAkJCSMgUEMgQ2FyZCAoMTYtYml0KSBidXMKZGV2aWNl CQljYXJkYnVzCQkJIyBDYXJkQnVzICgzMi1iaXQpIGJ1cwoKIyBTZXJpYWwgKENPTSkgcG9ydHMK ZGV2aWNlCQl1YXJ0CQkJIyBHZW5lcmljIFVBUlQgZHJpdmVyCgojIFBhcmFsbGVsIHBvcnQKZGV2 aWNlCQlwcGMKZGV2aWNlCQlwcGJ1cwkJCSMgUGFyYWxsZWwgcG9ydCBidXMgKHJlcXVpcmVkKQpk ZXZpY2UJCWxwdAkJCSMgUHJpbnRlcgpkZXZpY2UJCXBwaQkJCSMgUGFyYWxsZWwgcG9ydCBpbnRl cmZhY2UgZGV2aWNlCiNkZXZpY2UJCXZwbwkJCSMgUmVxdWlyZXMgc2NidXMgYW5kIGRhCgpkZXZp Y2UJCXB1YwkJCSMgTXVsdGkgSS9PIGNhcmRzIGFuZCBtdWx0aS1jaGFubmVsIFVBUlRzCgojIFBD SS9QQ0ktWC9QQ0llIEV0aGVybmV0IE5JQ3MgdGhhdCB1c2UgaWZsaWIgaW5mcmFzdHJ1Y3R1cmUK ZGV2aWNlCQlpZmxpYgpkZXZpY2UJCWVtCQkJIyBJbnRlbCBQUk8vMTAwMCBHaWdhYml0IEV0aGVy bmV0IEZhbWlseQpkZXZpY2UJCWl4CQkJIyBJbnRlbCBQUk8vMTBHYkUgUENJRSBQRiBFdGhlcm5l dApkZXZpY2UJCWl4dgkJCSMgSW50ZWwgUFJPLzEwR2JFIFBDSUUgVkYgRXRoZXJuZXQKZGV2aWNl CQlpeGwJCQkjIEludGVsIDcwMCBTZXJpZXMgUGh5c2ljYWwgRnVuY3Rpb24KZGV2aWNlCQlpYXZm CQkJIyBJbnRlbCBBZGFwdGl2ZSBWaXJ0dWFsIEZ1bmN0aW9uCmRldmljZQkJdm14CQkJIyBWTXdh cmUgVk1YTkVUMyBFdGhlcm5ldAoKIyBQQ0kgRXRoZXJuZXQgTklDcy4KZGV2aWNlCQlieGUJCQkj IEJyb2FkY29tIE5ldFh0cmVtZSBJSSBCQ001NzcxWC9CQ001NzhYWCAxMEdiRQpkZXZpY2UJCWxl CQkJIyBBTUQgQW03OTAwIExBTkNFIGFuZCBBbTc5Qzl4eCBQQ25ldApkZXZpY2UJCXRpCQkJIyBB bHRlb24gTmV0d29ya3MgVGlnb24gSS9JSSBnaWdhYml0IEV0aGVybmV0CgojIFBDSSBFdGhlcm5l dCBOSUNzIHRoYXQgdXNlIHRoZSBjb21tb24gTUlJIGJ1cyBjb250cm9sbGVyIGNvZGUuCiMgTk9U RTogQmUgc3VyZSB0byBrZWVwIHRoZSAnZGV2aWNlIG1paWJ1cycgbGluZSBpbiBvcmRlciB0byB1 c2UgdGhlc2UgTklDcyEKZGV2aWNlCQltaWlidXMJCQkjIE1JSSBidXMgc3VwcG9ydApkZXZpY2UJ CWFlCQkJIyBBdHRhbnNpYy9BdGhlcm9zIEwyIEZhc3RFdGhlcm5ldApkZXZpY2UJCWFnZQkJCSMg QXR0YW5zaWMvQXRoZXJvcyBMMSBHaWdhYml0IEV0aGVybmV0CmRldmljZQkJYWxjCQkJIyBBdGhl cm9zIEFSODEzMS9BUjgxMzIgRXRoZXJuZXQKZGV2aWNlCQlhbGUJCQkjIEF0aGVyb3MgQVI4MTIx L0FSODExMy9BUjgxMTQgRXRoZXJuZXQKZGV2aWNlCQliY2UJCQkjIEJyb2FkY29tIEJDTTU3MDYv QkNNNTcwOCBHaWdhYml0IEV0aGVybmV0CmRldmljZQkJYmZlCQkJIyBCcm9hZGNvbSBCQ000NDB4 IDEwLzEwMCBFdGhlcm5ldApkZXZpY2UJCWJnZQkJCSMgQnJvYWRjb20gQkNNNTcweHggR2lnYWJp dCBFdGhlcm5ldApkZXZpY2UJCWNhcwkJCSMgU3VuIENhc3NpbmkvQ2Fzc2luaSsgYW5kIE5TIERQ ODMwNjUgU2F0dXJuCmRldmljZQkJZGMJCQkjIERFQy9JbnRlbCAyMTE0MyBhbmQgdmFyaW91cyB3 b3JrYWxpa2VzCmRldmljZQkJZXQJCQkjIEFnZXJlIEVUMTMxMCAxMC8xMDAvR2lnYWJpdCBFdGhl cm5ldApkZXZpY2UJCWZ4cAkJCSMgSW50ZWwgRXRoZXJFeHByZXNzIFBSTy8xMDBCICg4MjU1Nywg ODI1NTgpCmRldmljZQkJZ2VtCQkJIyBTdW4gR0VNL1N1biBFUkkvQXBwbGUgR01BQwpkZXZpY2UJ CWhtZQkJCSMgU3VuIEhNRSAoSGFwcHkgTWVhbCBFdGhlcm5ldCkKZGV2aWNlCQlqbWUJCQkjIEpN aWNyb24gSk1DMjUwIEdpZ2FiaXQvSk1DMjYwIEZhc3QgRXRoZXJuZXQKZGV2aWNlCQlsZ2UJCQkj IExldmVsIDEgTFhUMTAwMSBnaWdhYml0IEV0aGVybmV0CmRldmljZQkJbXNrCQkJIyBNYXJ2ZWxs L1N5c0tvbm5lY3QgWXVrb24gSUkgR2lnYWJpdCBFdGhlcm5ldApkZXZpY2UJCW5mZQkJCSMgblZp ZGlhIG5Gb3JjZSBNQ1Agb24tYm9hcmQgRXRoZXJuZXQKZGV2aWNlCQluZ2UJCQkjIE5hdFNlbWkg RFA4MzgyMCBnaWdhYml0IEV0aGVybmV0CmRldmljZQkJcmUJCQkjIFJlYWxUZWsgODEzOUMrLzgx NjkvODE2OVMvODExMFMKZGV2aWNlCQlybAkJCSMgUmVhbFRlayA4MTI5LzgxMzkKZGV2aWNlCQlz Z2UJCQkjIFNpbGljb24gSW50ZWdyYXRlZCBTeXN0ZW1zIFNpUzE5MC8xOTEKZGV2aWNlCQlzaXMJ CQkjIFNpbGljb24gSW50ZWdyYXRlZCBTeXN0ZW1zIFNpUyA5MDAvU2lTIDcwMTYKZGV2aWNlCQlz awkJCSMgU3lzS29ubmVjdCBTSy05ODR4ICYgU0stOTgyeCBnaWdhYml0IEV0aGVybmV0CmRldmlj ZQkJc3RlCQkJIyBTdW5kYW5jZSBTVDIwMSAoRC1MaW5rIERGRS01NTBUWCkKZGV2aWNlCQlzdGdl CQkJIyBTdW5kYW5jZS9UYW1hcmFjayBUQzkwMjEgZ2lnYWJpdCBFdGhlcm5ldApkZXZpY2UJCXZn ZQkJCSMgVklBIFZUNjEyeCBnaWdhYml0IEV0aGVybmV0CmRldmljZQkJdnIJCQkjIFZJQSBSaGlu ZSwgUmhpbmUgSUkKZGV2aWNlCQl4bAkJCSMgM0NvbSAzYzkweCAoYGBCb29tZXJhbmcnJywgYGBD eWNsb25lJycpCgojIFdpcmVsZXNzIE5JQyBjYXJkcwpkZXZpY2UJCXdsYW4JCQkjIDgwMi4xMSBz dXBwb3J0Cm9wdGlvbnMgCUlFRUU4MDIxMV9ERUJVRwkJIyBlbmFibGUgZGVidWcgbXNncwpvcHRp b25zIAlJRUVFODAyMTFfU1VQUE9SVF9NRVNICSMgZW5hYmxlIDgwMi4xMXMgZHJhZnQgc3VwcG9y dApkZXZpY2UJCXdsYW5fd2VwCQkjIDgwMi4xMSBXRVAgc3VwcG9ydApkZXZpY2UJCXdsYW5fY2Nt cAkJIyA4MDIuMTEgQ0NNUCBzdXBwb3J0CmRldmljZQkJd2xhbl90a2lwCQkjIDgwMi4xMSBUS0lQ IHN1cHBvcnQKZGV2aWNlCQl3bGFuX2FtcnIJCSMgQU1SUiB0cmFuc21pdCByYXRlIGNvbnRyb2wg YWxnb3JpdGhtCmRldmljZQkJYW4JCQkjIEFpcm9uZXQgNDUwMC80ODAwIDgwMi4xMSB3aXJlbGVz cyBOSUNzLgpkZXZpY2UJCWF0aAkJCSMgQXRoZXJvcyBOSUNzCmRldmljZQkJYXRoX3BjaQkJCSMg QXRoZXJvcyBwY2kvY2FyZGJ1cyBnbHVlCmRldmljZQkJYXRoX2hhbAkJCSMgcGNpL2NhcmRidXMg Y2hpcCBzdXBwb3J0Cm9wdGlvbnMgCUFIX0FSNTQxNl9JTlRFUlJVUFRfTUlUSUdBVElPTiAjIEFS NTQxNiBpbnRlcnJ1cHQgbWl0aWdhdGlvbgpvcHRpb25zIAlBVEhfRU5BQkxFXzExTgkJIyBFbmFi bGUgODAyLjExbiBzdXBwb3J0IGZvciBBUjU0MTYgYW5kIGxhdGVyCmRldmljZQkJYXRoX3JhdGVf c2FtcGxlCQkjIFNhbXBsZVJhdGUgdHggcmF0ZSBjb250cm9sIGZvciBhdGgKI2RldmljZQkJYndp CQkJIyBCcm9hZGNvbSBCQ000MzB4L0JDTTQzMXggd2lyZWxlc3MgTklDcy4KI2RldmljZQkJYndu CQkJIyBCcm9hZGNvbSBCQ000M3h4IHdpcmVsZXNzIE5JQ3MuCmRldmljZQkJaXB3CQkJIyBJbnRl bCAyMTAwIHdpcmVsZXNzIE5JQ3MuCmRldmljZQkJaXdpCQkJIyBJbnRlbCAyMjAwQkcvMjIyNUJH LzI5MTVBQkcgd2lyZWxlc3MgTklDcy4KZGV2aWNlCQlpd24JCQkjIEludGVsIDQ5NjUvMTAwMC81 MDAwLzYwMDAgd2lyZWxlc3MgTklDcy4KZGV2aWNlCQltYWxvCQkJIyBNYXJ2ZWxsIExpYmVydGFz IHdpcmVsZXNzIE5JQ3MuCmRldmljZQkJbXdsCQkJIyBNYXJ2ZWxsIDg4VzgzNjMgODAyLjExbiB3 aXJlbGVzcyBOSUNzLgpkZXZpY2UJCXJhbAkJCSMgUmFsaW5rIFRlY2hub2xvZ3kgUlQyNTAwIHdp cmVsZXNzIE5JQ3MuCmRldmljZQkJd2kJCQkjIFdhdmVMQU4vSW50ZXJzaWwvU3ltYm9sIDgwMi4x MSB3aXJlbGVzcyBOSUNzLgpkZXZpY2UJCXdwaQkJCSMgSW50ZWwgMzk0NUFCRyB3aXJlbGVzcyBO SUNzLgoKIyBQc2V1ZG8gZGV2aWNlcy4KZGV2aWNlCQljcnlwdG8JCQkjIGNvcmUgY3J5cHRvIHN1 cHBvcnQKZGV2aWNlCQlsb29wCQkJIyBOZXR3b3JrIGxvb3BiYWNrCmRldmljZQkJcGFkbG9ja19y bmcJCSMgVklBIFBhZGxvY2sgUk5HCmRldmljZQkJcmRyYW5kX3JuZwkJIyBJbnRlbCBCdWxsIE1v dW50YWluIFJORwpkZXZpY2UJCWV0aGVyCQkJIyBFdGhlcm5ldCBzdXBwb3J0CmRldmljZQkJdmxh bgkJCSMgODAyLjFRIFZMQU4gc3VwcG9ydApkZXZpY2UJCXR1bnRhcAkJCSMgUGFja2V0IHR1bm5l bC4KZGV2aWNlCQltZAkJCSMgTWVtb3J5ICJkaXNrcyIKZGV2aWNlCQlnaWYJCQkjIElQdjYgYW5k IElQdjQgdHVubmVsaW5nCmRldmljZQkJZmlybXdhcmUJCSMgZmlybXdhcmUgYXNzaXN0IG1vZHVs ZQoKIyBUaGUgYGJwZicgZGV2aWNlIGVuYWJsZXMgdGhlIEJlcmtlbGV5IFBhY2tldCBGaWx0ZXIu CiMgQmUgYXdhcmUgb2YgdGhlIGFkbWluaXN0cmF0aXZlIGNvbnNlcXVlbmNlcyBvZiBlbmFibGlu ZyB0aGlzIQojIE5vdGUgdGhhdCAnYnBmJyBpcyByZXF1aXJlZCBmb3IgREhDUC4KZGV2aWNlCQli cGYJCQkjIEJlcmtlbGV5IHBhY2tldCBmaWx0ZXIKCiMgVVNCIHN1cHBvcnQKb3B0aW9ucyAJVVNC X0RFQlVHCQkjIGVuYWJsZSBkZWJ1ZyBtc2dzCmRldmljZQkJdWhjaQkJCSMgVUhDSSBQQ0ktPlVT QiBpbnRlcmZhY2UKZGV2aWNlCQlvaGNpCQkJIyBPSENJIFBDSS0+VVNCIGludGVyZmFjZQpkZXZp Y2UJCWVoY2kJCQkjIEVIQ0kgUENJLT5VU0IgaW50ZXJmYWNlIChVU0IgMi4wKQpkZXZpY2UJCXho Y2kJCQkjIFhIQ0kgUENJLT5VU0IgaW50ZXJmYWNlIChVU0IgMy4wKQpkZXZpY2UJCXVzYgkJCSMg VVNCIEJ1cyAocmVxdWlyZWQpCmRldmljZQkJdWtiZAkJCSMgS2V5Ym9hcmQKZGV2aWNlCQl1bWFz cwkJCSMgRGlza3MvTWFzcyBzdG9yYWdlIC0gUmVxdWlyZXMgc2NidXMgYW5kIGRhCgojIFNvdW5k IHN1cHBvcnQKZGV2aWNlCQlzb3VuZAkJCSMgR2VuZXJpYyBzb3VuZCBkcml2ZXIgKHJlcXVpcmVk KQpkZXZpY2UJCXNuZF9jbWkJCQkjIENNZWRpYSBDTUk4MzM4L0NNSTg3MzgKZGV2aWNlCQlzbmRf Y3NhCQkJIyBDcnlzdGFsIFNlbWljb25kdWN0b3IgQ1M0NjF4LzQyOHgKZGV2aWNlCQlzbmRfZW11 MTBreAkJIyBDcmVhdGl2ZSBTb3VuZEJsYXN0ZXIgTGl2ZSEgYW5kIEF1ZGlneQpkZXZpY2UJCXNu ZF9lczEzN3gJCSMgRW5zb25pcSBBdWRpb1BDSSBFUzEzN3gKZGV2aWNlCQlzbmRfaGRhCQkJIyBJ bnRlbCBIaWdoIERlZmluaXRpb24gQXVkaW8KZGV2aWNlCQlzbmRfaWNoCQkJIyBJbnRlbCwgTlZp ZGlhIGFuZCBvdGhlciBJQ0ggQUMnOTcgQXVkaW8KZGV2aWNlCQlzbmRfdmlhODIzMwkJIyBWSUEg VlQ4MjMzeCBBdWRpbwoKIyBNTUMvU0QKZGV2aWNlCQltbWMJCQkjIE1NQy9TRCBidXMKZGV2aWNl CQltbWNzZAkJCSMgTU1DL1NEIG1lbW9yeSBjYXJkCmRldmljZQkJc2RoY2kJCQkjIEdlbmVyaWMg UENJIFNEIEhvc3QgQ29udHJvbGxlcgoKIyBWaXJ0SU8gc3VwcG9ydApkZXZpY2UJCXZpcnRpbwkJ CSMgR2VuZXJpYyBWaXJ0SU8gYnVzIChyZXF1aXJlZCkKZGV2aWNlCQl2aXJ0aW9fcGNpCQkjIFZp cnRJTyBQQ0kgZGV2aWNlCmRldmljZQkJdnRuZXQJCQkjIFZpcnRJTyBFdGhlcm5ldCBkZXZpY2UK ZGV2aWNlCQl2aXJ0aW9fYmxrCQkjIFZpcnRJTyBCbG9jayBkZXZpY2UKZGV2aWNlCQl2aXJ0aW9f c2NzaQkJIyBWaXJ0SU8gU0NTSSBkZXZpY2UKZGV2aWNlCQl2aXJ0aW9fYmFsbG9vbgkJIyBWaXJ0 SU8gTWVtb3J5IEJhbGxvb24gZGV2aWNlCgojIEh5cGVyViBkcml2ZXJzIGFuZCBlbmhhbmNlbWVu dCBzdXBwb3J0CmRldmljZQkJaHlwZXJ2CQkJIyBIeXBlclYgZHJpdmVycyAKCiMgWGVuIEhWTSBH dWVzdCBPcHRpbWl6YXRpb25zCiMgTk9URTogWEVOSFZNIGRlcGVuZHMgb24geGVucGNpLiAgVGhl eSBtdXN0IGJlIGFkZGVkIG9yIHJlbW92ZWQgdG9nZXRoZXIuCm9wdGlvbnMgCVhFTkhWTQkJCSMg WGVuIEhWTSBrZXJuZWwgaW5mcmFzdHJ1Y3R1cmUKZGV2aWNlCQl4ZW5wY2kJCQkjIFhlbiBIVk0g SHlwZXJ2aXNvciBzZXJ2aWNlcyBkcml2ZXIKCiMgTmV0bWFwIHByb3ZpZGVzIGRpcmVjdCBhY2Nl c3MgdG8gVFgvUlggcmluZ3Mgb24gc3VwcG9ydGVkIE5JQ3MKZGV2aWNlCQluZXRtYXAJCQkjIG5l dG1hcCg0KSBzdXBwb3J0CgojIGV2ZGV2IGludGVyZmFjZQpvcHRpb25zIAlFVkRFVl9TVVBQT1JU CQkjIGV2ZGV2IHN1cHBvcnQgaW4gbGVnYWN5IGRyaXZlcnMKZGV2aWNlCQlldmRldgkJCSMgaW5w dXQgZXZlbnQgZGV2aWNlIHN1cHBvcnQKZGV2aWNlCQl1aW5wdXQJCQkjIGluc3RhbGwgL2Rldi91 aW5wdXQgY2Rldgo= --000000000000b31ec50592eadd1d Content-Type: application/octet-stream; name="1.2" Content-Disposition: attachment; filename="1.2" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k0qajyaf1 CnJvb3RAb3Nib3hlczovdXNyL3NyYy9zeXMvYW1kNjQvY29tcGlsZS9NWUtFUk5FTCAjIG1ha2Ug Y2xlYW5kZXBlbmQKClsuLi5zbmlwLi4uXQoKcm0gLWYgbWFjaGluZSB4ODYgLmRlcGVuZCAuZGVw ZW5kLiogR1BBVEggR1JUQUdTIEdTWU1TIEdUQUdTCj09PT4gdGNwIChjbGVhbmRlcGVuZCkKPT09 PiB0Y3AvYmJyIChjbGVhbmRlcGVuZCkKY2Q6IC91c3Ivc3JjL3N5cy9tb2R1bGVzL3RjcC9iYnI6 IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKKioqIEVycm9yIGNvZGUgMgoKU3RvcC4KbWFrZVsy XTogc3RvcHBlZCBpbiAvdXNyL3NyYy9zeXMvbW9kdWxlcy90Y3AKKioqIEVycm9yIGNvZGUgMQoK U3RvcC4KbWFrZVsxXTogc3RvcHBlZCBpbiAvdXNyL3NyYy9zeXMvbW9kdWxlcwoqKiogRXJyb3Ig Y29kZSAxCgpTdG9wLgptYWtlOiBzdG9wcGVkIGluIC91c3Ivc3JjL3N5cy9hbWQ2NC9jb21waWxl L01ZS0VSTkVMCgpyb290QG9zYm94ZXM6L3Vzci9zcmMvc3lzL2FtZDY0L2NvbXBpbGUvTVlLRVJO RUwgIyBscyAvdXNyL3NyYy9zeXMvbW9kdWxlcy90Y3AvCk1ha2VmaWxlICAgICAgICBNYWtlZmls ZS5vcmlnICAgcmFjayAgICAgICAgICAgIHRjcG1kNQoK --000000000000b31ec50592eadd1d--