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 966F5E77199 for ; Tue, 7 Jan 2025 12:11:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E27086B00C0; Tue, 7 Jan 2025 07:11:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DD77E6B00C2; Tue, 7 Jan 2025 07:11:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C29776B00C3; Tue, 7 Jan 2025 07:11:34 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 9ECE26B00C0 for ; Tue, 7 Jan 2025 07:11:34 -0500 (EST) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 16EC9AF53D for ; Tue, 7 Jan 2025 12:11:34 +0000 (UTC) X-FDA: 82980541308.18.2E916C0 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2076.outbound.protection.outlook.com [40.107.223.76]) by imf21.hostedemail.com (Postfix) with ESMTP id C14FF1C0011 for ; Tue, 7 Jan 2025 12:11:30 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=amd.com header.s=selector1 header.b=yXeo4R9J; spf=pass (imf21.hostedemail.com: domain of Amit.Shah@amd.com designates 40.107.223.76 as permitted sender) smtp.mailfrom=Amit.Shah@amd.com; dmarc=pass (policy=quarantine) header.from=amd.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1736251891; a=rsa-sha256; cv=pass; b=IOH0QL8Lox8Xjgf117ugiIzcpP83MdwcYCL8cQ0gYY9U7hIZQzyWc7FCzAwU+QH5WvEo6A 1OdAj9ICPk6q71vFo14v/NqB1yO3gQixBYxrOVdbMOgSXvJzsESguoD2j/zDdYbxktFwpE 9vYYqwlV5NUeDI9aNeoJKaV1C/vor1k= ARC-Authentication-Results: i=2; imf21.hostedemail.com; dkim=pass header.d=amd.com header.s=selector1 header.b=yXeo4R9J; spf=pass (imf21.hostedemail.com: domain of Amit.Shah@amd.com designates 40.107.223.76 as permitted sender) smtp.mailfrom=Amit.Shah@amd.com; dmarc=pass (policy=quarantine) header.from=amd.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1736251891; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=wq0D77njLQS8pg4ltgHAiitfuh6ijx02qwnTIZheSYo=; b=q04KT3PqGHdG69wPOp3GCU5a4a8cuxVkKrKK+cgFnjxQOfP6UFhfOlQckwoX7PuD4SeMqx qJkXmJpUcv+5wLAnzIKGDY19fY1j9pNWPZu9OyaBguXoA7imjVdInkODv6WeRJDdcQrNQd ielv1QC5fh5sMC+j78GqaT4UeC4gQiE= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=L/bMkS3YX4gB52be7miMF9A0sbNOJoelufZFnxmil153OGSdCXoqffWd0BlSFhSJVekSVoHTiZEJg3aESwCO+KZkRXmAuWuuv87RLLHjlqjSpk/+/g6E/mAsut7wes/u6QlURV2fnymErqSPpplLQuYIRDEbgx8QFAZHO/RTCLKqCSd8e0tlM6vXpdBGHi3f2F/ZNMVbICHJH1OkcPXPhym58QETmU80s6WPZH15ctWKB5fbdvzoQ9J4VKbk8vTFt16mXatfJEAsBFo8Mf/P0oQ4QnfBIFKcLb9V1ueMlfbgw71d3vXAgiHhVP0RTlZn4etFq3FfJrOCaXJeuDIm9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=wq0D77njLQS8pg4ltgHAiitfuh6ijx02qwnTIZheSYo=; b=gl4Kd93eg9/0FlP2mBifWo3YKqgNWZhb2dbhp5tIZb+UOXsj+sel4JQSobFblIty0PH74MId+KgMJoh0/3VMOibFw+WNSvYfVDuYWUS1F97Pbycts6BxI1RKq8iTqXvJolUhIlqOiu6xBnrjZoVl99hrdNGtCsDgEoljU5tcNt2ZS0lEn8GIQJPOmoOrkhdQc8FisABBz3RJKRTF7bcueycwuiSP6/3cXXfqOwhleZrFNHlYmyRvoXm5eMjYFk2CkdaALV2t+Y21Dg+xoPxhtgiwkt467QzsuGiTjJaLmt0a9nv61Hg9buI1D+F7KJhOsdU7P5E/Unngd8nTvS3p8g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wq0D77njLQS8pg4ltgHAiitfuh6ijx02qwnTIZheSYo=; b=yXeo4R9JEbMpQU8mPudaq0a5AWizWCWKyEpeNrbswz3ls3FDSSHqwBGRXnIrZlJK3JYHXyVbkthy/jey/Fg81nUuiLm2cL0pSA693K9EIf+DLYYYR8xDfHNGdmZUUjyiTN9O1COSmiu5Y2xzro2FSGQ9ukK5/0Im178dhTMO2mA= Received: from SA1PR12MB6945.namprd12.prod.outlook.com (2603:10b6:806:24c::16) by SJ2PR12MB8846.namprd12.prod.outlook.com (2603:10b6:a03:549::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8314.17; Tue, 7 Jan 2025 12:11:22 +0000 Received: from SA1PR12MB6945.namprd12.prod.outlook.com ([fe80::67ef:31cd:20f6:5463]) by SA1PR12MB6945.namprd12.prod.outlook.com ([fe80::67ef:31cd:20f6:5463%4]) with mapi id 15.20.8314.015; Tue, 7 Jan 2025 12:11:22 +0000 From: "Shah, Amit" To: "kvm@vger.kernel.org" , "david@redhat.com" , "Roth, Michael" CC: "liam.merwick@oracle.com" , "seanjc@google.com" , "jroedel@suse.de" , "linux-mm@kvack.org" , "Sampat, Pratik Rajesh" , "linux-kernel@vger.kernel.org" , "Lendacky, Thomas" , "vbabka@suse.cz" , "pbonzini@redhat.com" , "linux-coco@lists.linux.dev" , "quic_eberman@quicinc.com" , "Kalra, Ashish" , "ackerleytng@google.com" , "vannapurve@google.com" Subject: Re: [PATCH RFC v1 0/5] KVM: gmem: 2MB THP support and preparedness tracking changes Thread-Topic: [PATCH RFC v1 0/5] KVM: gmem: 2MB THP support and preparedness tracking changes Thread-Index: AQHbTGBOTdp6CrlcAUaq+IIQPoFznLLvDKaAgBxVIIA= Date: Tue, 7 Jan 2025 12:11:22 +0000 Message-ID: <3bd7936624b11f755608b1c51cc1376ebf2c3a4f.camel@amd.com> References: <20241212063635.712877-1-michael.roth@amd.com> <11280705-bcb1-4a5e-a689-b8a5f8a0a9a6@redhat.com> In-Reply-To: <11280705-bcb1-4a5e-a689-b8a5f8a0a9a6@redhat.com> Accept-Language: en-DE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SA1PR12MB6945:EE_|SJ2PR12MB8846:EE_ x-ms-office365-filtering-correlation-id: 779f73f6-9be2-4ea5-f369-08dd2f146692 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|376014|1800799024|366016|7416014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?Ylh2K0t5bDM4RVhJY1J5aG9PbUZBV1VkWS9yYmNETTN2N1MvcXRKVUpCcUhU?= =?utf-8?B?Wit4NFlMeFB4VnRWUytreEk0TUNLOHVPYnovSjBBUFIrZWF3b2VkVEVSY2JB?= =?utf-8?B?MjJsM0lsOHVVRkc0ejdFRlJTcUJQMjhxaUtCeW40UlQ2YStmbno2NXp6L3g5?= =?utf-8?B?aExXeFc4NE1JbFFmVUlzOTBjbVdabFYvUXAzd0VYSERZVkhiQzdxVk1RREFK?= =?utf-8?B?elRRVURuZm92aW1kUHRNOFd6WEtWSFVJSFFEOTN4N2JtZjUwY2F2OTI5TXNl?= =?utf-8?B?dVMyZFNnSEM3QzcxVjVkWXhMUkhPVlBtdHhTb3M0K21NcFVNZDk5TmxsZmNo?= =?utf-8?B?RThVZkJJVVhpUEhpMFp1bGVhZXRrdEM3cG5oQy9yWkE3TFUzaEI5M2FQN2NS?= =?utf-8?B?L1RVYnVCYnBqaW5pT2VrY0Z2ZDZHN0tiZFZHcmtDWm84RTJubmQrN0t5TzZr?= =?utf-8?B?aVNrbmNIbWRBem1pM0JWRmdIa002OGRYUUJtd1FHL2d0UWdiaTNRUGlHN1NG?= =?utf-8?B?cVlmbmI2K05wcFRrdjg1b09aREJKU1U1bXNVN1B1NTlyMWdQNjM5aVUyanFW?= =?utf-8?B?ZDVUdWR5L0VsYlRoMEtERWRWMjc2VitLQ0paLzFvM09nczRmNzUzNTlzVnAw?= =?utf-8?B?RUJCOVJvTEpFZ3lObFQ3bG1oYnZvbDNWejNlUmVzdit5R0UvWmNxQ1J1cERE?= =?utf-8?B?R0FBY3RtaEdLTnY1Kzg3TnpHMGVrVjVyV0pvRUpDaXJuRlRlZmJmYUNGbysv?= =?utf-8?B?N3NJZlcvRnlSQk5IWW5QTjZDZVBrSklId0pWV1FPZzV2a3VqMWxZaDk1SkdZ?= =?utf-8?B?SmJEM3hicGhDM1pFd1hucDNPQU1NcnVWR2V0U3VFNEsya2ZzdjF5N3hrcEJj?= =?utf-8?B?NEdxMWhVY21IOEJTZjVLTG01UGFHUFZOdnlDbHd5dG5sVVpFdStOS3JCdXk4?= =?utf-8?B?YWVJWU83VkFIeFR1YWRkY0NsMUpTNFRCWXBkVGo5cHVlUEJlcEVWYk1yMGw4?= =?utf-8?B?OVhiUFJGSUhMWnVrcHg2WmhvcHlBQ1ZmVUtWSnJBN1YvME1YZGdHMllmbjFF?= =?utf-8?B?THRpSHRMeStLakcwbXBJcHI1b29hOTdsQU5EMlQrK3NjTWpTZzZYUWZ0Y2ts?= =?utf-8?B?UDBZU1pTVDgwVWl5bmR1cjkwODc2QVlYdkZmbVVPUGdDV3VvN25QZ2dZRlo5?= =?utf-8?B?ZFFpeG0vU0Z3M2ptZ2s0ODFJZjZDQVZYNVRybU5PQjdDRWp0OEh0aExPSjlD?= =?utf-8?B?cmVvQ2I0YVcyQ0h3TzViSFRHelB4V0p2bDU5NE9tWDNEUEdYeWM0dzM2NnJ2?= =?utf-8?B?M0xMSkM1ZUVpTGxic01MWVZ2c2JUVi92WG1RMnhtZnB2SVBkTU1aOG1Jdm1Y?= =?utf-8?B?WUh1WFZ1bTJqUjFxZTZPK2ZtTHJZQXdSUXkwT0VNZll4NmNZaHUwQzJBMVAy?= =?utf-8?B?NVVpRkRXRVVPUDZGdUVocEpLOWtnZDFsS3ozcGRxTEdDMlFGTjRSRmVuTXFs?= =?utf-8?B?YkNJRHpvOFlMbU5oWE40R1JQaWQrOVBFV3N4RG1IeWZqQkRvWkhSUi8zZnA2?= =?utf-8?B?OFhsUDZVVXRnRVlnaWVJelF5NGhZcWFhNFdIMndlRTRlbTVSNXBoVzFlRlFR?= =?utf-8?B?c24vWnY1cHZlaFJZZXFtazRTT2RvWnNOZGoydURXQzR3MlZ5UVBkeTdQaDAx?= =?utf-8?B?SVQrRDRBektIWW9vV3BZQ2VoWDA2QzN6Y2NNTE9BK2pXWkpiVmUzTEpRRndQ?= =?utf-8?B?RE10K1NlQlZ3Q0g2WUFoZkZaNGcvays0b24wRHZycHoxZG9mYVZ3OVk4bzlN?= =?utf-8?B?MkI5YWJIMGJNMHltZ1VMZTZiNVhnQmhTTEhzbGFUWndwY1NJQ0ZkN3NsTWlT?= =?utf-8?B?TzZWSVhXQnF2V2hJZFN3L2U2ZzRrT0F5bDJTbG5wVnZQNFBOejB2ZWJ4U2hh?= =?utf-8?B?ako5clBYbDJvVCs4Mmh0dEVkR1p4ekZ1Y3JJT3duem50V3lGdHRGY2E5VE04?= =?utf-8?B?amRxRkVqOGhRPT0=?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR12MB6945.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(7416014)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?aDhpZUNPb25SblBsWjZoZDlNVlZlQkFjcTIrbDNEcHVqb0JNWHIvRlNDdmhk?= =?utf-8?B?UWRCZFZzUzgxUDlzdWxwcjJIY24rYzAwNlVRNWxTMXUwYXFNNkNrUXh1WVFP?= =?utf-8?B?cGFURWw5SXZGQ3N6RjJyWDFLdUZwUE5CVTBoMml1dlg3Nkd3WGRScHBTQ1ZX?= =?utf-8?B?cEJpK3hHc1ZKQ0MvWkxlaUtVRXVoOUFDVi9Uc0tYVHREeVgzY0ZOTXIyaElh?= =?utf-8?B?RzFRcmZNYlR6WE4ycFJzY2wxcWowZWhnQU9LZjRUdWtSZWhOQzcwTEFjUEI4?= =?utf-8?B?ZEc2RTJyTlY4cTJ3UmM0MWNyUTl4RmlFQlgya05GTXV5alJyZHlyOE16ODhE?= =?utf-8?B?MHV2SnpYWmZvQXZDR2RoS3BPSnlRZWtkMWJPL1Vqd0pvbnZiZHY0VU5ESkJi?= =?utf-8?B?S0dkV09JK1FhUVFBQ0ZOeGNCRmU3amRZZTRTaEg2bXk1TWpNbHVITWIyM1BW?= =?utf-8?B?OHcxcEw3aVBzZVlYbnUwR1V5R1ZnSEQzZFh2UDBpdmJlNHh0RFF2WkFEbm5o?= =?utf-8?B?aERSbDVQV3hYWUwvdnpXMmQ2MkNjNGpFeDVtYTMrditMSjFJR3B2L0RBSGxJ?= =?utf-8?B?T1dYUlhrTkpvMVNOZ0Nwc1l4OTcvZEZ2cFJGbG9TVm53cm13Rlo0NmQvTlU5?= =?utf-8?B?cllWUzROd1pRbFBmTHVGOEoySTYwOUJWeUpURzhDUUE1d29SekV5VFhsMVFj?= =?utf-8?B?S1Y2VFhxL3VEcWZrWXFvTkJPMzhYODhob0M5WHFFOWlvK0lxOG83ZHdWQUVw?= =?utf-8?B?N0ZmUHo0TXJIc3ZVKzVzZ0QxcTMyQ3l0L0xJTGgwYU1qSkgzVEtHMDhtR1Ji?= =?utf-8?B?N0kwK3hZUElKV2FwM05ZMSs5Uk1ROEVSV1llelEvZlpmV1I2aThFTWcrM2tN?= =?utf-8?B?TXI0cEdncTVDanVnK3Q4bGRmSm5oN1grQ0NjSWcrUUFSSEZEbUNNSVBsVm1G?= =?utf-8?B?bWlnSWRmelphNXZSRzlIUmdpalR3Yk9jNjcwVk5hT3FIUlQ0R1dYM1hxK3JP?= =?utf-8?B?NVJSTjhNckRhYkdhTjdweVpsV3NuOVp1dWsyN3RKMS9nTUhDVUZEajU1VGdE?= =?utf-8?B?WFhrNWR1aTdIaHYxZXpPWEEzUkxHdGh1eWwycXg2UVV6OUV6UHpmOGhrbW5l?= =?utf-8?B?WUQrVTM1Z0JZeHlCL2ZoRUtMYkFIejBqUWNKd1piN0tXbnhDdkMyZHhIbHR2?= =?utf-8?B?YzZKS2NaL0ZURlhUbU1rRlQyWHRZQy9mTG1qT1A2cHV6NDFLanUwQ2V5K1Bt?= =?utf-8?B?djQrMkRFUDYrZjFaeVdFclRoM2EvTHU1ejJaQ1BMR3g1M2RXc2VZb0xnMzZl?= =?utf-8?B?b1ZPL0F6eE9ucmVQWG1LNnlNcXlpTDkyL0dWNWRJajZOQWVaQ3FLQ25ucHY1?= =?utf-8?B?Z0pLL1BzVWd2RERuYWUzV05NQ1ZIUWVTeGNhSjRBa2VzcUl2SWF0aFJPWFgy?= =?utf-8?B?R0tFS09OZ3hYT1orTWNET0VOREgwcE9IR0NHT0ZTVUNCZUUrTElzT0tHOEZC?= =?utf-8?B?d29OaHUxbDE4TzVxeFJETno4bVZxSWg4NzlwODZMbzVYK20yb1RyOHRMSjBW?= =?utf-8?B?MVkvSFNSUVNrczg3YnNNU0dEbElEYnFiNzQrdDRtbmdkZnJKYkZ6Sldzb3Vu?= =?utf-8?B?c1Z2d0xCdktSam40dTZ6UjhieHJXUTRWbUZLRTNzdkRVSVhVUnpWN1l3Uy95?= =?utf-8?B?L1RxL0V0YTMwN0V5SDJncHFBTHlmZVVmRmI4WG04czREbkpQNTZ6aGZIYVBK?= =?utf-8?B?RTdIVU13T0xBODdEYUxTTTNMN3ZIRWtRRWk5SUxFWUpSM3IyRjVjTGgxV2Ni?= =?utf-8?B?aWRwY3BGQ09hdFRmZXR2ZVZHZXVBQVF1eU1IaFozRk9NbTBoWGhTSHBzUzhH?= =?utf-8?B?b21JdGFUR1BUZ2h6RTZwMExFYUtJaVdJblcwcDd1U2d3VVJETSt3MzhzSjNW?= =?utf-8?B?aVJrVVd1VkJDb0xnbXNZNWgrNCsvQzZnUGdYTGVHVnhSamhoYlN6bFVLeC9W?= =?utf-8?B?S2NhNEx4V0dLSktSL2RwRVZnS3Y2ZWZPM2lQUnFOS1BuNUIyZWxtR0pWbExi?= =?utf-8?B?cTNCQU9NSUFOakdVeGN0bmZyQjN4T29GVG93Y3RTbEZWUlYrNE5qdmJPYUVa?= =?utf-8?Q?cEJIUfS430yhk5slg+jdLn8H9?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA1PR12MB6945.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 779f73f6-9be2-4ea5-f369-08dd2f146692 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jan 2025 12:11:22.3134 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: NFIVop1UGFDeFey8owXkyTqN+REbNZAYuMJxVdi6VZ2Yrdq/0dmk+t/K8eRVfXbZPSCV9bSCVw8gBXxVgZkP1g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8846 X-Rspamd-Queue-Id: C14FF1C0011 X-Stat-Signature: etibs3gzy6k3ojfc4qw77s6ccqyjedrn X-Rspam-User: X-Rspamd-Server: rspam09 X-HE-Tag: 1736251890-581384 X-HE-Meta: U2FsdGVkX18D1ontdJXO1/0vnzWtAm1UQ1rZj5FEWAgoy5l4xOGXmx5lu3vff5VcNqbz3MFT8RZA2f4JWzzWzbyp1VfRQt4KiaqpYxcwtwkRpgwKSvbfHzFFRzsgpefLMOud7UXy348/NYkLqIoogAkd7O3sKtvB3vEIGTXaWOsSHQnCJh6eb3vW1ziDGvoOIUyZSAkURr7Xmrz4OaIsDiZhk396p7Q+dlDfWWCrNFPoLfxiqPHz8FItmnVHi5CkruXom0m+I2HQYBKK3C2LwwVytFAG/PQt96169pKjhTLLpHT6QR2uPJDQrHpPGnIMttVcVrBwqYaLh+zmlF0gIcqObTOo/p35tzmyH7vXAOY9+/RIOgBn+mdhSIsjQ/n8d0jcxnGWk4X+9YErXxOCVnoP+QZHv1qwo8EuRZDulASD3owzk07y/65DdMkvRlT+NeCvPffvgiG8vYWyqg8Lj9kNVeJniw8nkZ9g/Mkuulc7JNsuGUzvuREwTQaXoVX5xfklt+qMGLR7cfEkbA8lAj03DBDUGni0owtC5P1ozYsb6iZLIpl5UZ4mdkNaH57Yn9MT74qzQsfFbmq5x/veEgBtPCSKUyd3+nGVYDicm8Qz+sRxpiYd0Zv9V2K30zHDERS1o/5MKowpJ674lIAMr65Pvmic6eM+viwF6YTRvItEFQTi0Xw40V4su6KQAv+1+klSsBVbIAXVWiNPPrIj2gNgjLEqj5qsCGZSuP5ncUR75X5y3Z3kAGpey7mRN2KKFsL/TMisM5YSq/5aOHMH0ihHaRLguDijSgN45b42DdIo9grR+MkU2WKiXJ+00tM2GXrYY3OUlMP+nRS6Ba48kumvGGpSn5iRmNX+0aPQkvuU6DWdYSCNm22dA3F7OFVav4q/yCFLQpZh3fvRBcmGKi8KeSvVA3z4yvgWz7ZF6OBZtGBRH1fAfgAdBsYTTeZaLQLWo2HwXz9Fmej7Q46 /vRy5Vzr 4+9nQBGosf7rcIMk0zTTMn7dxtAoy0Ia8KDa4ZLnBKaHlqSLo1XPQnvuxLOsXJ1cmJyuG4MwrZMvlmIo0HChaZTL4BoxvC7Ltxva0O4W8ioLI55Kqz0gg6Akvrx0JmKnkQJXs9fbbM+nP2K7gxoZvaVkUaY2A1RliBqDtSwL+dO8hSZZXOjr86XEZmwDuEp9YKQ3nPnk+G9sP/iTZWhHRUJdnhNyN4nijvs3JT8f8RB9iWAfYCOmNsweO8ceQBAFFkOZv0kcLiJdsQSTAyhQeZRpxBW+Ti+i9YplfgMwTODZEcplBOb1MpI6IaIwEgln/aEgbpMHG5rjdwpaxmXeurPWkaqbtntdxWu9Ic+FSrMAPcPmdNiWkzwiBAqkhWqvldgz5QGrcOSUUtMwtW5MEkC/mEocAenaGm7+BYWXvirQffqJrkgH8rUhU3uLsSaPP2X53+nP0omSJ5vvgTpKOiYrNDomkwhxjlUfTbhyxnpg3reJNlI8e5ojxqH/fBgA5S53v X-Bogosity: Ham, tests=bogofilter, spamicity=0.000024, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: T24gRnJpLCAyMDI0LTEyLTIwIGF0IDEyOjMxICswMTAwLCBEYXZpZCBIaWxkZW5icmFuZCB3cm90 ZToNCj4gT24gMTIuMTIuMjQgMDc6MzYsIE1pY2hhZWwgUm90aCB3cm90ZToNCj4gPiBUaGlzIHBh dGNoc2V0IGlzIGFsc28gYXZhaWxhYmxlIGF0Og0KPiA+IA0KPiA+IMKgwqAgaHR0cHM6Ly9naXRo dWIuY29tL2FtZGVzZS9saW51eC9jb21taXRzL3NucC1wcmVwYXJlLXRocC1yZmMxDQo+ID4gDQo+ ID4gYW5kIGlzIGJhc2VkIG9uIHRvcCBvZiBQYW9sbydzIGt2bS1jb2NvLXF1ZXVlLTIwMjQtMTEg dGFnIHdoaWNoDQo+ID4gaW5jbHVkZXMNCj4gPiBhIHNuYXBzaG90IG9mIGhpcyBwYXRjaGVzWzFd IHRvIHByb3ZpZGUgdHJhY2tpbmcgb2Ygd2hldGhlciBvciBub3QNCj4gPiBzdWItcGFnZXMgb2Yg YSBodWdlIGZvbGlvIG5lZWQgdG8gaGF2ZSBrdm1fYXJjaF9nbWVtX3ByZXBhcmUoKQ0KPiA+IGhv b2tzIGlzc3VlZA0KPiA+IGJlZm9yZSBndWVzdCBhY2Nlc3M6DQo+ID4gDQo+ID4gwqDCoCBkNTU0 NzVmMjNjZWEgS1ZNOiBnbWVtOiB0cmFjayBwcmVwYXJlZG5lc3MgYSBwYWdlIGF0IGEgdGltZQ0K PiA+IMKgwqAgNjRiNDZjYTZjZDZkIEtWTTogZ21lbTogbGltaXQgaG9sZS1wdW5jaGluZyB0byBy YW5nZXMgd2l0aGluIHRoZQ0KPiA+IGZpbGUNCj4gPiDCoMKgIDE3ZGY3MGE1ZWE2NSBLVk06IGdt ZW06IGFkZCBhIGNvbXBsZXRlIHNldCBvZiBmdW5jdGlvbnMgdG8gcXVlcnkNCj4gPiBwYWdlIHBy ZXBhcmVkbmVzcw0KPiA+IMKgwqAgZTM0NDlmNjg0MWVmIEtWTTogZ21lbTogYWxsb2NhdGUgcHJp dmF0ZSBkYXRhIGZvciB0aGUgZ21lbSBpbm9kZQ0KPiA+IA0KPiA+IMKgwqAgWzFdDQo+ID4gaHR0 cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGttbC8yMDI0MTEwODE1NTA1Ni4zMzI0MTItMS1wYm9uemlu aUByZWRoYXQuY29tLw0KPiA+IA0KPiA+IFRoaXMgc2VyaWVzIGFkZHJlc3NlcyBzb21lIG9mIHRo ZSBwZW5kaW5nIHJldmlldyBjb21tZW50cyBmb3IgdGhvc2UNCj4gPiBwYXRjaGVzDQo+ID4gKGZl ZWwgZnJlZSB0byBzcXVhc2gvcmV3b3JrIGFzLW5lZWRlZCksIGFuZCBpbXBsZW1lbnRzIGEgZmly c3QgcmVhbA0KPiA+IHVzZXIgaW4NCj4gPiB0aGUgZm9ybSBvZiBhIHJld29ya2VkIHZlcnNpb24g b2YgU2VhbidzIG9yaWdpbmFsIDJNQiBUSFAgc3VwcG9ydA0KPiA+IGZvciBnbWVtLg0KPiA+IA0K PiA+IEl0IGlzIHN0aWxsIGEgYml0IHVwIGluIHRoZSBhaXIgYXMgdG8gd2hldGhlciBvciBub3Qg Z21lbSBzaG91bGQNCj4gPiBzdXBwb3J0DQo+ID4gVEhQIGF0IGFsbCByYXRoZXIgdGhhbiBtb3Zp bmcgc3RyYWlnaHQgdG8gMk1CLzFHQiBodWdlcGFnZXMgaW4gdGhlDQo+ID4gZm9ybSBvZg0KPiA+ IHNvbWV0aGluZyBsaWtlIEh1Z2VUTEIgZm9saW9zWzJdIG9yIHRoZSBsb3dlci1sZXZlbCBQRk4g cmFuZ2UNCj4gPiBhbGxvY2F0b3INCj4gPiBwcmVzZW50ZWQgYnkgWXUgWmhhbyBkdXJpbmcgdGhl IGd1ZXN0X21lbWZkIGNhbGwgbGFzdCB3ZWVrLiBUaGUNCj4gPiBtYWluDQo+ID4gYXJndW1lbnRz IGFnYWluc3QgVEhQLCBhcyBJIHVuZGVyc3RhbmQgaXQsIGlzIHRoYXQgVEhQcyB3aWxsIGJlY29t ZQ0KPiA+IHNwbGl0IG92ZXIgdGltZSBkdWUgdG8gaG9sZS1wdW5jaGluZyBhbmQgcmFyZWx5IGhh dmUgYW4gb3Bwb3J0dW5pdHkNCj4gPiB0byBnZXQNCj4gPiByZWJ1aWx0IGR1ZSB0byBsYWNrIG9m IG1lbW9yeSBtaWdyYXRpb24gc3VwcG9ydCBmb3IgY3VycmVudCBDb0NvDQo+ID4gaHlwZXJ2aXNv cg0KPiA+IGltcGxlbWVudGF0aW9ucyBsaWtlIFNOUCAoYW5kIGFkZGluZyB0aGUgbWlncmF0aW9u IHN1cHBvcnQgdG8NCj4gPiByZXNvbHZlIHRoYXQNCj4gPiBub3QgbmVjZXNzYXJpbHkgcmVzdWx0 aW5nIGluIGEgbmV0LWdhaW4gcGVyZm9ybWFuY2Utd2lzZSkuIFRoZQ0KPiA+IGN1cnJlbnQNCj4g PiBwbGFuIGZvciBTTlAsIGFzIGRpc2N1c3NlZCBkdXJpbmcgdGhlIGZpcnN0IGd1ZXN0X21lbWZk IGNhbGwsIGlzIHRvDQo+ID4gaW1wbGVtZW50IHNvbWV0aGluZyBzaW1pbGFyIHRvIDJNQiBIdWdl VExCLCBhbmQgZGlzYWxsb3cgaG9sZS0NCj4gPiBwdW5jaGluZw0KPiA+IGF0IHN1Yi0yTUIgZ3Jh bnVsYXJpdHkuDQo+ID4gDQo+ID4gSG93ZXZlciwgdGhlcmUgaGF2ZSBhbHNvIGJlZW4gc29tZSBk aXNjdXNzaW9ucyBkdXJpbmcgcmVjZW50IFBVQ0sNCj4gPiBjYWxscw0KPiA+IHdoZXJlIHRoZSBL Vk0gbWFpbnRhaW5lcnMgaGF2ZSBzb21lIHN0aWxsIGV4cHJlc3NlZCBzb21lIGludGVyZXN0DQo+ ID4gaW4gcHVsbGluZw0KPiA+IGluIGdtZW0gVEhQIHN1cHBvcnQgaW4gYSBtb3JlIG9mZmljaWFs IGNhcGFjaXR5LiBUaGUgdGhpbmtpbmcgdGhlcmUNCj4gPiBpcyB0aGF0DQo+ID4gaG9sZS1wdW5j aGluZyBpcyBhIHVzZXJzcGFjZSBwb2xpY3ksIGFuZCB0aGF0IGl0IGNvdWxkIGluIHRoZW9yeQ0K PiA+IGF2b2lkDQo+ID4gaG9sZXB1bmNoaW5nIGZvciBzdWItMk1CIEdGTiByYW5nZXMgdG8gYXZv aWQgZGVncmFkYXRpb24gb3ZlciB0aW1lLg0KPiA+IEFuZCBpZiB0aGVyZSdzIGEgZGVzaXJlIHRv IGVuZm9yY2UgdGhpcyBmcm9tIHRoZSBrZXJuZWwtc2lkZSBieQ0KPiA+IGJsb2NraW5nDQo+ID4g c3ViLTJNQiBob2xlLXB1bmNoaW5nIGZyb20gdGhlIGhvc3Qtc2lkZSwgdGhpcyB3b3VsZCBwcm92 aWRlDQo+ID4gc2ltaWxhcg0KPiA+IHNlbWFudGljcy9iZWhhdmlvciB0byB0aGUgMk1CIEh1Z2VU TEItbGlrZSBhcHByb2FjaCBhYm92ZS4NCj4gPiANCj4gPiBTbyBtYXliZSB0aGVyZSBpcyBzdGls bCBzb21lIHJvb20gZm9yIGRpc2N1c3Npb24gYWJvdXQgdGhlc2UNCj4gPiBhcHByb2FjaGVzLg0K PiA+IA0KPiA+IE91dHNpZGUgdGhhdCwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIG90aGVyIGRldmVs b3BtZW50IGFyZWFzIHdoZXJlDQo+ID4gaXQgd291bGQNCj4gPiBiZSB1c2VmdWwgdG8gYXQgbGVh c3QgaGF2ZSBzb21lIGV4cGVyaW1lbnRhbCAyTUIgc3VwcG9ydCBpbiBwbGFjZQ0KPiA+IHNvIHRo YXQNCj4gPiB0aG9zZSBlZmZvcnRzIGNhbiBiZSBwdXJzdWVkIGluIHBhcmFsbGVsLCBzdWNoIGFz IHRoZSBwcmVwYXJlZG5lc3MNCj4gPiB0cmFja2luZyB0b3VjaGVkIG9uIGhlcmUsIGFuZCBleHBs b3JpbmcgaG93IHRoYXQgd2lsbCBpbnRlcnNlY3QNCj4gPiB3aXRoIG90aGVyDQo+ID4gZGV2ZWxv cG1lbnQgYXJlYXMgbGlrZSB1c2luZyBnbWVtIGZvciBib3RoIHNoYXJlZCBhbmQgcHJpdmF0ZQ0K PiA+IG1lbW9yeSwgbW1hcA0KPiA+IHN1cHBvcnQsIGd1ZXN0X21lbWZkIGxpYnJhcnksIGV0Yy4s IHNvIG15IGhvcGVzIGFyZSB0aGF0IHRoaXMNCj4gPiBhcHByb2FjaA0KPiA+IGNvdWxkIGJlIHVz ZWZ1bCBmb3IgdGhhdCBwdXJwb3NlIGF0IGxlYXN0LCBldmVuIGlmIG9ubHkgYXMgYW4gb3V0LQ0K PiA+IG9mLXRyZWUNCj4gPiBzdG9wLWdhcC4NCj4gPiANCj4gPiBUaG91Z2h0cy9jb21tZW50cyB3 ZWxjb21lIQ0KPiANCj4gU29ycnkgZm9yIHRoZSBsYXRlIHJlcGx5LCBpdCdzIGJlZW4gYSBjb3Vw bGUgb2YgY3Jhenkgd2Vla3MsIGFuZCBJJ20gDQo+IHRyeWluZyB0byBnaXZlIGF0IGxlYXN0IHNv bWUgZmVlZGJhY2sgb24gc3R1ZmYgaW4gbXkgaW5ib3ggYmVmb3JlDQo+IGV2ZW4gDQo+IG1vcmUg d2lsbCBwaWxlIHVwIG92ZXIgQ2hyaXN0bWFzIDopIC4gTGV0IG1lIHN1bW1hcml6ZSBteSB0aG91 Z2h0czoNCg0KTXkgdHVybiBmb3IgdGhlIGxhdGVuZXNzIC0gYmFjayBmcm9tIGEgYnJlYWsuDQoN Ckkgc2hvdWxkIGFsc28gcHJlZmFjZSB0aGF0IE1pa2UgaXMgb2ZmIGZvciBhdCBsZWFzdCBhIG1v bnRoIG1vcmUsIGJ1dA0KaGUgd2lsbCByZXR1cm4gdG8gY29udGludWUgd29ya2luZyBvbiB0aGlz LiAgSW4gdGhlIG1lYW50aW1lLCBJJ3ZlIGhhZA0KYSBjaGF0IHdpdGggaGltIGFib3V0IHRoaXMg d29yayB0byBrZWVwIHRoZSBkaXNjdXNzaW9uIGFsaXZlIG9uIHRoZQ0KbGlzdHMuDQoNCj4gVEhQ cyBpbiBMaW51eCByZWx5IG9uIHRoZSBmb2xsb3dpbmcgcHJpbmNpcGxlOg0KPiANCj4gKDEpIFdl IHRyeSBhbGxvY2F0aW5nIGEgVEhQLCBpZiB0aGF0IGZhaWxzIHdlIHJlbHkgb24ga2h1Z2VwYWdl ZCB0bw0KPiBmaXgNCj4gwqDCoMKgwqAgaXQgdXAgbGF0ZXIgKHNobWVtK2Fub24pLiBTbyBpZCB3 ZSBjYW5ub3QgZ3JhYiBhIGZyZWUgVEhQLCB3ZQ0KPiDCoMKgwqDCoCBkZWZmZXIgaXQgdG8gYSBs YXRlciBwb2ludC4NCj4gDQo+ICgyKSBXZSB0cnkgdG8gYmUgYXMgdHJhbnNwYXJlbnQgYXMgcG9z c2libGU6IHB1bmNoaW5nIGEgaG9sZSB3aWxsDQo+IMKgwqDCoMKgIHVzdWFsbHkgZGVzdHJveSB0 aGUgVEhQIChlaXRoZXIgaW1tZWRpYXRlbHkgZm9yIHNobWVtL3BhZ2VjYWNoZQ0KPiBvcg0KPiDC oMKgwqDCoCBkZWZlcnJlZCBmb3IgYW5vbiBtZW1vcnkpIHRvIGZyZWUgdXAgdGhlIG5vdy1mcmVl IHBhZ2VzLiBUaGF0J3MNCj4gwqDCoMKgwqAgZGlmZmVyZW50IHRvIGh1Z2V0bGIsIHdoZXJlIHBh cnRpYWwgaG9sZS1wdW5jaGluZyB3aWxsIGFsd2F5cw0KPiB6ZXJvLQ0KPiDCoMKgwqDCoCBvdXQg dGhlIG1lbW9yeSBvbmx5OyB0aGUgcGFydGlhbCBtZW1vcnkgd2lsbCBub3QgZ2V0IGZyZWVkIHVw DQo+IGFuZA0KPiDCoMKgwqDCoCB3aWxsIGdldCByZXVzZWQgbGF0ZXIuDQo+IA0KPiDCoMKgwqDC oCBEZXN0cm95aW5nIGEgVEhQIGZvciBzaG1lbS9wYWdlY2FjaGUgb25seSB3b3JrcyBpZiB0aGVy ZSBhcmUgbm8NCj4gwqDCoMKgwqAgdW5leHBlY3RlZCBwYWdlIHJlZmVyZW5jZXMsIHNvIHRoZXJl IGNhbiBiZSBjYXNlcyB3aGVyZSB3ZSBmYWlsDQo+IHRvDQo+IMKgwqDCoMKgIGZyZWUgdXAgbWVt b3J5LiBGb3IgdGhlIHBhZ2VjYWNoZSB0aGF0J3Mgbm90IHJlYWxseQ0KPiDCoMKgwqDCoCBhbiBp c3N1ZSwgYmVjYXVzZSBtZW1vcnkgcmVjbGFpbSB3aWxsIGZpeCB0aGF0IHVwIGF0IHNvbWUgcG9p bnQuDQo+IEZvcg0KPiDCoMKgwqDCoCBzaG1lbSwgdGhlcmXCoCB3ZXJlIGRpc2N1c3Npb25zIHRv IGRvIHNjYW4gZm9yIDBlZCBwYWdlcyBhbmQgZnJlZQ0KPiDCoMKgwqDCoCB0aGVtIHVwIGR1cmlu ZyBtZW1vcnkgcmVjbGFpbSwganVzdCBsaWtlIHdlIGRvIG5vdyBmb3IgYW5vbg0KPiBtZW1vcnkN Cj4gwqDCoMKgwqDCoCBhcyB3ZWxsLg0KPiANCj4gKDMpIE1lbW9yeSBjb21wYWN0aW9uIGlzIHZp dGFsIGZvciBndWFyYW50ZWVpbmcgdGhhdCB3ZSB3aWxsIGJlIGFibGUNCj4gdG8NCj4gwqDCoMKg wqAgY3JlYXRlIFRIUHMgdGhlIGxvbmdlciB0aGUgc3lzdGVtIHdhcyBydW5uaW5nLA0KPiANCj4g DQo+IFdpdGggZ3Vlc3RfbWVtZmQgd2UgY2Fubm90IHJlbHkgb24gYW55IGRhZW1vbiB0byBmaXgg aXQgdXAgYXMgaW4gKDEpDQo+IGZvciANCj4gdXMgbGF0ZXIgKHdvdWxkIHJlcXVpcmUgcGFnZSBt ZW1vcnkgbWlncmF0aW9uIHN1cHBvcnQpLg0KDQpUcnVlLiAgQW5kIG5vdCBoYXZpbmcgYSBodWdl IHBhZ2Ugd2hlbiByZXF1ZXN0ZWQgdG8gYmVnaW4gd2l0aCAoYXMgaW4gMQ0KYWJvdmUpIGJlYXRz IHRoZSBwdXJwb3NlIGVudGlyZWx5IC0tIHRoZSBwb2ludCBpcyB0byBzcGVlZCB1cCBTRVYtU05Q DQpzZXR1cCBhbmQgZ3Vlc3RzIGJ5IGhhdmluZyBmZXdlciBwYWdlcyB0byB3b3JrIHdpdGguDQoN Cj4gV2UgdXNlIHRydW5jYXRlX2lub2RlX3BhZ2VzX3JhbmdlKCksIHdoaWNoIHdpbGwgc3BsaXQg YSBUSFAgaW50bw0KPiBzbWFsbCANCj4gcGFnZXMgaWYgeW91IHBhcnRpYWxseSBwdW5jaC1ob2xl IGl0LCBzbyAoMikgd291bGQgYXBwbHk7IHNwbGl0dGluZyANCj4gbWlnaHQgZmFpbCBhcyB3ZWxs IGluIHNvbWUgY2FzZXMgaWYgdGhlcmUgYXJlIHVuZXhwZWN0ZWQgcmVmZXJlbmNlcy4NCj4gDQo+ IEkgd29uZGVyIHdoYXQgd291bGQgaGFwcGVuIGlmIHVzZXIgc3BhY2Ugd291bGQgcHVuY2ggYSBo b2xlIGluDQo+IHByaXZhdGUgDQo+IG1lbW9yeSwgbWFraW5nIHRydW5jYXRlX2lub2RlX3BhZ2Vz X3JhbmdlKCkgb3ZlcndyaXRlIGl0IHdpdGggMHMgaWYgDQo+IHNwbGl0dGluZyB0aGUgVEhQIGZh aWxlZCAobWVtb3J5IHdyaXRlIHRvIHByaXZhdGUgcGFnZXMgdW5kZXIgVERYPykuIA0KPiBNYXli ZSBzb21ldGhpbmcgc2ltaWxhciB3b3VsZCBoYXBwZW4gaWYgYSBwcml2YXRlIHBhZ2Ugd291bGQg Z2V0IDAtZWQNCj4gb3V0IHdoZW4gZnJlZWluZytyZWFsbG9jYXRpbmcgaXQsIG5vdCBzdXJlIGhv dyB0aGF0IGlzIGhhbmRsZWQuDQo+IA0KPiANCj4gZ3Vlc3RfbWVtZmQgY3VycmVudGx5IGFjdGl2 ZWx5IHdvcmtzIGFnYWluc3QgKDMpIGFzIHNvb24gYXMgd2UgKEEpIA0KPiBmYWxsYmFjayB0byBh bGxvY2F0aW5nIHNtYWxsIHBhZ2VzIG9yIChCKSBzcGxpdCBhIFRIUCBkdWUgdG8gaG9sZSANCj4g cHVuY2hpbmcsIGFzIHRoZSByZW1haW5pbmcgZnJhZ21lbnRzIGNhbm5vdCBnZXQgcmVhc3NlbWJs ZWQgYW55bW9yZS4NCj4gDQo+IEkgYXNzdW1lIHRoZXJlIGlzIHNvbWUgdHJ1dGggdG8gImhvbGUt cHVuY2hpbmcgaXMgYSB1c2Vyc3BhY2UNCj4gcG9saWN5IiwgDQo+IGJ1dCB0aGlzIG1lY2hhbmlz bSB3aWxsIGFjdGl2ZWx5IHdvcmsgYWdhaW5zdCBpdHNlbGYgYXMgc29vbiBhcyB5b3UgDQo+IHN0 YXJ0IGZhbGxpbmcgYmFjayB0byBzbWFsbCBwYWdlcyBpbiBhbnkgd2F5Lg0KPiANCj4gDQo+IA0K PiBTbyBJJ20gd29uZGVyaW5nIGlmIGEgYmV0dGVyIHN0YXJ0IHdvdWxkIGJlIHRvIChBKSBhbHdh eXMgYWxsb2NhdGUNCj4gaHVnZSANCj4gcGFnZXMgZnJvbSB0aGUgYnVkZHkgKG5vIGZhbGxiYWNr KSBhbmTCoA0KDQp0aGF0IHNvdW5kcyBmaW5lLi4NCg0KPiAoQikgcGFydGlhbCBwdW5jaGVzIGFy ZSBlaXRoZXINCj4gZGlzYWxsb3dlZCBvciBvbmx5IHplcm8tb3V0IHRoZSBtZW1vcnkuIEJ1dCBl dmVuIGEgc2VxdWVuY2Ugb2YNCj4gcGFydGlhbCANCj4gcHVuY2hlcyB0aGF0IGNvdmVyIHRoZSB3 aG9sZSBodWdlIHBhZ2Ugd2lsbCBub3QgZW5kIHVwIGZyZWVpbmcgYWxsDQo+IHBhcnRzIA0KPiBp ZiBzcGxpdHRpbmcgZmFpbGVkIGF0IHNvbWUgcG9pbnQsIHdoaWNoIEkgcXVpdGUgZGlzbGlrZSAu Li4NCg0KLi4uIHRoaXMgIGJhc2ljYWxseSBqdXN0IGxvb2tzIGxpa2UgaHVnZXRsYiBzdXBwb3J0 IChpLmUuIHdpdGhvdXQgdGhlDQoidHJhbnNwYXJlbnQiIHBhcnQpLCBpc24ndCBpdD8NCg0KPiBC dXQgdGhlbiB3ZSdkIG5lZWQgbWVtb3J5IHByZWFsbG9jYXRpb24sIGFuZCBJIHN1c3BlY3QgdG8g bWFrZSB0aGlzIA0KPiByZWFsbHkgdXNlZnVsIC0tIGp1c3QgbGlrZSB3aXRoIDJNLzFHICJodWdl dGxiIiBzdXBwb3J0IC0tIGluLXBsYWNlIA0KPiBzaGFyZWQ8LT5wcml2YXRlIGNvbnZlcnNpb24g d2lsbCBiZSBhIHJlcXVpcmVtZW50LiAuLi4gYXQgd2hpY2ggcG9pbnQNCj4gd2UnZCBoYXZlIHJl YWNoZWQgdGhlIHN0YXRlIHdoZXJlIGl0J3MgYWxtb3N0IHRoZSAyTSBodWdldGxiIHN1cHBvcnQu DQoNClJpZ2h0LCBleGFjdGx5Lg0KDQo+IFRoaXMgaXMgbm90IGEgdmVyeSBzdHJvbmcgcHVzaCBi YWNrLCBtb3JlIGEgInRoaXMgZG9lcyBub3QgcXVpdGUNCj4gc291bmQgDQo+IHJpZ2h0IHRvIG1l IiBhbmQgSSBoYXZlIHRoZSBmZWVsaW5nIHRoYXQgdGhpcyBtaWdodCBnZXQgaW4gdGhlIHdheSBv Zg0KPiBpbi1wbGFjZSBzaGFyZWQ8LT5wcml2YXRlIGNvbnZlcnNpb247IEkgbWlnaHQgYmUgd3Jv bmcgYWJvdXQgdGhlDQo+IGxhdHRlciANCj4gdGhvdWdoLg0KDQpUQkggbXkgMmMgYXJlIHRoYXQg Z2V0dGluZyBodWdlcGFnZSBzdXBwb3J0ZWQsIGFuZCBkaXNhYmxpbmcgVEhQIGZvcg0KU0VWLVNO UCBndWVzdHMgd2lsbCB3b3JrIGZpbmUuDQoNCkJ1dCBhcyBNaWtlIG1lbnRpb25lZCBhYm92ZSwg dGhpcyBzZXJpZXMgaXMgdG8gYWRkIGEgdXNlciBvbiB0b3Agb2YNClBhb2xvJ3Mgd29yayAtIGFu ZCB0aGF0IHNlZW1zIG1vcmUgc3RyYWlnaHRmb3J3YXJkIHRvIGV4cGVyaW1lbnQgd2l0aA0KYW5k IGZpZ3VyZSBvdXQgaHVnZXBhZ2Ugc3VwcG9ydCBpbiBnZW5lcmFsIHdoaWxlIGdldHRpbmcgYWxs IHRoZSBvdGhlcg0KaHVnZXBhZ2UgZGV0YWlscyBkb25lIGluIHBhcmFsbGVsLg0KDQo+IFdpdGgg bWVtb3J5IGNvbXBhY3Rpb24gd29ya2luZyBmb3IgZ3Vlc3RfbWVtZmQsIGl0IHdvdWxkIGFsbCBi ZQ0KPiBlYXNpZXIuDQoNCi4uLiBidHcgZG8geW91IGtub3cgaG93IHdlbGwgdGhpcyBpcyBjb21p bmcgYWxvbmc/DQoNCj4gTm90ZSB0aGF0IEknbSBub3QgcXVpdGUgc3VyZSBhYm91dCB0aGUgIjJN QiIgaW50ZXJmYWNlLCBzaG91bGQgaXQgYmUNCj4gYSANCj4gIlBNRC1zaXplIiBpbnRlcmZhY2U/ DQoNCkkgdGhpbmsgTWlrZSBhbmQgSSB0b3VjaGVkIHVwb24gdGhpcyBhc3BlY3QgdG9vIC0gYW5k IEkgbWF5IGJlDQptaXNyZW1lbWJlcmluZyAtIE1pa2Ugc3VnZ2VzdGVkIGdldHRpbmcgMU0sIDJN LCBhbmQgYmlnZ2VyIHBhZ2Ugc2l6ZXMNCmluIGluY3JlbWVudHMgLS0gYW5kIHRoZW4gZml0dGlu ZyBpbiBQTUQgc2l6ZXMgd2hlbiB3ZSd2ZSBoYWQgZW5vdWdoIG9mDQp0aG9zZS4gIFRoYXQgaXMg dG8gc2F5IGhlIGRpZG4ndCB3YW50IHRvIHByZWNsdWRlIGl0LCBvciBnYXRlIHRoZSBQTUQNCndv cmsgb24gZW5hYmxpbmcgYWxsIHNpemVzIGZpcnN0Lg0KDQoJCUFtaXQNCg==