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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9BAA2C433F5 for ; Thu, 31 Mar 2022 16:20:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 279D56B0072; Thu, 31 Mar 2022 12:20:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 229DC8D0001; Thu, 31 Mar 2022 12:20:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 02D306B0074; Thu, 31 Mar 2022 12:20:26 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.28]) by kanga.kvack.org (Postfix) with ESMTP id E44266B0072 for ; Thu, 31 Mar 2022 12:20:26 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id B9CB71FE3 for ; Thu, 31 Mar 2022 16:20:26 +0000 (UTC) X-FDA: 79305194052.10.3356326 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by imf13.hostedemail.com (Postfix) with ESMTP id B392A20012 for ; Thu, 31 Mar 2022 16:20:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1648743625; x=1680279625; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=hB6kZyOcnGy0ClajpskNAfKvXnQ81rQ+jHlGKP9rTrA=; b=NSctPLcBiDliVIQZ11biPOXxp/s0fZBTVM4wgtgrbsEM277GCJFNeSZS mqfrp3HEV8gzC0Hv36ZsJjbPYj/+1xL+MpiO0H5ul1PPSW9MRolt/Z01O oOFYcSr0+So3vAIgQ2ckryyf4uemwYO7nTutjvtTpBpwzA+VX2fxVIXre NlVa6gpX5bRZycJ7k+LW6i5ebB8SxmjpCZFUZtTut1sqgdWl1dKCGD6DB BXim2BCt6EzBdhXd+fSiBdGvjFOx4k549YPxDnl1L1NsvUPCU229/haTS yLTw8XWSokpIAvB3GHf9mH7J1VBBGq+WkKd45CHSiEz+oh6xV4GlChGny Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10302"; a="239809637" X-IronPort-AV: E=Sophos;i="5.90,225,1643702400"; d="scan'208";a="239809637" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Mar 2022 09:19:06 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,225,1643702400"; d="scan'208";a="586492131" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga001.jf.intel.com with ESMTP; 31 Mar 2022 09:19:05 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Thu, 31 Mar 2022 09:19:05 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27; Thu, 31 Mar 2022 09:19:04 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.27 via Frontend Transport; Thu, 31 Mar 2022 09:19:04 -0700 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.42) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.27; Thu, 31 Mar 2022 09:19:04 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fSkSK4jHIZr31Gxbc8Jii29JupTtcCbv/9VExhyDgSy7flJYC2mTag7uIQVzD/nj9z6Gf68GxTBX1C9NflN8LCZTGbRrQOSMI05S5hKfBt3a4sO23SkK/cqNMgtB/SvowiiDupN/k3E7W4uYtsQAv8G8dbgZ6KscEMtOLo5pO9LmNl32siLrOoYy7zDwZCrAIDlbT17wjsLfdssFuvnZq3ZBYNB0WfxzAy+ct2hPINOdS9tiW2p2F6um1/MC6QHkSNKC05R5SSW6Z0/9/NAlGXq9PtlTGeeAB5F6t1d9ZNYgFZphtfMYoAImjvQMwKJ05Bz66y/wBaUMlAbnnfBBUA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hB6kZyOcnGy0ClajpskNAfKvXnQ81rQ+jHlGKP9rTrA=; b=R6pPN+zzrwR6EQ6t3XfJ+sl32ty3g/AyN9QJkYrw2k0C9QLon3QVXhfMWDe1k4ciQPDaB/v9q7s5+QN0c/ZbEXqC8NHXvivySQRpELd/5kRQH8Lpd5wbbRS7PrIL1ScKysI8ybSlDUKdinYF+qoJ1HaW+vs5OHxJcfxrjhCxGkPWPexQ/StueNAFHtryl97lbXdaJoRrtmJHWvCRNk9phirGSeTOKYLXfjvrvjMiKjZ4qn3Q6+p5PnH3px7ZRaxNYnQPqhFD0mdjFW7U8DXa8T09Orbm8BHzYbqYkza6gc0Kk+QA/dp0mXw9gKNMu1REo/jW8/RTqnR+EUT3OTk8WQ== 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 Received: from MWHPR11MB1392.namprd11.prod.outlook.com (2603:10b6:300:24::14) by DM4PR11MB5440.namprd11.prod.outlook.com (2603:10b6:5:39c::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5123.20; Thu, 31 Mar 2022 16:19:03 +0000 Received: from MWHPR11MB1392.namprd11.prod.outlook.com ([fe80::69:f7e:5f37:240b]) by MWHPR11MB1392.namprd11.prod.outlook.com ([fe80::69:f7e:5f37:240b%3]) with mapi id 15.20.5123.021; Thu, 31 Mar 2022 16:19:03 +0000 From: "Edgecombe, Rick P" To: "songliubraving@fb.com" CC: "daniel@iogearbox.net" , "bpf@vger.kernel.org" , "ast@kernel.org" , "Kernel-team@fb.com" , "linux-mm@kvack.org" , "song@kernel.org" , "andrii@kernel.org" , "pmenzel@molgen.mpg.de" , "x86@kernel.org" , "akpm@linux-foundation.org" , "netdev@vger.kernel.org" Subject: Re: [PATCH bpf 0/4] introduce HAVE_ARCH_HUGE_VMALLOC_FLAG for bpf_prog_pack Thread-Topic: [PATCH bpf 0/4] introduce HAVE_ARCH_HUGE_VMALLOC_FLAG for bpf_prog_pack Thread-Index: AQHYRIpKa4OOIFtfk0GleBvGfJS766zYnJoAgAAL64CAAQR3AA== Date: Thu, 31 Mar 2022 16:19:03 +0000 Message-ID: References: <20220330225642.1163897-1-song@kernel.org> <5ef891091337e2d36b29b1410f7f92c21b52d968.camel@intel.com> <92027664-4817-47CE-B008-8AFD94947B02@fb.com> In-Reply-To: <92027664-4817-47CE-B008-8AFD94947B02@fb.com> 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 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 52d25441-5940-4c9e-47b9-08da13322be6 x-ms-traffictypediagnostic: DM4PR11MB5440:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: nDkKineFyLJ8JB3Z1+jPxxtPzZa7nQu/ENjKlxoQ3Ws1EEOrEn2nDUeUJ9WzuxSCLyT03IHU0gvM+dY1kd529sbeGEHiNwjqnvSIKxgdBatxtemVnD9ZaWeL5Bi6kZNUJ3pUen7zmk+YsCoukbi2F1Z+FgZ+TW/Xbr87QZtr2htehM6rYnZ+h+h+zESx5/iRtXCqeAyWCjOPHSqIDqUNAtgAxD4oro42U9vuxYPh5pJe8Z6/LHufwxeJUYvKZV7L3YeR/aI1hgH90QGbJ1EAuBYAS1pKR0cz4EML7PLdZVJjnJXdkIEhr6S+vCe3s8+ZPN0DN0DjuJ1hU4w5KZ+GAgUvyX+PoiRhRAuakA4gaCOtio7TFFgcIw5xMXY29G6LdBSecXk6MIw/86MUr992a061wsWH8levFYZ+Y16ihdBPuTODzrODNFLI+sS2aCNtPPpHF2UM+w0PCEFROqynEJ330hIPP+PtvHCa93M9H0QBi6Q8c1w5wVIQlq2O9lWoNZ9gxEWrYjsgneX0TbJEdb0GZ7EB5wGRkS6da53M6YMSsjOvLCvW0WHAqB1oXtGaMrhsd0SQn/sNwl6MTV3VHAAih2m+VnO5Yo/nDUPhIkLygBVjJd9vv/LXWJfuseWc/Te9yJeeZ3D4mzTOtEExvsESwt4U3PctGzUZm4QJ0slHT36mO2aFUseBSdc+VGX9E+gxZbGeVrRwlsnm82kem5aWgOlndekRMnpbg+v5GMsyGgj9/0hzQS4ZOM8BcAyAEh5692qT81+N/UsSF/Q95RYFI7+CNf+5OntMvAmweDMX7oaq+gPEXEnzveCZo4pC33wBeYIpMd/snh/INB9wIg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1392.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(8676002)(64756008)(4326008)(86362001)(38070700005)(66946007)(66446008)(2616005)(76116006)(26005)(54906003)(186003)(71200400001)(6506007)(316002)(6486002)(508600001)(6512007)(66556008)(66476007)(966005)(53546011)(6916009)(5660300002)(38100700002)(122000001)(7416002)(82960400001)(8936002)(36756003)(2906002)(83380400001)(99106002)(14583001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZjZQNGQwa0NiL3RtaDRvOVNjQ0RZeExna2xlS3ZrUlIwZTNhSVBpcE0zdGhM?= =?utf-8?B?MFZaQUgwbG5TaFQycy9FVmxTOFlNdCtzZ0ltUWVSSlBod01rdjZpdXRWNk1l?= =?utf-8?B?NlhJbHRCL0ZBbWx0UUdEMDZkVE51LzRiQ043QzNpU3BIdFl1bHVtdVNpS3Bv?= =?utf-8?B?REFEMU5BUGdKMXRwTWtlZlN0UHlHUDU0aXRlM2N6NE9yWTMrTVdpakNDM2VB?= =?utf-8?B?a21YVFZOTTF2d1M2NkxJOTJ5ZEJuRE83RTdVcVJuRFFVNVhlM2ZVTVNTdnlz?= =?utf-8?B?dVI3UVkyd2NVSEZBK2t5UkQrQzNoOEFrVjUxMXNnMTBnVVU0YjExTzZTVlJO?= =?utf-8?B?TE84ZjBSYlpUSGhPTGIzNGFLd1M3UmJNa1BWaGwzTUhzdEtuRWxHdTY5RlZE?= =?utf-8?B?OGRkRm1iWHpEZTA5NlhQeHprclg5RnJIUUhWVjNoVUVFRjdxVXJ4dTltL2w2?= =?utf-8?B?OHdybk9rWlkzUTBpRS9raE04T1piRENrWGNjT3lSZi9XYUJoWGEvR096NkVl?= =?utf-8?B?NXJGdWlxOVRHRXFxR3QvNVVYYUNuN2t5RFA4cjJBWUJSK0g4bnBTSmE0VENX?= =?utf-8?B?c2MxWW5SRzdUOHJTK0Vqdm5YUGVHMXVKUUI0emxXTkFJVExLRXNlbzRJY2M3?= =?utf-8?B?ZDN1KzNtbHZTc0ZjZjR2UUxQejJpajUydVJlTFRFN0YvNklFbk9NWWhrdzFQ?= =?utf-8?B?WVljcmo2UE91TUdBdlJEeHhjWDdXUmw1TmdNNjEvdzNrV29OVlhjUkRTWEtS?= =?utf-8?B?OGJLeUdyMnRrWVJGbkQ2Q0pFdWcrM2JjSEFRMVJWQXR6ZUhkS0lJWWtYbkQ2?= =?utf-8?B?YmNXNnM0NWI5VlY3em5UZzE0OXRpMzNMRU1EYkR0eEFpUWFWZVNXbUVwYjU1?= =?utf-8?B?REZXMXlrUEt1eWNnQWVBTmcrZFdZODE4aDRIaHNmbWN3d1RzQlZnNUNKRFQ0?= =?utf-8?B?YkhYa2s3bkVPMW9ROEpyMk1QbGFjZ2lCZ1ZIdHI0U2hmcUsvRlcwZG5WL3Iw?= =?utf-8?B?NGUyeW1scFByZzlvR0lWNGRVYlF4Z0haTDJLWnVvdlhQSFU0UTNoWGh0VkNa?= =?utf-8?B?RVBKN2E3NGM3NU5zYVhMaUtlVVVDVDA1ajhWTjR1cjR0c0VVNGlTY1Z6eTJj?= =?utf-8?B?cFF1RVpnOEhqOWdxQ2h2RzBPUVpwZHp4MC9SMGRuNFF3T1lJbEdKR24wNkMr?= =?utf-8?B?OVAwN21lRHZpdVdNZm90M3ZOR1ZORlJsVTFKZjJ6ZGtsYjdUcTgrK2pYK1pa?= =?utf-8?B?eS9iRTdhc1dpcHBCR2hNbWgyMFpzZ3lyYUxhSlYrK3ZCa0pmUTZ3NjNRVWM5?= =?utf-8?B?WGlRbURhVjEyc3Iza2psMlJla1pjV2VGOWI0ZUtOSDhidlFucWkxM2V6ZlE0?= =?utf-8?B?cHR1YnZzbjZUdzNJRFg5VzhZYUttNzRZU2pKVFlYRTJIdDlDNC9iOEIrdTNO?= =?utf-8?B?eFFlUUg4a0NwcHREVHVQSmhGRHQ5SEhSdEJZYmRqblFxanc2QlgxMERxS3lx?= =?utf-8?B?TDY0VjdYbVVMZUJUMkY3VWozd1lIY0xKdkd4cnNpaFllVjZ2YXJCK0Z4T0xk?= =?utf-8?B?MVRkQUE2NTltZkxwaVBZNEk4aUY1d0pkd2o5WjBRZ2NOakxjWSt2QWExbllx?= =?utf-8?B?M2dLUGJtVzJ2c01BSDhEUjQvWWpjWERQbGlkR1dVZlVZaWIvSkV5SkxtcEg2?= =?utf-8?B?SEIxVk5uZHNZZDc1b1Nhb2hSejRqMEZIWTRhWmtPSXNGR2V4T2VuYUpWVGlJ?= =?utf-8?B?Z0xvdTIvUXNJSm4zM1IwVkxVaVlBY1haM2xqM2NWM1dGNDlsS29rVDV2QUpB?= =?utf-8?B?RlNqdlFVZWxQSHI3LzRTMHNXMmF3eGJIU2plcHpCam9LWnptVkZsSTV6M05W?= =?utf-8?B?VHdyNEptYXBMT09pZ2FzNW5ieUU4K3ljVlJwdWlxNE5LY2lCbnVvV1hDYUI4?= =?utf-8?B?ZTZJUXlqdUlOQ3BhRk5QL2pzWEQyd2pkTkowZE9aL2dySTROWTNCV2l1VjVw?= =?utf-8?B?SVptbjdIWFlMZGRtaHd1QVU1YVJ1eHdpdHZGNjU5STlMaXlKenlQRFErejcw?= =?utf-8?B?M2RoQTdaUTQ5b29CQW9BOWk4Sk9Nc2gvRWhtN1F3Z2hlWlJ5Q3ZYSkt2c2NE?= =?utf-8?B?YXZoSFFEcE50b3lnWTRuRm9FKzZoTUtyUUZ6VWNBVEVrOTVuYUpUKzlsSHJR?= =?utf-8?B?RzFMb1BXZGVmSEdpYmNCYnpxWUlsbUJ2K2RJQ0lHazA2M3J2VjNZbDExemN6?= =?utf-8?B?ZW1VYnU5V0J3Vmtjd2FUaWZkRGJzamFPQWhqdTZGY2RmVEdjeHV1RE1ZMkN0?= =?utf-8?B?MDNRNytYUWl1Q25oemxMMks1V3VMWTZWT2taaDVKTmxoL3kxU0ZDMElZbUli?= =?utf-8?Q?l7VOrJBVJLZmlyhnJEoXFi2X134Siu/60MMsV?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1392.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 52d25441-5940-4c9e-47b9-08da13322be6 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Mar 2022 16:19:03.1057 (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: Ee6pZ0reE0OG9A8vIjCszStbcn66GwIneOOKkaWzieFEoDXG9vvVv/5/GUGTfLt3ySwD01UvRebU8fx6+1mpM2IdFWtHYxLU3hAwwt25sBs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB5440 X-OriginatorOrg: intel.com X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: B392A20012 X-Rspam-User: Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=NSctPLcB; dmarc=pass (policy=none) header.from=intel.com; spf=none (imf13.hostedemail.com: domain of rick.p.edgecombe@intel.com has no SPF policy when checking 192.55.52.136) smtp.mailfrom=rick.p.edgecombe@intel.com X-Stat-Signature: yi3yxo6z9wic1tbmig4dm4sy9rs6h31w X-HE-Tag: 1648743625-469823 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: T24gVGh1LCAyMDIyLTAzLTMxIGF0IDAwOjQ2ICswMDAwLCBTb25nIExpdSB3cm90ZToNCj4gPiBP biBNYXIgMzAsIDIwMjIsIGF0IDU6MDQgUE0sIEVkZ2Vjb21iZSwgUmljayBQIDwNCj4gPiByaWNr LnAuZWRnZWNvbWJlQGludGVsLmNvbT4gd3JvdGU6DQo+ID4gDQo+ID4gT24gV2VkLCAyMDIyLTAz LTMwIGF0IDE1OjU2IC0wNzAwLCBTb25nIExpdSB3cm90ZToNCj4gPiA+IFsxXSANCj4gPiA+IA0K aHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGttbC81YmQxNmUyYzA2YTJkZjM1NzQwMDU1NmM2YWUw MWJiNWQzYzVjMzJhLmNhbWVsQGludGVsLmNvbS8NCj4gPiANCj4gPiBUaGUgaXNzdWVzIEkgYnJv dWdodCB1cCBhcm91bmQgVk1fRkxVU0hfUkVTRVRfUEVSTVMgYXJlIG5vdCBmaXhlZA0KPiA+IGlu DQo+ID4gdGhpcyBzZXJpZXMuIEFuZCBJIHRoaW5rIHRoZSBzb2x1dGlvbiBJIHByb3Bvc2VkIGlz IGtpbmQgb2Ygd29ua3kNCj4gPiB3aXRoDQo+ID4gcmVzcGVjdCB0byBoaWJlcm5hdGUuIFNvIEkg dGhpbmsgbWF5YmUgaGliZXJuYXRlIHNob3VsZCBiZSBmaXhlZCB0bw0KPiA+IG5vdA0KPiA+IGlt cG9zZSByZXN0cmljdGlvbnMgb24gdGhlIGRpcmVjdCBtYXAsIHNvIHRoZSB3b25raW5lc3MgaXMg bm90DQo+ID4gbmVlZGVkLg0KPiA+IEJ1dCB0aGVuIHRoaXMgImZpeGVzIiBzZXJpZXMgYmVjb21l cyBxdWl0ZSBleHRlbnNpdmUuDQo+ID4gDQo+ID4gSSB3b25kZXIsIHdoeSBub3QganVzdCBwdXNo IHRoZSBwYXRjaCAxIGhlcmUsIHRoZW4gcmUtZW5hYmxlIHRoaXMNCj4gPiB0aGluZw0KPiA+IHdo ZW4gaXQgaXMgYWxsIHByb3Blcmx5IGZpeGVkIHVwLiBJdCBsb29rZWQgbGlrZSB5b3VyIGNvZGUg Y291bGQNCj4gPiBoYW5kbGUNCj4gPiB0aGUgYWxsb2NhdGlvbiBub3QgYWN0dWFsbHkgZ2V0dGlu ZyBsYXJnZSBwYWdlcy4NCj4gDQo+IE9ubHkgc2hpcHBpbmcgcGF0Y2ggMSBzaG91bGQgZWxpbWlu YXRlIHRoZSBpc3N1ZXMuIEJ1dCB0aGF0IHdpbGwgYWxzbw0KPiByZWR1Y2UgdGhlIGJlbmVmaXQg aW4gaVRMQiBlZmZpY2llbmN5IChJIGRvbid0IGtub3cgYnkgaG93IG11Y2ggeWV0LikNCg0KWWVh LCBpdCdzIGp1c3QgYSBtYXR0ZXIgb2Ygd2hhdCBvcmRlci90aW1lbGluZSB0aGluZ3MgZ2V0IGRv bmUgaW4uIFRoaXMNCmNoYW5nZSBkaWRuJ3QgZ2V0IGVub3VnaCBtbSBhdHRlbnRpb24gYWhlYWQg b2YgdGltZS4gTm93IHRoZXJlIGFyZSB0d28NCmlzc3Vlcy4gT25lIHdoZXJlIHRoZSByb290IGNh dXNlIGlzIG5vdCBmdWxseSBjbGVhciBhbmQgb25lIHRoYXQNCnByb3Blcmx5IG5lZWRzIGEgd2lk ZXIgZml4LiBKdXN0IHRoaW5raW5nIGl0IGNvdWxkIGJlIG5pY2UgdG8gdGFrZSBzb21lDQp0aW1l IG9uIGl0LCByYXRoZXIgdGhhbiBydXNoIHRvIGZpbmlzaCB3aGF0IHdhcyBhbHJlYWR5IHRvbyBy dXNoZWQuDQoNCj4gDQo+ID4gDQo+ID4gQW5vdGhlciBzb2x1dGlvbiB0aGF0IHdvdWxkIGtlZXAg bGFyZ2UgcGFnZXMgYnV0IHN0aWxsIG5lZWQgZml4aW5nDQo+ID4gdXANCj4gPiBsYXRlcjogSnVz dCBkb24ndCB1c2UgVk1fRkxVU0hfUkVTRVRfUEVSTVMgZm9yIG5vdy4gQ2FsbA0KPiA+IHNldF9t ZW1vcnlfbngoKSBhbmQgdGhlbiBzZXRfbWVtb3J5X3J3KCkgb24gdGhlIG1vZHVsZSBzcGFjZQ0K PiA+IGFkZHJlc3MNCj4gPiBiZWZvcmUgdmZyZWUoKS4gVGhpcyB3aWxsIGNsZWFuIHVwIGV2ZXJ5 dGhpbmcgdGhhdCdzIG5lZWRlZCB3aXRoDQo+ID4gcmVzcGVjdCB0byBkaXJlY3QgbWFwIHBlcm1p c3Npb25zLiBIYXZlIHZtYWxsb2Mgd2FybiBpZiBpcyBzZWVzDQo+ID4gVk1fRkxVU0hfUkVTRVRf UEVSTVMgYW5kIGh1Z2UgcGFnZXMgdG9nZXRoZXIuDQo+IA0KPiBEbyB5b3UgbWVhbiB3ZSBzaG91 bGQgcmVtb3ZlIHNldF92bV9mbHVzaF9yZXNldF9wZXJtcygpIGZyb20gDQo+IGFsbG9jX25ld19w YWNrKCkgYW5kIGRvIHNldF9tZW1vcnlfbngoKSBhbmQgc2V0X21lbW9yeV9ydygpIGJlZm9yZQ0K PiB3ZSBjYWxsIHZmcmVlKCkgaW4gYnBmX3Byb2dfcGFja19mcmVlKCk/IElmIHRoaXMgd29ya3Ms IEkgd291bGQNCj4gcHJlZmVyDQo+IHdlIGdvIHdpdGggdGhpcyB3YXkuIA0KDQpJIGJlbGlldmUg dGhpcyB3b3VsZCB3b3JrIGZ1bmN0aW9uYWxseS4NCg==