From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 4D5B221A6F106 for ; Tue, 18 Apr 2017 22:13:33 -0700 (PDT) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Apr 2017 22:13:33 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,219,1488873600"; d="scan'208";a="78722953" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga004.jf.intel.com with ESMTP; 18 Apr 2017 22:13:32 -0700 Received: from fmsmsx157.amr.corp.intel.com (10.18.116.73) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 18 Apr 2017 22:13:32 -0700 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by FMSMSX157.amr.corp.intel.com (10.18.116.73) with Microsoft SMTP Server (TLS) id 14.3.319.2; Tue, 18 Apr 2017 22:13:32 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.178]) by shsmsx102.ccr.corp.intel.com ([169.254.2.246]) with mapi id 14.03.0319.002; Wed, 19 Apr 2017 13:13:28 +0800 From: "Ni, Ruiyu" To: "Zeng, Star" , "Kinney, Michael D" CC: "edk2-devel@lists.01.org" Thread-Topic: [edk2] [PATCH] MdeModulePkg/TerminalDxe: Avoid always append device path to *Dev Thread-Index: AQHSuLar00c4BNRSkE2eZDAHsoEKEqHLeNUAgACs+WA= Date: Wed, 19 Apr 2017 05:13:28 +0000 Message-ID: <734D49CCEBEEF84792F5B80ED585239D5B93552F@SHSMSX104.ccr.corp.intel.com> References: <20170419024250.84916-1-ruiyu.ni@intel.com> <0C09AFA07DD0434D9E2A0C6AEB0483103B87BE9C@shsmsx102.ccr.corp.intel.com> In-Reply-To: <0C09AFA07DD0434D9E2A0C6AEB0483103B87BE9C@shsmsx102.ccr.corp.intel.com> Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH] MdeModulePkg/TerminalDxe: Avoid always append device path to *Dev X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Apr 2017 05:13:33 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 R29vZCBpZGVh8J+Yig0KDQpNaWtlLA0KV2hhdCdzIHlvdXIgb3Bpbmlvbj8NCg0KVGhhbmtzL1Jh eQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFplbmcsIFN0YXINCj4g U2VudDogV2VkbmVzZGF5LCBBcHJpbCAxOSwgMjAxNyAxMDo1NCBBTQ0KPiBUbzogTmksIFJ1aXl1 IDxydWl5dS5uaUBpbnRlbC5jb20+OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KPiBDYzogWmVu ZywgU3RhciA8c3Rhci56ZW5nQGludGVsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtlZGsyXSBbUEFU Q0hdIE1kZU1vZHVsZVBrZy9UZXJtaW5hbER4ZTogQXZvaWQgYWx3YXlzDQo+IGFwcGVuZCBkZXZp Y2UgcGF0aCB0byAqRGV2DQo+IA0KPiBSZXZpZXdlZC1ieTogU3RhciBaZW5nIDxzdGFyLnplbmdA aW50ZWwuY29tPg0KPiANCj4gQlRXOiBNYXkgdGhlIE1hdGNoRGV2aWNlUGF0aHMgY291bGQgYmUg cHJvcG9zZWQgdG8gRGV2aWNlUGF0aExpYj8gOikNCj4gDQo+IC0tLS0gTWF0Y2hEZXZpY2VQYXRo cyBNYXRjaGVzICg1IGluIDEgZmlsZXMpIC0tLS0gQ29uc29sZU9wdGlvbi5jDQo+IChGOlxHSVRc ZWRrMkdpdFxlZGsyXE1kZU1vZHVsZVBrZ1xMaWJyYXJ5XEJvb3RNYWludGVuYW5jZU1hbmFnZXJV aQ0KPiBMaWIpOk1hdGNoRGV2aWNlUGF0aHMgKA0KPiBDb25zb2xlT3B0aW9uLmMNCj4gKEY6XEdJ VFxlZGsyR2l0XGVkazJcTWRlTW9kdWxlUGtnXExpYnJhcnlcQm9vdE1haW50ZW5hbmNlTWFuYWdl clVpDQo+IExpYik6ICAgICAgaWYgKE1hdGNoRGV2aWNlUGF0aHMgKE91dERldmljZVBhdGgsIE5l d0RldmljZVBhdGgpKSB7DQo+IENvbnNvbGVPcHRpb24uYw0KPiAoRjpcR0lUXGVkazJHaXRcZWRr MlxNZGVNb2R1bGVQa2dcTGlicmFyeVxCb290TWFpbnRlbmFuY2VNYW5hZ2VyVWkNCj4gTGliKTog ICAgICBpZiAoTWF0Y2hEZXZpY2VQYXRocyAoSW5wRGV2aWNlUGF0aCwgTmV3RGV2aWNlUGF0aCkp IHsNCj4gQ29uc29sZU9wdGlvbi5jDQo+IChGOlxHSVRcZWRrMkdpdFxlZGsyXE1kZU1vZHVsZVBr Z1xMaWJyYXJ5XEJvb3RNYWludGVuYW5jZU1hbmFnZXJVaQ0KPiBMaWIpOiAgICAgIGlmIChNYXRj aERldmljZVBhdGhzIChFcnJEZXZpY2VQYXRoLCBOZXdEZXZpY2VQYXRoKSkgew0KPiBDb25zb2xl T3B0aW9uLmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJcTWRlTW9kdWxlUGtnXExpYnJhcnlcQm9v dE1haW50ZW5hbmNlTWFuYWdlclVpDQo+IExpYik6ICAgIE5ld0NvbnNvbGVDb250ZXh0LT5Jc0Fj dGl2ZSA9IE1hdGNoRGV2aWNlUGF0aHMgKA0KPiAtLS0tIEJtTWF0Y2hEZXZpY2VQYXRocyBNYXRj aGVzICg0IGluIDQgZmlsZXMpIC0tLS0gQm1Cb290LmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJc TWRlTW9kdWxlUGtnXExpYnJhcnlcVWVmaUJvb3RNYW5hZ2VyTGliKTogIGlmDQo+IChCbU1hdGNo RGV2aWNlUGF0aHMgKCpDYWNoZWREZXZpY2VQYXRoLCBEZXZpY2VQYXRoKSkgew0KPiBCbUNvbnNv bGUuYw0KPiAoRjpcR0lUXGVkazJHaXRcZWRrMlxNZGVNb2R1bGVQa2dcTGlicmFyeVxVZWZpQm9v dE1hbmFnZXJMaWIpOiAgICBpZg0KPiAoIUJtTWF0Y2hEZXZpY2VQYXRocyAoTmV3RGV2aWNlUGF0 aCwgQ3VzdG9taXplZENvbkRldmljZVBhdGgpKSB7DQo+IEJtTWlzYy5jDQo+IChGOlxHSVRcZWRr MkdpdFxlZGsyXE1kZU1vZHVsZVBrZ1xMaWJyYXJ5XFVlZmlCb290TWFuYWdlckxpYik6Qm1NYQ0K PiB0Y2hEZXZpY2VQYXRocyAoIEludGVybmFsQm0uaA0KPiAoRjpcR0lUXGVkazJHaXRcZWRrMlxN ZGVNb2R1bGVQa2dcTGlicmFyeVxVZWZpQm9vdE1hbmFnZXJMaWIpOkJtTWENCj4gdGNoRGV2aWNl UGF0aHMgKA0KPiAtLS0tIEJkc0xpYk1hdGNoRGV2aWNlUGF0aHMgTWF0Y2hlcyAoMTEgaW4gOCBm aWxlcykgLS0tLQ0KPiBCZHNCb290LmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJcSW50ZWxGcmFt ZXdvcmtNb2R1bGVQa2dcTGlicmFyeVxHZW5lcmljQmRzTGliKToNCj4gaWYgKEJkc0xpYk1hdGNo RGV2aWNlUGF0aHMgKENhY2hlZERldmljZVBhdGgsIEJsb2NrSW9EZXZpY2VQYXRoKSkgew0KPiBC ZHNCb290LmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJcVmx2MlRibHREZXZpY2VQa2dcT3ZlcnJp ZGVcSW50ZWxGcmFtZXdvcmtNb2R1bGUNCj4gUGtnXExpYnJhcnlcR2VuZXJpY0Jkc0xpYik6ICAg ICAgICBpZiAoQmRzTGliTWF0Y2hEZXZpY2VQYXRocw0KPiAoQ2FjaGVkRGV2aWNlUGF0aCwgQmxv Y2tJb0RldmljZVBhdGgpKSB7DQo+IEJkc0NvbnNvbGUuYw0KPiAoRjpcR0lUXGVkazJHaXRcZWRr MlxJbnRlbEZyYW1ld29ya01vZHVsZVBrZ1xMaWJyYXJ5XEdlbmVyaWNCZHNMaWIpOg0KPiBpZiAo IUJkc0xpYk1hdGNoRGV2aWNlUGF0aHMgKE5ld0RldmljZVBhdGgsIEN1c3RvbWl6ZWRDb25EZXZp Y2VQYXRoKSkgew0KPiBCZHNDb25zb2xlLmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJcVmx2MlRi bHREZXZpY2VQa2dcT3ZlcnJpZGVcSW50ZWxGcmFtZXdvcmtNb2R1bGUNCj4gUGtnXExpYnJhcnlc R2VuZXJpY0Jkc0xpYik6ICAgIGlmICghQmRzTGliTWF0Y2hEZXZpY2VQYXRocyAoTmV3RGV2aWNl UGF0aCwNCj4gQ3VzdG9taXplZENvbkRldmljZVBhdGgpKSB7DQo+IEJkc01pc2MuYw0KPiAoRjpc R0lUXGVkazJHaXRcZWRrMlxJbnRlbEZyYW1ld29ya01vZHVsZVBrZ1xMaWJyYXJ5XEdlbmVyaWNC ZHNMaWIpOkINCj4gZHNMaWJNYXRjaERldmljZVBhdGhzICggQmRzTWlzYy5jDQo+IChGOlxHSVRc ZWRrMkdpdFxlZGsyXFZsdjJUYmx0RGV2aWNlUGtnXE92ZXJyaWRlXEludGVsRnJhbWV3b3JrTW9k dWxlDQo+IFBrZ1xMaWJyYXJ5XEdlbmVyaWNCZHNMaWIpOkJkc0xpYk1hdGNoRGV2aWNlUGF0aHMg KA0KPiBDb25zb2xlT3B0aW9uLmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJcSW50ZWxGcmFtZXdv cmtNb2R1bGVQa2dcVW5pdmVyc2FsXEJkc0R4ZVxCb290TQ0KPiBhaW50KTogICAgICBpZiAoQmRz TGliTWF0Y2hEZXZpY2VQYXRocyAoT3V0RGV2aWNlUGF0aCwgTmV3RGV2aWNlUGF0aCkpIHsNCj4g Q29uc29sZU9wdGlvbi5jDQo+IChGOlxHSVRcZWRrMkdpdFxlZGsyXEludGVsRnJhbWV3b3JrTW9k dWxlUGtnXFVuaXZlcnNhbFxCZHNEeGVcQm9vdE0NCj4gYWludCk6ICAgICAgaWYgKEJkc0xpYk1h dGNoRGV2aWNlUGF0aHMgKElucERldmljZVBhdGgsIE5ld0RldmljZVBhdGgpKSB7DQo+IENvbnNv bGVPcHRpb24uYw0KPiAoRjpcR0lUXGVkazJHaXRcZWRrMlxJbnRlbEZyYW1ld29ya01vZHVsZVBr Z1xVbml2ZXJzYWxcQmRzRHhlXEJvb3RNDQo+IGFpbnQpOiAgICAgIGlmIChCZHNMaWJNYXRjaERl dmljZVBhdGhzIChFcnJEZXZpY2VQYXRoLCBOZXdEZXZpY2VQYXRoKSkgew0KPiBDb25zb2xlT3B0 aW9uLmMNCj4gKEY6XEdJVFxlZGsyR2l0XGVkazJcSW50ZWxGcmFtZXdvcmtNb2R1bGVQa2dcVW5p dmVyc2FsXEJkc0R4ZVxCb290TQ0KPiBhaW50KTogICAgTmV3Q29uc29sZUNvbnRleHQtPklzQWN0 aXZlID0gQmRzTGliTWF0Y2hEZXZpY2VQYXRocyAoDQo+IEdlbmVyaWNCZHNMaWIuaA0KPiAoRjpc R0lUXGVkazJHaXRcZWRrMlxJbnRlbEZyYW1ld29ya01vZHVsZVBrZ1xJbmNsdWRlXExpYnJhcnkp OkJkc0xpYk0NCj4gYXRjaERldmljZVBhdGhzICgNCj4gLS0tLSBDb25QbGF0Zm9ybU1hdGNoRGV2 aWNlUGF0aHMgTWF0Y2hlcyAoNCBpbiAyIGZpbGVzKSAtLS0tIENvblBsYXRmb3JtLmMNCj4gKEY6 XEdJVFxlZGsyR2l0XGVkazJcTWRlTW9kdWxlUGtnXFVuaXZlcnNhbFxDb25zb2xlXENvblBsYXRm b3JtRHhlKQ0KPiA6Q29uUGxhdGZvcm1NYXRjaERldmljZVBhdGhzICgNCj4gQ29uUGxhdGZvcm0u Yw0KPiAoRjpcR0lUXGVkazJHaXRcZWRrMlxNZGVNb2R1bGVQa2dcVW5pdmVyc2FsXENvbnNvbGVc Q29uUGxhdGZvcm1EeGUpOg0KPiBTdGF0dXMgPSBDb25QbGF0Zm9ybU1hdGNoRGV2aWNlUGF0aHMg KA0KPiBDb25QbGF0Zm9ybS5jDQo+IChGOlxHSVRcZWRrMkdpdFxlZGsyXE1kZU1vZHVsZVBrZ1xV bml2ZXJzYWxcQ29uc29sZVxDb25QbGF0Zm9ybUR4ZSk6DQo+IFN0YXR1cyA9IENvblBsYXRmb3Jt TWF0Y2hEZXZpY2VQYXRocyAoDQo+IENvblBsYXRmb3JtLmgNCj4gKEY6XEdJVFxlZGsyR2l0XGVk azJcTWRlTW9kdWxlUGtnXFVuaXZlcnNhbFxDb25zb2xlXENvblBsYXRmb3JtRHhlKQ0KPiA6Q29u UGxhdGZvcm1NYXRjaERldmljZVBhdGhzICgNCj4gDQo+IA0KPiBUaGFua3MsDQo+IFN0YXINCj4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZWRrMi1kZXZlbCBbbWFpbHRvOmVk azItZGV2ZWwtYm91bmNlc0BsaXN0cy4wMS5vcmddIE9uIEJlaGFsZiBPZg0KPiBSdWl5dSBOaQ0K PiBTZW50OiBXZWRuZXNkYXksIEFwcmlsIDE5LCAyMDE3IDEwOjQzIEFNDQo+IFRvOiBlZGsyLWRl dmVsQGxpc3RzLjAxLm9yZw0KPiBDYzogWmVuZywgU3RhciA8c3Rhci56ZW5nQGludGVsLmNvbT4N Cj4gU3ViamVjdDogW2VkazJdIFtQQVRDSF0gTWRlTW9kdWxlUGtnL1Rlcm1pbmFsRHhlOiBBdm9p ZCBhbHdheXMgYXBwZW5kDQo+IGRldmljZSBwYXRoIHRvICpEZXYNCj4gDQo+IFdoZW4gVGVybWlu YWxEeGUgU3RhcnQoKSBpcyBjYWxsZWQgbXVsdGlwbGUgdGltZXMsIHRoZSBvbGQgbG9naWMNCj4g dW5jb25kaXRpb25hbGx5IGFwcGVuZGVkIHRoZSB0ZXJtaW5hbCBkZXZpY2UgcGF0aCBjYW5kaWRh dGVzIHRvICpEZXYNCj4gKENvbkluRGV2L0Nvbk91dERldi9FcnJPdXREZXYpLCByZXN1bHRpbmcg dGhlIHZvbGF0aWxlIHN0b3JhZ2UgaXMgZnVsbC4NCj4gDQo+IENvbnRyaWJ1dGVkLXVuZGVyOiBU aWFub0NvcmUgQ29udHJpYnV0aW9uIEFncmVlbWVudCAxLjANCj4gU2lnbmVkLW9mZi1ieTogUnVp eXUgTmkgPHJ1aXl1Lm5pQGludGVsLmNvbT4NCj4gQ2M6IFN0YXIgWmVuZyA8c3Rhci56ZW5nQGlu dGVsLmNvbT4NCj4gLS0tDQo+ICAuLi4vVW5pdmVyc2FsL0NvbnNvbGUvVGVybWluYWxEeGUvVGVy bWluYWwuYyAgICAgICB8IDY3DQo+ICsrKysrKysrKysrKysrKysrKystLS0NCj4gIDEgZmlsZSBj aGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdp dCBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvQ29uc29sZS9UZXJtaW5hbER4ZS9UZXJtaW5hbC5j DQo+IGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9Db25zb2xlL1Rlcm1pbmFsRHhlL1Rlcm1pbmFs LmMNCj4gaW5kZXggNWQ1NTk2OS4uNjBkZTJkNCAxMDA2NDQNCj4gLS0tIGEvTWRlTW9kdWxlUGtn L1VuaXZlcnNhbC9Db25zb2xlL1Rlcm1pbmFsRHhlL1Rlcm1pbmFsLmMNCj4gKysrIGIvTWRlTW9k dWxlUGtnL1VuaXZlcnNhbC9Db25zb2xlL1Rlcm1pbmFsRHhlL1Rlcm1pbmFsLmMNCj4gQEAgLTk5 NCw2ICs5OTQsNDkgQEAgVGVybWluYWxEcml2ZXJCaW5kaW5nU3RvcCAoICB9DQo+IA0KPiAgLyoq DQo+ICsgIENvbXBhcmUgYSBkZXZpY2UgcGF0aCBkYXRhIHN0cnVjdHVyZSB0byB0aGF0IG9mIGFs bCB0aGUgbm9kZXMgb2YgYQ0KPiArIHNlY29uZCBkZXZpY2UgcGF0aCBpbnN0YW5jZS4NCj4gKw0K PiArICBAcGFyYW0gIE11bHRpICAgICAgICAgIEEgcG9pbnRlciB0byBhIG11bHRpLWluc3RhbmNl IGRldmljZSBwYXRoIGRhdGEgc3RydWN0dXJlLg0KPiArICBAcGFyYW0gIFNpbmdsZSAgICAgICAg IEEgcG9pbnRlciB0byBhIHNpbmdsZS1pbnN0YW5jZSBkZXZpY2UgcGF0aCBkYXRhDQo+IHN0cnVj dHVyZS4NCj4gKw0KPiArICBAcmV0dmFsIFRSVUUgICAgICAgICAgIElmIHRoZSBTaW5nbGUgaXMg Y29udGFpbmVkIHdpdGhpbiBNdWx0aS4NCj4gKyAgQHJldHZhbCBGQUxTRSAgICAgICAgICBUaGUg U2luZ2xlIGlzIG5vdCBtYXRjaCB3aXRoaW4gTXVsdGkuDQo+ICsNCj4gKyoqLw0KPiArQk9PTEVB Tg0KPiArTWF0Y2hEZXZpY2VQYXRocyAoDQo+ICsgIElOICBFRklfREVWSUNFX1BBVEhfUFJPVE9D T0wgICpNdWx0aSwNCj4gKyAgSU4gIEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NPTCAgKlNpbmdsZQ0K PiArICApDQo+ICt7DQo+ICsgIEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NPTCAgKkRldmljZVBhdGg7 DQo+ICsgIEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NPTCAgKkRldmljZVBhdGhJbnN0Ow0KPiArICBV SU5UTiAgICAgICAgICAgICAgICAgICAgIFNpemU7DQo+ICsNCj4gKyAgRGV2aWNlUGF0aCAgICAg ID0gTXVsdGk7DQo+ICsgIERldmljZVBhdGhJbnN0ICA9IEdldE5leHREZXZpY2VQYXRoSW5zdGFu Y2UgKCZEZXZpY2VQYXRoLCAmU2l6ZSk7ICAvLw0KPiArIC8vIFNlYXJjaCBmb3IgdGhlIG1hdGNo IG9mICdTaW5nbGUnIGluICdNdWx0aScNCj4gKyAgLy8NCj4gKyAgd2hpbGUgKERldmljZVBhdGhJ bnN0ICE9IE5VTEwpIHsNCj4gKyAgICAvLw0KPiArICAgIC8vIElmIHRoZSBzaW5nbGUgZGV2aWNl IHBhdGggaXMgZm91bmQgaW4gbXVsdGlwbGUgZGV2aWNlIHBhdGhzLA0KPiArICAgIC8vIHJldHVy biBzdWNjZXNzDQo+ICsgICAgLy8NCj4gKyAgICBpZiAoQ29tcGFyZU1lbSAoU2luZ2xlLCBEZXZp Y2VQYXRoSW5zdCwgU2l6ZSkgPT0gMCkgew0KPiArICAgICAgRnJlZVBvb2wgKERldmljZVBhdGhJ bnN0KTsNCj4gKyAgICAgIHJldHVybiBUUlVFOw0KPiArICAgIH0NCj4gKw0KPiArICAgIEZyZWVQ b29sIChEZXZpY2VQYXRoSW5zdCk7DQo+ICsgICAgRGV2aWNlUGF0aEluc3QgPSBHZXROZXh0RGV2 aWNlUGF0aEluc3RhbmNlICgmRGV2aWNlUGF0aCwgJlNpemUpOyAgfQ0KPiArDQo+ICsgIHJldHVy biBGQUxTRTsNCj4gK30NCj4gKw0KPiArLyoqDQo+ICAgIFVwZGF0ZSB0ZXJtaW5hbCBkZXZpY2Ug cGF0aCBpbiBDb25zb2xlIERldmljZSBFbnZpcm9ubWVudCBWYXJpYWJsZXMuDQo+IA0KPiAgICBA cGFyYW0gIFZhcmlhYmxlTmFtZSAgICAgICAgICAgVGhlIENvbnNvbGUgRGV2aWNlIEVudmlyb25t ZW50IFZhcmlhYmxlLg0KPiBAQCAtMTAxOCw4ICsxMDYxLDEyIEBAIFRlcm1pbmFsVXBkYXRlQ29u c29sZURldlZhcmlhYmxlICgNCj4gICAgLy8NCj4gICAgLy8gR2V0IGdsb2JhbCB2YXJpYWJsZSBh bmQgaXRzIHNpemUgYWNjb3JkaW5nIHRvIHRoZSBuYW1lIGdpdmVuLg0KPiAgICAvLw0KPiAtICBH ZXRFZmlHbG9iYWxWYXJpYWJsZTIgKFZhcmlhYmxlTmFtZSwgKFZPSUQqKikmVmFyaWFibGUsIE5V TEwpOw0KPiAtICBpZiAoVmFyaWFibGUgPT0gTlVMTCkgew0KPiArICBTdGF0dXMgPSBHZXRFZmlH bG9iYWxWYXJpYWJsZTIgKFZhcmlhYmxlTmFtZSwgKFZPSUQqKikmVmFyaWFibGUsDQo+ICsgTlVM TCk7ICBpZiAoU3RhdHVzID09IEVGSV9OT1RfRk9VTkQpIHsNCj4gKyAgICBTdGF0dXMgICA9IEVG SV9TVUNDRVNTOw0KPiArICAgIFZhcmlhYmxlID0gTlVMTDsNCj4gKyAgfQ0KPiArICBpZiAoRUZJ X0VSUk9SIChTdGF0dXMpKSB7DQo+ICAgICAgcmV0dXJuOw0KPiAgICB9DQo+IA0KPiBAQCAtMTAy OCwxNyArMTA3NSwyMSBAQCBUZXJtaW5hbFVwZGF0ZUNvbnNvbGVEZXZWYXJpYWJsZSAoDQo+ICAg IC8vDQo+ICAgIGZvciAoVGVybWluYWxUeXBlID0gMDsgVGVybWluYWxUeXBlIDwgQVJSQVlfU0la RSAobVRlcm1pbmFsVHlwZSk7DQo+IFRlcm1pbmFsVHlwZSsrKSB7DQo+ICAgICAgU2V0VGVybWlu YWxEZXZpY2VQYXRoIChUZXJtaW5hbFR5cGUsIFBhcmVudERldmljZVBhdGgsDQo+ICZUZW1wRGV2 aWNlUGF0aCk7DQo+IC0gICAgTmV3VmFyaWFibGUgPSBBcHBlbmREZXZpY2VQYXRoSW5zdGFuY2Ug KFZhcmlhYmxlLCBUZW1wRGV2aWNlUGF0aCk7DQo+IC0gICAgQVNTRVJUIChOZXdWYXJpYWJsZSAh PSBOVUxMKTsNCj4gLSAgICBpZiAoVmFyaWFibGUgIT0gTlVMTCkgew0KPiAtICAgICAgRnJlZVBv b2wgKFZhcmlhYmxlKTsNCj4gLSAgICB9DQo+IA0KPiAgICAgIGlmIChUZW1wRGV2aWNlUGF0aCAh PSBOVUxMKSB7DQo+ICsgICAgICBpZiAoIU1hdGNoRGV2aWNlUGF0aHMgKFZhcmlhYmxlLCBUZW1w RGV2aWNlUGF0aCkpIHsNCj4gKyAgICAgICAgTmV3VmFyaWFibGUgPSBBcHBlbmREZXZpY2VQYXRo SW5zdGFuY2UgKFZhcmlhYmxlLCBUZW1wRGV2aWNlUGF0aCk7DQo+ICsgICAgICAgIGlmIChOZXdW YXJpYWJsZSAhPSBOVUxMKSB7DQo+ICsgICAgICAgICAgaWYgKFZhcmlhYmxlICE9IE5VTEwpIHsN Cj4gKyAgICAgICAgICAgIEZyZWVQb29sIChWYXJpYWJsZSk7DQo+ICsgICAgICAgICAgfQ0KPiAr ICAgICAgICAgIFZhcmlhYmxlID0gTmV3VmFyaWFibGU7DQo+ICsgICAgICAgIH0NCj4gKyAgICAg IH0NCj4gKw0KPiAgICAgICAgRnJlZVBvb2wgKFRlbXBEZXZpY2VQYXRoKTsNCj4gICAgICB9DQo+ IA0KPiAtICAgIFZhcmlhYmxlID0gTmV3VmFyaWFibGU7DQo+ICAgIH0NCj4gDQo+ICAgIFZhcmlh YmxlU2l6ZSA9IEdldERldmljZVBhdGhTaXplIChWYXJpYWJsZSk7DQo+IC0tDQo+IDIuOS4wLndp bmRvd3MuMQ0KPiANCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18NCj4gZWRrMi1kZXZlbCBtYWlsaW5nIGxpc3QNCj4gZWRrMi1kZXZlbEBsaXN0cy4wMS5v cmcNCj4gaHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5mby9lZGsyLWRldmVsDQo=