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 X-Spam-Level: X-Spam-Status: No, score=-10.2 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_2 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C5B20C432BE for ; Mon, 23 Aug 2021 20:03:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A04896121E for ; Mon, 23 Aug 2021 20:03:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232211AbhHWUEN (ORCPT ); Mon, 23 Aug 2021 16:04:13 -0400 Received: from mga03.intel.com ([134.134.136.65]:55404 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231377AbhHWUEJ (ORCPT ); Mon, 23 Aug 2021 16:04:09 -0400 X-IronPort-AV: E=McAfee;i="6200,9189,10085"; a="217202985" X-IronPort-AV: E=Sophos;i="5.84,344,1620716400"; d="scan'208";a="217202985" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Aug 2021 13:03:25 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,344,1620716400"; d="scan'208";a="507368618" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga001.jf.intel.com with ESMTP; 23 Aug 2021 13:03:25 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Mon, 23 Aug 2021 13:03:24 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10 via Frontend Transport; Mon, 23 Aug 2021 13:03:24 -0700 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.43) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.10; Mon, 23 Aug 2021 13:03:23 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HJ+3Mcvgy+KlTMBjY414UntD283svPdlTFHfnf62/BvHqFfgCjLWWsmK2/GxGS6d8IsUvzux1SUIEjMZ91nBjhLRATBKBNpjYk0QKAQu7coHVe2o5elyzWNqFp8W0Cmk/Jc+npE+sHr6w3/M/xlDr6a1zYZkVqrqxu8q1lVrTQ871k+PfDVyGtoTG6ZL8r0Nfwt5DVK9Htpjl3WtepKz+JnzpUV8jhYizOv7YPkCvvLfM7LrX2pTHdlaNH+9dcPQVMNLCrkfPoHiNV6df7RRQa3+Mzo7ki1Zpj+lrtAPrWToop0OZDS3ZiuRa93fVdNU1czoqHwSQNiQ9VxVlED57w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xFK+XJnlulzZjHeV0OQ+V0hkymH6ndlgU+dpwv+zUQA=; b=IeGZWMHcy+TWmfMFMNjhx1g48GYb/5haJf12zCUJ/IxydOe8sDrfDlG0Y9cLoYZRBoBRsuC14E6CM2z+XTVcbmayLmrPqGOxJrawx9pqzQMBen2xGThz1XsM6JrooAt3pJpRTgPWkL3MrPmOs19i02ejL704VvhRTeo8QAvUXP1hLu5BHYI9OFGIKytYqlnm7BjMt9kyggk1PUdGdKuHJ1xXxrk3ZDj+1qh0iN+pHrFUmDe4u8P5PpMfQ2QdG7d49+uo1LPdI7qclKqqWtgxVsAlkisHoakzcqBpunN1IVVwc1vE7wCYxz1XTikNcsDDLDHcTrj6juimK9l5t6llFw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xFK+XJnlulzZjHeV0OQ+V0hkymH6ndlgU+dpwv+zUQA=; b=B/ZMI9ovc5+SvMdYwGiyzC7Q1nLilnigNhaH15gheBRbT8hmhQYZyKbZa8oMdkiMWipDCzBkracl9muLVfNxKs88T+RmHVCn7yT98w33u3DoMDoKVB31Q+Md+wEiHXGsiYTlzoqIKi0gvGpj7ywpb0l1GxGe0JlBgTZcPb0slqk= Received: from SN6PR11MB3184.namprd11.prod.outlook.com (2603:10b6:805:bd::17) by SN6PR11MB2798.namprd11.prod.outlook.com (2603:10b6:805:58::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.22; Mon, 23 Aug 2021 20:02:55 +0000 Received: from SN6PR11MB3184.namprd11.prod.outlook.com ([fe80::892e:cae1:bef0:935e]) by SN6PR11MB3184.namprd11.prod.outlook.com ([fe80::892e:cae1:bef0:935e%6]) with mapi id 15.20.4436.019; Mon, 23 Aug 2021 20:02:55 +0000 From: "Edgecombe, Rick P" To: "linux-mm@kvack.org" , "rppt@kernel.org" CC: "linux-kernel@vger.kernel.org" , "peterz@infradead.org" , "keescook@chromium.org" , "Weiny, Ira" , "dave.hansen@linux.intel.com" , "vbabka@suse.cz" , "x86@kernel.org" , "akpm@linux-foundation.org" , "rppt@linux.ibm.com" , "Lutomirski, Andy" Subject: Re: [RFC PATCH 0/4] mm/page_alloc: cache pte-mapped allocations Thread-Topic: [RFC PATCH 0/4] mm/page_alloc: cache pte-mapped allocations Thread-Index: AQHXmCJZaQ1zLPYzj06quD/Q6ZclCauBg3MA Date: Mon, 23 Aug 2021 20:02:55 +0000 Message-ID: <1b49324674fd75294625f725c7f074efd8480efc.camel@intel.com> References: <20210823132513.15836-1-rppt@kernel.org> In-Reply-To: <20210823132513.15836-1-rppt@kernel.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Evolution 3.28.5-0ubuntu0.18.04.2 authentication-results: kvack.org; dkim=none (message not signed) header.d=none;kvack.org; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f9af32ec-8a9c-43d3-d083-08d96670ff3b x-ms-traffictypediagnostic: SN6PR11MB2798: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: WA+4Qz/A5NTvJWN8CTmo+0ERlZCqh0hdEnH5K3MIoxRq2J7dXN+xrkHuvorXGzyYsED5M0nqkNwpEYD/Au1T2HQLfAVrdOO31jm1qG9uXXe/eMSh4BXurssgM2w+oNxi/2BF2oSHRe/VswSrGWEOF6WO46gmkcfQZxlS151vrzcZoypqvIpL+pZa2FwVGmesj25A/qYB1pmGDf536Niuua+Lp+N3rauUZtRaF2RFgb2XBI0CSLlAQJEVxpilaCCywN3LdzGkdyOHik/k0z1v0cxNKv3mmSkqMgk4fQSeh08i3mMTCl+mJ5/EcwnYTuvN4psPG7BvN9102C5rzeFjr2WwGeCxwyaEyMdLMV8HhzJqpytNE0K/3yD5OxFQKJmVnGvGJZy6ukcRb4XNaryOyuNPNmS/mtBTBs7gIldW1Ag3oFOGa0GaPQdfYCccyN3Fjjv2hhacTiZdlYdjpcfOxthJWd4F4Nvh1NP9VDexxweF3W4uIHTBKozKZ9na9UBIo5V5BsVai6FyZ48Np7VV4Wr+wQYzLYN/8rsKZtBCJLU5cY2v3xOZbyWKWRAe4cwJFtw5nHFe76Mq7FP6UdNtMMXBAKH19AzKCK1auTouCA2uF2AcQicXmcdgBAf6mClS1TkpFdCzkqIEQTCWeWE3tKHy/syzD5awfda4eSwEfXMsn8cNgU2vYWU6brVyVqWLL6OCO68ZiJNQusuRibZMr2mKgBC84QWKyS2rL4jmHHz7AgH0AyCHh9folFAp4YwiAx5IMB1ZUHcuRIs0H/+h1cZUCuxQvAhEHssU/oSLulVpDPuiyjnnMcl7FZF2x5zbn0hnLB9RaGdhN7vABakOtHFLIMOjfeCL3h/UM85aAB8= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR11MB3184.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(39860400002)(346002)(396003)(376002)(6512007)(38070700005)(8676002)(2616005)(26005)(76116006)(478600001)(66446008)(66946007)(71200400001)(966005)(36756003)(86362001)(4326008)(7416002)(5660300002)(91956017)(110136005)(316002)(2906002)(64756008)(83380400001)(186003)(66476007)(8936002)(66556008)(6486002)(6506007)(54906003)(122000001)(38100700002)(99106002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bjdBTnFKck9hY01NektzbFY1OXp6VmtmRUlaR3RlZlhoOEUyZGRIUkNkUUU2?= =?utf-8?B?MTdIT2x1bGduK3lKUXpDZW81ZFZURWN5czBFV2ZNSDFDWnF5MW9DNzBJL1Vu?= =?utf-8?B?emc0YzBxVnVQMU5XRlM2VUQ3ZGxKZFhXaVNqT0NnSHBYVkxla1psd2hpT1pV?= =?utf-8?B?R0RaZFZlbnAyaWlvTXFMS1RyNlFYSWd3YndML1BBcERMMEF5eFZEb2ZiRmZp?= =?utf-8?B?UGdMVS9BZnBJNDEwdXpib25Tb1N4NFdPY2pJczg0bWtZbk1FSUVyS2dhLytH?= =?utf-8?B?UWtZZ2htNWFOUTlBeFpwVTc4TGxCNk1aNUpFOHU0Z2FkQitkNmJwaHA2d2pF?= =?utf-8?B?MTVvV2FQSkZxVS9nTU5qOE5wZGpsd0Judmd0eG5RSys2QmRncTJSbDdNcUVC?= =?utf-8?B?S0lOamk3cklIcTZpS0FpaDd0c1ZFbDRkMkNxK0NLMDcyMHFSazNHUjlnaU9n?= =?utf-8?B?emZYZ3FYUlQ4OEkxU0xjQWJiR2FaRTV4Z1IwZlk0bDViNkNaeHducGcwODdO?= =?utf-8?B?eGdpRHA3aTRPNVZVd2lPK0ZldksvRjQ0amFQS2lLL3ZKRVV5ckNReWRsVmw5?= =?utf-8?B?dnZiTmZjcEV4WHIwbFVXSkhJVjk3a0hnU1JUOTFKaDNoMGNNbVdIOGg1QnZW?= =?utf-8?B?NVVNMW1DUzVQQlVPNTF6SzRDeTNjVUxFcWJXUHBPekpXZHNmMTJaQUxzbU12?= =?utf-8?B?UnBIOFBUbDdtZi93Vzl5b3FrUUEwOUVESERzdWY3Wm9CZEl0S1R6NFJnV3J3?= =?utf-8?B?L2NNb2pMWmtuR3FvU05JOWRRbnVOUlBLWEVqby9yRDdjYVR1cEVKMWk3SGNI?= =?utf-8?B?Z0QrTlJOK1kxSU9xZmxpenJEdjU2WVpkUTRrTTdvV3lZTlB1bEhiOVlLdk5j?= =?utf-8?B?MUJWQXprUThzUThFQzZKbm5vOW51RjFDRHprd0RwZGhvQXdobW9lTFkxODFq?= =?utf-8?B?V0dzMUtySy9kdVpzdjlCN3V5V2JwVE5nUTFXc0Z5cktQOHkyYWtBa2R1RFBS?= =?utf-8?B?QVgwN2NtS0h2ZmtXRDBYM1VISEozTlJrc2xvSHRHY3owWHk3VnZmR2d6WGNy?= =?utf-8?B?N2VSUStBODhDbXVROThEbWtxZEdqMVFLTUltWXpYMVp6RXcyeHR2T1dwdDlj?= =?utf-8?B?RTNTdkpidzJXQWR1YUF6WWFRWHNIc2o0ZlRMRWRkSU5pZlhNNE04QnNZUUtL?= =?utf-8?B?azZQTXpHUXU0Vm5EenFDY20rb0JqblNjejRXK1doVityNTFJZHBPT1hDM2cv?= =?utf-8?B?QTdsbm0rcHVHUDRTVmp3UlRnWUpweG5PcXJ3WnVwc0xWTnBKekw1dnJ1ZzNZ?= =?utf-8?B?Yk9xVjhEWk9LS1h5MFBtQzhkR3VmOFFRVHVaT01tdU1GK0JqV3F0RE1UMEJt?= =?utf-8?B?QS9pakF2U0xtOSt2NzdWZTk1Rm5qSWZrNDRDdzRIVk5hY0VSWURGN2FNNzFm?= =?utf-8?B?aXJiYlYzRk5obGo0M1dVc3ZBbWZYMUlHdWdaKzk2Mk1xN2d5bTNZTzFOcmNB?= =?utf-8?B?ZkhkRjZ1K254L0QvalM5UFB3N3NsaEpycUVIV1duYzRuNjFFUUsraDJMN01a?= =?utf-8?B?NUhkTU5WaUtBbFVCUVk2Q2NqOHNFZ3ZxbUgwbXJta0FRZ0xPV0xqVHRhNzJz?= =?utf-8?B?NUIzNmdDTzRndG0rdGpBcGlYV1JkL05aczhzNEY0UG0zR2c0Z3B0bkNrYlV2?= =?utf-8?B?MXBHbXp6UlZ2ZlJGd3JwS0dRWFdCQmpSMTBDL0wyNVMwVXEvbmp1V3lpQzht?= =?utf-8?B?Uy9IakN6c2RUT1pyeXdSZDJ6SCszOFN5RzBJcTFucmxuWXFIeDJielI2RUNS?= =?utf-8?B?WVZIM3M3WVBMU3FvUXIzdz09?= Content-Type: text/plain; charset="utf-8" Content-ID: <937921C81B34E14ABBE4B6518FE2F948@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR11MB3184.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f9af32ec-8a9c-43d3-d083-08d96670ff3b X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Aug 2021 20:02:55.2327 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: MJ6n/gedRI1E9K3EaxIZzj/Wg1TiwRNiv2ClV7YSjr3f0no+9llRIfnesR8J4jm2WcYE37AdTho67a1ALhO238pZwoHAlPEehq8w2N+A1OQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2798 X-OriginatorOrg: intel.com Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org IE1vbiwgMjAyMS0wOC0yMyBhdCAxNjoyNSArMDMwMCwgTWlrZSBSYXBvcG9ydCB3cm90ZToNCj4g RnJvbTogTWlrZSBSYXBvcG9ydCA8cnBwdEBsaW51eC5pYm0uY29tPg0KPiANCj4gSGksDQo+IA0K PiBUaGlzIGlzIGVhcmx5IHByb3RvdHlwZSBmb3IgYWRkaXRpb24gb2YgY2FjaGUgb2YgcHRlLW1h cHBlZCBwYWdlcyB0bw0KPiB0aGUNCj4gcGFnZSBhbGxvY2F0b3IuIEl0IHN1cnZpdmVzIGJvb3Qg YW5kIHNvbWUgY2FjaGUgc2hyaW5raW5nLCBidXQgaXQncw0KPiBzdGlsbA0KPiBhIGxvbmcgd2F5 IHRvIGdvIGZvciBpdCB0byBiZSByZWFkeSBmb3Igbm9uLVJGQyBwb3N0aW5nLg0KPiANCj4gVGhl IGV4YW1wbGUgdXNlLWNhc2UgZm9yIHB0ZS1tYXBwZWQgY2FjaGUgaXMgcHJvdGVjdGlvbiBvZiBw YWdlDQo+IHRhYmxlcyBhbmQNCj4ga2VlcGluZyB0aGVtIHJlYWQtb25seSBleGNlcHQgZm9yIHRo ZSBkZXNpZ25hdGVkIGNvZGUgdGhhdCBpcyBhbGxvd2VkDQo+IHRvDQo+IG1vZGlmeSB0aGUgcGFn ZSB0YWJsZXMuDQo+IA0KPiBJJ2QgbGlrZSB0byBnZXQgYW4gZWFybHkgZmVlZGJhY2sgZm9yIHRo ZSBhcHByb2FjaCB0byBzZWUgd2hhdCB3b3VsZA0KPiBiZQ0KPiB0aGUgYmVzdCB3YXkgdG8gbW92 ZSBmb3J3YXJkIHdpdGggc29tZXRoaW5nIGxpa2UgdGhpcy4NCj4gDQo+IFRoaXMgc2V0IGlzIHg4 NiBzcGVjaWZpYyBhdCB0aGUgbW9tZW50IGJlY2F1c2Ugb3RoZXIgYXJjaGl0ZWN0dXJlcw0KPiBl aXRoZXINCj4gZG8gbm90IHN1cHBvcnQgc2V0X21lbW9yeSBBUElzIHRoYXQgc3BsaXQgdGhlIGRp cmVjdF53IGxpbmVhciBtYXANCj4gKGUuZy4NCj4gUG93ZXJQQykgb3Igb25seSBlbmFibGUgc2V0 X21lbW9yeSBBUElzIHdoZW4gdGhlIGxpbmVhciBtYXAgdXNlcw0KPiBiYXNpYyBwYWdlDQo+IHNp emUgKGxpa2UgYXJtNjQpLg0KPiANCj4gPT0gTW90aXZhdGlvbiA9PQ0KPiANCj4gVGhlcmUgYXJl IHVzZWNhc2VzIHRoYXQgbmVlZCB0byByZW1vdmUgcGFnZXMgZnJvbSB0aGUgZGlyZWN0IG1hcCBv cg0KPiBhdA0KPiBsZWFzdCBtYXAgdGhlbSB3aXRoIDRLIGdyYW51bGFyaXR5LiBXaGVuZXZlciB0 aGlzIGlzIGRvbmUgZS5nLiB3aXRoDQo+IHNldF9tZW1vcnkvc2V0X2RpcmVjdF9tYXAgQVBJcywg dGhlIFBVRCBhbmQgUE1EIHNpemVkIG1hcHBpbmdzIGluIHRoZQ0KPiBkaXJlY3QgbWFwIGFyZSBz cGxpdCBpbnRvIHNtYWxsZXIgcGFnZXMuDQo+IA0KPiBUbyByZWR1Y2UgdGhlIHBlcmZvcm1hbmNl IGhpdCBjYXVzZWQgYnkgdGhlIGZyYWdtZW50YXRpb24gb2YgdGhlDQo+IGRpcmVjdCBtYXANCj4g aXQgbWFrZSBzZW5zZSB0byBncm91cCBhbmQvb3IgY2FjaGUgdGhlIDRLIHBhZ2VzIHJlbW92ZWQg ZnJvbSB0aGUNCj4gZGlyZWN0DQo+IG1hcCBzbyB0aGF0IHRoZSBzcGxpdCBsYXJnZSBwYWdlcyB3 b24ndCBiZSBhbGwgb3ZlciB0aGUgcGxhY2UuIA0KPiANCklmIHlvdSB0aWVkIHRoaXMgaW50byBk ZWJ1ZyBwYWdlIGFsbG9jLCB5b3Ugc2hvdWxkbid0IG5lZWQgdG8gZ3JvdXAgdGhlDQpwYWdlcy4g QXJlIHlvdSB0aGlua2luZyB0aGlzIFBLUy1sZXNzIHBhZ2UgdGFibGUgdXNhZ2Ugd291bGQgYmUg YQ0Kc2VjdXJpdHkgZmVhdHVyZSBvciBkZWJ1ZyB0aW1lIHRoaW5nPw0KDQo+IFRoZXJlIHdlcmUg UkZDcyBmb3IgZ3JvdXBlZCBwYWdlIGFsbG9jYXRpb25zIGZvciB2bWFsbG9jIHBlcm1pc3Npb25z DQo+IFsxXQ0KPiBhbmQgZm9yIHVzaW5nIFBLUyB0byBwcm90ZWN0IHBhZ2UgdGFibGVzIFsyXSBh cyB3ZWxsIGFzIGFuIGF0dGVtcHQgdG8NCj4gdXNlIGENCj4gcG9vbCBvZiBsYXJnZSBwYWdlcyBp biBzZWNyZXRtdG0gWzNdLg0KPiANCj4gPT0gSW1wbGVtZW50YXRpb24gb3ZlcnZpZXcgPT0NCj4g DQo+IFRoaXMgc2V0IGxldmVyYWdlcyBpZGVhcyBmcm9tIHRoZSBwYXRjaGVzIHRoYXQgYWRkZWQg UEtTIHByb3RlY3Rpb24NCj4gdG8gcGFnZQ0KPiB0YWJsZXMsIGJ1dCBpbnN0ZWFkIG9mIGFkZGlu ZyBwZXItdXNlciBncm91cGVkIGFsbG9jYXRpb25zIGl0IHRyaWVzDQo+IHRvIG1vdmUNCj4gdGhl IGNhY2hlIG9mIHB0ZS1tYXBwZWQgcGFnZXMgY2xvc2VyIHRvIHRoZSBwYWdlIGFsbG9jYXRvci4N Cj4gDQo+IFRoZSBpZGVhIGlzIHRvIHVzZSBhIGdmcCBmbGFnIHRoYXQgd2lsbCBpbnN0cnVjdCB0 aGUgcGFnZSBhbGxvY2F0b3INCj4gdG8gdXNlDQo+IHRoZSBjYWNoZSBvZiBwdGUtbWFwcGVkIHBh Z2VzIGJlY2F1c2UgdGhlIGNhbGxlciBuZWVkcyB0byByZW1vdmUgdGhlbQ0KPiBmcm9tDQo+IHRo ZSBkaXJlY3QgbWFwIG9yIGNoYW5nZSB0aGVpciBhdHRyaWJ1dGVzLiANCj4gDQo+IFdoZW4gdGhl IGNhY2hlIGlzIGVtcHR5IHRoZXJlIGlzIGFuIGF0dGVtcHQgdG8gcmVmaWxsIGl0IHVzaW5nIFBN RC0NCj4gc2l6ZWQNCj4gYWxsb2NhdGlvbiBzbyB0aGF0IG9uY2UgdGhlIGRpcmVjdCBtYXAgaXMg c3BsaXQgd2UnbGwgYmUgYWJsZSB0byB1c2UNCj4gYWxsIDRLDQo+IHBhZ2VzIG1hZGUgYXZhaWxh YmxlIGJ5IHRoZSBzcGxpdC4gDQo+IA0KPiBJZiB0aGUgaGlnaCBvcmRlciBhbGxvY2F0aW9uIGZh aWxzLCB3ZSBmYWxsIGJhY2sgdG8gb3JkZXItMCBhbmQgbWFyaw0KPiB0aGUNCj4gZW50aXJlIHBh Z2VibG9jayBhcyBwdGUtbWFwcGVkLiBXaGVuIHBhZ2VzIGZyb20gdGhhdCBwYWdlYmxvY2sgYXJl DQo+IGZyZWVkIHRvDQo+IHRoZSBwYWdlIGFsbG9jYXRvciB0aGV5IGFyZSBwdXQgaW50byB0aGUg cHRlLW1hcHBlZCBjYWNoZS4gVGhlcmUgaXMNCj4gYWxzbw0KPiB1bmltcGxlbWVudGVkIHByb3Zp c2lvbiB0byBhZGQgZnJlZSBwYWdlcyBmcm9tIHN1Y2ggcGFnZWJsb2NrIHRvIHRoZQ0KPiBwdGUt bWFwcGVkIGNhY2hlIGFsb25nIHdpdGggdGhlIHBhZ2UgdGhhdCB3YXMgYWxsb2NhdGVkIGFuZCBj YXVzZSB0aGUNCj4gc3BsaXQNCj4gb2YgdGhlIHBhZ2VibG9jay4NCj4gDQo+IEZvciBub3cgb25s eSBvcmRlci0wIGFsbG9jYXRpb25zIG9mIHB0ZS1tYXBwZWQgcGFnZXMgYXJlIHN1cHBvcnRlZCwN Cj4gd2hpY2gNCj4gcHJldmVudHMsIGZvciBpbnN0YW5jZSwgYWxsb2NhdGlvbiBvZiBQR0Qgd2l0 aCBQVEkgZW5hYmxlZC4NCj4gDQo+IFRoZSBmcmVlIHBhZ2VzIGluIHRoZSBjYWNoZSBtYXkgYmUg cmVjbGFpbWVkIHVzaW5nIGEgc2hyaW5rZXIsIGJ1dA0KPiBmb3Igbm93DQo+IHRoZXkgd2lsbCBy ZW1haW4gbWFwcGVkIHdpdGggUFRFcyBpbiB0aGUgZGlyZWN0IG1hcC4NCj4gDQo+ID09IFRPRE9z ID09DQo+IA0KPiBXaGVuZXZlciBwdGUtbWFwcGVkIGNhY2hlIGlzIGJlaW5nIHNocnVuaywgaXQg aXMgcG9zc2libGUgdG8gYWRkIHNvbWUNCj4ga2luZA0KPiBvZiBjb21wYWN0aW9uIHRvIG1vdmUg YWxsIHRoZSBmcmVlIHBhZ2VzIGludG8gUE1ELXNpemVkIGNodW5rcywgZnJlZQ0KPiB0aGVzZQ0K PiBjaHVua3MgYXQgb25jZSBhbmQgcmVzdG9yZSBsYXJnZSBwYWdlIGluIHRoZSBkaXJlY3QgbWFw Lg0KSSBoYWQgbWFkZSBhIFBPQyB0byBkbyB0aGlzIGEgd2hpbGUgYmFjayB0aGF0IGhvb2tlZCBp bnRvIHRoZSBidWRkeQ0KY29kZSBpbiB0aGUgcGFnZSBhbGxvY2F0b3Igd2hlcmUgdGhpcyBjb2Fs ZXNjaW5nIGlzIGFscmVhZHkgaGFwcGVuaW5nDQpmb3IgZnJlZWQgcGFnZXMuIFRoZSBwcm9ibGVt IHdhcyB0aGF0IG1vc3QgcGFnZXMgdGhhdCBnZXQgdGhlaXIgZGlyZWN0DQptYXAgYWxpYXMgYnJv a2VuLCBlbmQgdXAgdXNpbmcgYSBwYWdlIGZyb20gdGhlIHNhbWUgMk1CIHBhZ2UgZm9yIHRoZQ0K cGFnZSB0YWJsZSBpbiB0aGUgc3BsaXQuIEJ1dCB0aGVuIHRoZSBkaXJlY3QgbWFwIHBhZ2UgdGFi bGUgbmV2ZXIgZ2V0cw0KZnJlZWQgc28gaXQgbmV2ZXIgY2FuIHJlc3RvcmUgdGhlIGxhcmdlIHBh Z2Ugd2hlbiBjaGVja2luZyB0aGUgdGhlDQphbGxvY2F0aW9uIHBhZ2UgZ2V0dGluZyBmcmVlZC4g R3JvdXBpbmcgcGVybWlzc2lvbmVkIHBhZ2VzIE9SIHBhZ2UNCnRhYmxlcyB3b3VsZCByZXNvbHZl IHRoYXQgYW5kIGl0IHdhcyBteSBwbGFuIHRvIHRyeSBhZ2FpbiBhZnRlcg0Kc29tZXRoaW5nIGxp a2UgdGhpcyBoYXBwZW5lZC4gV2FzIGp1c3QgYW4gZXhwZXJpbWVudCwgYnV0IGNhbiBzaGFyZSBp Zg0KeW91IGFyZSBpbnRlcmVzdGVkLg0KDQo+IA0KPiBUaGVyZSBpcyBhbHNvIGEgcG9zc2liaWxp dHkgdG8gYWRkIGhldXJpc3RpY3MgYW5kIGtub2JzIHRvIGNvbnRyb2wNCj4gZ3JlZWRpbmVzcyBv ZiB0aGUgY2FjaGUgdnMgbWVtb3J5IHByZXNzdXJlIHNvIHRoYXQgZnJlZWQgcHRlLW1hcHBlZA0K PiBjYWNoZQ0KPiB3b24ndCBiZSBuZWNlc3NhcmlseSBwdXQgaW50byB0aGUgcHRlLW1hcHBlZCBj YWNoZS4NCj4gDQo+IEFub3RoZXIgdGhpbmcgdGhhdCBjYW4gYmUgaW1wbGVtZW50ZWQgaXMgcHJl LXBvcHVsYXRpbmcgdGhlIHB0ZS1jYWNoZSANCj4gYXQNCj4gYm9vdCB0aW1lIHRvIGluY2x1ZGUg dGhlIGZyZWUgcGFnZXMgdGhhdCBhcmUgYW55d2F5IG1hcHBlZCBieSBQVEVzLg0KPiANCj4gPT0g QWx0ZXJuYXRpdmVzID09DQo+IA0KPiBDdXJyZW50IGltcGxlbWVudGF0aW9uIHVzZXMgYSBzaW5n bGUgZ2xvYmFsIGNhY2hlLg0KPiANCj4gQW5vdGhlciBvcHRpb24gaXMgdG8gaGF2ZSBwZXItdXNl ciBjYWNoZXMsIGUuZyBvbmUgZm9yIHRoZSBwYWdlDQo+IHRhYmxlcywNCj4gYW5vdGhlciBmb3Ig dm1hbGxvYyBldGMuICBUaGlzIGFwcHJvYWNoIHByb3ZpZGVzIGJldHRlciBjb250cm9sIG9mDQo+ IHRoZQ0KPiBwZXJtaXNzaW9ucyBvZiB0aGUgcGFnZXMgYWxsb2NhdGVkIGZyb20gdGhlc2UgY2Fj aGVzIGFuZCBhbGxvd3MgdGhlDQo+IHVzZXIgdG8NCj4gZGVjaWRlIHdoZW4gKGlmIGF0IGFsbCkg dGhlIHBhZ2VzIGNhbiBiZSBhY2Nlc3NlZCwgZS5nLiBmb3IgY2FjaGUNCj4gY29tcGFjdGlvbi4g VGhlIGRvd24gc2lkZSBvZiB0aGlzIGFwcHJvYWNoIGlzIHRoYXQgaXQgY29tcGxpY2F0ZXMgdGhl DQo+IGZyZWVpbmcgcGF0aC4gQSBwYWdlIGFsbG9jYXRlZCBmcm9tIGEgZGVkaWNhdGVkIGNhY2hl IGNhbm5vdCBiZSBmcmVlZA0KPiB3aXRoDQo+IHB1dF9wYWdlKCkvZnJlZV9wYWdlKCkgZXRjIGJ1 dCBpdCBoYXMgdG8gYmUgZnJlZWQgd2l0aCBhIGRlZGljYXRlZA0KPiBBUEkgb3INCj4gdGhlcmUg c2hvdWxkIGJlIHNvbWUgYmFjayBwb2ludGVyIGluIHN0cnVjdCBwYWdlIHNvIHRoYXQgcGFnZQ0K PiBhbGxvY2F0b3INCj4gd2lsbCBrbm93IHdoYXQgY2FjaGUgdGhpcyBwYWdlIGNhbWUgZnJvbS4N ClRoaXMgbmVlZHMgdG8gcmVzZXQgdGhlIHBlcm1pc3Npb25zIGJlZm9yZSBmcmVlaW5nLCBzbyBk b2Vzbid0IHNlZW0gdG9vDQpkaWZmZXJlbnQgdGhhbiBmcmVlaW5nIHRoZW0gYSBzcGVjaWFsIHdh eS4NCj4gDQo+IFlldCBhbm90aGVyIHBvc3NpYmlsaXR5IHRvIG1ha2UgcHRlLW1hcHBlZCBjYWNo ZSBhIG1pZ3JhdGV0eXBlIG9mIGl0cw0KPiBvd24uDQo+IENyZWF0aW5nIGEgbmV3IG1pZ3JhdGV0 eXBlIHdvdWxkIGFsbG93IGhpZ2hlciBvcmRlciBhbGxvY2F0aW9ucyBvZg0KPiBwdGUtbWFwcGVk IHBhZ2VzLCBidXQgSSBkb24ndCBoYXZlIGVub3VnaCB1bmRlcnN0YW5kaW5nIG9mIHBhZ2UNCj4g YWxsb2NhdG9yDQo+IGFuZCByZWNsYWltIGludGVybmFscyB0byBlc3RpbWF0ZSB0aGUgY29tcGxl eGl0eSBhc3NvY2lhdGVkIHdpdGggdGhpcw0KPiBhcHByb2FjaC4gDQo+IA0KSSd2ZSBiZWVuIHRo aW5raW5nIGFib3V0IHR3byBjYXRlZ29yaWVzIG9mIGRpcmVjdCBtYXAgcGVybWlzc2lvbg0KdXNh Z2VzLg0KDQpPbmUgaXMgbGltaXRpbmcgdGhlIHVzZSBvZiB0aGUgZGlyZWN0IG1hcCBhbGlhcyB3 aGVuIGl0J3Mgbm90IGluIHVzZQ0KYW5kIHRoZSBwcmltYXJ5IGFsaWFzIGlzIGdldHRpbmcgc29t ZSBvdGhlciBwZXJtaXNzaW9uLiBFeGFtcGxlcyBhcmUNCm1vZHVsZXMsIHNlY3JldG1lbSwgeHBm bywgS1ZNIGd1ZXN0IG1lbW9yeSB1bm1hcHBpbmcgc3R1ZmYsIGV0Yy4gSW4NCnRoaXMgY2FzZSBy ZS1hbGxvY2F0aW9ucyBjYW4gc2hhcmUgdW5tYXBwZWQgcGFnZXMgd2l0aG91dCBkb2luZyBhbnkN CmV4cGVuc2l2ZSBtYWludGVuYW5jZSBhbmQgaXQgaGVscHMgdG8gaGF2ZSBvbmUgYmlnIGNhY2hl LiBJZiB5b3UgYXJlDQpnb2luZyB0byBjb252ZXJ0IHBhZ2VzIHRvIDRrIGFuZCBjYWNoZSB0aGVt LCB5b3UgbWlnaHQgYXMgd2VsbCBjb252ZXJ0DQp0aGVtIHRvIE5QIGF0IHRoZSB0aW1lLCBzaW5j ZSBpdCdzIGNoZWFwIHRvIHJlc3RvcmUgdGhlbSBvciBzZXQgdGhlaXINCnBlcm1pc3Npb24gZnJv bSB0aGF0IHN0YXRlLg0KDQpUd28gaXMgc2V0dGluZyBwZXJtaXNzaW9ucyBvbiB0aGUgZGlyZWN0 IG1hcCBhcyB0aGUgb25seSBhbGlhcyB0byBiZQ0KdXNlZC4gVGhpcyBpbmNsdWRlcyB0aGlzIHJm Yywgc29tZSBQS1MgdXNhZ2VzLCBidXQgYWxzbyBwb3NzaWJseSBzb21lDQpzZXRfcGFnZXNfdWMo KSBjYWxsZXJzIGFuZCB0aGUgbGlrZS4gSXQgc2VlbXMgdGhhdCB0aGlzIGNhdGVnb3J5IGNvdWxk DQpzdGlsbCBtYWtlIHVzZSBvZiBhIGJpZyB1bm1hcHBlZCBjYWNoZSBvZiBwYWdlcy4gSnVzdCBh c2sgZm9yIHVubWFwcGVkDQpwYWdlcyBhbmQgY29udmVydCB0aGVtIHdpdGhvdXQgYSBmbHVzaC4N Cg0KU28gbGlrZSBzb21ldGhpbmcgd291bGQgaGF2ZSBhIGJpZyBjYWNoZSBvZiBncm91cGVkIHVu bWFwcGVkIHBhZ2VzIA0KdGhhdCBjYXRlZ29yeSBvbmUgdXNhZ2VzIGNvdWxkIHNoYXJlLiBBbmQg dGhlbiBsaXR0bGUgY2F0ZWdvcnkgdHdvDQphbGxvY2F0b3JzIGNvdWxkIGhhdmUgdGhlaXIgb3du IGNhY2hlcyB0aGF0IGZlZWQgb24gaXQgdG9vLiBXaGF0IGRvIHlvdQ0KdGhpbms/IFRoaXMgaXMg cmVnYXJkbGVzcyBpZiB0aGV5IGxpdmUgaW4gdGhlIHBhZ2UgYWxsb2NhdG9yIG9yIG5vdC4NCg0K DQo+IFsxXSANCj4gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGttbC8yMDIxMDQwNTIwMzcxMS4x MDk1OTQwLTEtcmljay5wLmVkZ2Vjb21iZUBpbnRlbC5jb20vDQo+IFsyXSANCj4gaHR0cHM6Ly9s b3JlLmtlcm5lbC5vcmcvbGttbC8yMDIxMDUwNTAwMzAzMi40ODkxNjQtMS1yaWNrLnAuZWRnZWNv bWJlQGludGVsLmNvbQ0KPiBbM10gDQo+IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xrbWwvMjAy MTAxMjExMjI3MjMuMzQ0Ni04LXJwcHRAa2VybmVsLm9yZy8NCj4gDQo+IE1pa2UgUmFwb3BvcnQg KDIpOg0KPiAgIG1tL3BhZ2VfYWxsb2M6IGludHJvZHVjZSBfX0dGUF9QVEVfTUFQUEVEIGZsYWcg dG8gYWxsb2NhdGUgcHRlLQ0KPiBtYXBwZWQgcGFnZXMNCj4gICB4ODYvbW06IHdyaXRlIHByb3Rl Y3QgKG1vc3QpIHBhZ2UgdGFibGVzDQo+IA0KPiBSaWNrIEVkZ2Vjb21iZSAoMik6DQo+ICAgbGlz dDogU3VwcG9ydCBnZXR0aW5nIG1vc3QgcmVjZW50IGVsZW1lbnQgaW4gbGlzdF9scnUNCj4gICBs aXN0OiBTdXBwb3J0IGxpc3QgaGVhZCBub3QgaW4gb2JqZWN0IGZvciBsaXN0X2xydQ0KPiANCj4g IGFyY2gvS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArDQo+ICBhcmNo L3g4Ni9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKw0KPiAgYXJjaC94ODYv Ym9vdC9jb21wcmVzc2VkL2lkZW50X21hcF82NC5jIHwgICAzICsNCj4gIGFyY2gveDg2L2luY2x1 ZGUvYXNtL3BnYWxsb2MuaCAgICAgICAgICB8ICAgMiArDQo+ICBhcmNoL3g4Ni9pbmNsdWRlL2Fz bS9wZ3RhYmxlLmggICAgICAgICAgfCAgMjEgKy0NCj4gIGFyY2gveDg2L2luY2x1ZGUvYXNtL3Bn dGFibGVfNjQuaCAgICAgICB8ICAzMyArKy0NCj4gIGFyY2gveDg2L21tL2luaXQuYyAgICAgICAg ICAgICAgICAgICAgICB8ICAgMiArLQ0KPiAgYXJjaC94ODYvbW0vcGd0YWJsZS5jICAgICAgICAg ICAgICAgICAgIHwgIDcyICsrKysrKy0NCj4gIGluY2x1ZGUvYXNtLWdlbmVyaWMvcGdhbGxvYy5o ICAgICAgICAgICB8ICAgMiArLQ0KPiAgaW5jbHVkZS9saW51eC9nZnAuaCAgICAgICAgICAgICAg ICAgICAgIHwgIDExICstDQo+ICBpbmNsdWRlL2xpbnV4L2xpc3RfbHJ1LmggICAgICAgICAgICAg ICAgfCAgMjYgKysrDQo+ICBpbmNsdWRlL2xpbnV4L21tLmggICAgICAgICAgICAgICAgICAgICAg fCAgIDIgKw0KPiAgaW5jbHVkZS9saW51eC9wYWdlYmxvY2stZmxhZ3MuaCAgICAgICAgIHwgIDI2 ICsrKw0KPiAgaW5pdC9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsN Cj4gIG1tL2ludGVybmFsLmggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMyArLQ0KPiAg bW0vbGlzdF9scnUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDM4ICsrKy0NCj4gIG1t L3BhZ2VfYWxsb2MuYyAgICAgICAgICAgICAgICAgICAgICAgICB8IDI2MQ0KPiArKysrKysrKysr KysrKysrKysrKysrKy0NCj4gIDE3IGZpbGVzIGNoYW5nZWQsIDQ5NiBpbnNlcnRpb25zKCspLCAx NiBkZWxldGlvbnMoLSkNCj4gDQo=