From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7AB02C43334 for ; Sun, 10 Jul 2022 02:21:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=XkfwjUMp7WNorlfM+Zt/wIOZv8rty+Htf/idiRETZJs=; b=fXgOvQf1AunJCE HB+A8BWy8yHNR2Ygh74/N7jGktWGyMTMThxQiQtoIs1oU+qCgqJCQNhJevV8dNPzZv2D3vyvJLVht VJ5QGrbW/goI2l7aZIjdrJFVT4ICh1Krq2+40aNLJFBeSJtW6aArhoaKBB+X0pkZzzsFwv5ZFEeD4 ahQk01jDB6lA6uuhmV2aA28DM2iyzUwKZkpqzYw2MRSAW8ku5JZMAohDQOikU1TOMGXYo4J2RkCgU FrYPPaVRQriO/fWk36X+B2VshFugfL8s3IL3nMjU6E21dkoynYfBgrIZ+eEt9GPqUhHdI7OpxjUFh S5HWBo1eAU7Q/K8MZOMQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oAMYb-00AFmg-6x; Sun, 10 Jul 2022 02:20:25 +0000 Received: from mail-pg1-x52d.google.com ([2607:f8b0:4864:20::52d]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oAMYT-00AFjr-Ig for linux-arm-kernel@lists.infradead.org; Sun, 10 Jul 2022 02:20:20 +0000 Received: by mail-pg1-x52d.google.com with SMTP id r22so2065355pgr.2 for ; Sat, 09 Jul 2022 19:20:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:subject:content-language:to :cc:references:from:in-reply-to:content-transfer-encoding; bh=wX3dLYovPqvcyaF+fwNCYWsC056jAjNyoNmTlmS8iW0=; b=Fl5FCM+pGOAju0nqPaLwlLQRU3DgIn2U3VjWbrKUgfZNasnd8+3wJB2GSCasxbzHPt BgqW0HYecXPR9ONL1bsDWWH8qEffILRvUoodJ6fmVcQsoQGKMcz0GMsn7FRsS/nSDbEC nhI18OgpQbarufSB4YvZra8eU6tNyjhk4Ojy7eOnZgCpQWVdbSz2WkJfVcnXCtv7gdka P2AdeBN7TOhBoHLuuL6WYycvPAoThV6sDmtdpPO+de00As4TgQp7ibrDfdZFLawcmwO1 Jbvls1bojQ586hbBCkJqccW2lXmiD9bNvasjdFtaEkvQRfeYYEwjA61jOKIUNAulWS0p sbPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=wX3dLYovPqvcyaF+fwNCYWsC056jAjNyoNmTlmS8iW0=; b=VyFxSUOsfYF/vChpI4lUtXshwtFw9ZqgVWqWeNw0qeFRQe1/84QI3ZzZdDzs6+af6E aIAlVPg4V1KOfrnhx3B6l3XrpPTi6Q5WwiLQaUxd0h5sJB5c3EpUgEgQ/+AyKw8DNdhb drKQeHJUX23jXA7R3b6gzBbGYoNZK3lGRSqq/8FmPWSA5rLaLFLK5U/hrJvPFWp4g1Ed KhTbES65URw2Cc9HjWV8IC0VQHTfzJCfChwI33zk9gtBouD9Nnyrfuis/rK/xLd2sjGi pc2H443FNX65izcPRR9e4gKrhPsUjFbP14xYBXXYm76Ugg4gL5l38nHiOtlBJ1sXrt7A hnyQ== X-Gm-Message-State: AJIora+TCB90798iNWLUWx5ZcUbMJiuij9Dz4+Kd9q+gNMSBNnriQsmC QKG0uDDK36ddbqobnp6YKAQ= X-Google-Smtp-Source: AGRyM1v4U8y46pN2FJKMAahBzHzOqEiA1OvGWb+6E+WV/4gA21PixpT9UD1eGmwQQVQbgyJDxcphRA== X-Received: by 2002:a63:ec03:0:b0:40d:e79d:e22e with SMTP id j3-20020a63ec03000000b0040de79de22emr10315114pgh.53.1657419615561; Sat, 09 Jul 2022 19:20:15 -0700 (PDT) Received: from [192.168.43.80] (subs09a-223-255-225-73.three.co.id. [223.255.225.73]) by smtp.gmail.com with ESMTPSA id d9-20020a170902f14900b0016405375132sm1965706plb.25.2022.07.09.19.20.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 09 Jul 2022 19:20:14 -0700 (PDT) Message-ID: Date: Sun, 10 Jul 2022 09:20:04 +0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH v13 13/14] mm: multi-gen LRU: admin guide Content-Language: en-US To: Yu Zhao , Andrew Morton Cc: Andi Kleen , Aneesh Kumar , Catalin Marinas , Dave Hansen , Hillf Danton , Jens Axboe , Johannes Weiner , Jonathan Corbet , Linus Torvalds , Matthew Wilcox , Mel Gorman , Michael Larabel , Michal Hocko , Mike Rapoport , Peter Zijlstra , Tejun Heo , Vlastimil Babka , Will Deacon , linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, x86@kernel.org, page-reclaim@google.com, Brian Geffon , Jan Alexander Steffens , Oleksandr Natalenko , Steven Barrett , Suleiman Souhlal , Daniel Byrne , Donald Carr , =?UTF-8?Q?Holger_Hoffst=c3=a4tte?= , Konstantin Kharlamov , Shuang Zhai , Sofia Trinh , Vaibhav Jain References: <20220706220022.968789-1-yuzhao@google.com> <20220706220022.968789-14-yuzhao@google.com> From: Bagas Sanjaya In-Reply-To: <20220706220022.968789-14-yuzhao@google.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220709_192017_677662_623B652D X-CRM114-Status: GOOD ( 46.70 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gNy83LzIyIDA1OjAwLCBZdSBaaGFvIHdyb3RlOgo+IEFkZCBhbiBhZG1pbiBndWlkZS4KPiAK PiBTaWduZWQtb2ZmLWJ5OiBZdSBaaGFvIDx5dXpoYW9AZ29vZ2xlLmNvbT4KPiBBY2tlZC1ieTog QnJpYW4gR2VmZm9uIDxiZ2VmZm9uQGdvb2dsZS5jb20+Cj4gQWNrZWQtYnk6IEphbiBBbGV4YW5k ZXIgU3RlZmZlbnMgKGhlZnRpZykgPGhlZnRpZ0BhcmNobGludXgub3JnPgo+IEFja2VkLWJ5OiBP bGVrc2FuZHIgTmF0YWxlbmtvIDxvbGVrc2FuZHJAbmF0YWxlbmtvLm5hbWU+Cj4gQWNrZWQtYnk6 IFN0ZXZlbiBCYXJyZXR0IDxzdGV2ZW5AbGlxdW9yaXgubmV0Pgo+IEFja2VkLWJ5OiBTdWxlaW1h biBTb3VobGFsIDxzdWxlaW1hbkBnb29nbGUuY29tPgo+IFRlc3RlZC1ieTogRGFuaWVsIEJ5cm5l IDxkamJ5cm5lQG10dS5lZHU+Cj4gVGVzdGVkLWJ5OiBEb25hbGQgQ2FyciA8ZEBjaGFvcy1yZWlu cy5jb20+Cj4gVGVzdGVkLWJ5OiBIb2xnZXIgSG9mZnN0w6R0dGUgPGhvbGdlckBhcHBsaWVkLWFz eW5jaHJvbnkuY29tPgo+IFRlc3RlZC1ieTogS29uc3RhbnRpbiBLaGFybGFtb3YgPEhpLUFuZ2Vs QHlhbmRleC5ydT4KPiBUZXN0ZWQtYnk6IFNodWFuZyBaaGFpIDxzemhhaTJAY3Mucm9jaGVzdGVy LmVkdT4KPiBUZXN0ZWQtYnk6IFNvZmlhIFRyaW5oIDxzb2ZpYS50cmluaEBlZGkud29ya3M+Cj4g VGVzdGVkLWJ5OiBWYWliaGF2IEphaW4gPHZhaWJoYXZAbGludXguaWJtLmNvbT4KPiAtLS0KPiAg RG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9pbmRleC5yc3QgICAgICAgIHwgICAxICsKPiAg RG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9tdWx0aWdlbl9scnUucnN0IHwgMTU2ICsrKysr KysrKysrKysrKysrKwo+ICBtbS9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDMgKy0KPiAgbW0vdm1zY2FuLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgICA0ICsKPiAgNCBmaWxlcyBjaGFuZ2VkLCAxNjMgaW5zZXJ0aW9ucygrKSwgMSBk ZWxldGlvbigtKQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlk ZS9tbS9tdWx0aWdlbl9scnUucnN0Cj4gCj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vYWRt aW4tZ3VpZGUvbW0vaW5kZXgucnN0IGIvRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9pbmRl eC5yc3QKPiBpbmRleCBjMjFiNTgyM2YxMjYuLjJjZjViYWU2MjAzNiAxMDA2NDQKPiAtLS0gYS9E b2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL2luZGV4LnJzdAo+ICsrKyBiL0RvY3VtZW50YXRp b24vYWRtaW4tZ3VpZGUvbW0vaW5kZXgucnN0Cj4gQEAgLTMyLDYgKzMyLDcgQEAgdGhlIExpbnV4 IG1lbW9yeSBtYW5hZ2VtZW50Lgo+ICAgICBpZGxlX3BhZ2VfdHJhY2tpbmcKPiAgICAga3NtCj4g ICAgIG1lbW9yeS1ob3RwbHVnCj4gKyAgIG11bHRpZ2VuX2xydQo+ICAgICBub21tdS1tbWFwCj4g ICAgIG51bWFfbWVtb3J5X3BvbGljeQo+ICAgICBudW1hcGVyZgo+IGRpZmYgLS1naXQgYS9Eb2N1 bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL211bHRpZ2VuX2xydS5yc3QgYi9Eb2N1bWVudGF0aW9u L2FkbWluLWd1aWRlL21tL211bHRpZ2VuX2xydS5yc3QKPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ IGluZGV4IDAwMDAwMDAwMDAwMC4uNjM1NWYyYjUwMTlkCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBi L0RvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvbW0vbXVsdGlnZW5fbHJ1LnJzdAo+IEBAIC0wLDAg KzEsMTU2IEBACj4gKy4uIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wCj4gKwo+ICs9 PT09PT09PT09PT09Cj4gK011bHRpLUdlbiBMUlUKPiArPT09PT09PT09PT09PQo+ICtUaGUgbXVs dGktZ2VuIExSVSBpcyBhbiBhbHRlcm5hdGl2ZSBMUlUgaW1wbGVtZW50YXRpb24gdGhhdCBvcHRp bWl6ZXMKPiArcGFnZSByZWNsYWltIGFuZCBpbXByb3ZlcyBwZXJmb3JtYW5jZSB1bmRlciBtZW1v cnkgcHJlc3N1cmUuIFBhZ2UKPiArcmVjbGFpbSBkZWNpZGVzIHRoZSBrZXJuZWwncyBjYWNoaW5n IHBvbGljeSBhbmQgYWJpbGl0eSB0byBvdmVyY29tbWl0Cj4gK21lbW9yeS4gSXQgZGlyZWN0bHkg aW1wYWN0cyB0aGUga3N3YXBkIENQVSB1c2FnZSBhbmQgUkFNIGVmZmljaWVuY3kuCj4gKwo+ICtR dWljayBzdGFydAo+ICs9PT09PT09PT09PQo+ICtCdWlsZCB0aGUga2VybmVsIHdpdGggdGhlIGZv bGxvd2luZyBjb25maWd1cmF0aW9ucy4KPiArCj4gKyogYGBDT05GSUdfTFJVX0dFTj15YGAKPiAr KiBgYENPTkZJR19MUlVfR0VOX0VOQUJMRUQ9eWBgCj4gKwo+ICtBbGwgc2V0IQo+ICsKPiArUnVu dGltZSBvcHRpb25zCj4gKz09PT09PT09PT09PT09PQo+ICtgYC9zeXMva2VybmVsL21tL2xydV9n ZW4vYGAgY29udGFpbnMgc3RhYmxlIEFCSXMgZGVzY3JpYmVkIGluIHRoZQo+ICtmb2xsb3dpbmcg c3Vic2VjdGlvbnMuCj4gKwo+ICtLaWxsIHN3aXRjaAo+ICstLS0tLS0tLS0tLQo+ICtgYGVuYWJs ZWRgYCBhY2NlcHRzIGRpZmZlcmVudCB2YWx1ZXMgdG8gZW5hYmxlIG9yIGRpc2FibGUgdGhlCj4g K2ZvbGxvd2luZyBjb21wb25lbnRzLiBJdHMgZGVmYXVsdCB2YWx1ZSBkZXBlbmRzIG9uCj4gK2Bg Q09ORklHX0xSVV9HRU5fRU5BQkxFRGBgLiBBbGwgdGhlIGNvbXBvbmVudHMgc2hvdWxkIGJlIGVu YWJsZWQKPiArdW5sZXNzIHNvbWUgb2YgdGhlbSBoYXZlIHVuZm9yZXNlZW4gc2lkZSBlZmZlY3Rz LiBXcml0aW5nIHRvCj4gK2BgZW5hYmxlZGBgIGhhcyBubyBlZmZlY3Qgd2hlbiBhIGNvbXBvbmVu dCBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZQo+ICtoYXJkd2FyZSwgYW5kIHZhbGlkIHZhbHVlcyB3 aWxsIGJlIGFjY2VwdGVkIGV2ZW4gd2hlbiB0aGUgbWFpbiBzd2l0Y2gKPiAraXMgb2ZmLgo+ICsK PiArPT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQo+ICtWYWx1ZXMgQ29tcG9uZW50cwo+ICs9PT09PT0gPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cj4g KzB4MDAwMSBUaGUgbWFpbiBzd2l0Y2ggZm9yIHRoZSBtdWx0aS1nZW4gTFJVLgo+ICsweDAwMDIg Q2xlYXJpbmcgdGhlIGFjY2Vzc2VkIGJpdCBpbiBsZWFmIHBhZ2UgdGFibGUgZW50cmllcyBpbiBs YXJnZQo+ICsgICAgICAgYmF0Y2hlcywgd2hlbiBNTVUgc2V0cyBpdCAoZS5nLiwgb24geDg2KS4g VGhpcyBiZWhhdmlvciBjYW4KPiArICAgICAgIHRoZW9yZXRpY2FsbHkgd29yc2VuIGxvY2sgY29u dGVudGlvbiAobW1hcF9sb2NrKS4gSWYgaXQgaXMKPiArICAgICAgIGRpc2FibGVkLCB0aGUgbXVs dGktZ2VuIExSVSB3aWxsIHN1ZmZlciBhIG1pbm9yIHBlcmZvcm1hbmNlCj4gKyAgICAgICBkZWdy YWRhdGlvbiBmb3Igd29ya2xvYWRzIHRoYXQgY29udGlndW91c2x5IG1hcCBob3QgcGFnZXMsCj4g KyAgICAgICB3aG9zZSBhY2Nlc3NlZCBiaXRzIGNhbiBiZSBvdGhlcndpc2UgY2xlYXJlZCBieSBm ZXdlciBsYXJnZXIKPiArICAgICAgIGJhdGNoZXMuCj4gKzB4MDAwNCBDbGVhcmluZyB0aGUgYWNj ZXNzZWQgYml0IGluIG5vbi1sZWFmIHBhZ2UgdGFibGUgZW50cmllcyBhcwo+ICsgICAgICAgd2Vs bCwgd2hlbiBNTVUgc2V0cyBpdCAoZS5nLiwgb24geDg2KS4gVGhpcyBiZWhhdmlvciB3YXMgbm90 Cj4gKyAgICAgICB2ZXJpZmllZCBvbiB4ODYgdmFyaWV0aWVzIG90aGVyIHRoYW4gSW50ZWwgYW5k IEFNRC4gSWYgaXQgaXMKPiArICAgICAgIGRpc2FibGVkLCB0aGUgbXVsdGktZ2VuIExSVSB3aWxs IHN1ZmZlciBhIG5lZ2xpZ2libGUKPiArICAgICAgIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uLgo+ ICtbeVluTl0gQXBwbHkgdG8gYWxsIHRoZSBjb21wb25lbnRzIGFib3ZlLgo+ICs9PT09PT0gPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09Cj4gKwo+ICtFLmcuLAo+ICs6OgoKSW4gdGhpcyBjYXNlLCBpdCB3b3VsZCBiZSBiZXR0ZXIg dG8gc2F5ICJGb3IgZXhhbXBsZSIuCgo+ICsKPiArICAgIGVjaG8geSA+L3N5cy9rZXJuZWwvbW0v bHJ1X2dlbi9lbmFibGVkCj4gKyAgICBjYXQgL3N5cy9rZXJuZWwvbW0vbHJ1X2dlbi9lbmFibGVk Cj4gKyAgICAweDAwMDcKPiArICAgIGVjaG8gNSA+L3N5cy9rZXJuZWwvbW0vbHJ1X2dlbi9lbmFi bGVkCj4gKyAgICBjYXQgL3N5cy9rZXJuZWwvbW0vbHJ1X2dlbi9lbmFibGVkCj4gKyAgICAweDAw MDUKPiArCj4gK1RocmFzaGluZyBwcmV2ZW50aW9uCj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g K1BlcnNvbmFsIGNvbXB1dGVycyBhcmUgbW9yZSBzZW5zaXRpdmUgdG8gdGhyYXNoaW5nIGJlY2F1 c2UgaXQgY2FuCj4gK2NhdXNlIGphbmtzIChsYWdzIHdoZW4gcmVuZGVyaW5nIFVJKSBhbmQgbmVn YXRpdmVseSBpbXBhY3QgdXNlcgo+ICtleHBlcmllbmNlLiBUaGUgbXVsdGktZ2VuIExSVSBvZmZl cnMgdGhyYXNoaW5nIHByZXZlbnRpb24gdG8gdGhlCj4gK21ham9yaXR5IG9mIGxhcHRvcCBhbmQg ZGVza3RvcCB1c2VycyB3aG8gZG8gbm90IGhhdmUgYGBvb21kYGAuCj4gKwo+ICtVc2VycyBjYW4g d3JpdGUgYGBOYGAgdG8gYGBtaW5fdHRsX21zYGAgdG8gcHJldmVudCB0aGUgd29ya2luZyBzZXQg b2YKPiArYGBOYGAgbWlsbGlzZWNvbmRzIGZyb20gZ2V0dGluZyBldmljdGVkLiBUaGUgT09NIGtp bGxlciBpcyB0cmlnZ2VyZWQKPiAraWYgdGhpcyB3b3JraW5nIHNldCBjYW5ub3QgYmUga2VwdCBp biBtZW1vcnkuIEluIG90aGVyIHdvcmRzLCB0aGlzCj4gK29wdGlvbiB3b3JrcyBhcyBhbiBhZGp1 c3RhYmxlIHByZXNzdXJlIHJlbGllZiB2YWx2ZSwgYW5kIHdoZW4gb3BlbiwgaXQKPiArdGVybWlu YXRlcyBhcHBsaWNhdGlvbnMgdGhhdCBhcmUgaG9wZWZ1bGx5IG5vdCBiZWluZyB1c2VkLgo+ICsK PiArQmFzZWQgb24gdGhlIGF2ZXJhZ2UgaHVtYW4gZGV0ZWN0YWJsZSBsYWcgKH4xMDBtcyksIGBg Tj0xMDAwYGAgdXN1YWxseQo+ICtlbGltaW5hdGVzIGludG9sZXJhYmxlIGphbmtzIGR1ZSB0byB0 aHJhc2hpbmcuIExhcmdlciB2YWx1ZXMgbGlrZQo+ICtgYE49MzAwMGBgIG1ha2UgamFua3MgbGVz cyBub3RpY2VhYmxlIGF0IHRoZSByaXNrIG9mIHByZW1hdHVyZSBPT00KPiAra2lsbHMuCj4gKwo+ ICtUaGUgZGVmYXVsdCB2YWx1ZSBgYDBgYCBtZWFucyBkaXNhYmxlZC4KPiArCj4gK0V4cGVyaW1l bnRhbCBmZWF0dXJlcwo+ICs9PT09PT09PT09PT09PT09PT09PT0KPiArYGAvc3lzL2tlcm5lbC9k ZWJ1Zy9scnVfZ2VuYGAgYWNjZXB0cyBjb21tYW5kcyBkZXNjcmliZWQgaW4gdGhlCj4gK2ZvbGxv d2luZyBzdWJzZWN0aW9ucy4gTXVsdGlwbGUgY29tbWFuZCBsaW5lcyBhcmUgc3VwcG9ydGVkLCBz byBkb2VzCj4gK2NvbmNhdGVuYXRpb24gd2l0aCBkZWxpbWl0ZXJzIGBgLGBgIGFuZCBgYDtgYC4K PiArCj4gK2BgL3N5cy9rZXJuZWwvZGVidWcvbHJ1X2dlbl9mdWxsYGAgcHJvdmlkZXMgYWRkaXRp b25hbCBzdGF0cyBmb3IKPiArZGVidWdnaW5nLiBgYENPTkZJR19MUlVfR0VOX1NUQVRTPXlgYCBr ZWVwcyBoaXN0b3JpY2FsIHN0YXRzIGZyb20KPiArZXZpY3RlZCBnZW5lcmF0aW9ucyBpbiB0aGlz IGZpbGUuCj4gKwo+ICtXb3JraW5nIHNldCBlc3RpbWF0aW9uCj4gKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KPiArV29ya2luZyBzZXQgZXN0aW1hdGlvbiBtZWFzdXJlcyBob3cgbXVjaCBtZW1vcnkg YW4gYXBwbGljYXRpb24gbmVlZHMKPiAraW4gYSBnaXZlbiB0aW1lIGludGVydmFsLCBhbmQgaXQg aXMgdXN1YWxseSBkb25lIHdpdGggbGl0dGxlIGltcGFjdCBvbgo+ICt0aGUgcGVyZm9ybWFuY2Ug b2YgdGhlIGFwcGxpY2F0aW9uLiBFLmcuLCBkYXRhIGNlbnRlcnMgd2FudCB0bwo+ICtvcHRpbWl6 ZSBqb2Igc2NoZWR1bGluZyAoYmluIHBhY2tpbmcpIHRvIGltcHJvdmUgbWVtb3J5IHV0aWxpemF0 aW9ucy4KPiArV2hlbiBhIG5ldyBqb2IgY29tZXMgaW4sIHRoZSBqb2Igc2NoZWR1bGVyIG5lZWRz IHRvIGZpbmQgb3V0IHdoZXRoZXIKPiArZWFjaCBzZXJ2ZXIgaXQgbWFuYWdlcyBjYW4gYWxsb2Nh dGUgYSBjZXJ0YWluIGFtb3VudCBvZiBtZW1vcnkgZm9yCj4gK3RoaXMgbmV3IGpvYiBiZWZvcmUg aXQgY2FuIHBpY2sgYSBjYW5kaWRhdGUuIFRvIGRvIHNvLCB0aGUgam9iCj4gK3NjaGVkdWxlciBu ZWVkcyB0byBlc3RpbWF0ZSB0aGUgd29ya2luZyBzZXRzIG9mIHRoZSBleGlzdGluZyBqb2JzLgo+ ICsKPiArV2hlbiBpdCBpcyByZWFkLCBgYGxydV9nZW5gYCByZXR1cm5zIGEgaGlzdG9ncmFtIG9m IG51bWJlcnMgb2YgcGFnZXMKPiArYWNjZXNzZWQgb3ZlciBkaWZmZXJlbnQgdGltZSBpbnRlcnZh bHMgZm9yIGVhY2ggbWVtY2cgYW5kIG5vZGUuCj4gK2BgTUFYX05SX0dFTlNgYCBkZWNpZGVzIHRo ZSBudW1iZXIgb2YgYmlucyBmb3IgZWFjaCBoaXN0b2dyYW0uIFRoZQo+ICtoaXN0b2dyYW1zIGFy ZSBub25jdW11bGF0aXZlLgo+ICs6Ogo+ICsKPiArICAgIG1lbWNnICBtZW1jZ19pZCAgbWVtY2df cGF0aAo+ICsgICAgICAgbm9kZSAgbm9kZV9pZAo+ICsgICAgICAgICAgIG1pbl9nZW5fbnIgIGFn ZV9pbl9tcyAgbnJfYW5vbl9wYWdlcyAgbnJfZmlsZV9wYWdlcwo+ICsgICAgICAgICAgIC4uLgo+ ICsgICAgICAgICAgIG1heF9nZW5fbnIgIGFnZV9pbl9tcyAgbnJfYW5vbl9wYWdlcyAgbnJfZmls ZV9wYWdlcwo+ICsKPiArRWFjaCBiaW4gY29udGFpbnMgYW4gZXN0aW1hdGVkIG51bWJlciBvZiBw YWdlcyB0aGF0IGhhdmUgYmVlbiBhY2Nlc3NlZAo+ICt3aXRoaW4gYGBhZ2VfaW5fbXNgYC4gRS5n LiwgYGBtaW5fZ2VuX25yYGAgY29udGFpbnMgdGhlIGNvbGRlc3QgcGFnZXMKPiArYW5kIGBgbWF4 X2dlbl9ucmBgIGNvbnRhaW5zIHRoZSBob3R0ZXN0IHBhZ2VzLCBzaW5jZSBgYGFnZV9pbl9tc2Bg IG9mCj4gK3RoZSBmb3JtZXIgaXMgdGhlIGxhcmdlc3QgYW5kIHRoYXQgb2YgdGhlIGxhdHRlciBp cyB0aGUgc21hbGxlc3QuCj4gKwo+ICtVc2VycyBjYW4gd3JpdGUgYGArIG1lbWNnX2lkIG5vZGVf aWQgbWF4X2dlbl9ucgo+ICtbY2FuX3N3YXAgW2ZvcmNlX3NjYW5dXWBgIHRvIGBgbHJ1X2dlbmBg IHRvIGNyZWF0ZSBhIG5ldyBnZW5lcmF0aW9uCj4gK2BgbWF4X2dlbl9ucisxYGAuIGBgY2FuX3N3 YXBgYCBkZWZhdWx0cyB0byB0aGUgc3dhcCBzZXR0aW5nIGFuZCwgaWYgaXQKPiAraXMgc2V0IHRv IGBgMWBgLCBpdCBmb3JjZXMgdGhlIHNjYW4gb2YgYW5vbiBwYWdlcyB3aGVuIHN3YXAgaXMgb2Zm LAo+ICthbmQgdmljZSB2ZXJzYS4gYGBmb3JjZV9zY2FuYGAgZGVmYXVsdHMgdG8gYGAxYGAgYW5k LCBpZiBpdCBpcyBzZXQgdG8KPiArYGAwYGAsIGl0IGVtcGxveXMgaGV1cmlzdGljcyB0byByZWR1 Y2UgdGhlIG92ZXJoZWFkLCB3aGljaCBpcyBsaWtlbHkKPiArdG8gcmVkdWNlIHRoZSBjb3ZlcmFn ZSBhcyB3ZWxsLgo+ICsKPiArQSB0eXBpY2FsIHVzZSBjYXNlIGlzIHRoYXQgYSBqb2Igc2NoZWR1 bGVyIHdyaXRlcyB0byBgYGxydV9nZW5gYCBhdCBhCj4gK2NlcnRhaW4gdGltZSBpbnRlcnZhbCB0 byBjcmVhdGUgbmV3IGdlbmVyYXRpb25zLCBhbmQgaXQgcmFua3MgdGhlCj4gK3NlcnZlcnMgaXQg bWFuYWdlcyBiYXNlZCBvbiB0aGUgc2l6ZXMgb2YgdGhlaXIgY29sZCBwYWdlcyBkZWZpbmVkIGJ5 Cj4gK3RoaXMgdGltZSBpbnRlcnZhbC4KPiArCj4gK1Byb2FjdGl2ZSByZWNsYWltCj4gKy0tLS0t LS0tLS0tLS0tLS0tCj4gK1Byb2FjdGl2ZSByZWNsYWltIGluZHVjZXMgcGFnZSByZWNsYWltIHdo ZW4gdGhlcmUgaXMgbm8gbWVtb3J5Cj4gK3ByZXNzdXJlLiBJdCB1c3VhbGx5IHRhcmdldHMgY29s ZCBwYWdlcyBvbmx5LiBFLmcuLCB3aGVuIGEgbmV3IGpvYgo+ICtjb21lcyBpbiwgdGhlIGpvYiBz Y2hlZHVsZXIgd2FudHMgdG8gcHJvYWN0aXZlbHkgcmVjbGFpbSBjb2xkIHBhZ2VzIG9uCj4gK3Ro ZSBzZXJ2ZXIgaXQgc2VsZWN0ZWQgdG8gaW1wcm92ZSB0aGUgY2hhbmNlIG9mIHN1Y2Nlc3NmdWxs eSBsYW5kaW5nCj4gK3RoaXMgbmV3IGpvYi4KPiArCj4gK1VzZXJzIGNhbiB3cml0ZSBgYC0gbWVt Y2dfaWQgbm9kZV9pZCBtaW5fZ2VuX25yIFtzd2FwcGluZXNzCj4gK1tucl90b19yZWNsYWltXV1g YCB0byBgYGxydV9nZW5gYCB0byBldmljdCBnZW5lcmF0aW9ucyBsZXNzIHRoYW4gb3IKPiArZXF1 YWwgdG8gYGBtaW5fZ2VuX25yYGAuIE5vdGUgdGhhdCBgYG1pbl9nZW5fbnJgYCBzaG91bGQgYmUg bGVzcyB0aGFuCj4gK2BgbWF4X2dlbl9uci0xYGAgYXMgYGBtYXhfZ2VuX25yYGAgYW5kIGBgbWF4 X2dlbl9uci0xYGAgYXJlIG5vdCBmdWxseQo+ICthZ2VkIGFuZCB0aGVyZWZvcmUgY2Fubm90IGJl IGV2aWN0ZWQuIGBgc3dhcHBpbmVzc2BgIG92ZXJyaWRlcyB0aGUKPiArZGVmYXVsdCB2YWx1ZSBp biBgYC9wcm9jL3N5cy92bS9zd2FwcGluZXNzYGAuIGBgbnJfdG9fcmVjbGFpbWBgIGxpbWl0cwo+ ICt0aGUgbnVtYmVyIG9mIHBhZ2VzIHRvIGV2aWN0Lgo+ICsKPiArQSB0eXBpY2FsIHVzZSBjYXNl IGlzIHRoYXQgYSBqb2Igc2NoZWR1bGVyIHdyaXRlcyB0byBgYGxydV9nZW5gYAo+ICtiZWZvcmUg aXQgdHJpZXMgdG8gbGFuZCBhIG5ldyBqb2Igb24gYSBzZXJ2ZXIuIElmIGl0IGZhaWxzIHRvCj4g K21hdGVyaWFsaXplIGVub3VnaCBjb2xkIHBhZ2VzIGJlY2F1c2Ugb2YgdGhlIG92ZXJlc3RpbWF0 aW9uLCBpdAo+ICtyZXRyaWVzIG9uIHRoZSBuZXh0IHNlcnZlciBhY2NvcmRpbmcgdG8gdGhlIHJh bmtpbmcgcmVzdWx0IG9idGFpbmVkCj4gK2Zyb20gdGhlIHdvcmtpbmcgc2V0IGVzdGltYXRpb24g c3RlcC4gVGhpcyBsZXNzIGZvcmNlZnVsIGFwcHJvYWNoCj4gK2xpbWl0cyB0aGUgaW1wYWN0cyBv biB0aGUgZXhpc3Rpbmcgam9icy4KPiBkaWZmIC0tZ2l0IGEvbW0vS2NvbmZpZyBiL21tL0tjb25m aWcKPiBpbmRleCAwYzJlZjBhZjAwMzYuLmEwZjdiNmU2NjQxMCAxMDA2NDQKPiAtLS0gYS9tbS9L Y29uZmlnCj4gKysrIGIvbW0vS2NvbmZpZwo+IEBAIC0xMTM3LDcgKzExMzcsOCBAQCBjb25maWcg TFJVX0dFTgo+ICAJIyBtYWtlIHN1cmUgZm9saW8tPmZsYWdzIGhhcyBlbm91Z2ggc3BhcmUgYml0 cwo+ICAJZGVwZW5kcyBvbiA2NEJJVCB8fCAhU1BBUlNFTUVNIHx8IFNQQVJTRU1FTV9WTUVNTUFQ Cj4gIAloZWxwCj4gLQkgIEEgaGlnaCBwZXJmb3JtYW5jZSBMUlUgaW1wbGVtZW50YXRpb24gdG8g b3ZlcmNvbW1pdCBtZW1vcnkuCj4gKwkgIEEgaGlnaCBwZXJmb3JtYW5jZSBMUlUgaW1wbGVtZW50 YXRpb24gdG8gb3ZlcmNvbW1pdCBtZW1vcnkuIFNlZQo+ICsJICBEb2N1bWVudGF0aW9uL2FkbWlu LWd1aWRlL21tL211bHRpZ2VuX2xydS5yc3QgZm9yIGRldGFpbHMuCj4gIAo+ICBjb25maWcgTFJV X0dFTl9FTkFCTEVECj4gIAlib29sICJFbmFibGUgYnkgZGVmYXVsdCIKPiBkaWZmIC0tZ2l0IGEv bW0vdm1zY2FuLmMgYi9tbS92bXNjYW4uYwo+IGluZGV4IGZiY2QyOThhZGNhNy4uNzA5NmZmNzgz NmRiIDEwMDY0NAo+IC0tLSBhL21tL3Ztc2Nhbi5jCj4gKysrIGIvbW0vdm1zY2FuLmMKPiBAQCAt NTIwOSw2ICs1MjA5LDcgQEAgc3RhdGljIHNzaXplX3Qgc2hvd19taW5fdHRsKHN0cnVjdCBrb2Jq ZWN0ICprb2JqLCBzdHJ1Y3Qga29ial9hdHRyaWJ1dGUgKmF0dHIsIGMKPiAgCXJldHVybiBzcHJp bnRmKGJ1ZiwgIiV1XG4iLCBqaWZmaWVzX3RvX21zZWNzKFJFQURfT05DRShscnVfZ2VuX21pbl90 dGwpKSk7Cj4gIH0KPiAgCj4gKy8qIHNlZSBEb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL211 bHRpZ2VuX2xydS5yc3QgZm9yIGRldGFpbHMgKi8KPiAgc3RhdGljIHNzaXplX3Qgc3RvcmVfbWlu X3R0bChzdHJ1Y3Qga29iamVjdCAqa29iaiwgc3RydWN0IGtvYmpfYXR0cmlidXRlICphdHRyLAo+ ICAJCQkgICAgIGNvbnN0IGNoYXIgKmJ1Ziwgc2l6ZV90IGxlbikKPiAgewo+IEBAIC01MjQyLDYg KzUyNDMsNyBAQCBzdGF0aWMgc3NpemVfdCBzaG93X2VuYWJsZWQoc3RydWN0IGtvYmplY3QgKmtv YmosIHN0cnVjdCBrb2JqX2F0dHJpYnV0ZSAqYXR0ciwgYwo+ICAJcmV0dXJuIHNucHJpbnRmKGJ1 ZiwgUEFHRV9TSVpFLCAiMHglMDR4XG4iLCBjYXBzKTsKPiAgfQo+ICAKPiArLyogc2VlIERvY3Vt ZW50YXRpb24vYWRtaW4tZ3VpZGUvbW0vbXVsdGlnZW5fbHJ1LnJzdCBmb3IgZGV0YWlscyAqLwo+ ICBzdGF0aWMgc3NpemVfdCBzdG9yZV9lbmFibGVkKHN0cnVjdCBrb2JqZWN0ICprb2JqLCBzdHJ1 Y3Qga29ial9hdHRyaWJ1dGUgKmF0dHIsCj4gIAkJCSAgICAgY29uc3QgY2hhciAqYnVmLCBzaXpl X3QgbGVuKQo+ICB7Cj4gQEAgLTUzODksNiArNTM5MSw3IEBAIHN0YXRpYyB2b2lkIGxydV9nZW5f c2VxX3Nob3dfZnVsbChzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHN0cnVjdCBscnV2ZWMgKmxydXZlYywK PiAgCXNlcV9wdXRjKG0sICdcbicpOwo+ICB9Cj4gIAo+ICsvKiBzZWUgRG9jdW1lbnRhdGlvbi9h ZG1pbi1ndWlkZS9tbS9tdWx0aWdlbl9scnUucnN0IGZvciBkZXRhaWxzICovCj4gIHN0YXRpYyBp bnQgbHJ1X2dlbl9zZXFfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnYpCj4gIHsKPiAg CXVuc2lnbmVkIGxvbmcgc2VxOwo+IEBAIC01NTQ3LDYgKzU1NTAsNyBAQCBzdGF0aWMgaW50IHJ1 bl9jbWQoY2hhciBjbWQsIGludCBtZW1jZ19pZCwgaW50IG5pZCwgdW5zaWduZWQgbG9uZyBzZXEs Cj4gIAlyZXR1cm4gZXJyOwo+ICB9Cj4gIAo+ICsvKiBzZWUgRG9jdW1lbnRhdGlvbi9hZG1pbi1n dWlkZS9tbS9tdWx0aWdlbl9scnUucnN0IGZvciBkZXRhaWxzICovCj4gIHN0YXRpYyBzc2l6ZV90 IGxydV9nZW5fc2VxX3dyaXRlKHN0cnVjdCBmaWxlICpmaWxlLCBjb25zdCBjaGFyIF9fdXNlciAq c3JjLAo+ICAJCQkJIHNpemVfdCBsZW4sIGxvZmZfdCAqcG9zKQo+ICB7CgpPdGhlcndpc2UgbG9v a3MgZ29vZCAobm8gbmV3IHdhcm5pbmdzKS4KClJldmlld2VkLWJ5OiBCYWdhcyBTYW5qYXlhIDxi YWdhc2RvdG1lQGdtYWlsLmNvbT4KCi0tIApBbiBvbGQgbWFuIGRvbGwuLi4ganVzdCB3aGF0IEkg YWx3YXlzIHdhbnRlZCEgLSBDbGFyYQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtl cm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxt YW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=