From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web08.32483.1611551745757782633 for ; Sun, 24 Jan 2021 21:15:45 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=TwWVqt3A; spf=pass (domain: intel.com, ip: 192.55.52.43, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: j9dS7/GfnpNeGYVPVJciBz9PDpKhEXpSigN0vBlhC/agsrs4hoWqxJPs+gbou7weWk58kJu7kY cyhd//6Sb7Yg== X-IronPort-AV: E=McAfee;i="6000,8403,9874"; a="264487730" X-IronPort-AV: E=Sophos;i="5.79,372,1602572400"; d="scan'208";a="264487730" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jan 2021 21:15:45 -0800 IronPort-SDR: ml/J2jfx1TewI0Mvg5E4H5FqE2G8mSdQSb8VlmiFxIVxxD4mfUgMhhqH3FJCsiXZjjVBCe2gQa QKnPoRm5LQtQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,372,1602572400"; d="scan'208";a="368455882" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by orsmga002.jf.intel.com with ESMTP; 24 Jan 2021 21:15:45 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Sun, 24 Jan 2021 21:15:44 -0800 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Sun, 24 Jan 2021 21:15:44 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Sun, 24 Jan 2021 21:15:44 -0800 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.109) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Sun, 24 Jan 2021 21:15:44 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R4d1OAVfdnZy3EQKAZUiQVjj0/CIIwWcnLNU05m2NnqL2/Gx+m/iwau5/9fNcIZJXPBfOA+yE5igyjFHcjUqjQs5vP7NzCHSJEXG7tExqcYWuQVFxN2ifCpYwz1/elxUeQxl0WlkrL/Up8e/Ol3RL6WFaqbMr73sd/Zdz4WeiMrLh47mLaX8uEZFTvs4VpSQY31L91F79fkyrOf7qghHmpI4mrQXiWmfWhAc5W5p9mf0k1UX1n1ZsC73pizhagwNTgcVJ7ufrKZ6b1zEYr4MFYZrdawu0b+TIZDZyTxrwfvJaD7+aFh/SeSWk9bKH5WoAbwD8gLvd8CKkH2+VRGBGA== 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=ELN9I/YRlu45JzcMU2N0+fspo/EUYCiRJB5pJ2A4mMM=; b=AXB87iYNKrKDPyHXPTu/4e8jwi02kxYfGf46xbWhC3I7bpQavoAoc0VavDPHCs/lF78IsXDHoQM4cCRnYVW3gEaYoygXWbDx6ox98v7y2OAYxrx3xlyYy3SrVDhdi1opt/31gIrnTl3bbyegEUmEbIR9k3FmYZ6TkjyNqwCI0K7PNxJfUNZENe6y0hJtkNDEkQtVtCbFzIfLdrcMTkl1dxfCAbGsUOHQ2Vx5RJAosXmVSfXCskuSZrR2D4x9+8iBJJ/YeNApzOZ8BDDS79MbcudZlP58+lMa3VrHgQwxE98xHFQkB/+TkBToa6ZtqWvKOZPyxgSZL8dx4KBP6sY8VA== 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=ELN9I/YRlu45JzcMU2N0+fspo/EUYCiRJB5pJ2A4mMM=; b=TwWVqt3Ae03SREKpyual8KQiKgic3WKW/N/vaZBMYWQhQRpygHdIN6WA75PgG6jRo77g3T5kxWJKBXOE/QAgTlHmQoXbimpPC5Tn++8RCtQxNyPYVYVLYQYBvRiPY3/EceGB3/UjBpUfndY+b5a9IAlsfCjx9XnLpymj8PBcYMk= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by MWHPR1101MB2254.namprd11.prod.outlook.com (2603:10b6:301:58::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.16; Mon, 25 Jan 2021 05:15:43 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::edc6:bb79:1d26:53cf]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::edc6:bb79:1d26:53cf%3]) with mapi id 15.20.3784.019; Mon, 25 Jan 2021 05:15:43 +0000 From: "Michael D Kinney" To: "Zeng, Star" , "devel@edk2.groups.io" , "Kinney, Michael D" CC: "Dong, Eric" , "Ni, Ray" , "Laszlo Ersek" , "Kumar, Rahul1" Subject: Re: [edk2-devel] [Patch 1/1] UefiCpuPkg/Library/MpInitLib: Fix AP VolatileRegisters race condition Thread-Topic: [edk2-devel] [Patch 1/1] UefiCpuPkg/Library/MpInitLib: Fix AP VolatileRegisters race condition Thread-Index: AQHW8OGOvLzfScT0Z0GOD8BPPOu8L6o3rrCAgAAhQRA= Date: Mon, 25 Jan 2021 05:15:43 +0000 Message-ID: References: <20210122171020.589-1-michael.d.kinney@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [24.19.191.44] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b8ed4fda-0f27-478f-0502-08d8c0f043e3 x-ms-traffictypediagnostic: MWHPR1101MB2254: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6108; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: umn9DwHaYK6eUtKZMUfuyvCXPjoUEtNAsrN0XfdA1LVjMctZCa7yKNt2YOytJwaz+stqzwlxIYYPkur9rfAHizupuhNpTFyamOzn/uuy7tgnjePyouIO4p096/MHU+LWmpbqtfHeDtnnQYcIHsRsZzMzWQJl9+6Ch5Byv1oqKDZ356tibCjs6QF8Sc9jDEN9VrGS9XW+lRcC1sOz+6ZylmYme3+L+vPlg2S3UtGIjSEkPdBjqSgBA3SWZg9UX6Um4cKKOy/+rDb/YKAxP1a3niHG1vPlSiaB4rNcYiYEkxGNfWluZhYoJtEnKJeosJrXkEK7Pcpg4tENZ2vl1zGYSeDwueGTFQU+Qx+FlRjmrSrfyD0iSmegDMIQBdrkVklpjmuLQrM/h0qr/L/lSptepyEDwwKhElBBHMCbgaVGfNbV4NnkRYTLV3Odc46qA6ljK0Wu8Awvo/G3OjQBcum/zeru4T24hl3IHa4TJ8fqAkgyJMkAyu9PEsf+07x4j0mi5S7Y5vDNZ5xG0uEL5jDXHqijwbRxUacpKPX2K4w0d4bo3soCUskQVQ9Af00lUTlCAGoqRPZz/uH2bFwlggLei0rtJxC6LM/PvxwVe9xz+TE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(6029001)(4636009)(366004)(346002)(396003)(136003)(376002)(39860400002)(4326008)(33656002)(71200400001)(53546011)(55016002)(478600001)(107886003)(52536014)(9686003)(8676002)(186003)(966005)(8936002)(26005)(6506007)(5660300002)(83380400001)(2906002)(7696005)(86362001)(54906003)(76116006)(66476007)(110136005)(316002)(66946007)(64756008)(66556008)(66446008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?QjNZZEc4bTZEbzlOc1JyUWpFRUpNc0txcHJya0Vub0pBNFB2T1RqbzM0a3Na?= =?utf-8?B?VzlhYU12S2Ura24wUEJaem9oUG84TVNtK2o2Y0NTV3grMWdWcVRCMXQyc1c2?= =?utf-8?B?OUN2SE5tOUNMZ3VRT2NPRDA4bTJGZm9UZ2g4UzBLL2tTSFpDQmpwUVZGbDFz?= =?utf-8?B?WjAwZHVwQUhzc1VSN2JXMm01V2pnSEpVR0tVTjNhWGFOTHBjR2NUOFJsbUda?= =?utf-8?B?VWQvUU9KVWtuOVNnZnBGQXRGN2xOb203N0JIK2tKeVhma1dwbkhzMXhBV0hy?= =?utf-8?B?VVhCaEN5VHdVbTV0UHdDR0M5NHRrZGxuMEwzUkNZN2EyRmJRb2U4RmdOTXp0?= =?utf-8?B?MWFRNXdvTUdpZjJQRXJGL05YSDlJM3JGWWp1RDQrUGxiay9oMjllZzl0dGZk?= =?utf-8?B?SmhrcjhkbmQvK2gvSWQ3WURRSENVWjh0dCtTRG1XZXhHMC9qREUrWndBRWRS?= =?utf-8?B?VDZQdDFjQzhNcVdPR1QzaXlQNVplU04za051Sk9Ka2V5WmdTRWxaQThRRWc5?= =?utf-8?B?dk1ueWZ2VlpwNVEwb1UrUHBuUGpja21DK2hFU25NcVNlVFpKODVwRTJQZkQr?= =?utf-8?B?MWd5VUlreVRjT0pQLy9ydE9jM3R2MmYzamp3Q0pIZzZFNi9nWXpBWXJhNS93?= =?utf-8?B?S0VZWGxRUjNEUlNXU3l5SERPQUpnM3U1YVZpdStMc2RENVYrdjZnclQxSUJy?= =?utf-8?B?OU9jN2RZUHhxVGJKRzVUQ0tsR0k1RnRKd0JhSm1Ub21YVE1kVC9ieWdBeGcw?= =?utf-8?B?ZW50N2Z4Z1JKY0JvUi9TemNNdDZuSEpGQnpNS1I4Z0N4MUl6a0dWaVBkVlZC?= =?utf-8?B?b21CQ25uVkRoS1dVbUlaaEVKdmJlVElhUTVwelp0a3NoL3lLUnhPeE5uNXVi?= =?utf-8?B?b25GcFZnZWNYc1hWRk4vR3ZJWENzWkxudzJnZFlaMDllQ0RTSFluZ0pLOEkz?= =?utf-8?B?K2I3bUh6QjFlcnVYekkrNmlmV3E4RG1FSzFPSGdJd2hJdlhCdzJNWmVCZkY3?= =?utf-8?B?Z0crWmU1UlVCamZDaFpnenE0L082cElrenE3Rk4vZmtrc0hwWmZnMFpVdVFJ?= =?utf-8?B?Y25PaVdjeWRUcGxJVWZtWlkzSUZVNENNRDVmMXI0US93VFU4WnB2MUdQUDJC?= =?utf-8?B?KzNhaEcxbml0RytCUVdYbUlrWkhTSVNRYXZMZmJaMEdvcnh1blkxTFZ5SGhi?= =?utf-8?B?VzdSRU1hME0rOGpCSFhuZVh5c3NUSDBLWnhLMWFqUHlRc1pxbU0vd0Z0NGVF?= =?utf-8?B?ZVIrTTVhZStjOWJRL1NZMllmLzJDcnkvM1MxeklSZjYxa3dIUlJ4VVh5LzV3?= =?utf-8?B?dnF4QWs1Mk5nUkpRUEViZlZFbW5GNkNKalRrYml0b0dCSi82RTVLeHVSK3Vt?= =?utf-8?B?Smk4RWlRL09nUGROOXBTMGJ0WFN0NjVsR3BMek9vZlBGUFU4bkpHWFBnSUMw?= =?utf-8?Q?XM963f8h?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b8ed4fda-0f27-478f-0502-08d8c0f043e3 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jan 2021 05:15:43.6222 (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: ALmR3dJr6r+Vt2hrFxy9hVB58dnQpDCqhJuSF4ndzDBB0NbROiKvJL61o85tNjEpXJoKk96GxcKE3wQGX26TE7QWtBCvjrJiqO/gHoQNhJM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1101MB2254 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgU3RhciwNCg0KVGhhdCBsaW5lIGlzIG9ubHkgYWN0aXZlIHdoZW4gKENwdU1wRGF0YS0+U2V2 RXNJc0VuYWJsZWQpIGlzIFRSVUUuDQoNClRoZSByYWNlIGNvbmRpdGlvbiBhZGRyZXNzZWQgYnkg dGhpcyBCWiBpcyBmb3Igc3lzdGVtcyB3aXRoIFNlY0VzSXNFbmFibGVkIEZBTFNFLg0KDQpGcm9t IGNvbW1lbnRzIGluIHRoaXMgZmlsZSB0aGUgU2VjRXNJc0VuYWJsZWQgY2FzZXMgaGF2ZSBhbHJl YWR5IGJlZW4gaGFuZGxlZC4NCg0KTWlrZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IFplbmcsIFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+DQo+IFNlbnQ6IFN1bmRh eSwgSmFudWFyeSAyNCwgMjAyMSA3OjE1IFBNDQo+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsg S2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiBDYzogRG9u ZywgRXJpYyA8ZXJpYy5kb25nQGludGVsLmNvbT47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20+ OyBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgS3VtYXIsIFJhaHVsMQ0KPiA8cmFo dWwxLmt1bWFyQGludGVsLmNvbT47IFplbmcsIFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+DQo+ IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BhdGNoIDEvMV0gVWVmaUNwdVBrZy9MaWJyYXJ5 L01wSW5pdExpYjogRml4IEFQIFZvbGF0aWxlUmVnaXN0ZXJzIHJhY2UgY29uZGl0aW9uDQo+IA0K PiBEb2VzIGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9ibG9iL21hc3Rlci9VZWZp Q3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL01wTGliLmMjTDkwOSAoYWxzbyBkZWNyZW1lbnRzDQo+ IE51bUFwc0V4ZWN1dGluZykgYWxzbyBuZWVkIGJlIGhhbmRsZWQ/DQo+IA0KPiBUaGFua3MsDQo+ IFN0YXINCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBNaWNo YWVsDQo+ID4gRCBLaW5uZXkNCj4gPiBTZW50OiBTYXR1cmRheSwgSmFudWFyeSAyMywgMjAyMSAx OjEwIEFNDQo+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gQ2M6IERvbmcsIEVyaWMg PGVyaWMuZG9uZ0BpbnRlbC5jb20+OyBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgTGFzemxv DQo+ID4gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgS3VtYXIsIFJhaHVsMSA8cmFodWwxLmt1 bWFyQGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiBbZWRrMi1kZXZlbF0gW1BhdGNoIDEvMV0gVWVm aUNwdVBrZy9MaWJyYXJ5L01wSW5pdExpYjogRml4IEFQDQo+ID4gVm9sYXRpbGVSZWdpc3RlcnMg cmFjZSBjb25kaXRpb24NCj4gPg0KPiA+IFJFRjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUu b3JnL3Nob3dfYnVnLmNnaT9pZD0zMTgyDQo+ID4NCj4gPiBGaXggdGhlIG9yZGVyIG9mIG9wZXJh dGlvbnMgaW4gQXBXYWtldXBGdW5jdGlvbigpIHdoZW4NCj4gPiBQY2RDcHVBcExvb3BNb2RlDQo+ ID4gaXMgc2V0IHRvIEhMVCBtb2RlIHRoYXQgdXNlcyBJTklULVNJUEktU0lQSSB0byB3YWtlIEFQ cy4gIEluIHRoaXMgbW9kZSwNCj4gPiB2b2xhdGlsZSBzdGF0ZSBpcyByZXN0b3JlZCBhbmQgc2F2 ZWQgZWFjaCB0aW1lIGEgSU5JVC1TSVBJLVNJUEkgaXMgc2VudA0KPiA+IHRvIGFuIEFQIHRvIHJl cXVlc3QgYSBmdW5jdGlvbiB0byBiZSBleGVjdXRlZCBvbiB0aGUgQVAuICBXaGVuIHRoZQ0KPiA+ IGZ1bmN0aW9uIGlzIGNvbXBsZXRlZCB0aGUgdm9sYXRpbGUgc3RhdGUgb2YgdGhlIEFQIGlzIHNh dmVkLiAgSG93ZXZlciwNCj4gPiB0aGUgY291bnRlcnMgTnVtQXBzRXhlY3V0aW5nIGFuZCBGaW5p c2hlZENvdW50IGFyZSB1cGRhdGVkIGJlZm9yZQ0KPiA+IHRoZSB2b2xhdGlsZSBzdGF0ZSBpcyBz YXZlZC4gIFRoaXMgYWxsb3dzIGZvciBhIHJhY2UgY29uZGl0aW9uIHdpbmRvdw0KPiA+IGZvciB0 aGUgQlNQIHRoYXQgaXMgd2FpdGluZyBvbiB0aGVzZSBjb3VudGVycyB0byByZXF1ZXN0IGEgbmV3 DQo+ID4gSU5JVC1TSVBJLVNJUEkgYmVmb3JlIGFsbCB0aGUgQVBzIGhhdmUgY29tcGxldGVseSBz YXZlZCB0aGVpciB2b2xhdGlsZQ0KPiA+IHN0YXRlLiAgVGhlIGZpeCBpcyB0byBzYXZlIHRoZSBB UCB2b2xhdGlsZSBzdGF0ZSBiZWZvcmUgdXBkYXRpbmcgdGhlDQo+ID4gTnVtQXBzRXhlY3V0aW5n IGFuZCBGaW5pc2hlZENvdW50IGNvdW50ZXJzLg0KPiA+DQo+ID4gQ2M6IEVyaWMgRG9uZyA8ZXJp Yy5kb25nQGludGVsLmNvbT4NCj4gPiBDYzogUmF5IE5pIDxyYXkubmlAaW50ZWwuY29tPg0KPiA+ IENjOiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiA+IENjOiBSYWh1bCBLdW1h ciA8cmFodWwxLmt1bWFyQGludGVsLmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBNaWNoYWVsIEQg S2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiAtLS0NCj4gPiAgVWVmaUNw dVBrZy9MaWJyYXJ5L01wSW5pdExpYi9NcExpYi5jIHwgMzEgKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLQ0KPiA+ICAxIGZpbGUgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRp b25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvVWVmaUNwdVBrZy9MaWJyYXJ5L01wSW5pdExp Yi9NcExpYi5jDQo+ID4gYi9VZWZpQ3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL01wTGliLmMNCj4g PiBpbmRleCA2ODFmYTc5YjRjZmYuLjhiMWY3Zjg0YmFkNiAxMDA2NDQNCj4gPiAtLS0gYS9VZWZp Q3B1UGtnL0xpYnJhcnkvTXBJbml0TGliL01wTGliLmMNCj4gPiArKysgYi9VZWZpQ3B1UGtnL0xp YnJhcnkvTXBJbml0TGliL01wTGliLmMNCj4gPiBAQCAtNzY5LDE1ICs3NjksNiBAQCBBcFdha2V1 cEZ1bmN0aW9uICgNCj4gPiAgICAgICAgUmVzdG9yZVZvbGF0aWxlUmVnaXN0ZXJzICgmQ3B1TXBE YXRhLT5DcHVEYXRhWzBdLlZvbGF0aWxlUmVnaXN0ZXJzLA0KPiA+IEZBTFNFKTsNCj4gPiAgICAg ICAgSW5pdGlhbGl6ZUFwRGF0YSAoQ3B1TXBEYXRhLCBQcm9jZXNzb3JOdW1iZXIsIEJpc3REYXRh LA0KPiA+IEFwVG9wT2ZTdGFjayk7DQo+ID4gICAgICAgIEFwU3RhcnR1cFNpZ25hbEJ1ZmZlciA9 IENwdU1wRGF0YS0NCj4gPiA+Q3B1RGF0YVtQcm9jZXNzb3JOdW1iZXJdLlN0YXJ0dXBBcFNpZ25h bDsNCj4gPiAtDQo+ID4gLSAgICAgIC8vDQo+ID4gLSAgICAgIC8vIERlbGF5IGRlY3JlbWVudGlu ZyB0aGUgQVBzIGV4ZWN1dGluZyBjb3VudCB3aGVuIFNFVi1FUyBpcyBlbmFibGVkDQo+ID4gLSAg ICAgIC8vIHRvIGFsbG93IHRoZSBBUHMgdG8gaXNzdWUgYW4gQVBfUkVTRVRfSE9MRCBiZWZvcmUg dGhlIEJTUCBwb3NzaWJseQ0KPiA+IC0gICAgICAvLyBwZXJmb3JtcyBhbm90aGVyIElOSVQtU0lQ SS1TSVBJIHNlcXVlbmNlLg0KPiA+IC0gICAgICAvLw0KPiA+IC0gICAgICBpZiAoIUNwdU1wRGF0 YS0+U2V2RXNJc0VuYWJsZWQpIHsNCj4gPiAtICAgICAgICBJbnRlcmxvY2tlZERlY3JlbWVudCAo KFVJTlQzMiAqKSAmQ3B1TXBEYXRhLQ0KPiA+ID5NcENwdUV4Y2hhbmdlSW5mby0+TnVtQXBzRXhl Y3V0aW5nKTsNCj4gPiAtICAgICAgfQ0KPiA+ICAgICAgfSBlbHNlIHsNCj4gPiAgICAgICAgLy8N Cj4gPiAgICAgICAgLy8gRXhlY3V0ZSBBUCBmdW5jdGlvbiBpZiBBUCBpcyByZWFkeQ0KPiA+IEBA IC04NjYsMTkgKzg1NywzMyBAQCBBcFdha2V1cEZ1bmN0aW9uICgNCj4gPiAgICAgICAgfQ0KPiA+ ICAgICAgfQ0KPiA+DQo+ID4gKyAgICBpZiAoQ3B1TXBEYXRhLT5BcExvb3BNb2RlID09IEFwSW5I bHRMb29wKSB7DQo+ID4gKyAgICAgIC8vDQo+ID4gKyAgICAgIC8vIFNhdmUgQVAgdm9sYXRpbGUg cmVnaXN0ZXJzDQo+ID4gKyAgICAgIC8vDQo+ID4gKyAgICAgIFNhdmVWb2xhdGlsZVJlZ2lzdGVy cyAoJkNwdU1wRGF0YS0NCj4gPiA+Q3B1RGF0YVtQcm9jZXNzb3JOdW1iZXJdLlZvbGF0aWxlUmVn aXN0ZXJzKTsNCj4gPiArICAgIH0NCj4gPiArDQo+ID4gICAgICAvLw0KPiA+ICAgICAgLy8gQVAg ZmluaXNoZWQgZXhlY3V0aW5nIEMgY29kZQ0KPiA+ICAgICAgLy8NCj4gPiAgICAgIEludGVybG9j a2VkSW5jcmVtZW50ICgoVUlOVDMyICopICZDcHVNcERhdGEtPkZpbmlzaGVkQ291bnQpOw0KPiA+ DQo+ID4gKyAgICBpZiAoQ3B1TXBEYXRhLT5Jbml0RmxhZyA9PSBBcEluaXRDb25maWcpIHsNCj4g PiArICAgICAgLy8NCj4gPiArICAgICAgLy8gRGVsYXkgZGVjcmVtZW50aW5nIHRoZSBBUHMgZXhl Y3V0aW5nIGNvdW50IHdoZW4gU0VWLUVTIGlzIGVuYWJsZWQNCj4gPiArICAgICAgLy8gdG8gYWxs b3cgdGhlIEFQcyB0byBpc3N1ZSBhbiBBUF9SRVNFVF9IT0xEIGJlZm9yZSB0aGUgQlNQIHBvc3Np Ymx5DQo+ID4gKyAgICAgIC8vIHBlcmZvcm1zIGFub3RoZXIgSU5JVC1TSVBJLVNJUEkgc2VxdWVu Y2UuDQo+ID4gKyAgICAgIC8vDQo+ID4gKyAgICAgIGlmICghQ3B1TXBEYXRhLT5TZXZFc0lzRW5h YmxlZCkgew0KPiA+ICsgICAgICAgIEludGVybG9ja2VkRGVjcmVtZW50ICgoVUlOVDMyICopICZD cHVNcERhdGEtDQo+ID4gPk1wQ3B1RXhjaGFuZ2VJbmZvLT5OdW1BcHNFeGVjdXRpbmcpOw0KPiA+ ICsgICAgICB9DQo+ID4gKyAgICB9DQo+ID4gKw0KPiA+ICAgICAgLy8NCj4gPiAgICAgIC8vIFBs YWNlIEFQIGlzIHNwZWNpZmllZCBsb29wIG1vZGUNCj4gPiAgICAgIC8vDQo+ID4gICAgICBpZiAo Q3B1TXBEYXRhLT5BcExvb3BNb2RlID09IEFwSW5IbHRMb29wKSB7DQo+ID4gLSAgICAgIC8vDQo+ ID4gLSAgICAgIC8vIFNhdmUgQVAgdm9sYXRpbGUgcmVnaXN0ZXJzDQo+ID4gLSAgICAgIC8vDQo+ ID4gLSAgICAgIFNhdmVWb2xhdGlsZVJlZ2lzdGVycyAoJkNwdU1wRGF0YS0NCj4gPiA+Q3B1RGF0 YVtQcm9jZXNzb3JOdW1iZXJdLlZvbGF0aWxlUmVnaXN0ZXJzKTsNCj4gPiAgICAgICAgLy8NCj4g PiAgICAgICAgLy8gUGxhY2UgQVAgaW4gSExULWxvb3ANCj4gPiAgICAgICAgLy8NCj4gPiAtLQ0K PiA+IDIuMjkuMi53aW5kb3dzLjINCj4gPg0KPiA+DQo+ID4NCj4gPiANCj4gPg0KDQo=