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 D4D63C4167B for ; Tue, 28 Nov 2023 17:34:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6B2AE6B0326; Tue, 28 Nov 2023 12:34:45 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 663036B032D; Tue, 28 Nov 2023 12:34:45 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 504AA6B0330; Tue, 28 Nov 2023 12:34:45 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 40D176B0326 for ; Tue, 28 Nov 2023 12:34:45 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 0D878A02F6 for ; Tue, 28 Nov 2023 17:34:45 +0000 (UTC) X-FDA: 81508062930.29.EBBC78E Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11olkn2075.outbound.protection.outlook.com [40.92.19.75]) by imf09.hostedemail.com (Postfix) with ESMTP id 309AC140013 for ; Tue, 28 Nov 2023 17:34:41 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=outlook.com header.s=selector1 header.b=gTRZMyaU; spf=pass (imf09.hostedemail.com: domain of mhklinux@outlook.com designates 40.92.19.75 as permitted sender) smtp.mailfrom=mhklinux@outlook.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=outlook.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1701192882; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to: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=etZG95++lXbBRptlcgOqOny5SulXi8w1E68hcgafbVc=; b=ntbPy86FGB965iJ7fKqB1icczHbTZ8jtiRxyQdZFOqpZ5Up+u4KirV/QG3DRotHbi8auzA wVjxYB26UcLiX97bKPLhqRhe0d3tPrMyK4f8t4Zj/p6OYs81knpXH5qkjrNV/tfZ3aYZZe 5GYugjB/jIk52iLvS/kBMagqC01c/LU= ARC-Authentication-Results: i=2; imf09.hostedemail.com; dkim=pass header.d=outlook.com header.s=selector1 header.b=gTRZMyaU; spf=pass (imf09.hostedemail.com: domain of mhklinux@outlook.com designates 40.92.19.75 as permitted sender) smtp.mailfrom=mhklinux@outlook.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=outlook.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1701192882; a=rsa-sha256; cv=pass; b=WH/UD8VN/1e7yPIzzAms0SYgQM4REUWomO+ydVfKFX6SkvN65/MrjhxzN4PUEsiV0m6u7U uwMRzRETdBq122y1EGdvnpjQuPa4ICRjAYJz/SRo4DE7RP207ztc3SVpZEWEQM3HQg4veZ oFft7SoxufLIwzGUK7MOGxyYjPYllq4= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eRJDh4dxpphcTcqJQw1XBOeLW5BFOj+THmU/ynQhs/1Cx1HwCaLV0IKLJbY7P41Hh5pFpcS77oJQ0QhNjE4eramHHDuAP/BmSjzPBmMeJX39lK7Qy0Ek6S1Qhp3c5fziQU2rI2rSaRJ68Inta2AqRNlocU4NNe1Vw5jBsQPOVgb1QUS1cAVUcaDRYOSCNB/c7b7Dzw0J3c6Nh+wNvFv9MtMjKYkW+FdI9ZQu656ZAJhZLAE5KwouSPay9b/SBAgQKtaGQZoepbQStyyXBR5RTqTd1DqR8XJxG4XgFxam0OUkWIeEVWU+gibLPp5HyiqFGSVf1vbOPD/1IVLtmeP7kg== 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=etZG95++lXbBRptlcgOqOny5SulXi8w1E68hcgafbVc=; b=IIDQTiqt8YYXvTNSGB0dK5bFyyG7wrdfW6vFRwWaPXY58et89rWk+eGzJykuMJoYGsTLqvV1QaLdR/KDxClNFvYHa0usD7LXlkvZN3ChfCgPlKBbwyfjwj8Z2knguU59S7l8BxUWwYhyPvT4OmgOOWH7pHQN9Tm+6bxDGfbywLh2/s3ohj+Wx7SJA/6tYaXtr0D4G5smJV/aMMbIavrVhYD6+UYu2p5VOxt8zxvqqJg0cv460SyLNnDyFUP6L36cPeMUhuEjRfsRK7r7Bu52gjXOvGgdpMFAHEife5vSMyrM+dwSuoxKgTzEdCMUZx8EKO3aaAybwwBWMw4PzfDGoA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=etZG95++lXbBRptlcgOqOny5SulXi8w1E68hcgafbVc=; b=gTRZMyaUfhgOZeR0FpB44hPw1XG/tA+ItmZgThK3mBx0cRgifJFy4seIzF5gTKu4Tql9vicHs8irFpzIZOm8Gew8h5+D9/GRSOxHI427jBJS9RAMF1Mk+GNKTztI1nYTl3CuPoJTRPuOsAsYN2VC43MCeAGTlx89dItIr9D8+9s/9Rvnjii1w/qKsomIfZO7z4VcZMBwagRJumpStl8FLKV8GBIPdjuYjIshWVePUGf01BwtzVAlZ2CQ/v+Aoa5QmkhXJSzh3IuEH+r/el3P3HxaE6c3gQaVIv9yfI8N2s2QvrCzwXasSBQIF8fFL5JeTS96MZuCB802HE8g6DAifg== Received: from SN6PR02MB4157.namprd02.prod.outlook.com (2603:10b6:805:33::23) by PH0PR02MB7157.namprd02.prod.outlook.com (2603:10b6:510:17::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.29; Tue, 28 Nov 2023 17:34:38 +0000 Received: from SN6PR02MB4157.namprd02.prod.outlook.com ([fe80::54e5:928f:135c:6190]) by SN6PR02MB4157.namprd02.prod.outlook.com ([fe80::54e5:928f:135c:6190%7]) with mapi id 15.20.7025.022; Tue, 28 Nov 2023 17:34:38 +0000 From: Michael Kelley To: "Edgecombe, Rick P" , "linux-hyperv@vger.kernel.org" , "ardb@kernel.org" , "hch@infradead.org" , "Lutomirski, Andy" , "linux-coco@lists.linux.dev" , "dave.hansen@linux.intel.com" , "thomas.lendacky@amd.com" , "haiyangz@microsoft.com" , "akpm@linux-foundation.org" , "kirill.shutemov@linux.intel.com" , "mingo@redhat.com" , "seanjc@google.com" , "linux-kernel@vger.kernel.org" , "kys@microsoft.com" , "Cui, Dexuan" , "linux-mm@kvack.org" , "tglx@linutronix.de" , "urezki@gmail.com" , "hpa@zytor.com" , "peterz@infradead.org" , "wei.liu@kernel.org" , "bp@alien8.de" , "Rodel, Jorg" , "sathyanarayanan.kuppuswamy@linux.intel.com" , "lstoakes@gmail.com" , "x86@kernel.org" Subject: RE: [PATCH v2 2/8] x86/mm: Don't do a TLB flush if changing a PTE that isn't marked present Thread-Topic: [PATCH v2 2/8] x86/mm: Don't do a TLB flush if changing a PTE that isn't marked present Thread-Index: AQHaHMCZqqw22lSVnUqFkh2+XRP0FrCOxoeAgAE5LFA= Date: Tue, 28 Nov 2023 17:34:38 +0000 Message-ID: References: <20231121212016.1154303-1-mhklinux@outlook.com> <20231121212016.1154303-3-mhklinux@outlook.com> <4a64d05c80c9c490d291af881a86c3d853160060.camel@intel.com> In-Reply-To: <4a64d05c80c9c490d291af881a86c3d853160060.camel@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [vVoMCQPoqiUQ+vIvcEVURONnMzuvxNgX] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN6PR02MB4157:EE_|PH0PR02MB7157:EE_ x-ms-office365-filtering-correlation-id: 802ff28a-270a-412b-3996-08dbf0384bc8 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 7MQq/Z+861MpMmRItJtj4KzAPPrjAVzD9uoqjipBoN9ZdA3OyUwbV9tiJAI1m90sq5UnOv+nPweu4SmQIkgONBmRODRfGGbAKeOyKl9ODiRWEHpJyRU39m5HhXnkzWWMzC6aEd/vwW/94Txf09BAuPS+BzjrlzFjsEs+1oZDs/vNe+xic2ZL0TRMGnRQ0IgBNGdQ8UqOQ2dBrX7jPxbwG0Sp6Zw8L5KADRSQe6X7CG3WWpRZ9ZQtEfUYgpMtra6BB1uiDtcr+fHGBG5ktvRnDY+9NFP8TkbhG76rqZvF6trcq4HAqIjqJ65b+V22s9LHrUu+AWznu9KWyRTEFuZARuCUhUrtHUafClWcTRypFgmeolQ9L31GT087iltuS0Uxn4RBSkpTaZ2dXvS9lx5TZ5VnhFROB4qQv6mKnUcNsoiriB55vG46kD/V8uPqPg0YJHUJq86J+vJL//z+uAIffEc1zWuGglyK7S2gtlakrE/sCcCmi38pwVRLtQnnhc+JYv+byREj6sjOJJUZ9QBnB9iCYyvNpWZSt3Krygv2FeLmGK+LeQmHuM7hXGfCyJ8M x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?N1dObzdwMDNCMlBGbEM0RmlkK2NBSVlxK0E1cUtPdUVhek1uL2k1d0xsR2lm?= =?utf-8?B?cDJmTE50MUtsUWlKVDEvRmYyNm9pOVJIa2VjdkFMZHlQdmxqRzFHWEhoWHZ1?= =?utf-8?B?TVN3TU42bHdDQnZPT3o3LzJ4RzFMdEdkQmNZS1VBUXFEbUk0SGd6QTZLSWkv?= =?utf-8?B?MTB6MXFlSEc4V01XTjdURDNtdkwyUExtMkNBRmhWVS9IbXA0S01EZmZsNmNr?= =?utf-8?B?Qi8zTlZhYjRrVFQvZ0tSTGdoY2l5ZUo1ZDJDRUxqNzRkb2FVdkxheWVFdERl?= =?utf-8?B?MzJrRllsaGpRTGF2YW1PYTg2NThJbWNjZmNZbHZwM2RteThiUmI0cnp3SENN?= =?utf-8?B?MFRNSWhaUlJvYXhCNFRQUmJLNVl6UFEvK1lFTG9RYzNaUmxtRERzcXV3NFhS?= =?utf-8?B?QTV2b2x0UExOUzBpblZNQ2lWZkRSRWcrRFpDNXNNWWt3eFFSQXJFWGlyOGdL?= =?utf-8?B?dTNMZVFvL2pQbW5aenBSZGRnbEtZcFJGVTh3YSthaCtqT0Z1VllFTzROTDNB?= =?utf-8?B?MnM5TlIrM1FiQS84UXcwUll3YW5aUGlxVXdSd0VadkJhK25FaFVCeW1YN2hW?= =?utf-8?B?eFYvWUhLWXlXMzRjZnJYbjMzYTcyTjhsSXdOVHhVakFpQW9QVFc3M3RSSlcv?= =?utf-8?B?OWJxeU4ya2ZjL1ovRk1MS2ovZDRIVDFCMCt3NTJ4TUJlejI3dFRWRTNYVHo1?= =?utf-8?B?S2lCUGx0TUU4VkZGa0N6NXdOUU8yWmg4bXRQbnM2U3prUWlLOHRvZW9BTk9j?= =?utf-8?B?ZFErNTVrOW4zc3N1dXEyb2I2elZmZ0dVc0pCRlR2OGg3MUpkeVl3S2ZoR052?= =?utf-8?B?TFQ3T2xBNVFDekhWM0VkVjdKRFVvbE9mdW9yL3pQTGZJbTJkNlBER0VJU0M3?= =?utf-8?B?VVYxYzFPWmtHNC81Tjh3eEJPNDArNlJCNVRzd3JZSEJLSlc2dHJtVzFIc0VD?= =?utf-8?B?RUFBWjVwdkVjUGlOQU0veGtTWVBVclJHUGJ3WUFUc1ZvT3paSzhwTGMxZ1RQ?= =?utf-8?B?OEdsUWp2Y2EwUVhBT1lnZGlDVUpKalFrU3NybmpxN0x0b2M4UUdxME41ZVR3?= =?utf-8?B?S3NTR2ZITUFSTDBSUGh4dERmbS80VmxFa29BRDNKZXZYNTZxTWpHUVkzQlBW?= =?utf-8?B?c2N6MFJiNGxEMzNCWGVKaHdTTFhJVnpjZHpWb3JJUzdTa3ZzNlVkaXowSzhx?= =?utf-8?B?eVBKa3NienF6c2hSZGd2UlE4LzhtTjU1WE5vMytXVmhybjIxZ0JFYk03Y2w5?= =?utf-8?B?eFpWOEJCc2FUMTg2WmIxTUN3cFFSZ2RURG56cnpLNnV6Yld1a0xUcnpBL2VB?= =?utf-8?B?WDNOeGFzKytlei9nbjdJbU9kNkZFeXZ4U1RmNUN5L3JsYmswZ3NFQlZZYjRi?= =?utf-8?B?Y0xFblc5UzdxWjV5em1IRWx5Z2Y5WUdNUTBwcUliK1ZqTEZCQ1dSTkJzUWhJ?= =?utf-8?B?VllyVER3OU80MmJRWmUwNEh3UmxOWTlWL0pUejcybXUzVXlJMkdJeGx2Q1lz?= =?utf-8?B?R2h4S0Z3RU5RVzAxcldSckRyVVBJSlNkTEplalltWkE0b3llWWNyRk5VY3lk?= =?utf-8?Q?hl7XuW24OC87ZI1oMlnhGlMn7pM4HNAUA+LJBi9R05ON/G?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR02MB4157.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 802ff28a-270a-412b-3996-08dbf0384bc8 X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Nov 2023 17:34:38.2918 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR02MB7157 X-Rspamd-Queue-Id: 309AC140013 X-Rspam-User: X-Stat-Signature: b84by7zky8c9f9wu1n5i9h3jdnhnejjx X-Rspamd-Server: rspam01 X-HE-Tag: 1701192881-556768 X-HE-Meta: U2FsdGVkX1/Hb2RioRtg7QdGPr57q7GL3FK7j81WggvF+ZbI3X8vyYZA5Vxp6dNXOwutnp7NBSfneTRKwkc+aHrJIBzl0FVaWlwH6QpPWXIg6sFKmWXhLO9Ltk2+E/krb3CA6hL2y/kjd7IDo1ZW80WmTW44QCVLg4ZvFB/yTCo69tJj/OXdCCoxCjiH68F99B1sY2rHnYpzh8N0iBc/FD97MmggorCeXWjofPWrXt6ZH7CNxsdyKOS1NVjTAaxGt7YKYlxlHisyfZ2N50w7NkyqJBTJzxLNukG1jveuiEazsXZjP2bN8PUfQXPYGlqt9RJIDH11GCcmdD3bfwHT6JEknzUxaQNQlsChiYAIHau320PM9KXn9ziqyywSIpjugvuwhZOJhJs1l1UGRrjbe56EL/SeBdFOp2iWJEjUzzt50hRjc3f55mptNO3DfQMiisjHrTeiECWJLPRcuKME1oag2OVNEc/eNwWL+nYy9Umk3eBm6fyJsH46UFKilONPwDaevEH86KQEz25yGSkjV3NFHqpMkYkonIX4w0YFyku8OyHN63CqHuvrV9qJKi1iKJoSlD1qy09ATuPn7YQjARD8ByuRoXt0kcRlOfat3Qjoteqh059NL/U7Byp+qCPtFQCT590MGXkE8zQaOMlJJM/FX/C/4T9APSFkwILniFO81mOkhJ6NGuV8yUsrawwt50YeKpS00gkqKG7B0YbUSayNZ5udfcRrNNnWIQpkW4N1Ss5EAwiwCDDihG6aoXlf/iT6gTtRu6mj5COXqjY8Da8Ze2DCfmxjLKKUBm69cdVO4uKB9qKudn2y/OErAFASgM3gDVSEbE1P+QWMLPWH5vGkxCLBvRxSd6qgGGE8Kz/oXIJVOVpajd6utGck88L2FXH/j2FZ9EVKnYJ/uITQhypCIi6WyzkuBpYgQkhgoVtUS5UWt5EyeXF4ebasLY9D7pQ47A8y98aMUkUoGuM 8EyoNqLh gWtm3uyZhaACI5hJ8ax4b0XsrICSd6WBiU2SGmBSqdru2Y5ru09Per46pII0Rp4W3WpPCPjBT4v5NWVH+Onig79NLCy0kkEKxq6QT2FbPkPRY1KeGm+p2IfCB1O5dzpOs7Vd8FeswiCF5lGodIUfwOWmD6HO2wk6exSNlcFtI3UQmITuYWvMfLY0x0dKa4epGlzFF4wCZ9QJdJrmqySiNrhP/qjMFPFHkCfetujGVcpkM5S+NcIjHPF8bposqExw9vCKfuqaRl6ST+LFS8RPoN2jibDieklvVdPuJFtPfT4vXtjDGZ7EDBzhepNRG6VXb/Up3xhErwmqs1nLOF+qJFdM0wHYYyB97cp7uImP68qITtnG0oXC8c06xZ/zoXM6fTDD6oZy0HIjSgBlE8PSguRcMazP7Lj7+Kh6tK9MluCVb7T4UJiD1QKhr9zLU63swgwHtDuXc4n3ur3ihLp4uZVpTgJB+gAny3iV4I5Mqt6uL9aKxtEzL/dgT2+njfk4PsbBRHHecPlm1JF6UTGWJz/gCP7FNXG3nPRfDaIYV1yVA9rpqt7RL9QiLGPbj54ISFNzt1bhpT1t6SU06L0sQhBWg/RByR6jEOxdQrjQCUfC7puSnkn4zU0Po4mmie1IIMkdw 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: List-Subscribe: List-Unsubscribe: RnJvbTogRWRnZWNvbWJlLCBSaWNrIFAgPHJpY2sucC5lZGdlY29tYmVAaW50ZWwuY29tPiBTZW50 OiBNb25kYXksIE5vdmVtYmVyIDI3LCAyMDIzIDI6MjEgUE0NCj4gDQo+IE9uIFR1ZSwgMjAyMy0x MS0yMSBhdCAxMzoyMCAtMDgwMCwgbWhrZWxsZXk1OEBnbWFpbC5jb20gd3JvdGU6DQo+ID4gLS0t IGEvYXJjaC94ODYvbW0vcGF0L3NldF9tZW1vcnkuYw0KPiA+ICsrKyBiL2FyY2gveDg2L21tL3Bh dC9zZXRfbWVtb3J5LmMNCj4gPiBAQCAtMTYzNiw3ICsxNjM2LDEwIEBAIHN0YXRpYyBpbnQgX19j aGFuZ2VfcGFnZV9hdHRyKHN0cnVjdCBjcGFfZGF0YQ0KPiA+ICpjcGEsIGludCBwcmltYXJ5KQ0K PiA+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICovDQo+ID4gwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAocHRlX3ZhbChvbGRfcHRlKSAhPSBwdGVfdmFsKG5ld19w dGUpKSB7DQo+ID4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgc2V0X3B0ZV9hdG9taWMoa3B0ZSwgbmV3X3B0ZSk7DQo+ID4gLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBjcGEtPmZsYWdzIHw9IENQQV9GTFVTSFRMQjsN Cj4gPiArDQo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAvKiBJZiBvbGRfcHRlIGlzbid0IHByZXNlbnQsIGl0J3Mgbm90IGluIHRoZSBUTEIgKi8NCj4g PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmIChwdGVf cHJlc2VudChvbGRfcHRlKSkNCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBjcGEtPmZsYWdzIHw9IENQQV9GTFVTSFRMQjsN Cj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoH0NCj4gPiDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoGNwYS0+bnVtcGFnZXMgPSAxOw0KPiA+IMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIDA7DQo+ID4NCj4gDQo+IE1ha2VzIHNlbnNlIHRvIG1l LiBUaGUgUE1EIGNhc2UgY2FuIGJlIGhhbmRsZWQgc2ltaWxhcmx5IGluDQo+IF9fc2hvdWxkX3Nw bGl0X2xhcmdlX3BhZ2UoKS4NCg0KT0ssIEknbGwgbG9vayBhdCB0aGF0IGNhc2UuDQoNCj4gDQo+ IEkgYWxzbyB0aGluayBpdCBzaG91bGQgYmUgbW9yZSByb2J1c3QgaW4gcmVnYXJkcyB0byB0aGUg Y2FjaGUgZmx1c2hpbmcNCj4gY2hhbmdlcy4NCj4gDQo+IElmIGNhbGxlcnMgZGlkOg0KPiBzZXRf bWVtb3J5X25wKCkNCj4gc2V0X21lbW9yeV91YygpDQo+IHNldF9tZW1vcnlfcCgpDQo+IA0KPiBU aGVuIHRoZSBjYWNoZSBmbHVzaCB3b3VsZCBiZSBtaXNzZWQuICBJIGRvbid0IHRoaW5rIGFueW9u ZSBpcywgYnV0IHdlDQo+IHNob3VsZG4ndCBpbnRyb2R1Y2UgaGlkZGVuIHRoaW5ncyBsaWtlIHRo YXQuIE1heWJlIGZpeCBpdCBsaWtlIHRoaXM6DQo+IA0KPiBkaWZmIC0tZ2l0IGEvYXJjaC94ODYv bW0vcGF0L3NldF9tZW1vcnkuYw0KPiBiL2FyY2gveDg2L21tL3BhdC9zZXRfbWVtb3J5LmMNCj4g aW5kZXggZjUxOWU1Y2E1NDNiLi4yOGZmNTNhNDQ0N2EgMTAwNjQ0DQo+IC0tLSBhL2FyY2gveDg2 L21tL3BhdC9zZXRfbWVtb3J5LmMNCj4gKysrIGIvYXJjaC94ODYvbW0vcGF0L3NldF9tZW1vcnku Yw0KPiBAQCAtMTg1NiwxMSArMTg1Niw2IEBAIHN0YXRpYyBpbnQgY2hhbmdlX3BhZ2VfYXR0cl9z ZXRfY2xyKHVuc2lnbmVkDQo+IGxvbmcgKmFkZHIsIGludCBudW1wYWdlcywNCj4gDQo+ICAgICAg ICAgcmV0ID0gX19jaGFuZ2VfcGFnZV9hdHRyX3NldF9jbHIoJmNwYSwgMSk7DQo+IA0KPiAtICAg ICAgIC8qDQo+IC0gICAgICAgICogQ2hlY2sgd2hldGhlciB3ZSByZWFsbHkgY2hhbmdlZCBzb21l dGhpbmc6DQo+IC0gICAgICAgICovDQo+IC0gICAgICAgaWYgKCEoY3BhLmZsYWdzICYgQ1BBX0ZM VVNIVExCKSkNCj4gLSAgICAgICAgICAgICAgIGdvdG8gb3V0Ow0KPiANCj4gICAgICAgICAvKg0K PiAgICAgICAgICAqIE5vIG5lZWQgdG8gZmx1c2gsIHdoZW4gd2UgZGlkIG5vdCBzZXQgYW55IG9m IHRoZSBjYWNoaW5nDQo+IEBAIC0xODY4LDYgKzE4NjMsMTIgQEAgc3RhdGljIGludCBjaGFuZ2Vf cGFnZV9hdHRyX3NldF9jbHIodW5zaWduZWQNCj4gbG9uZyAqYWRkciwgaW50IG51bXBhZ2VzLA0K PiAgICAgICAgICAqLw0KPiAgICAgICAgIGNhY2hlID0gISFwZ3Byb3QyY2FjaGVtb2RlKG1hc2tf c2V0KTsNCj4gDQo+ICsgICAgICAgLyoNCj4gKyAgICAgICAgKiBDaGVjayB3aGV0aGVyIHdlIHJl YWxseSBjaGFuZ2VkIHNvbWV0aGluZzoNCj4gKyAgICAgICAgKi8NCj4gKyAgICAgICBpZiAoIShj cGEuZmxhZ3MgJiBDUEFfRkxVU0hUTEIpICYmICFjYWNoZSkNCj4gKyAgICAgICAgICAgICAgIGdv dG8gb3V0Ow0KPiArDQo+ICAgICAgICAgLyoNCj4gICAgICAgICAgKiBPbiBlcnJvcjsgZmx1c2gg ZXZlcnl0aGluZyB0byBiZSBzdXJlLg0KPiAgICAgICAgICAqLw0KPiANCj4gSG1tLCBtaWdodCB3 YW50IHRvIG1haW50YWluIHRoZSAiT24gZXJyb3I7IGZsdXNoIGV2ZXJ5dGhpbmcgdG8gYmUgc3Vy ZSINCj4gbG9naWMgaW4gdGhlIE5QLT5QIGNhc2UgYXMgd2VsbC4NCg0KT0ssIEkgc2VlIHlvdXIg cG9pbnQuICBJIGhhZCBub3QgcmVhbGl6ZWQgdGhhdCBDUEFfRkxVU0hUTEIgcmVhbGx5DQpoYXMg YSBtZWFuaW5nIGJleW9uZCBqdXN0IGluZGljYXRpbmcgdGhhdCB0aGUgVExCIG5lZWRzIHRvIGJl DQpmbHVzaGVkLiAgSXQgcmVhbGx5IG1lYW5zICJzb21ldGhpbmcgaGFzIGNoYW5nZWQiIGluIGEg UFRFLiAgSSdsbA0KaW5jb3Jwb3JhdGUgeW91ciBzdWdnZXN0aW9uLg0KDQpNaWNoYWVsDQo=