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 F064BC00140 for ; Mon, 15 Aug 2022 07:37:37 +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:Cc:To:From:Subject:References: Mime-Version:Message-Id:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=8ZLM4aoqpvOO2Kor+mxuK4wu/EM8me3PR88BRbaknrs=; b=cmKJqER8KDFmueYBsWyBtvE9KO 8ENaPI1kV+edftbgbzKj8ANZjMW+FESDP1H19vZizdk21Z+nTW8QraqIWEwCXy+irG1yvCRJj6XdC U44SE9GOkkKRv7wrqxeL76DqbXYF7Gt3XeOE3+sXVwO1Ot0+QgRA0GjRpXqGmT05zuiEZWiagO05a +WWTeGuqGlYEHMaVAeEyy7KZ3WhX+j8n8mdUg6RRHM+OdlYo/gGk4N+zZuvpxrWhkLua0NC4FwzUQ U1Lj7yrnDUijolYy1Jg+2oJnl7uXi1ZWgMDM94JPXQvCslCSHavmBhc3Bmdbs1dLkpMlwVX9ncwe8 xC8byHlQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oNUds-00Ccs3-Fg; Mon, 15 Aug 2022 07:36:08 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oNUdW-00Ccgk-Vc for linux-arm-kernel@bombadil.infradead.org; Mon, 15 Aug 2022 07:35:47 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:Content-Type: Cc:To:From:Subject:References:Mime-Version:Message-Id:In-Reply-To:Date:Sender :Reply-To:Content-ID:Content-Description; bh=ifOfojcufHPggK6PzW/ZmDk8V3gX0fRZ648oAiWvUiA=; b=X7sVNFx9TCk9N6KnOIot+K3En0 IVNsSs+wx6pYC7zmPjjef9hBLBV1ZxkzIkCUAUwHISSVwk43LSshUed0pC3rOgQtyNf6Y7JoaUrc9 KdbEE2pJdSaR7lZ2l71JD5ToMkkWEVJkoXP30AVWpHKMmLpQ1YFn4/hgAJrUV0o91mc9To/1ESlBP O5mF65JGCQJbZeCb4jYgXZ43LLXPEItObzPaHq0FyC5hjybJM96RkkPkfKnR0JGYlRMpmsGWaVqGj nBIGnNPrKs5MZNycD8WsYfaIbOxdluyHa/5xRHiGlaS8VoSmpf+ANUU2FTtCnvzabzIAZbEWMWyCB d3id5Ejg==; Received: from mail-yb1-xb49.google.com ([2607:f8b0:4864:20::b49]) by casper.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oNUJ3-005VfB-J6 for linux-arm-kernel@lists.infradead.org; Mon, 15 Aug 2022 07:14:41 +0000 Received: by mail-yb1-xb49.google.com with SMTP id bt7-20020a056902136700b006777a976adfso5453992ybb.20 for ; Mon, 15 Aug 2022 00:14:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=content-transfer-encoding:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:from:to:cc; bh=ifOfojcufHPggK6PzW/ZmDk8V3gX0fRZ648oAiWvUiA=; b=c59OaabIoXL9UllET9+yHjK4QWTaAVf+Y+94LiY0cZghkWrG57gjB2UsUv7kIcoZqC XrxDIYeH4E+SFchOWfjRRltuk94kXs0NPlMrjadt8Sc2zLqbwbuLVYLMIHHv08BW7Gsq hGWPYpfBveWyfz+U70H2H2ETnI1rFtDBZFZ6IBJP2WwIEmmT9HnsCC4FAfOd4cbVkVaq g0Om3KMCyeXiH0qsBJJm51khuElGnMvBksbLGGzMr7gWefJoruSvCxrDPgn8m/Dyxmcn c70Lw36CW2GHahqbQQvplsWH7m/3mmxoGCcA7tPTtfTYhzlbCihOuIv+Z1JOjGkAS9hK XxQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:x-gm-message-state:from:to :cc; bh=ifOfojcufHPggK6PzW/ZmDk8V3gX0fRZ648oAiWvUiA=; b=GZq8JmFVCbpqb5zmQlB2W5bYTf8yv84yTHMJko2sD6eqffhH0pcwMYO/aoh1Ah4NAV P6QgLJIkiXpO/xUyPytde093V1zK9+UaUiauVo71c98dZ7edCzDBgJIfw7pjUdk3H0CP nnRTfBpz29d/KAESg71QHSv2Ni8ffmBiBboVsv2FQCkYkw3gReLGmCyJzWuoBhJ0cnPS Lp2Yeju4Rii8yPbecZGSS6AM01No+GWw9piTWvCjy5VfDivKfz8naFHCE8L6Z3Hgwq6+ CRHLuVX8LsXNk2SqbqFTGDBLgujVO0rLWp1GjwNopn3NrPmKvaYq8JXlqF98MD7CMuvg vuMQ== X-Gm-Message-State: ACgBeo0aWUIWEAMIU1QCzR2hqnzF9sSduCu0F/Rl1Q3ADKtx8XEcjxjB gUwZce2i8IBQUThYfIQPg3xQjoVBPUw= X-Google-Smtp-Source: AA6agR65uZieoY64YyFiqnDGSULfWd5cVZFd0eTGWgiw0y32PNelp3oFvvJBI38s6zkyVzTABWQCjyFY0pw= X-Received: from yuzhao.bld.corp.google.com ([2620:15c:183:200:d91:5887:ac93:ddf0]) (user=yuzhao job=sendgmr) by 2002:a81:1615:0:b0:326:8d61:6259 with SMTP id 21-20020a811615000000b003268d616259mr12413835yww.164.1660547672584; Mon, 15 Aug 2022 00:14:32 -0700 (PDT) Date: Mon, 15 Aug 2022 01:13:32 -0600 In-Reply-To: <20220815071332.627393-1-yuzhao@google.com> Message-Id: <20220815071332.627393-14-yuzhao@google.com> Mime-Version: 1.0 References: <20220815071332.627393-1-yuzhao@google.com> X-Mailer: git-send-email 2.37.1.595.g718a3a8f04-goog Subject: [PATCH v14 13/14] mm: multi-gen LRU: admin guide From: Yu Zhao To: 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, Yu Zhao , Brian Geffon , Jan Alexander Steffens , Oleksandr Natalenko , Steven Barrett , Suleiman Souhlal , Daniel Byrne , Donald Carr , "=?UTF-8?q?Holger=20Hoffst=C3=A4tte?=" , Konstantin Kharlamov , Shuang Zhai , Sofia Trinh , Vaibhav Jain X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220815_081437_729892_8A35E26A X-CRM114-Status: GOOD ( 23.57 ) 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 QWRkIGFuIGFkbWluIGd1aWRlLgoKU2lnbmVkLW9mZi1ieTogWXUgWmhhbyA8eXV6aGFvQGdvb2ds ZS5jb20+CkFja2VkLWJ5OiBCcmlhbiBHZWZmb24gPGJnZWZmb25AZ29vZ2xlLmNvbT4KQWNrZWQt Ynk6IEphbiBBbGV4YW5kZXIgU3RlZmZlbnMgKGhlZnRpZykgPGhlZnRpZ0BhcmNobGludXgub3Jn PgpBY2tlZC1ieTogT2xla3NhbmRyIE5hdGFsZW5rbyA8b2xla3NhbmRyQG5hdGFsZW5rby5uYW1l PgpBY2tlZC1ieTogU3RldmVuIEJhcnJldHQgPHN0ZXZlbkBsaXF1b3JpeC5uZXQ+CkFja2VkLWJ5 OiBTdWxlaW1hbiBTb3VobGFsIDxzdWxlaW1hbkBnb29nbGUuY29tPgpUZXN0ZWQtYnk6IERhbmll bCBCeXJuZSA8ZGpieXJuZUBtdHUuZWR1PgpUZXN0ZWQtYnk6IERvbmFsZCBDYXJyIDxkQGNoYW9z LXJlaW5zLmNvbT4KVGVzdGVkLWJ5OiBIb2xnZXIgSG9mZnN0w6R0dGUgPGhvbGdlckBhcHBsaWVk LWFzeW5jaHJvbnkuY29tPgpUZXN0ZWQtYnk6IEtvbnN0YW50aW4gS2hhcmxhbW92IDxIaS1Bbmdl bEB5YW5kZXgucnU+ClRlc3RlZC1ieTogU2h1YW5nIFpoYWkgPHN6aGFpMkBjcy5yb2NoZXN0ZXIu ZWR1PgpUZXN0ZWQtYnk6IFNvZmlhIFRyaW5oIDxzb2ZpYS50cmluaEBlZGkud29ya3M+ClRlc3Rl ZC1ieTogVmFpYmhhdiBKYWluIDx2YWliaGF2QGxpbnV4LmlibS5jb20+Ci0tLQogRG9jdW1lbnRh dGlvbi9hZG1pbi1ndWlkZS9tbS9pbmRleC5yc3QgICAgICAgIHwgICAxICsKIERvY3VtZW50YXRp b24vYWRtaW4tZ3VpZGUvbW0vbXVsdGlnZW5fbHJ1LnJzdCB8IDE1NiArKysrKysrKysrKysrKysr KysKIG1tL0tjb25maWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMyAr LQogbW0vdm1zY2FuLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICsK IDQgZmlsZXMgY2hhbmdlZCwgMTYzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL211bHRpZ2VuX2xydS5y c3QKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL2luZGV4LnJzdCBi L0RvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvbW0vaW5kZXgucnN0CmluZGV4IDFiZDExMTE4ZGZi MS4uZDEwNjRlMGJhMzRhIDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21t L2luZGV4LnJzdAorKysgYi9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL2luZGV4LnJzdApA QCAtMzIsNiArMzIsNyBAQCB0aGUgTGludXggbWVtb3J5IG1hbmFnZW1lbnQuCiAgICBpZGxlX3Bh Z2VfdHJhY2tpbmcKICAgIGtzbQogICAgbWVtb3J5LWhvdHBsdWcKKyAgIG11bHRpZ2VuX2xydQog ICAgbm9tbXUtbW1hcAogICAgbnVtYV9tZW1vcnlfcG9saWN5CiAgICBudW1hcGVyZgpkaWZmIC0t Z2l0IGEvRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9tdWx0aWdlbl9scnUucnN0IGIvRG9j dW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9tdWx0aWdlbl9scnUucnN0Cm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uNjM1NWYyYjUwMTlkCi0tLSAvZGV2L251bGwKKysr IGIvRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9tdWx0aWdlbl9scnUucnN0CkBAIC0wLDAg KzEsMTU2IEBACisuLiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMAorCis9PT09PT09 PT09PT09CitNdWx0aS1HZW4gTFJVCis9PT09PT09PT09PT09CitUaGUgbXVsdGktZ2VuIExSVSBp cyBhbiBhbHRlcm5hdGl2ZSBMUlUgaW1wbGVtZW50YXRpb24gdGhhdCBvcHRpbWl6ZXMKK3BhZ2Ug cmVjbGFpbSBhbmQgaW1wcm92ZXMgcGVyZm9ybWFuY2UgdW5kZXIgbWVtb3J5IHByZXNzdXJlLiBQ YWdlCityZWNsYWltIGRlY2lkZXMgdGhlIGtlcm5lbCdzIGNhY2hpbmcgcG9saWN5IGFuZCBhYmls aXR5IHRvIG92ZXJjb21taXQKK21lbW9yeS4gSXQgZGlyZWN0bHkgaW1wYWN0cyB0aGUga3N3YXBk IENQVSB1c2FnZSBhbmQgUkFNIGVmZmljaWVuY3kuCisKK1F1aWNrIHN0YXJ0Cis9PT09PT09PT09 PQorQnVpbGQgdGhlIGtlcm5lbCB3aXRoIHRoZSBmb2xsb3dpbmcgY29uZmlndXJhdGlvbnMuCisK KyogYGBDT05GSUdfTFJVX0dFTj15YGAKKyogYGBDT05GSUdfTFJVX0dFTl9FTkFCTEVEPXlgYAor CitBbGwgc2V0IQorCitSdW50aW1lIG9wdGlvbnMKKz09PT09PT09PT09PT09PQorYGAvc3lzL2tl cm5lbC9tbS9scnVfZ2VuL2BgIGNvbnRhaW5zIHN0YWJsZSBBQklzIGRlc2NyaWJlZCBpbiB0aGUK K2ZvbGxvd2luZyBzdWJzZWN0aW9ucy4KKworS2lsbCBzd2l0Y2gKKy0tLS0tLS0tLS0tCitgYGVu YWJsZWRgYCBhY2NlcHRzIGRpZmZlcmVudCB2YWx1ZXMgdG8gZW5hYmxlIG9yIGRpc2FibGUgdGhl Citmb2xsb3dpbmcgY29tcG9uZW50cy4gSXRzIGRlZmF1bHQgdmFsdWUgZGVwZW5kcyBvbgorYGBD T05GSUdfTFJVX0dFTl9FTkFCTEVEYGAuIEFsbCB0aGUgY29tcG9uZW50cyBzaG91bGQgYmUgZW5h YmxlZAordW5sZXNzIHNvbWUgb2YgdGhlbSBoYXZlIHVuZm9yZXNlZW4gc2lkZSBlZmZlY3RzLiBX cml0aW5nIHRvCitgYGVuYWJsZWRgYCBoYXMgbm8gZWZmZWN0IHdoZW4gYSBjb21wb25lbnQgaXMg bm90IHN1cHBvcnRlZCBieSB0aGUKK2hhcmR3YXJlLCBhbmQgdmFsaWQgdmFsdWVzIHdpbGwgYmUg YWNjZXB0ZWQgZXZlbiB3aGVuIHRoZSBtYWluIHN3aXRjaAoraXMgb2ZmLgorCis9PT09PT0gPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CitWYWx1ZXMgQ29tcG9uZW50cworPT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorMHgwMDAxIFRoZSBtYWluIHN3 aXRjaCBmb3IgdGhlIG11bHRpLWdlbiBMUlUuCisweDAwMDIgQ2xlYXJpbmcgdGhlIGFjY2Vzc2Vk IGJpdCBpbiBsZWFmIHBhZ2UgdGFibGUgZW50cmllcyBpbiBsYXJnZQorICAgICAgIGJhdGNoZXMs IHdoZW4gTU1VIHNldHMgaXQgKGUuZy4sIG9uIHg4NikuIFRoaXMgYmVoYXZpb3IgY2FuCisgICAg ICAgdGhlb3JldGljYWxseSB3b3JzZW4gbG9jayBjb250ZW50aW9uIChtbWFwX2xvY2spLiBJZiBp dCBpcworICAgICAgIGRpc2FibGVkLCB0aGUgbXVsdGktZ2VuIExSVSB3aWxsIHN1ZmZlciBhIG1p bm9yIHBlcmZvcm1hbmNlCisgICAgICAgZGVncmFkYXRpb24gZm9yIHdvcmtsb2FkcyB0aGF0IGNv bnRpZ3VvdXNseSBtYXAgaG90IHBhZ2VzLAorICAgICAgIHdob3NlIGFjY2Vzc2VkIGJpdHMgY2Fu IGJlIG90aGVyd2lzZSBjbGVhcmVkIGJ5IGZld2VyIGxhcmdlcgorICAgICAgIGJhdGNoZXMuCisw eDAwMDQgQ2xlYXJpbmcgdGhlIGFjY2Vzc2VkIGJpdCBpbiBub24tbGVhZiBwYWdlIHRhYmxlIGVu dHJpZXMgYXMKKyAgICAgICB3ZWxsLCB3aGVuIE1NVSBzZXRzIGl0IChlLmcuLCBvbiB4ODYpLiBU aGlzIGJlaGF2aW9yIHdhcyBub3QKKyAgICAgICB2ZXJpZmllZCBvbiB4ODYgdmFyaWV0aWVzIG90 aGVyIHRoYW4gSW50ZWwgYW5kIEFNRC4gSWYgaXQgaXMKKyAgICAgICBkaXNhYmxlZCwgdGhlIG11 bHRpLWdlbiBMUlUgd2lsbCBzdWZmZXIgYSBuZWdsaWdpYmxlCisgICAgICAgcGVyZm9ybWFuY2Ug ZGVncmFkYXRpb24uCitbeVluTl0gQXBwbHkgdG8gYWxsIHRoZSBjb21wb25lbnRzIGFib3ZlLgor PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQorCitFLmcuLAorOjoKKworICAgIGVjaG8geSA+L3N5cy9rZXJuZWwvbW0v bHJ1X2dlbi9lbmFibGVkCisgICAgY2F0IC9zeXMva2VybmVsL21tL2xydV9nZW4vZW5hYmxlZAor ICAgIDB4MDAwNworICAgIGVjaG8gNSA+L3N5cy9rZXJuZWwvbW0vbHJ1X2dlbi9lbmFibGVkCisg ICAgY2F0IC9zeXMva2VybmVsL21tL2xydV9nZW4vZW5hYmxlZAorICAgIDB4MDAwNQorCitUaHJh c2hpbmcgcHJldmVudGlvbgorLS0tLS0tLS0tLS0tLS0tLS0tLS0KK1BlcnNvbmFsIGNvbXB1dGVy cyBhcmUgbW9yZSBzZW5zaXRpdmUgdG8gdGhyYXNoaW5nIGJlY2F1c2UgaXQgY2FuCitjYXVzZSBq YW5rcyAobGFncyB3aGVuIHJlbmRlcmluZyBVSSkgYW5kIG5lZ2F0aXZlbHkgaW1wYWN0IHVzZXIK K2V4cGVyaWVuY2UuIFRoZSBtdWx0aS1nZW4gTFJVIG9mZmVycyB0aHJhc2hpbmcgcHJldmVudGlv biB0byB0aGUKK21ham9yaXR5IG9mIGxhcHRvcCBhbmQgZGVza3RvcCB1c2VycyB3aG8gZG8gbm90 IGhhdmUgYGBvb21kYGAuCisKK1VzZXJzIGNhbiB3cml0ZSBgYE5gYCB0byBgYG1pbl90dGxfbXNg YCB0byBwcmV2ZW50IHRoZSB3b3JraW5nIHNldCBvZgorYGBOYGAgbWlsbGlzZWNvbmRzIGZyb20g Z2V0dGluZyBldmljdGVkLiBUaGUgT09NIGtpbGxlciBpcyB0cmlnZ2VyZWQKK2lmIHRoaXMgd29y a2luZyBzZXQgY2Fubm90IGJlIGtlcHQgaW4gbWVtb3J5LiBJbiBvdGhlciB3b3JkcywgdGhpcwor b3B0aW9uIHdvcmtzIGFzIGFuIGFkanVzdGFibGUgcHJlc3N1cmUgcmVsaWVmIHZhbHZlLCBhbmQg d2hlbiBvcGVuLCBpdAordGVybWluYXRlcyBhcHBsaWNhdGlvbnMgdGhhdCBhcmUgaG9wZWZ1bGx5 IG5vdCBiZWluZyB1c2VkLgorCitCYXNlZCBvbiB0aGUgYXZlcmFnZSBodW1hbiBkZXRlY3RhYmxl IGxhZyAofjEwMG1zKSwgYGBOPTEwMDBgYCB1c3VhbGx5CitlbGltaW5hdGVzIGludG9sZXJhYmxl IGphbmtzIGR1ZSB0byB0aHJhc2hpbmcuIExhcmdlciB2YWx1ZXMgbGlrZQorYGBOPTMwMDBgYCBt YWtlIGphbmtzIGxlc3Mgbm90aWNlYWJsZSBhdCB0aGUgcmlzayBvZiBwcmVtYXR1cmUgT09NCitr aWxscy4KKworVGhlIGRlZmF1bHQgdmFsdWUgYGAwYGAgbWVhbnMgZGlzYWJsZWQuCisKK0V4cGVy aW1lbnRhbCBmZWF0dXJlcworPT09PT09PT09PT09PT09PT09PT09CitgYC9zeXMva2VybmVsL2Rl YnVnL2xydV9nZW5gYCBhY2NlcHRzIGNvbW1hbmRzIGRlc2NyaWJlZCBpbiB0aGUKK2ZvbGxvd2lu ZyBzdWJzZWN0aW9ucy4gTXVsdGlwbGUgY29tbWFuZCBsaW5lcyBhcmUgc3VwcG9ydGVkLCBzbyBk b2VzCitjb25jYXRlbmF0aW9uIHdpdGggZGVsaW1pdGVycyBgYCxgYCBhbmQgYGA7YGAuCisKK2Bg L3N5cy9rZXJuZWwvZGVidWcvbHJ1X2dlbl9mdWxsYGAgcHJvdmlkZXMgYWRkaXRpb25hbCBzdGF0 cyBmb3IKK2RlYnVnZ2luZy4gYGBDT05GSUdfTFJVX0dFTl9TVEFUUz15YGAga2VlcHMgaGlzdG9y aWNhbCBzdGF0cyBmcm9tCitldmljdGVkIGdlbmVyYXRpb25zIGluIHRoaXMgZmlsZS4KKworV29y a2luZyBzZXQgZXN0aW1hdGlvbgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorV29ya2luZyBzZXQg ZXN0aW1hdGlvbiBtZWFzdXJlcyBob3cgbXVjaCBtZW1vcnkgYW4gYXBwbGljYXRpb24gbmVlZHMK K2luIGEgZ2l2ZW4gdGltZSBpbnRlcnZhbCwgYW5kIGl0IGlzIHVzdWFsbHkgZG9uZSB3aXRoIGxp dHRsZSBpbXBhY3Qgb24KK3RoZSBwZXJmb3JtYW5jZSBvZiB0aGUgYXBwbGljYXRpb24uIEUuZy4s IGRhdGEgY2VudGVycyB3YW50IHRvCitvcHRpbWl6ZSBqb2Igc2NoZWR1bGluZyAoYmluIHBhY2tp bmcpIHRvIGltcHJvdmUgbWVtb3J5IHV0aWxpemF0aW9ucy4KK1doZW4gYSBuZXcgam9iIGNvbWVz IGluLCB0aGUgam9iIHNjaGVkdWxlciBuZWVkcyB0byBmaW5kIG91dCB3aGV0aGVyCitlYWNoIHNl cnZlciBpdCBtYW5hZ2VzIGNhbiBhbGxvY2F0ZSBhIGNlcnRhaW4gYW1vdW50IG9mIG1lbW9yeSBm b3IKK3RoaXMgbmV3IGpvYiBiZWZvcmUgaXQgY2FuIHBpY2sgYSBjYW5kaWRhdGUuIFRvIGRvIHNv LCB0aGUgam9iCitzY2hlZHVsZXIgbmVlZHMgdG8gZXN0aW1hdGUgdGhlIHdvcmtpbmcgc2V0cyBv ZiB0aGUgZXhpc3Rpbmcgam9icy4KKworV2hlbiBpdCBpcyByZWFkLCBgYGxydV9nZW5gYCByZXR1 cm5zIGEgaGlzdG9ncmFtIG9mIG51bWJlcnMgb2YgcGFnZXMKK2FjY2Vzc2VkIG92ZXIgZGlmZmVy ZW50IHRpbWUgaW50ZXJ2YWxzIGZvciBlYWNoIG1lbWNnIGFuZCBub2RlLgorYGBNQVhfTlJfR0VO U2BgIGRlY2lkZXMgdGhlIG51bWJlciBvZiBiaW5zIGZvciBlYWNoIGhpc3RvZ3JhbS4gVGhlCito aXN0b2dyYW1zIGFyZSBub25jdW11bGF0aXZlLgorOjoKKworICAgIG1lbWNnICBtZW1jZ19pZCAg bWVtY2dfcGF0aAorICAgICAgIG5vZGUgIG5vZGVfaWQKKyAgICAgICAgICAgbWluX2dlbl9uciAg YWdlX2luX21zICBucl9hbm9uX3BhZ2VzICBucl9maWxlX3BhZ2VzCisgICAgICAgICAgIC4uLgor ICAgICAgICAgICBtYXhfZ2VuX25yICBhZ2VfaW5fbXMgIG5yX2Fub25fcGFnZXMgIG5yX2ZpbGVf cGFnZXMKKworRWFjaCBiaW4gY29udGFpbnMgYW4gZXN0aW1hdGVkIG51bWJlciBvZiBwYWdlcyB0 aGF0IGhhdmUgYmVlbiBhY2Nlc3NlZAord2l0aGluIGBgYWdlX2luX21zYGAuIEUuZy4sIGBgbWlu X2dlbl9ucmBgIGNvbnRhaW5zIHRoZSBjb2xkZXN0IHBhZ2VzCithbmQgYGBtYXhfZ2VuX25yYGAg Y29udGFpbnMgdGhlIGhvdHRlc3QgcGFnZXMsIHNpbmNlIGBgYWdlX2luX21zYGAgb2YKK3RoZSBm b3JtZXIgaXMgdGhlIGxhcmdlc3QgYW5kIHRoYXQgb2YgdGhlIGxhdHRlciBpcyB0aGUgc21hbGxl c3QuCisKK1VzZXJzIGNhbiB3cml0ZSBgYCsgbWVtY2dfaWQgbm9kZV9pZCBtYXhfZ2VuX25yCitb Y2FuX3N3YXAgW2ZvcmNlX3NjYW5dXWBgIHRvIGBgbHJ1X2dlbmBgIHRvIGNyZWF0ZSBhIG5ldyBn ZW5lcmF0aW9uCitgYG1heF9nZW5fbnIrMWBgLiBgYGNhbl9zd2FwYGAgZGVmYXVsdHMgdG8gdGhl IHN3YXAgc2V0dGluZyBhbmQsIGlmIGl0CitpcyBzZXQgdG8gYGAxYGAsIGl0IGZvcmNlcyB0aGUg c2NhbiBvZiBhbm9uIHBhZ2VzIHdoZW4gc3dhcCBpcyBvZmYsCithbmQgdmljZSB2ZXJzYS4gYGBm b3JjZV9zY2FuYGAgZGVmYXVsdHMgdG8gYGAxYGAgYW5kLCBpZiBpdCBpcyBzZXQgdG8KK2BgMGBg LCBpdCBlbXBsb3lzIGhldXJpc3RpY3MgdG8gcmVkdWNlIHRoZSBvdmVyaGVhZCwgd2hpY2ggaXMg bGlrZWx5Cit0byByZWR1Y2UgdGhlIGNvdmVyYWdlIGFzIHdlbGwuCisKK0EgdHlwaWNhbCB1c2Ug Y2FzZSBpcyB0aGF0IGEgam9iIHNjaGVkdWxlciB3cml0ZXMgdG8gYGBscnVfZ2VuYGAgYXQgYQor Y2VydGFpbiB0aW1lIGludGVydmFsIHRvIGNyZWF0ZSBuZXcgZ2VuZXJhdGlvbnMsIGFuZCBpdCBy YW5rcyB0aGUKK3NlcnZlcnMgaXQgbWFuYWdlcyBiYXNlZCBvbiB0aGUgc2l6ZXMgb2YgdGhlaXIg Y29sZCBwYWdlcyBkZWZpbmVkIGJ5Cit0aGlzIHRpbWUgaW50ZXJ2YWwuCisKK1Byb2FjdGl2ZSBy ZWNsYWltCistLS0tLS0tLS0tLS0tLS0tLQorUHJvYWN0aXZlIHJlY2xhaW0gaW5kdWNlcyBwYWdl IHJlY2xhaW0gd2hlbiB0aGVyZSBpcyBubyBtZW1vcnkKK3ByZXNzdXJlLiBJdCB1c3VhbGx5IHRh cmdldHMgY29sZCBwYWdlcyBvbmx5LiBFLmcuLCB3aGVuIGEgbmV3IGpvYgorY29tZXMgaW4sIHRo ZSBqb2Igc2NoZWR1bGVyIHdhbnRzIHRvIHByb2FjdGl2ZWx5IHJlY2xhaW0gY29sZCBwYWdlcyBv bgordGhlIHNlcnZlciBpdCBzZWxlY3RlZCB0byBpbXByb3ZlIHRoZSBjaGFuY2Ugb2Ygc3VjY2Vz c2Z1bGx5IGxhbmRpbmcKK3RoaXMgbmV3IGpvYi4KKworVXNlcnMgY2FuIHdyaXRlIGBgLSBtZW1j Z19pZCBub2RlX2lkIG1pbl9nZW5fbnIgW3N3YXBwaW5lc3MKK1tucl90b19yZWNsYWltXV1gYCB0 byBgYGxydV9nZW5gYCB0byBldmljdCBnZW5lcmF0aW9ucyBsZXNzIHRoYW4gb3IKK2VxdWFsIHRv IGBgbWluX2dlbl9ucmBgLiBOb3RlIHRoYXQgYGBtaW5fZ2VuX25yYGAgc2hvdWxkIGJlIGxlc3Mg dGhhbgorYGBtYXhfZ2VuX25yLTFgYCBhcyBgYG1heF9nZW5fbnJgYCBhbmQgYGBtYXhfZ2VuX25y LTFgYCBhcmUgbm90IGZ1bGx5CithZ2VkIGFuZCB0aGVyZWZvcmUgY2Fubm90IGJlIGV2aWN0ZWQu IGBgc3dhcHBpbmVzc2BgIG92ZXJyaWRlcyB0aGUKK2RlZmF1bHQgdmFsdWUgaW4gYGAvcHJvYy9z eXMvdm0vc3dhcHBpbmVzc2BgLiBgYG5yX3RvX3JlY2xhaW1gYCBsaW1pdHMKK3RoZSBudW1iZXIg b2YgcGFnZXMgdG8gZXZpY3QuCisKK0EgdHlwaWNhbCB1c2UgY2FzZSBpcyB0aGF0IGEgam9iIHNj aGVkdWxlciB3cml0ZXMgdG8gYGBscnVfZ2VuYGAKK2JlZm9yZSBpdCB0cmllcyB0byBsYW5kIGEg bmV3IGpvYiBvbiBhIHNlcnZlci4gSWYgaXQgZmFpbHMgdG8KK21hdGVyaWFsaXplIGVub3VnaCBj b2xkIHBhZ2VzIGJlY2F1c2Ugb2YgdGhlIG92ZXJlc3RpbWF0aW9uLCBpdAorcmV0cmllcyBvbiB0 aGUgbmV4dCBzZXJ2ZXIgYWNjb3JkaW5nIHRvIHRoZSByYW5raW5nIHJlc3VsdCBvYnRhaW5lZAor ZnJvbSB0aGUgd29ya2luZyBzZXQgZXN0aW1hdGlvbiBzdGVwLiBUaGlzIGxlc3MgZm9yY2VmdWwg YXBwcm9hY2gKK2xpbWl0cyB0aGUgaW1wYWN0cyBvbiB0aGUgZXhpc3Rpbmcgam9icy4KZGlmZiAt LWdpdCBhL21tL0tjb25maWcgYi9tbS9LY29uZmlnCmluZGV4IDZjODY4NDljNGRiOS4uOTZjZDNh ZTI1YzZmIDEwMDY0NAotLS0gYS9tbS9LY29uZmlnCisrKyBiL21tL0tjb25maWcKQEAgLTExMzEs NyArMTEzMSw4IEBAIGNvbmZpZyBMUlVfR0VOCiAJIyBtYWtlIHN1cmUgZm9saW8tPmZsYWdzIGhh cyBlbm91Z2ggc3BhcmUgYml0cwogCWRlcGVuZHMgb24gNjRCSVQgfHwgIVNQQVJTRU1FTSB8fCBT UEFSU0VNRU1fVk1FTU1BUAogCWhlbHAKLQkgIEEgaGlnaCBwZXJmb3JtYW5jZSBMUlUgaW1wbGVt ZW50YXRpb24gdG8gb3ZlcmNvbW1pdCBtZW1vcnkuCisJICBBIGhpZ2ggcGVyZm9ybWFuY2UgTFJV IGltcGxlbWVudGF0aW9uIHRvIG92ZXJjb21taXQgbWVtb3J5LiBTZWUKKwkgIERvY3VtZW50YXRp b24vYWRtaW4tZ3VpZGUvbW0vbXVsdGlnZW5fbHJ1LnJzdCBmb3IgZGV0YWlscy4KIAogY29uZmln IExSVV9HRU5fRU5BQkxFRAogCWJvb2wgIkVuYWJsZSBieSBkZWZhdWx0IgpkaWZmIC0tZ2l0IGEv bW0vdm1zY2FuLmMgYi9tbS92bXNjYW4uYwppbmRleCA1MDk5ODlmYjM5ZWYuLmY2OTM3MjAwNDdk YiAxMDA2NDQKLS0tIGEvbW0vdm1zY2FuLmMKKysrIGIvbW0vdm1zY2FuLmMKQEAgLTUyODgsNiAr NTI4OCw3IEBAIHN0YXRpYyBzc2l6ZV90IHNob3dfbWluX3R0bChzdHJ1Y3Qga29iamVjdCAqa29i aiwgc3RydWN0IGtvYmpfYXR0cmlidXRlICphdHRyLCBjCiAJcmV0dXJuIHNwcmludGYoYnVmLCAi JXVcbiIsIGppZmZpZXNfdG9fbXNlY3MoUkVBRF9PTkNFKGxydV9nZW5fbWluX3R0bCkpKTsKIH0K IAorLyogc2VlIERvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvbW0vbXVsdGlnZW5fbHJ1LnJzdCBm b3IgZGV0YWlscyAqLwogc3RhdGljIHNzaXplX3Qgc3RvcmVfbWluX3R0bChzdHJ1Y3Qga29iamVj dCAqa29iaiwgc3RydWN0IGtvYmpfYXR0cmlidXRlICphdHRyLAogCQkJICAgICBjb25zdCBjaGFy ICpidWYsIHNpemVfdCBsZW4pCiB7CkBAIC01MzIxLDYgKzUzMjIsNyBAQCBzdGF0aWMgc3NpemVf dCBzaG93X2VuYWJsZWQoc3RydWN0IGtvYmplY3QgKmtvYmosIHN0cnVjdCBrb2JqX2F0dHJpYnV0 ZSAqYXR0ciwgYwogCXJldHVybiBzbnByaW50ZihidWYsIFBBR0VfU0laRSwgIjB4JTA0eFxuIiwg Y2Fwcyk7CiB9CiAKKy8qIHNlZSBEb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21tL211bHRpZ2Vu X2xydS5yc3QgZm9yIGRldGFpbHMgKi8KIHN0YXRpYyBzc2l6ZV90IHN0b3JlX2VuYWJsZWQoc3Ry dWN0IGtvYmplY3QgKmtvYmosIHN0cnVjdCBrb2JqX2F0dHJpYnV0ZSAqYXR0ciwKIAkJCSAgICAg Y29uc3QgY2hhciAqYnVmLCBzaXplX3QgbGVuKQogewpAQCAtNTQ2OCw2ICs1NDcwLDcgQEAgc3Rh dGljIHZvaWQgbHJ1X2dlbl9zZXFfc2hvd19mdWxsKHN0cnVjdCBzZXFfZmlsZSAqbSwgc3RydWN0 IGxydXZlYyAqbHJ1dmVjLAogCXNlcV9wdXRjKG0sICdcbicpOwogfQogCisvKiBzZWUgRG9jdW1l bnRhdGlvbi9hZG1pbi1ndWlkZS9tbS9tdWx0aWdlbl9scnUucnN0IGZvciBkZXRhaWxzICovCiBz dGF0aWMgaW50IGxydV9nZW5fc2VxX3Nob3coc3RydWN0IHNlcV9maWxlICptLCB2b2lkICp2KQog ewogCXVuc2lnbmVkIGxvbmcgc2VxOwpAQCAtNTYyNiw2ICs1NjI5LDcgQEAgc3RhdGljIGludCBy dW5fY21kKGNoYXIgY21kLCBpbnQgbWVtY2dfaWQsIGludCBuaWQsIHVuc2lnbmVkIGxvbmcgc2Vx LAogCXJldHVybiBlcnI7CiB9CiAKKy8qIHNlZSBEb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL21t L211bHRpZ2VuX2xydS5yc3QgZm9yIGRldGFpbHMgKi8KIHN0YXRpYyBzc2l6ZV90IGxydV9nZW5f c2VxX3dyaXRlKHN0cnVjdCBmaWxlICpmaWxlLCBjb25zdCBjaGFyIF9fdXNlciAqc3JjLAogCQkJ CSBzaXplX3QgbGVuLCBsb2ZmX3QgKnBvcykKIHsKLS0gCjIuMzcuMS41OTUuZzcxOGEzYThmMDQt Z29vZwoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxp bnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFk ZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LWFybS1rZXJuZWwK