From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 9D4CCD80047 for ; Thu, 1 Feb 2024 05:20:57 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=h+o1KVZwML9nuk6x11bETLzXWiT7o5c46SZdBof1+DQ=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1706764856; v=1; b=KnEOXB+R7MvMx1wXfLrb8+8f20PedY2E0jIwuvYOCmntCnb/37MpvHoH7LM0MF016dseX7VT LVK8SOLIelpSgP3iTa9r5BeGsNd1LmW9pgpJ19atTFETVOSy+gxojSL2kvXtutvJlo5pbnGotkd dqFxCVxAOkmrPak9sE0mSv9w= X-Received: by 127.0.0.2 with SMTP id iEvaYY7687511xI6ofmSNXsG; Wed, 31 Jan 2024 21:20:56 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web11.9066.1706764855591019670 for ; Wed, 31 Jan 2024 21:20:55 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10969"; a="402654851" X-IronPort-AV: E=Sophos;i="6.05,234,1701158400"; d="scan'208";a="402654851" X-Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Jan 2024 21:20:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10969"; a="859052287" X-IronPort-AV: E=Sophos;i="6.05,234,1701158400"; d="scan'208";a="859052287" X-Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga004.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 31 Jan 2024 21:20:50 -0800 X-Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) 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.2507.35; Wed, 31 Jan 2024 21:20:50 -0800 X-Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.2507.35 via Frontend Transport; Wed, 31 Jan 2024 21:20:50 -0800 X-Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.101) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Wed, 31 Jan 2024 21:20:50 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cS9jC1tfTzvyNWQINpSPA493MayyAtF34taXI2fLAa3ruxci5bLWi4rSweWIBoFcIyt7moHEmHmvUlzncyLDE7F0aJhHgcYI6QOWotxEMpHWWcjV3OOO3cRa/sjArJ40WT+9iZYxG9kHM/Xt/TDun5qhVW+McFnqB0JGNxmdaScWXxHaErAQZAd9QGmuXuWEuOQgx8SSkUY1wrlIwPQ3GKju1+K6P47CSajnIoxQ4FyRdAAs54HAEfQAar/E+bdp0LFHo9RnU+WGxq9fMjwpz5KvtvWL4pKGDyaMDodqwlbg3BJaIrHyIAQjfoWooVLcJNq3md8szyx6eydkrIXgQA== 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=nMQK3Q7RknmOMxkL7iaw+IQ1QwZLs6J96RhT1uRNb5w=; b=cEd4ehVVEt4X+POT92Buj/spIM1fwaYZcegdecUstOfWu7JL/5SdJp3dRdgideJdAgNjwKym2WKjLOrS815fzeHInp4RLEaBErizokuXGz6mjjKIVIVtiRjngNkOuOe2Xzh1HIyvC9FYGvjpEgARBDSXn2E5YespkVA29t308uUvqOWPuwTKcmYhkUM/jnfW8FAZtbBuanGfaoSMAdS8Z8wPHHIepF1VrIoVB8q5VZSxtEhOmXhoesXb0qRUC8ZH7yLJN3oU5j91QJMGPGQhrTl9CtifkxJxP2tmv1qPCOydyWbMTQowNnzngBhH1ba+cJXmbGBQk0KG/BVvUslT1A== 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 X-Received: from PH0PR11MB5064.namprd11.prod.outlook.com (2603:10b6:510:3b::15) by PH8PR11MB7119.namprd11.prod.outlook.com (2603:10b6:510:215::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.22; Thu, 1 Feb 2024 05:20:47 +0000 X-Received: from PH0PR11MB5064.namprd11.prod.outlook.com ([fe80::e526:b83e:9ee1:c862]) by PH0PR11MB5064.namprd11.prod.outlook.com ([fe80::e526:b83e:9ee1:c862%4]) with mapi id 15.20.7228.029; Thu, 1 Feb 2024 05:20:47 +0000 From: "Min Xu" To: "devel@edk2.groups.io" , "lersek@redhat.com" CC: Michael Roth , Oliver Steffen , "Yao, Jiewen" , Tom Lendacky , Ard Biesheuvel , "Aktas, Erdem" , Gerd Hoffmann , "Sun, Yi Y" , "Huang, Jiaqing" Subject: Re: [edk2-devel] [PATCH v3 1/4] OvmfPkg/Sec: Setup MTRR early in the boot process. Thread-Topic: [edk2-devel] [PATCH v3 1/4] OvmfPkg/Sec: Setup MTRR early in the boot process. Thread-Index: AQHaU3zv63JBCzaKKUWAhMgPiyqfTLDyvGuAgAEYZ4CAAPKY8A== Date: Thu, 1 Feb 2024 05:20:47 +0000 Message-ID: References: <20240130130441.772484-1-kraxel@redhat.com> <20240130130441.772484-2-kraxel@redhat.com> <7b3177f0-9696-07e1-ad0e-040d5392b067@redhat.com> In-Reply-To: <7b3177f0-9696-07e1-ad0e-040d5392b067@redhat.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR11MB5064:EE_|PH8PR11MB7119:EE_ x-ms-office365-filtering-correlation-id: 9280ae13-e5bd-4fbe-c074-08dc22e58c3f x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: dZOUomZ/TLduKu7zdEB26sPL8G0DG/nxPgfWagJiLDaCp3zaiHmWfSUGjKMieHPiZPEK+7mV3XMkTIYbt9LUro4eRZ2MO7RvDZbAQMD1Hvv55krCUO8crYJVcI1N5Ldgk202ngVwDwoejqJags4uYqzc7QG5sbiD0oVg41hl4EVsHOUOGYU8kH9FvufGJhFJEwTTQLaHaTWMiqBN/KHxyz32qnWwL7u2LTAd8BYogo/YIzqg7BtvUpU3XIDulFa3mKVQYVw73rD08H3vndB81/ZJRH5OoawpqAkWFiwnmRT3LrdVE7SAYgK8GA4NfiLlGLB3E8kmBV89AEUp86VmACLaUh4Acmvp8JQ9+hgosqytLXBa4CvxDfq9kXPwNvPqEztlhNW38Dj+q4VWEFOaQgmZeVchh1NI4W3g0CKBX2zh9PPozurdVhhqe6HvN1xIRdeSVd72uOawMkID6AyKrNbWt+aqTtBeURtTbKu6IyT+PsbhbTnSbKI6F9Q8Ov0qs4pxeX+G+VFJNcSHJuMGLBUZo0YSBu9GVqpp8Nx7di+ELjHPgFDi6Z5588gM75tIIxBfeXtAAMhlJWCEjhdGQm2MD98DHHXLNLJPiyi96I8= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?R3ltcHJJSTNxYXdQa2VEbEwzZW5MdW9HWHRXZjRIcXVueE1yNHBZRmNmeU1p?= =?utf-8?B?d2dPL3RBREVwZWpXVWVUVHZTWXQ0eFg0dVhPeW1HekI1MG1mUU9JQTMvTjNV?= =?utf-8?B?RjVSZmQxUllYMkdKWGZQQjM2NUN2WXcwUTZPU0JtYkpJNHpJa1pTaURhczkv?= =?utf-8?B?UVVWRDNqbkxzRExsN25yazd5RGRRWVhPd3lOUjVWTm1nMFhXMEF6RUlFb2FX?= =?utf-8?B?YzY1QWdYSnZ3V2Z4REhBdGF5Y1N2WnNkWUdXVlJPemNEdFVOejdyajBMdmNT?= =?utf-8?B?b2srQmFWZDQwS2p0LzRCWXFpN2RaOHRqdXp2TDY4Rkc3MHF3WjlOWHdTOW9E?= =?utf-8?B?MklDYy9DYnJjUkJjSTB5TTVuRlBRMDhpSVBVNE9ROTBsclBaRFVtZ0J1eEwz?= =?utf-8?B?bkhHMERPSHZ6N3A1emhxdHh5VzJISmlRRmVYSllqL3dtWmRueC9zUFJwbE9n?= =?utf-8?B?YnNzNUdRdUtQSzNEb1R6VVV5aG5TZTE0b0ZqcDNseTJDc25jektocEJHRXRo?= =?utf-8?B?S1JGd0V4RUNjVW9FcjhEZW9OVlpTQTBLMTVPbytZbzhyOGdnTEJsbVdGYzJr?= =?utf-8?B?RVU4MlZtUk1JR3JxOUtqK3JENUl4OVluQThqWW1EN1R5Qi9paFhWaEZ2NjRs?= =?utf-8?B?MG1YbHBKUmlEUTNUeFFBSm83MVY0S1J2U0FWb1hYOVpPVjg2eDRoa0hhb2RS?= =?utf-8?B?SmU0aUViZ1hzY1BIUXR6M2JiOGpWT1p1UGJ6Y0ZiOENUT2xzS05nMm53aWtI?= =?utf-8?B?QXhVNXlDVm41N3VXTGUyMW5OcGxVU1FFTzQrbmFucnM0Q2xlZlhOSmFaTXRj?= =?utf-8?B?SWlUck41MmlOMFdZVktGWHFlQ0ZsbmlpN0xHb2NiVEdHTzlrbC9SL3Nwb0xC?= =?utf-8?B?RkFrSGdXalg4a3FFRE5rTkt1Z1JkR3p5VFlBckwzbGNKY2VHWU1VcndqZ2xR?= =?utf-8?B?a1RoZkRZVVBSUWpFQzhsSzcrSlhPQnp5T3d1WGl1SXpPR2JiWTFSUjVpVllK?= =?utf-8?B?WGlPMzNHMTFiZTRieDJ4cmpRakVBRTFsQjdtY3poWDVWZmRGMDJNVWNmb3Za?= =?utf-8?B?a0Z2R2RGSTc0UzJzSkUvUndjSDFmSTFMNndHNjNDOTBuOFRBM2h6TER5TDRw?= =?utf-8?B?enBEU2ZOOTNDd2xRWTQ3Q2J5RzA3ajdOWThpOWQ0MWRVdEx1a0tWQlJpTk9V?= =?utf-8?B?Tzd4b0I3S2xJK1MyeE1lMTFMSjc3bEc0N2dpM1hEZStKeklIeDBVR2pKcmJv?= =?utf-8?B?WU54RUpKZE9XQ2VvSU5aOEwwVDVJQ2gzTE5YeTgxYlJ2R2k1ZUVYK0NWZ1lr?= =?utf-8?B?UHFpZGFJcTZKYzRIUllwT01zdWFuaVptVjlZaXBMYXJBM2Y4MEhMR0h4cFY0?= =?utf-8?B?bytOcWQ4S1A0QmV2anFDUU1wZGN1dzZybFJTZ282QWk4QXlaSzRKaVhyQm5M?= =?utf-8?B?RkVCOWsvZkcxU3lpTXVsMHZyUGFMWndZTXEwMDJpQWRNRXpVTVdMODVwNkZD?= =?utf-8?B?Skx5Q3Ura0kzQU9jblFLcldpM0NnM1dQTWdFU0hWb0ZTTHhyQ2lYb2J6RHhk?= =?utf-8?B?RVBrVnBmbXJTMUQ4VCtXV0ljZFNNcEZYMG11RzJ1LzNJS2xPanlPcU1qYUlW?= =?utf-8?B?OTVzQklXK294a2V6NzVOYjNLR2lvV0xLdnRDRGsrVXZyT3JHdzNaVEdZQjdC?= =?utf-8?B?RE5ZRkllR3U4NjRNdzZNRWpNNHdKMG1DQVBncjcvQmtQWHB4ZTJQdW9oYU4r?= =?utf-8?B?dzBaVEwvQmw0RnNOVzRlOU5IS0JTbnN2MzBlSThnNVRYR2dMNXBnUHdlZWR0?= =?utf-8?B?WThUSDhWaUxyUmY1ZE5laStBSjVpY1ZEMEhaSkhGaDNmUFBqRWU4akhXcUV6?= =?utf-8?B?MXN0SnhuYkNibVUxdExXRmw4cFJWU2xRN1dqcjF4Tmh6UEsvSkZ5UFMxMEJh?= =?utf-8?B?WFFtekJXR21TbWlxczRvVGJnMnZiOUlvU1VMZlNvNlZFNmlqSTVUQndHaTVm?= =?utf-8?B?RnhjN3JqRGJaTi81N0psTkpXeGVvWGREalFtT1VPSUFna3ovZW1CL1U0cnBh?= =?utf-8?B?TUw1SzJmRVNnbzBFeW1sbXd0QTl0SURoZVppTkNEYTdGdUFzZ2xoVkMyL2Rj?= =?utf-8?Q?2Nic=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5064.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9280ae13-e5bd-4fbe-c074-08dc22e58c3f X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Feb 2024 05:20:47.5302 (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: KHv4SDsdgJ5gbTZPWQmPGGl7qUdgva+A651WCxDsujFATyRgm3RyXBs/sk9ccHC8Iz/RYT/OH9pkDdPk+0AAeQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB7119 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,min.m.xu@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: oOxLdF2IO5IuMGWbYGqPJcLzx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=KnEOXB+R; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") T24gV2VkbmVzZGF5LCBKYW51YXJ5IDMxLCAyMDI0IDg6MDYgUE0sIExhc3psbyBFcnNlayB3cm90 ZToNCj4gDQo+IEhpIE1pbiwNCj4gDQo+IE9uIDEvMzAvMjQgMjA6MjIsIExhc3psbyBFcnNlayB3 cm90ZToNCj4gPiBPbiAxLzMwLzI0IDE0OjA0LCBHZXJkIEhvZmZtYW5uIHdyb3RlOg0KPiA+PiBT cGVjaWZpY2FsbHkgYmVmb3JlIHJ1bm5pbmcgbHptYSB1bmNvbXByZXNzIG9mIHRoZSBtYWluIGZp cm13YXJlDQo+IHZvbHVtZS4NCj4gPj4gVGhpcyBpcyBuZWVkZWQgdG8gbWFrZSBzdXJlIGNhY2hp bmcgaXMgZW5hYmxlZCwgb3RoZXJ3aXNlIHRoZQ0KPiA+PiB1bmNvbXByZXNzIGNhbiBiZSBleHRy ZW1lbHkgc2xvdy4NCj4gPj4NCj4gPj4gQWRhcHQgdGhlIEFTU0VSVHMgYW5kIE1UUlIgc2V0dXAg aW4gUGxhdGZvcm1Jbml0TGliIHRvIHRoZSBjaGFuZ2VzLg0KPiA+Pg0KPiA+PiBCYWNrZ3JvdW5k OiAgRGVwZW5kaW5nIG9uIHZpcnR1YWwgbWFjaGluZSBjb25maWd1cmF0aW9uIGt2bSBtYXkgdXNl cw0KPiA+PiBFUFQgbWVtb3J5IHR5cGVzIHRvIGFwcGx5IGd1ZXN0IE1UUlIgc2V0dGluZ3MuICBJ biBjYXNlIE1UUlJzIGFyZQ0KPiA+PiBkaXNhYmxlZCBrdm0gd2lsbCB1c2UgdGhlIHVuY2FjaGFi bGUgbWVtb3J5IHR5cGUgZm9yIGFsbCBtYXBwaW5ncy4NCj4gPj4gVGhlDQo+ID4+IHZteF9nZXRf bXRfbWFzaygpIGZ1bmN0aW9uIGluIHRoZSBsaW51eCBrZXJuZWwgaGFuZGxlcyB0aGlzIGFuZCBj YW4NCj4gPj4gYmUgZm91bmQgaGVyZToNCj4gPj4NCj4gPj4gaHR0cHM6Ly9naXQua2VybmVsLm9y Zy9wdWIvc2NtL2xpbnV4L2tlcm5lbC9naXQvc3RhYmxlL2xpbnV4LmdpdC90cmVlDQo+ID4+IC9h cmNoL3g4Ni9rdm0vdm14L3ZteC5jP2g9djYuNy4xI243NTgwDQo+ID4+DQo+ID4+IEluIG1vc3Qg Vk0gY29uZmlndXJhdGlvbnMga3ZtIHVzZXMgTVRSUl9UWVBFX1dSQkFDSw0KPiB1bmNvbmRpdGlv bmFsbHkuDQo+ID4+IEluIGNhc2UgdGhlIFZNIGhhcyBhIG1kZXYgZGV2aWNlIGFzc2lnbmVkIHRo YXQgaXMgbm90IHRoZSBjYXNlIHRob3VnaC4NCj4gPj4NCj4gPj4gQmVmb3JlIGNvbW1pdCBlOGFh NGM2NTQ2YWQgKCJVZWZpQ3B1UGtnL1Jlc2V0VmVjdG9yOiBDYWNoZSBEaXNhYmxlDQo+ID4+IHNo b3VsZCBub3QgYmUgc2V0IGJ5IGRlZmF1bHQgaW4gQ1IwIikga3ZtIGFsc28gZW5kZWQgdXAgdXNp bmcNCj4gPj4gTVRSUl9UWVBFX1dSQkFDSyBkdWUgdG8gS1ZNX1g4Nl9RVUlSS19DRF9OV19DTEVB UkVELiAgQWZ0ZXINCj4gdGhhdA0KPiA+PiBjb21taXQga3ZtIGV2YWx1YXRlcyBndWVzdCBtdHJy IHNldHRpbmdzLCB3aGljaCB3aHkgc2V0dGluZyB1cCBNVFJScw0KPiA+PiBlYXJseSBpcyBpbXBv cnRhbnQgbm93Lg0KPiA+Pg0KPiA+PiBTaWduZWQtb2ZmLWJ5OiBHZXJkIEhvZmZtYW5uIDxrcmF4 ZWxAcmVkaGF0LmNvbT4NCj4gPj4gLS0tDQo+ID4+ICBPdm1mUGtnL0ludGVsVGR4L1NlYy9TZWNN YWluLmMgICAgICAgICAgICAgIHwgMzIgKysrKysrKysrKysrKysrKysrKysrDQo+ID4+ICBPdm1m UGtnL0xpYnJhcnkvUGxhdGZvcm1Jbml0TGliL01lbURldGVjdC5jIHwgMTAgKysrLS0tLQ0KPiA+ PiAgT3ZtZlBrZy9TZWMvU2VjTWFpbi5jICAgICAgICAgICAgICAgICAgICAgICB8IDMyICsrKysr KysrKysrKysrKysrKysrKw0KPiA+PiAgMyBmaWxlcyBjaGFuZ2VkLCA2OSBpbnNlcnRpb25zKCsp LCA1IGRlbGV0aW9ucygtKQ0KPiA+Pg0KPiA+PiBkaWZmIC0tZ2l0IGEvT3ZtZlBrZy9JbnRlbFRk eC9TZWMvU2VjTWFpbi5jDQo+ID4+IGIvT3ZtZlBrZy9JbnRlbFRkeC9TZWMvU2VjTWFpbi5jIGlu ZGV4IDQyYTU4N2FkZmE1Ny4uYTIxOGNhMTdhMDFhDQo+ID4+IDEwMDY0NA0KPiA+PiAtLS0gYS9P dm1mUGtnL0ludGVsVGR4L1NlYy9TZWNNYWluLmMNCj4gPj4gKysrIGIvT3ZtZlBrZy9JbnRlbFRk eC9TZWMvU2VjTWFpbi5jDQo+ID4+IEBAIC0yNyw2ICsyNyw4IEBADQo+ID4+ICAjaW5jbHVkZSA8 TGlicmFyeS9UZHhIZWxwZXJMaWIuaD4NCj4gPj4gICNpbmNsdWRlIDxMaWJyYXJ5L0NjUHJvYmVM aWIuaD4NCj4gPj4gICNpbmNsdWRlIDxMaWJyYXJ5L1BlaWxlc3NTdGFydHVwTGliLmg+DQo+ID4+ ICsjaW5jbHVkZSA8UmVnaXN0ZXIvSW50ZWwvQXJjaGl0ZWN0dXJhbE1zci5oPg0KPiA+PiArI2lu Y2x1ZGUgPFJlZ2lzdGVyL0ludGVsL0NwdWlkLmg+DQo+ID4+DQo+ID4+ICAjZGVmaW5lIFNFQ19J RFRfRU5UUllfQ09VTlQgIDM0DQo+ID4+DQo+ID4+IEBAIC00OCw2ICs1MCwzMSBAQCBJQTMyX0lE VF9HQVRFX0RFU0NSSVBUT1IgIG1JZHRFbnRyeVRlbXBsYXRlID0NCj4gew0KPiA+PiAgICB9DQo+ ID4+ICB9Ow0KPiA+Pg0KPiA+PiArLy8NCj4gPj4gKy8vIEVuYWJsZSBNVFJSIGVhcmx5LCBzZXQg ZGVmYXVsdCB0eXBlIHRvIHdyaXRlIGJhY2suDQo+ID4+ICsvLyBOZWVkZWQgdG8gbWFrZSBzdXJl IGNhY2hpbmcgaXMgZW5hYmxlZCwgLy8gd2l0aG91dCB0aGlzIGx6bWENCj4gPj4gK2RlY29tcHJl c3MgY2FuIGJlIHZlcnkgc2xvdy4NCj4gPj4gKy8vDQo+ID4+ICtTVEFUSUMNCj4gPj4gK1ZPSUQN Cj4gPj4gK1NlY010cnJTZXR1cCAoDQo+ID4+ICsgIFZPSUQNCj4gPj4gKyAgKQ0KPiA+PiArew0K PiA+PiArICBDUFVJRF9WRVJTSU9OX0lORk9fRURYICAgICAgICAgICBFZHg7DQo+ID4+ICsgIE1T Ul9JQTMyX01UUlJfREVGX1RZUEVfUkVHSVNURVIgIERlZlR5cGU7DQo+ID4+ICsNCj4gPj4gKyAg QXNtQ3B1aWQgKENQVUlEX1ZFUlNJT05fSU5GTywgTlVMTCwgTlVMTCwgTlVMTCwgJkVkeC5VaW50 MzIpOyAgaWYNCj4gPj4gKyAoIUVkeC5CaXRzLk1UUlIpIHsNCj4gPj4gKyAgICByZXR1cm47DQo+ ID4+ICsgIH0NCj4gPj4gKw0KPiA+PiArICBEZWZUeXBlLlVpbnQ2NCAgICA9IEFzbVJlYWRNc3I2 NCAoTVNSX0lBMzJfTVRSUl9ERUZfVFlQRSk7DQo+ID4+ICsgIERlZlR5cGUuQml0cy5UeXBlID0g NjsgLyogd3JpdGUgYmFjayAqLw0KPiA+PiArICBEZWZUeXBlLkJpdHMuRSAgICA9IDE7IC8qIGVu YWJsZSAqLw0KPiA+PiArICBBc21Xcml0ZU1zcjY0IChNU1JfSUEzMl9NVFJSX0RFRl9UWVBFLCBE ZWZUeXBlLlVpbnQ2NCk7IH0NCj4gPj4gKw0KPiA+PiAgVk9JRA0KPiA+PiAgRUZJQVBJDQo+ID4+ ICBTZWNDb3JlU3RhcnR1cFdpdGhTdGFjayAoDQo+ID4+IEBAIC0yMDQsNiArMjMxLDExIEBAIFNl Y0NvcmVTdGFydHVwV2l0aFN0YWNrICgNCj4gPj4gICAgSW5pdGlhbGl6ZUFwaWNUaW1lciAoMCwg TUFYX1VJTlQzMiwgVFJVRSwgNSk7DQo+ID4+ICAgIERpc2FibGVBcGljVGltZXJJbnRlcnJ1cHQg KCk7DQo+ID4+DQo+ID4+ICsgIC8vDQo+ID4+ICsgIC8vIEluaXRpYWxpemUgTVRSUg0KPiA+PiAr ICAvLw0KPiA+PiArICBTZWNNdHJyU2V0dXAgKCk7DQo+ID4+ICsNCj4gPj4gICAgUGVpbGVzc1N0 YXJ0dXAgKCZTZWNDb3JlRGF0YSk7DQo+ID4+DQo+ID4+ICAgIEFTU0VSVCAoRkFMU0UpOw0KPiA+ PiBkaWZmIC0tZ2l0IGEvT3ZtZlBrZy9MaWJyYXJ5L1BsYXRmb3JtSW5pdExpYi9NZW1EZXRlY3Qu Yw0KPiA+PiBiL092bWZQa2cvTGlicmFyeS9QbGF0Zm9ybUluaXRMaWIvTWVtRGV0ZWN0LmMNCj4g Pj4gaW5kZXggZjA0MjUxN2JiNjRhLi5lODlmNjNlZWUwNTQgMTAwNjQ0DQo+ID4+IC0tLSBhL092 bWZQa2cvTGlicmFyeS9QbGF0Zm9ybUluaXRMaWIvTWVtRGV0ZWN0LmMNCj4gPj4gKysrIGIvT3Zt ZlBrZy9MaWJyYXJ5L1BsYXRmb3JtSW5pdExpYi9NZW1EZXRlY3QuYw0KPiA+PiBAQCAtMTA4Miwx OCArMTA4MiwxOCBAQCBQbGF0Zm9ybVFlbXVJbml0aWFsaXplUmFtICgNCj4gPj4gICAgICBNdHJy R2V0QWxsTXRycnMgKCZNdHJyU2V0dGluZ3MpOw0KPiA+Pg0KPiA+PiAgICAgIC8vDQo+ID4+IC0g ICAgLy8gTVRSUnMgZGlzYWJsZWQsIGZpeGVkIE1UUlJzIGRpc2FibGVkLCBkZWZhdWx0IHR5cGUg aXMgdW5jYWNoZWQNCj4gPj4gKyAgICAvLyBTZWUgU2VjTXRyclNldHVwKCksIGRlZmF1bHQgdHlw ZSBzaG91bGQgYmUgd3JpdGUgYmFjaw0KPiA+PiAgICAgIC8vDQo+ID4+IC0gICAgQVNTRVJUICgo TXRyclNldHRpbmdzLk10cnJEZWZUeXBlICYgQklUMTEpID09IDApOw0KPiA+PiArICAgIEFTU0VS VCAoKE10cnJTZXR0aW5ncy5NdHJyRGVmVHlwZSAmIEJJVDExKSAhPSAwKTsNCj4gPj4gICAgICBB U1NFUlQgKChNdHJyU2V0dGluZ3MuTXRyckRlZlR5cGUgJiBCSVQxMCkgPT0gMCk7DQo+ID4+IC0g ICAgQVNTRVJUICgoTXRyclNldHRpbmdzLk10cnJEZWZUeXBlICYgMHhGRikgPT0gMCk7DQo+ID4+ ICsgICAgQVNTRVJUICgoTXRyclNldHRpbmdzLk10cnJEZWZUeXBlICYgMHhGRikgPT0NCj4gPj4g KyBNVFJSX0NBQ0hFX1dSSVRFX0JBQ0spOw0KPiA+Pg0KPiA+PiAgICAgIC8vDQo+ID4+ICAgICAg Ly8gZmxpcCBkZWZhdWx0IHR5cGUgdG8gd3JpdGViYWNrDQo+ID4+ICAgICAgLy8NCj4gPj4gLSAg ICBTZXRNZW0gKCZNdHJyU2V0dGluZ3MuRml4ZWQsIHNpemVvZiBNdHJyU2V0dGluZ3MuRml4ZWQs IDB4MDYpOw0KPiA+PiArICAgIFNldE1lbSAoJk10cnJTZXR0aW5ncy5GaXhlZCwgc2l6ZW9mIE10 cnJTZXR0aW5ncy5GaXhlZCwNCj4gPj4gKyBNVFJSX0NBQ0hFX1dSSVRFX0JBQ0spOw0KPiA+PiAg ICAgIFplcm9NZW0gKCZNdHJyU2V0dGluZ3MuVmFyaWFibGVzLCBzaXplb2YgTXRyclNldHRpbmdz LlZhcmlhYmxlcyk7DQo+ID4+IC0gICAgTXRyclNldHRpbmdzLk10cnJEZWZUeXBlIHw9IEJJVDEx IHwgQklUMTAgfCA2Ow0KPiA+PiArICAgIE10cnJTZXR0aW5ncy5NdHJyRGVmVHlwZSB8PSBCSVQx MDsNCj4gPj4gICAgICBNdHJyU2V0QWxsTXRycnMgKCZNdHJyU2V0dGluZ3MpOw0KPiA+Pg0KPiA+ PiAgICAgIC8vDQo+ID4+IGRpZmYgLS1naXQgYS9Pdm1mUGtnL1NlYy9TZWNNYWluLmMgYi9Pdm1m UGtnL1NlYy9TZWNNYWluLmMgaW5kZXgNCj4gPj4gMzFkYTVkMGFjZTUxLi40NmM1NGYyOTg0ZmYg MTAwNjQ0DQo+ID4+IC0tLSBhL092bWZQa2cvU2VjL1NlY01haW4uYw0KPiA+PiArKysgYi9Pdm1m UGtnL1NlYy9TZWNNYWluLmMNCj4gPj4gQEAgLTMwLDYgKzMwLDggQEANCj4gPj4gICNpbmNsdWRl IDxQcGkvTXBJbml0TGliRGVwLmg+DQo+ID4+ICAjaW5jbHVkZSA8TGlicmFyeS9UZHhIZWxwZXJM aWIuaD4NCj4gPj4gICNpbmNsdWRlIDxMaWJyYXJ5L0NjUHJvYmVMaWIuaD4NCj4gPj4gKyNpbmNs dWRlIDxSZWdpc3Rlci9JbnRlbC9BcmNoaXRlY3R1cmFsTXNyLmg+DQo+ID4+ICsjaW5jbHVkZSA8 UmVnaXN0ZXIvSW50ZWwvQ3B1aWQuaD4NCj4gPj4gICNpbmNsdWRlICJBbWRTZXYuaCINCj4gPj4N Cj4gPj4gICNkZWZpbmUgU0VDX0lEVF9FTlRSWV9DT1VOVCAgMzQNCj4gPj4gQEAgLTc0NCw2ICs3 NDYsMzEgQEAgRmluZEFuZFJlcG9ydEVudHJ5UG9pbnRzICgNCj4gPj4gICAgcmV0dXJuOw0KPiA+ PiAgfQ0KPiA+Pg0KPiA+PiArLy8NCj4gPj4gKy8vIEVuYWJsZSBNVFJSIGVhcmx5LCBzZXQgZGVm YXVsdCB0eXBlIHRvIHdyaXRlIGJhY2suDQo+ID4+ICsvLyBOZWVkZWQgdG8gbWFrZSBzdXJlIGNh Y2hpbmcgaXMgZW5hYmxlZCwgLy8gd2l0aG91dCB0aGlzIGx6bWENCj4gPj4gK2RlY29tcHJlc3Mg Y2FuIGJlIHZlcnkgc2xvdy4NCj4gPj4gKy8vDQo+ID4+ICtTVEFUSUMNCj4gPj4gK1ZPSUQNCj4g Pj4gK1NlY010cnJTZXR1cCAoDQo+ID4+ICsgIFZPSUQNCj4gPj4gKyAgKQ0KPiA+PiArew0KPiA+ PiArICBDUFVJRF9WRVJTSU9OX0lORk9fRURYICAgICAgICAgICBFZHg7DQo+ID4+ICsgIE1TUl9J QTMyX01UUlJfREVGX1RZUEVfUkVHSVNURVIgIERlZlR5cGU7DQo+ID4+ICsNCj4gPj4gKyAgQXNt Q3B1aWQgKENQVUlEX1ZFUlNJT05fSU5GTywgTlVMTCwgTlVMTCwgTlVMTCwgJkVkeC5VaW50MzIp OyAgaWYNCj4gPj4gKyAoIUVkeC5CaXRzLk1UUlIpIHsNCj4gPj4gKyAgICByZXR1cm47DQo+ID4+ ICsgIH0NCj4gPj4gKw0KPiA+PiArICBEZWZUeXBlLlVpbnQ2NCAgICA9IEFzbVJlYWRNc3I2NCAo TVNSX0lBMzJfTVRSUl9ERUZfVFlQRSk7DQo+ID4+ICsgIERlZlR5cGUuQml0cy5UeXBlID0gNjsg Lyogd3JpdGUgYmFjayAqLw0KPiA+PiArICBEZWZUeXBlLkJpdHMuRSAgICA9IDE7IC8qIGVuYWJs ZSAqLw0KPiA+PiArICBBc21Xcml0ZU1zcjY0IChNU1JfSUEzMl9NVFJSX0RFRl9UWVBFLCBEZWZU eXBlLlVpbnQ2NCk7IH0NCj4gPj4gKw0KPiA+PiAgVk9JRA0KPiA+PiAgRUZJQVBJDQo+ID4+ICBT ZWNDb3JlU3RhcnR1cFdpdGhTdGFjayAoDQo+ID4+IEBAIC05NDIsNiArOTY5LDExIEBAIFNlY0Nv cmVTdGFydHVwV2l0aFN0YWNrICgNCj4gPj4gICAgSW5pdGlhbGl6ZUFwaWNUaW1lciAoMCwgTUFY X1VJTlQzMiwgVFJVRSwgNSk7DQo+ID4+ICAgIERpc2FibGVBcGljVGltZXJJbnRlcnJ1cHQgKCk7 DQo+ID4+DQo+ID4+ICsgIC8vDQo+ID4+ICsgIC8vIEluaXRpYWxpemUgTVRSUg0KPiA+PiArICAv Lw0KPiA+PiArICBTZWNNdHJyU2V0dXAgKCk7DQo+ID4+ICsNCj4gPj4gICAgLy8NCj4gPj4gICAg Ly8gSW5pdGlhbGl6ZSBEZWJ1ZyBBZ2VudCB0byBzdXBwb3J0IHNvdXJjZSBsZXZlbCBkZWJ1ZyBp biBTRUMvUEVJIHBoYXNlcw0KPiBiZWZvcmUgbWVtb3J5IHJlYWR5Lg0KPiA+PiAgICAvLw0KPiA+ DQo+ID4gQ2Fubm90IGNvbW1lbnQgb24gdGhlICJPdm1mUGtnL0ludGVsVGR4L1NlYy9TZWNNYWlu LmMiIHNvdXJjZSBmaWxlDQo+ID4gY2hhbmdlcywgYnV0IGZvciB0aGUgcmVzdDoNCj4gDQo+IENh biB5b3UgY29uZmlybSAoYSkgdGhpcyBwYXRjaCBpcyBPSyBmb3IgIk92bWZQa2cvSW50ZWxUZHgv U2VjL1NlY01haW4uYyIsDQo+IGFuZCAoYikgdGhpcyBzZXJpZXMgZml4ZXMgdGhlIHNsb3dkb3du IHlvdSBoYWQgZW5jb3VudGVyZWQ/DQo+IA0KPiAodGhhdCdzIHdoYXQncyBsZWZ0IGJlZm9yZSB3 ZSBjYW4gbWVyZ2UgdGhpcyBzZXJpZXMpDQo+IA0KV2UgdGVzdCB0aGUgcGF0Y2ggaW4gVERYIGFu ZCBmaW5kIEVYSVRfUkVBU09OX0NSX0FDQ0VTUyBpcyB0cmlnZ2VyZWQgaW4gRFhFIHBoYXNlLiBJ dCBjYXVzZSBhbiBhc3NlcnQgYmVjYXVzZSBpdCBpcyBub3QgaGFuZGxlZCBieSBDY0V4aXRIYW5k bGVWZS4NCg0KVGhhbmtzDQpNaW4NCg0KCi09LT0tPS09LT0tPS09LT0tPS09LT0tCkdyb3Vwcy5p byBMaW5rczogWW91IHJlY2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4KVmll dy9SZXBseSBPbmxpbmUgKCMxMTQ5MzApOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwv bWVzc2FnZS8xMTQ5MzAKTXV0ZSBUaGlzIFRvcGljOiBodHRwczovL2dyb3Vwcy5pby9tdC8xMDQw NTI1OTEvNzY4NjE3NgpHcm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8KVW5z dWJzY3JpYmU6IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC91bnN1YiBbcmViZWNjYUBv cGVuZncuaW9dCi09LT0tPS09LT0tPS09LT0tPS09LT0tCgoNCg==