From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mx.groups.io with SMTP id smtpd.web11.5027.1664410284642802036 for ; Wed, 28 Sep 2022 17:11:24 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=JEn8H76K; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1664410284; x=1695946284; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=bP7BD2iHZe8rWNUdsY/OmsnD78/Ptbw+DthZXrw0NuY=; b=JEn8H76K1BlPUeh8UG/BweOM3U7cdws8BSGvHK8ECSQKrrlm3IczdeJr a/OObSnbL/filrpnn5Utw2ZiVrrFeqieHr74j0/SyyFbmkMhMwnIx09Xd skZsEx7EocPB7wqULcljK5Ot1+d0RweqM1KvYCQSKhybFEqYoe+4qJsmT I8LKJV93Lk2/Nx3zX2e2GFviENbayZtUI0WAmvx/JuyiHUkBjGLokUcCM VqYPo5kdU8+1Ci/JF8ss2nrAiyu4BMHmqXje1JK0+58CBeto2vLjNRMcu bEtNbfZUnzYqb1f7RLKkyT+xg2rfmJBDlc66uj8hc8lsJGbk2O1wVftBN w==; X-IronPort-AV: E=McAfee;i="6500,9779,10484"; a="299350594" X-IronPort-AV: E=Sophos;i="5.93,353,1654585200"; d="scan'208";a="299350594" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2022 17:11:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10484"; a="747618183" X-IronPort-AV: E=Sophos;i="5.93,353,1654585200"; d="scan'208";a="747618183" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga004.jf.intel.com with ESMTP; 28 Sep 2022 17:11:23 -0700 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) 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.2375.31; Wed, 28 Sep 2022 17:11:23 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 28 Sep 2022 17:11:22 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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.2375.31 via Frontend Transport; Wed, 28 Sep 2022 17:11:22 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.44) 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.2375.31; Wed, 28 Sep 2022 17:11:22 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JNjdewwwtPkkJLMx72rOO5dswXtIAeoZbC3wEm9Toznl9HUN2Q8Sq7Z6TSHK4gvoT4FbvXgJMbqEvF8p5qg8GqxqFsbWuvLn4zqbA7Gh70BkJakCLlBBOBB++LfSRY4T9c2d5fIKffIZdJgA+hwWCj9SSaIdq5SBpO1jAwAkWhIZYV+Lb+05gQmCZ5oxirzPGJgii6uh2M8yyWspXiWK5+F0NmjAf1UOZQDm/LJ5LMX8mf/hLBey5PV4DwDvBEDYCNXEUkSojHvNSL6VhNtpZhmG7fEsXFLFx258BeetP9+I6SwqonHuutmOwNq9gqU0HcvBxZAlvbr+ylx7AGgRkQ== 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=bP7BD2iHZe8rWNUdsY/OmsnD78/Ptbw+DthZXrw0NuY=; b=jXvATjWertc4583e/AQJHGafGzHkQgLgqWTkL+tz6KHuQyiBHD+NY2PagJsPqfroQUqGtV803f2EoZHUSvoBtuEGKgYjt9QYnmuw/6odgu1Uu10fxq3cbC0vyyDIRUfReYt91PQUGDjc3vrFw8L/phkHnQNyhEWyoV6bQ9tLHxdE8p3GB0Trvs7eF1n6Qb3pKSegNNHFy62D3E7VMK1Dzl20u+SKTHZs6oDB+jlfZHEjRhVhd+GzAbzws5D/DaOKsJlTpgmbt12E97RSGHCSy+BcJfdlUKyOSaac22e5itYxNea7+6LKSK+0QA3YuqgLfNzVs7fHfZw5gAhPD7eaww== 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 MWHPR11MB1631.namprd11.prod.outlook.com (2603:10b6:301:10::10) by SN7PR11MB7042.namprd11.prod.outlook.com (2603:10b6:806:299::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.17; Thu, 29 Sep 2022 00:11:20 +0000 Received: from MWHPR11MB1631.namprd11.prod.outlook.com ([fe80::483f:4bb5:a15f:f571]) by MWHPR11MB1631.namprd11.prod.outlook.com ([fe80::483f:4bb5:a15f:f571%11]) with mapi id 15.20.5676.017; Thu, 29 Sep 2022 00:11:20 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , "dionnaglaze@google.com" CC: Gerd Hoffmann , James Bottomley , "Yao, Jiewen" , Tom Lendacky , Ard Biesheuvel Subject: Re: [edk2-devel] [PATCH v4 4/6] MdeModulePkg: DxeMain accepts all memory at EBS if needed Thread-Topic: [edk2-devel] [PATCH v4 4/6] MdeModulePkg: DxeMain accepts all memory at EBS if needed Thread-Index: AQHY00/buby3ERBtXkeZtNldbK3Sxq31iT4w Date: Thu, 29 Sep 2022 00:11:20 +0000 Message-ID: References: <20220928153323.2583389-1-dionnaglaze@google.com> <20220928153323.2583389-5-dionnaglaze@google.com> In-Reply-To: <20220928153323.2583389-5-dionnaglaze@google.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MWHPR11MB1631:EE_|SN7PR11MB7042:EE_ x-ms-office365-filtering-correlation-id: 9a427033-2138-446d-a658-08daa1af22ce x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: siC7kK0b0Rb6oFMaSZANQWj7LYtPoxBq4HrsHMtqUCVMNjsywfPlYicbprEzVH9mwHqwGFQAFtU0Pmd1o4/W64puPRs/QPY8uJCGK2a2tcC7gHcDtXGH+/EWioK8oZ5lwP6hfcnQBZ/Ka3ZiTmpPxNbGmD1rFqhApBpunIklO7kQGGdBQPc/9Dwapw9L/4Rv9OxZ2r1y2plmX2EHAExl259fEQHbmuRo9N9/FAeNugyfBQ0/DfDVq5J4SN2DIY+wq800+eQ/8hoK1jfdPUw5mZPQwLxv7lNTtw1U/w2r5vKhmGEEuRs6bTMa54EAX3AMM4mA4VvAztpyMeulASKKhrDSafqvfF3dTTnL37REYBQDUoOtUFWOKCD6T2isbXokfY9XcRlECc1TJCEIVRagqH2StuSGrP8awkneH1uqZOWUea7I9gd0dp3a5Ezxuk+8aYJ7+234Ipnap0Kkn2Hnl2CYSn3sN9mZtYpz2iatnnk18c2rh+mdJgIxFco5YFDeiNn0YNzItx3hhqV16sTnZDwgEF4RtLpWJIz3VSHrUyL2DlMGCXBVPWCC+TCoNx7xBCJijnTp2y9iKsMeOBp5waVFL6PPiItqxczkP+GomW4Ztg+ep4inR5FzCRUn6lqERwgt/wFjzAmHtIauJsZ9CrO4dx1eqNYXvjeWjmRzg6U9Ad4WskRshmePuytB5eiHUPypTCUyEU6Aa4sB86E/66ze+CuqhHeSWTO/85xPfFVs+t8ULX5rgA5Uj8RJ9stQrKIL1ZC2s20V3wLDcGP6bDQ/X/obx8sX+JyuCoHQiGgY/SYa8N6KVanEw0mo8OjgRFHGH7fnVDNNQqu8tDz89Q== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1631.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(39860400002)(366004)(346002)(376002)(136003)(396003)(451199015)(478600001)(71200400001)(9686003)(53546011)(26005)(83380400001)(186003)(2906002)(6506007)(55016003)(52536014)(7696005)(8936002)(66446008)(66476007)(966005)(54906003)(66946007)(66556008)(41300700001)(5660300002)(64756008)(4326008)(8676002)(76116006)(110136005)(19627235002)(66899015)(82960400001)(33656002)(38070700005)(122000001)(38100700002)(316002)(86362001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a3VaZ3Ftc2NtNTJubTE4cno3V2tyQWQzemczN2tDT2p2Z2lwR0JLUmdncWZO?= =?utf-8?B?WTgvaHpSVnd0dWgxWW0rRW5lMmM4UGxxSWdiVjZVR3UzZExhMm9qbDdoWStQ?= =?utf-8?B?YzFXZWx4OEh6bTZmTDFLd2hSdkdXSWJ0a2tUNHR5eFBxMlR1KzREMXNQNXIz?= =?utf-8?B?M1pJSlZhN3VOOUNlZFJ5VUZiV0VySmFwUFNvbW5QbE5TcWxucjVOQy9IVDBl?= =?utf-8?B?bkYzVWN6M0Y2QXpyM3RHbk9hb08zTFpDWmhPQzVnMC85dDZTUTJoSTd2bjhR?= =?utf-8?B?OWMzaERPSXNidkRib256VzlwOTFuanRaN3RaZHFoQzFrdFlQRW1YamIrM09l?= =?utf-8?B?SzFHaGlPbDhQMFNNK0gwTElJdGFNeEFRTmRzenRTbUV0VjdFWEs1WVhWcEN0?= =?utf-8?B?MnlsaGdLMzlVZHNhYzBaYjdZS2taNHZtN2V0c205SkNoMmtxcTIrekJNY1pk?= =?utf-8?B?SlpTRU82cCtPelRrdy85cFlCZjc5RlIvVU5mMVVvWkU4cDNMRFpscDZobzdJ?= =?utf-8?B?QVVKNzQrUDFkUnhFclZqQUlxV0NLMGhlRy9vUU9CRXY4RkI5eGUyOXFVRnpL?= =?utf-8?B?L3RNd0xOMWF2RWpRS3hhN1pXUjB2clFOK0RqR05RMHNhNkpZWXp3RFU4aXg0?= =?utf-8?B?WE1CVEJ5R1JUbkE2MExXczNkV1dCNzMwS2E1NU9EblduR1NZZ1g0OVFrdmxr?= =?utf-8?B?Y09vTG1USmlsKytWRVVlUEtZa0tnSVBTN3BJc1U4cDBZR1hXcUQyK2dydjJM?= =?utf-8?B?cXk5MlJSS2lTNjRLRWhZdUU3WkZhZm9LbjVNUnQwdXdoWUNna0ZiN1FWU3Zy?= =?utf-8?B?TkxRck9DUVZnanl1NHA3ME1vUWNkMFAycUZ5TC8vSE5aU0hYRlRJdGV4Mjlq?= =?utf-8?B?czlqV2V6ZUlnR2NkT3hkUDNDdEVVNHdsa3lQNHZDZGlOSUVQcWR2SkFsYklB?= =?utf-8?B?ZHZXUFgwYUdnUTI3bzBMY24wU0R3N1NsRFVHQ3FxclpEVCtDS0tBUTNjTlVG?= =?utf-8?B?QkRRcTNiQmJ4NC9KM0YzZEdIckEzQ2FIaEJiZDV1Q0lsWTVWSTNmNVRJL2Yx?= =?utf-8?B?ZmNDZFlmeStkbktSRml2bTd2TDFldjg4bm85S25PSkFxTGZnTERSRHp6disx?= =?utf-8?B?ZzQ3T3dGQktCeEYyV2JtSHpOTEdyU3QyWTYxcjhBalFtYkkzTWpVTzBHSGFu?= =?utf-8?B?WW4zY0JPMVJuQkxMakVQTEp1RVlYV3JTUmFpUXBJMHA3N3pGZm5UMmZmZkZl?= =?utf-8?B?cnBDVml4M1RzNmNGSlJkN09DdytRZnZsclZHa09qTExDYWhjbTBpUVNlcnZZ?= =?utf-8?B?M213QldFMFZwaDhZak9rRjdnTERYMGhTN2Yzb1dkcDhleU1mWkhac3hSb2VR?= =?utf-8?B?WjdFRE4xSnlUNTQrUlYwV0pnYmhOLzVCVFhGZEpmSlVtdDBvWnMvVnA4clBE?= =?utf-8?B?MFZMd2lIUlk0SzhKWjFkeEQ5UmlmeGdLMm55YmxBTVlxMDYyclpKbXdqUUZV?= =?utf-8?B?WCtxRjFyTXhlSUoveEV3V290ODRWMUIyY0E3V1Z6L0hNcGJURWxad1lkdXBO?= =?utf-8?B?MmQ5MjM5anlHUTVmVU9icVo4RDZhZm43Z2lnZzJBYzl1U092Q2g3TzBoOWJq?= =?utf-8?B?MkFMS2R5bzJCZFJraUZpcDYwUnpyRjh4TU0yc28vTzE2bmtGTDN2RW8rSXU3?= =?utf-8?B?TiswZVhkYXBXVS85YjhjV0MrRDlIUjVHcnQ2U21XbzlJWElpSWFRMjNQazEy?= =?utf-8?B?dHVmRkR1RXFrNXBOSDhFOFl0WFppNDZhaTBlbDVtSmF4TVNSYmJFcG1GQmdx?= =?utf-8?B?Ykdua09HZ3UxRHVVSndtYnExZE4xTGNNNmt2c0VtVXdqelptZ29mSzBkNEVk?= =?utf-8?B?VTFLTWJhZ0R6NERLc3J6cXZsZjhhNUdTaC9mczlFWTcwaFlMZ2NFMW02TEFi?= =?utf-8?B?dDAzM1NHK3hoays3TVE2dVdsaHhxalVSbUgrQ1VWVERHZTN4R2o5WG1LbzVq?= =?utf-8?B?R1lkYU9RVDM5WVdNNmRTYithTVpjTnQwQnJsMWJNemdUSlU1T3dLWjlGdGl5?= =?utf-8?B?MDZDSzYxNmRSQ2liUnVxR1MrK0dTRUs3NlBmcklUR0wyRzZyMkV2RkFpNkFP?= =?utf-8?Q?XqjAX+WOlBIM7xRa2//e+FFMQ?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1631.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9a427033-2138-446d-a658-08daa1af22ce X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Sep 2022 00:11:20.1507 (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: tSlUZ1W7UvXlI4dxJIgTe3+M7Gr/c9uoVLsP+mhUTCKOZQEtT3sFiDVdi4/nFoTFykXtzPqKRf2Ru7XDKUFZ0Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB7042 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Q2FuIHlvdSBleHBsYWluIGEgYml0IG1vcmUgd2h5IHRoaXMgUENEIGlzIG5lZWRlZD8NCg0KPiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8 ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBEaW9ubmEgR2xhemUgdmlhIGdyb3Vw cy5pbw0KPiBTZW50OiBXZWRuZXNkYXksIFNlcHRlbWJlciAyOCwgMjAyMiAxMTozMyBQTQ0KPiBU bzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IERpb25uYSBHbGF6ZSA8ZGlvbm5hZ2xhemVA Z29vZ2xlLmNvbT47IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsgSmFtZXMgQm90 dG9tbGV5DQo+IDxqZWpiQGxpbnV4LmlibS5jb20+OyBZYW8sIEppZXdlbiA8amlld2VuLnlhb0Bp bnRlbC5jb20+OyBUb20gTGVuZGFja3kgPHRob21hcy5sZW5kYWNreUBhbWQuY29tPjsgQXJkDQo+ IEJpZXNoZXV2ZWwgPGFyZGJAa2VybmVsLm9yZz4NCj4gU3ViamVjdDogW2VkazItZGV2ZWxdIFtQ QVRDSCB2NCA0LzZdIE1kZU1vZHVsZVBrZzogRHhlTWFpbiBhY2NlcHRzIGFsbCBtZW1vcnkgYXQg RUJTIGlmIG5lZWRlZA0KPiANCj4gV2l0aCB0aGUgYWRkaXRpb24gb2YgdGhlIEVmaVVuYWNjZXB0 ZWRNZW1vcnkgbWVtb3J5IHR5cGUsIGl0IGlzIHBvc3NpYmxlDQo+IHRoZSBFRkktZW5saWdodGVu ZWQgZ3Vlc3RzIGRvIG5vdCB0aGVtc2VsdmVzIHN1cHBvcnQgdGhlIG5ldyBtZW1vcnkNCj4gdHlw ZS4gVGhpcyBjb21taXQgdXNlcyB0aGUgbmV3IFBjZEVuYWJsZVVuYWNjZXB0ZWRNZW1vcnkgdG8g ZW5hYmxlDQo+IHVuYWNjZXB0ZWQgbWVtb3J5IHN1cHBvcnQgYmVmb3JlIEV4aXRCb290U2Vydmlj ZXMgaXMgY2FsbGVkIGJ5IG5vdA0KPiBhY2NlcHRpbmcgYWxsIHVuYWNjZXB0ZWQgbWVtb3J5IGF0 IEVCUy4NCj4gDQo+IFRoZSBleHBlY3RlZCB1c2FnZSBpcyB0byBzZXQgdGhlIG5ldyBQY2Qgd2l0 aCBhIHByb3RvY29sIHRoYXQgaXMgdXNhYmxlDQo+IGJ5IGJvb3Rsb2FkZXJzIGFuZCBkaXJlY3Rs eS1ib290ZWQgT1NlcyB3aGVuIHRoZXkgY2FuIGRldGVybWluZSB0aGF0IHRoZQ0KPiBPUyBkb2Vz IGluZGVlZCBzdXBwb3J0IHVuYWNjZXB0ZWQgbWVtb3J5Lg0KPiANCj4gQ2M6IEdlcmQgSG9mZm1h bm4gPGtyYXhlbEByZWRoYXQuY29tPg0KPiBDYzogSmFtZXMgQm90dG9tbGV5IDxqZWpiQGxpbnV4 LmlibS5jb20+DQo+IENjOiBKaWV3ZW4gWWFvIDxqaWV3ZW4ueWFvQGludGVsLmNvbT4NCj4gQ2M6 IFRvbSBMZW5kYWNreSA8dGhvbWFzLmxlbmRhY2t5QGFtZC5jb20+DQo+IENjOiBBcmQgQmllc2hl dXZlbCA8YXJkYkBrZXJuZWwub3JnPg0KPiANCj4gU2lnbmVkLW9mZi1ieTogRGlvbm5hIEdsYXpl IDxkaW9ubmFnbGF6ZUBnb29nbGUuY29tPg0KPiAtLS0NCj4gIE1kZU1vZHVsZVBrZy9Db3JlL0R4 ZS9EeGVNYWluLmggICAgICAgICB8IDEwICsrKw0KPiAgTWRlTW9kdWxlUGtnL0NvcmUvRHhlL0R4 ZU1haW4uaW5mICAgICAgIHwgIDIgKw0KPiAgTWRlTW9kdWxlUGtnL0NvcmUvRHhlL0R4ZU1haW4v RHhlTWFpbi5jIHwgMTQgKysrLQ0KPiAgTWRlTW9kdWxlUGtnL0NvcmUvRHhlL01lbS9QYWdlLmMg ICAgICAgIHwgODcgKysrKysrKysrKysrKysrKysrKysNCj4gIDQgZmlsZXMgY2hhbmdlZCwgMTEy IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9NZGVNb2R1 bGVQa2cvQ29yZS9EeGUvRHhlTWFpbi5oIGIvTWRlTW9kdWxlUGtnL0NvcmUvRHhlL0R4ZU1haW4u aA0KPiBpbmRleCA4MTVhNmI0YmQ4Li5hYzk0M2M4N2EzIDEwMDY0NA0KPiAtLS0gYS9NZGVNb2R1 bGVQa2cvQ29yZS9EeGUvRHhlTWFpbi5oDQo+ICsrKyBiL01kZU1vZHVsZVBrZy9Db3JlL0R4ZS9E eGVNYWluLmgNCj4gQEAgLTI2OTgsNiArMjY5OCwxNiBAQCBDb3JlSW5pdGlhbGl6ZU1lbW9yeVBy b3RlY3Rpb24gKA0KPiAgICBWT0lEDQo+ICAgICk7DQo+IA0KPiArLyoqDQo+ICsgICBBY2NlcHQg YW5kIGNvbnZlcnQgdW5hY2NlcHRlZCBtZW1vcnkgdG8gY29udmVudGlvbmFsIG1lbW9yeSBpZiB1 bmFjY2VwdGVkDQo+ICsgICBtZW1vcnkgaXMgbm90IGVuYWJsZWQgYW5kIHRoZXJlIGlzIGFuIGlt cGxlbWVudGF0aW9uIG9mIE1lbW9yeUFjY2VwdFByb3RvY29sDQo+ICsgICBpbnN0YWxsZWQuDQo+ ICsgKiovDQo+ICtFRklfU1RBVFVTDQo+ICtDb3JlUmVzb2x2ZVVuYWNjZXB0ZWRNZW1vcnkgKA0K PiArICBWT0lEDQo+ICsgICk7DQo+ICsNCj4gIC8qKg0KPiAgICBJbnN0YWxsIE1lbW9yeUF0dHJp YnV0ZXNUYWJsZSBvbiBtZW1vcnkgYWxsb2NhdGlvbi4NCj4gDQo+IGRpZmYgLS1naXQgYS9NZGVN b2R1bGVQa2cvQ29yZS9EeGUvRHhlTWFpbi5pbmYgYi9NZGVNb2R1bGVQa2cvQ29yZS9EeGUvRHhl TWFpbi5pbmYNCj4gaW5kZXggZTRiY2E4OTU3Ny4uZGViOGJiMmJhOCAxMDA2NDQNCj4gLS0tIGEv TWRlTW9kdWxlUGtnL0NvcmUvRHhlL0R4ZU1haW4uaW5mDQo+ICsrKyBiL01kZU1vZHVsZVBrZy9D b3JlL0R4ZS9EeGVNYWluLmluZg0KPiBAQCAtMTUzLDYgKzE1Myw3IEBADQo+ICAgIGdFZmlIaWlQ YWNrYWdlTGlzdFByb3RvY29sR3VpZCAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfUFJPRFVD RVMNCj4gICAgZ0VmaVNtbUJhc2UyUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICMj IFNPTUVUSU1FU19DT05TVU1FUw0KPiAgICBnRWRraWlQZUNvZmZJbWFnZUVtdWxhdG9yUHJvdG9j b2xHdWlkICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+ICsgIGdFZmlNZW1vcnlBY2Nl cHRQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4g DQo+ICAgICMgQXJjaCBQcm90b2NvbHMNCj4gICAgZ0VmaUJkc0FyY2hQcm90b2NvbEd1aWQgICAg ICAgICAgICAgICAgICAgICAgICMjIENPTlNVTUVTDQo+IEBAIC0xODYsNiArMTg3LDcgQEANCj4g ICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEhlYXBHdWFyZFByb3BlcnR5TWFz ayAgICAgICAgICAgICAgICAgICAjIyBDT05TVU1FUw0KPiAgICBnRWZpTWRlTW9kdWxlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkQ3B1U3RhY2tHdWFyZCAgICAgICAgICAgICAgICAgICAgICAgICAgICMj IENPTlNVTUVTDQo+ICAgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RGd1ZvbER4 ZU1heEVuY2Fwc3VsYXRpb25EZXB0aCAgICAgICAgICAgIyMgQ09OU1VNRVMNCj4gKyAgZ0VmaU1k ZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEVuYWJsZVVuYWNjZXB0ZWRNZW1vcnkgICAgICAg ICAgICAgICAgICAjIyBDT05TVU1FUw0KPiANCj4gICMgW0hvYl0NCj4gICMgUkVTT1VSQ0VfREVT Q1JJUFRPUiAgICMjIENPTlNVTUVTDQo+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvQ29yZS9E eGUvRHhlTWFpbi9EeGVNYWluLmMgYi9NZGVNb2R1bGVQa2cvQ29yZS9EeGUvRHhlTWFpbi9EeGVN YWluLmMNCj4gaW5kZXggNTczM2YwYzhlYy4uOGQxZGUzMmZlNyAxMDA2NDQNCj4gLS0tIGEvTWRl TW9kdWxlUGtnL0NvcmUvRHhlL0R4ZU1haW4vRHhlTWFpbi5jDQo+ICsrKyBiL01kZU1vZHVsZVBr Zy9Db3JlL0R4ZS9EeGVNYWluL0R4ZU1haW4uYw0KPiBAQCAtNzY4LDEzICs3NjgsMjUgQEAgQ29y ZUV4aXRCb290U2VydmljZXMgKA0KPiAgICAvLw0KPiAgICBnVGltZXItPlNldFRpbWVyUGVyaW9k IChnVGltZXIsIDApOw0KPiANCj4gKyAgLy8NCj4gKyAgLy8gQWNjZXB0IGFsbCBtZW1vcnkgaWYg dW5hY2NlcHRlZCBtZW1vcnkgaXNuJ3QgZW5hYmxlZC4NCj4gKyAgLy8NCj4gKyAgU3RhdHVzID0g Q29yZVJlc29sdmVVbmFjY2VwdGVkTWVtb3J5KCk7DQo+ICsgIGlmIChFRklfRVJST1IgKFN0YXR1 cykpIHsNCj4gKyAgICAvLw0KPiArICAgIC8vIE5vdGlmeSBvdGhlciBkcml2ZXJzIHRoYXQgRXhp dEJvb3RTZXJ2aWNlcyBmYWlsZWQNCj4gKyAgICAvLw0KPiArICAgIENvcmVOb3RpZnlTaWduYWxM aXN0ICgmZ0V2ZW50RXhpdEJvb3RTZXJ2aWNlc0ZhaWxlZEd1aWQpOw0KPiArICAgIHJldHVybiBT dGF0dXM7DQo+ICsgIH0NCj4gKw0KPiAgICAvLw0KPiAgICAvLyBUZXJtaW5hdGUgbWVtb3J5IHNl cnZpY2VzIGlmIHRoZSBNYXBLZXkgbWF0Y2hlcw0KPiAgICAvLw0KPiAgICBTdGF0dXMgPSBDb3Jl VGVybWluYXRlTWVtb3J5TWFwIChNYXBLZXkpOw0KPiAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMp KSB7DQo+ICAgICAgLy8NCj4gLSAgICAvLyBOb3RpZnkgb3RoZXIgZHJpdmVycyB0aGF0IEV4aXRC b290U2VydmljZXMgZmFpbA0KPiArICAgIC8vIE5vdGlmeSBvdGhlciBkcml2ZXJzIHRoYXQgRXhp dEJvb3RTZXJ2aWNlcyBmYWlsZWQNCj4gICAgICAvLw0KPiAgICAgIENvcmVOb3RpZnlTaWduYWxM aXN0ICgmZ0V2ZW50RXhpdEJvb3RTZXJ2aWNlc0ZhaWxlZEd1aWQpOw0KPiAgICAgIHJldHVybiBT dGF0dXM7DQo+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvQ29yZS9EeGUvTWVtL1BhZ2UuYyBi L01kZU1vZHVsZVBrZy9Db3JlL0R4ZS9NZW0vUGFnZS5jDQo+IGluZGV4IGZmZTc5ZGNjYTkuLmNi ZWJlNjJhMjggMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Db3JlL0R4ZS9NZW0vUGFnZS5j DQo+ICsrKyBiL01kZU1vZHVsZVBrZy9Db3JlL0R4ZS9NZW0vUGFnZS5jDQo+IEBAIC05LDYgKzks OCBAQCBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiAgI2lu Y2x1ZGUgIkR4ZU1haW4uaCINCj4gICNpbmNsdWRlICJJbWVtLmgiDQo+ICAjaW5jbHVkZSAiSGVh cEd1YXJkLmgiDQo+ICsjaW5jbHVkZSA8TGlicmFyeS9QY2RMaWIuaD4NCj4gKyNpbmNsdWRlIDxQ cm90b2NvbC9NZW1vcnlBY2NlcHQuaD4NCj4gDQo+ICAvLw0KPiAgLy8gRW50cnkgZm9yIHRyYWNr aW5nIHRoZSBtZW1vcnkgcmVnaW9ucyBmb3IgZWFjaCBtZW1vcnkgdHlwZSB0byBjb2FsZXNjZSBz aW1pbGFyIG1lbW9yeSB0eXBlcw0KPiBAQCAtMjExOCw2ICsyMTIwLDkxIEBAIENvcmVGcmVlUG9v bFBhZ2VzICgNCj4gICAgQ29yZUNvbnZlcnRQYWdlcyAoTWVtb3J5LCBOdW1iZXJPZlBhZ2VzLCBF ZmlDb252ZW50aW9uYWxNZW1vcnkpOw0KPiAgfQ0KPiANCj4gK0VGSV9FVkVOVCBnRXhpdEJvb3RT ZXJ2aWNlRXZlbnQgPSBOVUxMOw0KPiArDQo+ICtTVEFUSUMNCj4gK0VGSV9TVEFUVVMNCj4gK0Fj Y2VwdEFsbFVuYWNjZXB0ZWRNZW1vcnkgKA0KPiArICBJTiBFRklfTUVNT1JZX0FDQ0VQVF9QUk9U T0NPTCAqQWNjZXB0TWVtb3J5DQo+ICsgICkNCj4gK3sNCj4gKyAgRUZJX0dDRF9NRU1PUllfU1BB Q0VfREVTQ1JJUFRPUiAgKkFsbERlc2NNYXA7DQo+ICsgIFVJTlROICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE51bUVudHJpZXM7DQo+ICsgIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEluZGV4Ow0KPiArICBFRklfU1RBVFVTICAgICAgICAgICAgICAgICAgICAgICBTdGF0dXM7 DQo+ICsNCj4gKyAgLyoNCj4gKyAgICogR2V0IGEgY29weSBvZiB0aGUgbWVtb3J5IHNwYWNlIG1h cCB0byBpdGVyYXRlIG92ZXIgd2hpbGUNCj4gKyAgICogY2hhbmdpbmcgdGhlIG1hcC4NCj4gKyAg ICovDQo+ICsgIFN0YXR1cyA9IENvcmVHZXRNZW1vcnlTcGFjZU1hcCAoJk51bUVudHJpZXMsICZB bGxEZXNjTWFwKTsNCj4gKyAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiArICAgIHJldHVy biBTdGF0dXM7DQo+ICsgIH0NCj4gKyAgZm9yIChJbmRleCA9IDA7IEluZGV4IDwgTnVtRW50cmll czsgSW5kZXgrKykgew0KPiArICAgIENPTlNUIEVGSV9HQ0RfTUVNT1JZX1NQQUNFX0RFU0NSSVBU T1IgICpEZXNjOw0KPiArDQo+ICsgICAgRGVzYyA9ICZBbGxEZXNjTWFwW0luZGV4XTsNCj4gKyAg ICBpZiAoRGVzYy0+R2NkTWVtb3J5VHlwZSAhPSBFZmlHY2RNZW1vcnlUeXBlVW5hY2NlcHRlZCkg ew0KPiArICAgICAgY29udGludWU7DQo+ICsgICAgfQ0KPiArDQo+ICsgICAgU3RhdHVzID0gQWNj ZXB0TWVtb3J5LT5BY2NlcHRNZW1vcnkgKA0KPiArICAgICAgQWNjZXB0TWVtb3J5LA0KPiArICAg ICAgRGVzYy0+QmFzZUFkZHJlc3MsDQo+ICsgICAgICBEZXNjLT5MZW5ndGgNCj4gKyAgICAgICk7 DQo+ICsgICAgaWYgKEVGSV9FUlJPUihTdGF0dXMpKSB7DQo+ICsgICAgICBnb3RvIGRvbmU7DQo+ ICsgICAgfQ0KPiArDQo+ICsgICAgU3RhdHVzID0gQ29yZVJlbW92ZU1lbW9yeVNwYWNlKERlc2Mt PkJhc2VBZGRyZXNzLCBEZXNjLT5MZW5ndGgpOw0KPiArICAgIGlmIChFRklfRVJST1IoU3RhdHVz KSkgew0KPiArICAgICAgZ290byBkb25lOw0KPiArICAgIH0NCj4gKw0KPiArICAgIFN0YXR1cyA9 IENvcmVBZGRNZW1vcnlTcGFjZSAoDQo+ICsgICAgICBFZmlHY2RNZW1vcnlUeXBlU3lzdGVtTWVt b3J5LA0KPiArICAgICAgRGVzYy0+QmFzZUFkZHJlc3MsDQo+ICsgICAgICBEZXNjLT5MZW5ndGgs DQo+ICsgICAgICBFRklfTUVNT1JZX0NQVV9DUllQVE8gfCBFRklfTUVNT1JZX1hQIHwgRUZJX01F TU9SWV9STyB8IEVGSV9NRU1PUllfUlANCj4gKyAgICAgICk7DQo+ICsgICAgaWYgKEVGSV9FUlJP UihTdGF0dXMpKSB7DQo+ICsgICAgICBnb3RvIGRvbmU7DQo+ICsgICAgfQ0KPiArICB9DQo+ICsN Cj4gK2RvbmU6DQo+ICsgIEZyZWVQb29sIChBbGxEZXNjTWFwKTsNCj4gKyAgcmV0dXJuIFN0YXR1 czsNCj4gK30NCj4gKw0KPiArRUZJX1NUQVRVUw0KPiArQ29yZVJlc29sdmVVbmFjY2VwdGVkTWVt b3J5ICgNCj4gKyAgVk9JRA0KPiArICApDQo+ICt7DQo+ICsgIEVGSV9NRU1PUllfQUNDRVBUX1BS T1RPQ09MICpBY2NlcHRNZW1vcnk7DQo+ICsgIEVGSV9TVEFUVVMgICAgICAgICAgICAgICAgIFN0 YXR1czsNCj4gKw0KPiArICAvLyBObyBuZWVkIHRvIGFjY2VwdCBhbnl0aGluZy4gVW5hY2NlcHRl ZCBtZW1vcnkgaXMgZW5hYmxlZC4NCj4gKyAgaWYgKFBjZEdldEJvb2woUGNkRW5hYmxlVW5hY2Nl cHRlZE1lbW9yeSkpIHsNCj4gKyAgICByZXR1cm4gRUZJX1NVQ0NFU1M7DQo+ICsgIH0NCj4gKw0K PiArICBTdGF0dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29sICgmZ0VmaU1lbW9yeUFjY2VwdFByb3Rv Y29sR3VpZCwgTlVMTCwNCj4gKyAgICAoVk9JRCAqKikmQWNjZXB0TWVtb3J5KTsNCj4gKyAgaWYg KFN0YXR1cyA9PSBFRklfTk9UX0ZPVU5EKSB7DQo+ICsgICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0K PiArICB9DQo+ICsgIGlmIChTdGF0dXMgIT0gRUZJX1NVQ0NFU1MpIHsNCj4gKyAgICBERUJVRyAo KERFQlVHX0VSUk9SLCAiRXJyb3IgbG9jYXRpbmcgTWVtb3J5QWNjZXB0UHJvdG9jb2w6ICVkXG4i LCBTdGF0dXMpKTsNCj4gKyAgICByZXR1cm4gU3RhdHVzOw0KPiArICB9DQo+ICsNCj4gKyAgcmV0 dXJuIEFjY2VwdEFsbFVuYWNjZXB0ZWRNZW1vcnkoQWNjZXB0TWVtb3J5KTsNCj4gK30NCj4gKw0K PiAgLyoqDQo+ICAgIE1ha2Ugc3VyZSB0aGUgbWVtb3J5IG1hcCBpcyBmb2xsb3dpbmcgYWxsIHRo ZSBjb25zdHJ1Y3Rpb24gcnVsZXMsDQo+ICAgIGl0IGlzIHRoZSBsYXN0IHRpbWUgdG8gY2hlY2sg bWVtb3J5IG1hcCBlcnJvciBiZWZvcmUgZXhpdCBib290IHNlcnZpY2VzLg0KPiAtLQ0KPiAyLjM3 LjMuOTk4Lmc1NzdlNTkxNDNmLWdvb2cNCj4gDQo+IA0KPiANCj4gDQo+IA0KDQo=