From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (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 B74B720945BFA for ; Wed, 13 Sep 2017 23:49:49 -0700 (PDT) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Sep 2017 23:52:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.42,391,1500966000"; d="scan'208";a="135207685" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga002.jf.intel.com with ESMTP; 13 Sep 2017 23:52:47 -0700 Received: from fmsmsx101.amr.corp.intel.com (10.18.124.199) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 13 Sep 2017 23:52:17 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by fmsmsx101.amr.corp.intel.com (10.18.124.199) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 13 Sep 2017 23:52:17 -0700 Received: from shsmsx152.ccr.corp.intel.com ([169.254.6.93]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.117]) with mapi id 14.03.0319.002; Thu, 14 Sep 2017 14:52:15 +0800 From: "Wang, Jian J" To: "Justen, Jordan L" , Laszlo Ersek CC: "edk2-devel@lists.01.org" , "Dong, Eric" , "Kinney, Michael D" , "Wolman, Ayellet" , "Yao, Jiewen" , "Zeng, Star" Thread-Topic: [edk2] [PATCH 4/4] OvmfPkg/QemuVideoDxe: Update QemuVideoDxe driver to bypass NULL pointer detection if enabled. Thread-Index: AQHTLOjaGr4fA1D1skaggpFr6cHp6qKzgimg///YmwCAAJdJoA== Date: Thu, 14 Sep 2017 06:52:15 +0000 Message-ID: References: <20170913092507.12504-1-jian.j.wang@intel.com> <20170913092507.12504-5-jian.j.wang@intel.com> <848bc70b-b3f7-62fb-ef2d-df89ff8805a6@redhat.com> <150536822038.12853.16381995043242387680@jljusten-skl> In-Reply-To: <150536822038.12853.16381995043242387680@jljusten-skl> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [PATCH 4/4] OvmfPkg/QemuVideoDxe: Update QemuVideoDxe driver to bypass NULL pointer detection if enabled. 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: Thu, 14 Sep 2017 06:49:49 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U3VyZS4gSSdsbCBjaGFuZ2UgdGhlbSB0byBmdW5jdGlvbnMuDQoNCi0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tDQpGcm9tOiBKdXN0ZW4sIEpvcmRhbiBMIA0KU2VudDogVGh1cnNkYXksIFNlcHRl bWJlciAxNCwgMjAxNyAxOjUwIFBNDQpUbzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRl bC5jb20+OyBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KQ2M6IGVkazItZGV2ZWxA bGlzdHMuMDEub3JnOyBEb25nLCBFcmljIDxlcmljLmRvbmdAaW50ZWwuY29tPjsgS2lubmV5LCBN aWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgV29sbWFuLCBBeWVsbGV0IDxh eWVsbGV0LndvbG1hbkBpbnRlbC5jb20+OyBZYW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5j b20+OyBaZW5nLCBTdGFyIDxzdGFyLnplbmdAaW50ZWwuY29tPg0KU3ViamVjdDogUkU6IFtlZGsy XSBbUEFUQ0ggNC80XSBPdm1mUGtnL1FlbXVWaWRlb0R4ZTogVXBkYXRlIFFlbXVWaWRlb0R4ZSBk cml2ZXIgdG8gYnlwYXNzIE5VTEwgcG9pbnRlciBkZXRlY3Rpb24gaWYgZW5hYmxlZC4NCg0KT24g MjAxNy0wOS0xMyAxODoxNzoyNiwgV2FuZywgSmlhbiBKIHdyb3RlOg0KPiBUaGFua3MgZm9yIHRo ZSBjb21tZW50cyBhbmQgZ29vZCBhZHZpY2VzLiBTb3JyeSB0aGUgZm9ybWF0IGlzc3Vlcy4NCj4g VGhpcyBpcyBteSBmaXJzdCBwYXRjaCBmb3IgdGhpcyBwcm9qZWN0LiBUb28gbWFueSBkZXRhaWxz IGZvciBtZSB0byBnZXQgDQo+IGZhbWlsaWFyIHdpdGguIA0KPiANCj4gKDEpIFN1cmUuDQo+ICgy KSBJJ2xsIGNoYW5nZSB0aGF0Lg0KPiAoMykgSSdsbCB1c2UgdGhlIHRvb2wgdG8gZW5zdXJlIHRo ZSBwYXRjaCBmb3JtYXQuDQo+ICg0KSBJJ2xsIHJlbW92ZSB0aGUgJywnIGluIG5hbWUNCj4gKDUp IEknbGwgYWRkIG1vcmUgZGVzY3JpcHRpb24gYWJvdXQgaXQuDQo+ICg2KSBZb3UncmUgcmlnaHQu IEkgc2hvdWxkIHVzZSBTZXRNZW1vcnlTcGFjZUF0dHJpYnV0ZXMoKSBvZiBEWEUgc2VydmljZQ0K PiAgICAgIGluc3RlYWQuIFRoZSBvbmx5IHJlYXNvbiBJIGRpZG4ndCBkbyBpdCBpcyB0aGF0IEkg Zm91bmQgDQo+ICAgICAgIEdldE1lbW9yeVNwYWNlRGVzY3JpcHRvcigpIGRvZXNuJ3QgcmV0dXJu IHRoZSBzYW1lIGluZm9ybWF0aW9uDQo+ICAgICAgd2hpY2ggU2V0TWVtb3J5U3BhY2VBdHRyaWJ1 dGVzKCkganVzdCBjaGFuZ2VkLiBTbyBJIGZlZWwgdXNpbmcgQ1BVDQo+ICAgICBhcmNoIHByb3Rv Y29sIGlzIGEgYml0IHNhZmVyLiBBbnl3YXksIEknbGwgY2hhbmdlIGl0Lg0KPiAoNykgSSBkaWQg cHV0IHRob3NlIG1hY3JvcyBpbiB0aGUgaW5zdGFsbCBmdW5jdGlvbiBiZWZvcmUuIFRvIHJlZHVj ZSB0aGUNCj4gICAgICBudW1iZXIgb2YgY2hhbmdlZCBmaWxlcywgSSBtYWRlIGN1cnJlbnQgY2hh bmdlcy4gWW91J3JlIHJpZ2h0IGl0J3MNCj4gICAgICBub3Qgd29ydGh5Lg0KPiAoOCkgVXNpbmcg bWFjcm8gY2FuIGhlbHAgdGhlIHJlYWRhYmlsaXR5LCB3aGljaCBpcyBtb3JlIGltcG9ydGFudCB0 byBtZS4NCj4gICAgIEkga25vdyBmdW5jdGlvbiBjYW4gZG8gdGhlIHNhbWUuIEJ1dCBpdCBsb29r cyBhIGJpdCBoZWF2eSBpbiB0aGlzIHNpdHVhdGlvbi4NCg0KQSBtYWNybyBjYW4gc29tZXRpbWVz IGhlbHAgcmVhZGliaWxpdHkgaWYgaXQgaXMgZG9pbmcgYSB2ZXJ5IGNvbW1vbg0KdGFzay4gSSBz ZWUgdGhlIG1hY3JvcyBhcmUgb25seSBiZWluZyB1c2VkIGluIDIgcGxhY2VzLiAoT25jZSBlYWNo LikNCg0KSW4gdGhpcyBjYXNlIEkgd291bGQgcHJlZmVyIHlvdSB0byBqdXN0IHdyaXRlIHRoZSBj b2RlIGFsbCBvdXQgcmF0aGVyDQp0aGFuIHVzaW5nIG1hY3Jvcy4gSSBkb24ndCB0aGluayBpdCB3 aWxsIG1ha2UgdGhlIGNvZGUgdGhhdCBtdWNoDQpiaWdnZXIgaW4gdGhpcyBjYXNlLCBhbmQgaXQn bGwgYmUgZWFzaWVyIHRvIGtub3cgd2hhdCB0aGUgY29kZSBpcw0KYWN0dWFsbHkgZG9pbmcuDQoN Ci1Kb3JkYW4NCg0KPiAgICAgSSBoYXZlIHRvIGFkbWl0IHJlcGxhY2luZyAgdGhlIG1hY3JvcyB3 aXRoIGEgbGlicmFyeSBpcyBhIHZlcnkgZ29vZCBpZGVhLCAgDQo+ICAgICB3aGljaCBicmluZ3Mg dGhlIHNhbWUgcmVhZGFiaWxpdHkuIEkgZGlkbid0IHRoaW5rIG9mIHRoYXQgYmVmb3JlLiBBbHRo b3VnaCANCj4gICAgIExpYnJhcnkgaXMgc3RpbGwgYSBsaXR0bGUgYml0IGhlYXZ5IHRvIG1lIGJ1 dCBpdCdzIGluIGEgZGlmZmVyZW50IHdheSwgSSB0aGluayBpdCANCj4gICAgIHdvcnRoIGEgdHJ5 aW5nLg0KPiAoOSkgUHV0dGluZyBhIHNwYWNlIGJlZm9yZSBvcGVuIHBhcmVudGhlc2lzIGlzIGZv cmNlZCBzdHlsZT8gSWYgc28sIEknbGwgYWRkIGl0Lg0KPiAoMTApIFlvdSdyZSByaWdodC4gVXNp bmcgbGlicmFyeSBjYW4gcmVkdWNlIHRoZSBkaXN0dXJicyB0byBhZmZlY3RlZCBkcml2ZXJzDQo+ ICAgICAgICBieSB0aGlzIGZlYXR1cmUgdG8gdGhlIG1pbmltdW0uDQo+IA0KPiAtLS0tLU9yaWdp bmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBMYXN6bG8gRXJzZWsgW21haWx0bzpsZXJzZWtAcmVk aGF0LmNvbV0gDQo+IFNlbnQ6IFRodXJzZGF5LCBTZXB0ZW1iZXIgMTQsIDIwMTcgNzozNSBBTQ0K PiBUbzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+IENjOiBlZGsyLWRl dmVsQGxpc3RzLjAxLm9yZzsgSnVzdGVuLCBKb3JkYW4gTCA8am9yZGFuLmwuanVzdGVuQGludGVs LmNvbT47IERvbmcsIEVyaWMgPGVyaWMuZG9uZ0BpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwg RCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBXb2xtYW4sIEF5ZWxsZXQgPGF5ZWxsZXQu d29sbWFuQGludGVsLmNvbT47IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IFpl bmcsIFN0YXIgPHN0YXIuemVuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbZWRrMl0gW1BB VENIIDQvNF0gT3ZtZlBrZy9RZW11VmlkZW9EeGU6IFVwZGF0ZSBRZW11VmlkZW9EeGUgZHJpdmVy IHRvIGJ5cGFzcyBOVUxMIHBvaW50ZXIgZGV0ZWN0aW9uIGlmIGVuYWJsZWQuDQo+IA0KPiBIaSwN Cj4gDQo+IHNvbWUgb2YgdGhlIHBvaW50cyBJJ20gZ29pbmcgdG8gbWFrZSBoYXZlIGFscmVhZHkg YmVlbiBwb2ludGVkIG91dCBieQ0KPiBKb3JkYW46DQo+IA0KPiAoMSkgV2hlbiBwb3N0aW5nIGEg cGF0Y2ggc2VyaWVzLCBwbGVhc2UgY29sbGVjdCB0aGUgQ2M6IHRhZ3MgZnJvbSBhbGwgb2YNCj4g dGhlIHBhdGNoZXMsIGFuZCBhZGQgdGhlbSAqYWxsKiB0byB0aGUgY292ZXIgbGV0dGVyLiBUaGlz IHdheSBldmVyeW9uZQ0KPiB3aWxsIGdldCBhIHBlcnNvbmFsIGNvcHkgb2YgdGhlIGdlbmVyYWwg ZGVzY3JpcHRpb24uDQo+IA0KPiANCj4gKDIpIFRoZSBzdWJqZWN0IGxpbmUgaXMgdG9vIGxvbmcu IE9uZSBwb3NzaWJsZSBzaW1wbGlmaWNhdGlvbjoNCj4gDQo+IE92bWZQa2cvUWVtdVZpZGVvRHhl OiBieXBhc3MgTlVMTCBwb2ludGVyIGRldGVjdGlvbg0KPiANCj4gDQo+IE9uIDA5LzEzLzE3IDEx OjI1LCBXYW5nLCBKaWFuIEogd3JvdGU6DQo+ID4gUWVtdVZpZGVvRHhlIGRyaXZlciB3aWxsIGlu c3RhbGwgVkJFIFNISU0gaW50byBwYWdlIDAuIElmIE5VTEwgcG9pbnRlcg0KPiA+IGRldGVjdGlv biBpcyBlbmFibGVkLCBwYWdlIDAgbXVzdCBiZSBlbmFibGVkIHRlbXBvcmFyaWx5IGJlZm9yZQ0K PiA+IGluc3RhbGxpbmcgYW5kIGRpc2FibGVkIGFnYWluIGFmdGVyd2FyZHMuIEZvciBXaW5kb3dz IDcgYm9vdCwgQklUNyBvZg0KPiA+IFBjZE51bGxQb2ludGVyRGV0ZWN0aW9uUHJvcGVydHlNYXNr IG11c3Qgc3RpbGwgYmUgc2V0IHRvIGF2b2lkIGhhbmcuDQo+IA0KPiAoMykgU3ViamVjdCBsaW5l IGFuZCBjb21taXQgbWVzc2FnZSBib3RoIHNob3VsZCBub3QgZXhjZWVkIDc0IGNoYXJhY3RlcnMN Cj4gbGluZSBsZW5ndGguIChOb3Qgc3VyZSBob3cgbWFueSBjaGFycyBQYXRjaENoZWNrLnB5IGFj dHVhbGx5IGVuZm9yY2VzLCBJDQo+IGFsd2F5cyBzdGljayB3aXRoIDc0LCBmb2xsb3dpbmcgdGhl IExpbnV4IGtlcm5lbCB0cmFkaXRpb24uKQ0KPiANCj4gSSByZXdyYXBwZWQgdGhlIGNvbW1pdCBt ZXNzYWdlIGhlcmUgZm9yIHJlYWRhYmlsaXR5Lg0KPiANCj4gDQo+ID4NCj4gPiBDYzogSmlld2Vu IFlhbyA8amlld2VuLnlhb0BpbnRlbC5jb20+DQo+ID4gQ2M6IEVyaWMgRG9uZyA8ZXJpYy5kb25n QGludGVsLmNvbT4NCj4gPiBDYzogU3RhciBaZW5nIDxzdGFyLnplbmdAaW50ZWwuY29tPg0KPiA+ IENjOiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiA+IENjOiBKdXN0ZW4sIEpv cmRhbiBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPg0KPiA+IENjOiBLaW5uZXksIE1pY2hh ZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4gQ2M6IFdvbG1hbiwgQXllbGxl dCA8YXllbGxldC53b2xtYW5AaW50ZWwuY29tPg0KPiA+IFN1Z2dlc3RlZC1ieTogV29sbWFuLCBB eWVsbGV0IDxheWVsbGV0LndvbG1hbkBpbnRlbC5jb20+DQo+ID4gQ29udHJpYnV0ZWQtdW5kZXI6 IFRpYW5vQ29yZSBDb250cmlidXRpb24gQWdyZWVtZW50IDEuMQ0KPiA+IFNpZ25lZC1vZmYtYnk6 IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiANCj4gKDQpIEkgdGhpbmsg dGhpcyBpcyBhbHNvIHNvbWV0aGluZyB0aGF0IEpvcmRhbiBoYWQgcG9pbnRlZCBvdXQgYSBsb25n DQo+IHRpbWUgYWdvIChhcG9sb2dpZXMgaWYgSSBtaXMtcmVtZW1iZXIpOg0KPiANCj4gVGhlIHN0 cmluZ3MgYWZ0ZXIgdGhlIHRhZ3Mgc2hvdWxkIGZvcm0gY29ycmVjdCBlbWFpbCBhZGRyZXNzZXMs IGFuZCBpZg0KPiB0aGVyZSBhcmUgdmFyaW91cyBlbWFpbCBtZXRhLWNoYXJhY3RlcnMgaW4gdGhl bSwgbGlrZSAiLiIgKGRvdCkgYW5kICIsIg0KPiAoY29tbWEpLCB0aGVuIHRoZXkgc2hvdWxkIGJl IHF1b3RlZCwgbGlrZSB0aGlzOg0KPiANCj4gQ2M6ICJKdXN0ZW4sIEpvcmRhbiBMIiA8am9yZGFu LmwuanVzdGVuQGludGVsLmNvbT4NCj4gQ2M6ICJLaW5uZXksIE1pY2hhZWwgRCIgPG1pY2hhZWwu ZC5raW5uZXlAaW50ZWwuY29tPg0KPiBDYzogIldvbG1hbiwgQXllbGxldCIgPGF5ZWxsZXQud29s bWFuQGludGVsLmNvbT4NCj4gU3VnZ2VzdGVkLWJ5OiAiV29sbWFuLCBBeWVsbGV0IiA8YXllbGxl dC53b2xtYW5AaW50ZWwuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiAiV2FuZywgSmlhbiBKIiA8amlh bi5qLndhbmdAaW50ZWwuY29tPg0KPiANCj4gSWYgeW91IGxvb2sgYXQgdGhlIGFjdHVhbCBhZGRy ZXNzZXMgb24gdGhlIGVtYWlscyB0aGF0IGhhdmUgYmVlbiBzZW50DQo+IG91dCwgeW91IGNhbiBz ZWUgdGhleSBhcmUgYWxsIG1hbGZvcm1lZC4gRm9yIGV4YW1wbGUsIEkgaGF2ZToNCj4gDQo+ICJK b3JkYW4gTCA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT4iIGZvciBKb3JkYW4gLS0gdGhlIHBh cnQgYmVmb3JlIHRoZQ0KPiBjb21tYSB3YXMgdGFrZW4gdG8gYmUgYSBzZXBhcmF0ZSBlbWFpbCBh ZGRyZXNzIChhIG1hbGZvcm1lZCBvbmUpLg0KPiANCj4gQXQgbGVhc3QgZm9yIG15IHJlcGx5LCBJ IGhhdmUgZml4ZWQgdXAgdGhlIGVtYWlsIGFkZHJlc3Nlcy4NCj4gDQo+IA0KPiAoNSkgVGhlIGNv bW1pdCBtZXNzYWdlIG1lbnRpb25zIEJJVDcgb2YgdGhlIG5ldyBQQ0QuDQo+IA0KPiBGaXJzdCwg dGhhbmtzIGZvciBjaGVja2luZyBXaW5kb3dzIDcgYm9vdCAoYW5kIEknbSBoYXBweSB0aGF0IEkg Z290DQo+IHN1c3BpY2lvdXMgb2YgdGhlIGZlYXR1cmUgd2l0aCByZWdhcmQgdG8gV2luZG93cyA3 KS4gSSB0aGluayBCSVQ3IGlzIGENCj4gZ29vZCBmZWF0dXJlLg0KPiANCj4gSG93ZXZlciwgcGxl YXNlIGluY2x1ZGUgdGhlIHNob3J0IGRlc2NyaXB0aW9uIG9mIHRoYXQgZmVhdHVyZSBpbiB0aGUN Cj4gY29tbWl0IG1lc3NhZ2UgLS0gaXQgaXMgb25lIHNlbnRlbmNlOyAiRGlzYWJsZSBOVUxMIHBv aW50ZXIgZGV0ZWN0aW9uDQo+IGp1c3QgYWZ0ZXIgRW5kT2ZEeGUuIg0KPiANCj4gKEkgdGhpbmsg QklUNyBpcyBhIHJlYWxseSBzbWFydCBmZWF0dXJlLCBhbmQgSSBsaWtlICpob3cqIGl0IGlzIHVz ZWQgaW4NCj4gIk5VTExfREVURUNUSU9OX0VOQUJMRUQiIGJlbG93LiBUaGUgY2hlY2sgbWVhbnMs ICJpZiB0aGUgcHJvdGVjdGlvbiBpcw0KPiBlbmFibGVkIGZvciBEWEUsIGFuZCAqbm90IGRpc2Fi bGVkKiAoPT0gYWxzbyBlbmFibGVkKSBhZnRlciBFbmQtb2YtRHhlIi4NCj4gDQo+IFRoaXMgZG9l c24ndCBtZWFuIHRoYXQgSSBsaWtlIHRoZSBOVUxMX0RFVEVDVElPTl9FTkFCTEVEIG1hY3JvIGl0 c2VsZjsNCj4gbW9yZSBvbiB0aGF0IGJlbG93LikNCj4gDQo+IA0KPiA+IC0tLQ0KPiA+ICBPdm1m UGtnL1FlbXVWaWRlb0R4ZS9Ecml2ZXIuYyAgICAgICAgIHwgMTUgKysrKysrKysrKysrKystDQo+ ID4gIE92bWZQa2cvUWVtdVZpZGVvRHhlL1FlbXUuaCAgICAgICAgICAgfCAxNiArKysrKysrKysr KysrKysrDQo+ID4gIE92bWZQa2cvUWVtdVZpZGVvRHhlL1FlbXVWaWRlb0R4ZS5pbmYgfCAgMiAr Kw0KPiA+ICAzIGZpbGVzIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkN Cj4gPg0KPiA+IGRpZmYgLS1naXQgYS9Pdm1mUGtnL1FlbXVWaWRlb0R4ZS9Ecml2ZXIuYyBiL092 bWZQa2cvUWVtdVZpZGVvRHhlL0RyaXZlci5jDQo+ID4gaW5kZXggMGRjZTgwZTU5Yi4uZWUwZWVk NzIxNCAxMDA2NDQNCj4gPiAtLS0gYS9Pdm1mUGtnL1FlbXVWaWRlb0R4ZS9Ecml2ZXIuYw0KPiA+ ICsrKyBiL092bWZQa2cvUWVtdVZpZGVvRHhlL0RyaXZlci5jDQo+ID4gQEAgLTE5NCw2ICsxOTQs NyBAQCBRZW11VmlkZW9Db250cm9sbGVyRHJpdmVyU3RhcnQgKA0KPiA+ICAgIFBDSV9UWVBFMDAg ICAgICAgICAgICAgICAgICAgICAgICBQY2k7DQo+ID4gICAgUUVNVV9WSURFT19DQVJEICAgICAg ICAgICAgICAgICAgICpDYXJkOw0KPiA+ICAgIEVGSV9QQ0lfSU9fUFJPVE9DT0wgICAgICAgICAg ICAgICAqQ2hpbGRQY2lJbzsNCj4gPiArICBFRklfQ1BVX0FSQ0hfUFJPVE9DT0wgICAgICAgICAg ICAgKkNwdTsNCj4gDQo+ICg2KSBJIGJlbGlldmUgSSBtZW50aW9uZWQgdGhpcyBpbiB0aGUgZWFy bGllciBkaXNjdXNzaW9uLCBpbiBzb21lIGZvcm0sDQo+IGJ1dCBub3cgSSdsbCBzYXkgaXQgYWdh aW46DQo+IA0KPiBBIFVFRkkgZHJpdmVyIGhhcyBubyBidXNpbmVzcyBwb2tpbmcgYXQgdGhlIENQ VSBBcmNoIHByb3RvY29sLiBUaGUgUEkNCj4gc3BlYyAoMS42KSBzdGF0ZXMsDQo+IA0KPiAgIDEy LjMgQ1BVIEFyY2hpdGVjdHVyYWwgUHJvdG9jb2wNCj4gICBFRklfQ1BVX0FSQ0hfUFJPVE9DT0wN Cj4gDQo+ICAgU3VtbWFyeQ0KPiANCj4gICBBYnN0cmFjdHMgdGhlIHByb2Nlc3NvciBzZXJ2aWNl cyB0aGF0IGFyZSByZXF1aXJlZCB0byBpbXBsZW1lbnQgc29tZQ0KPiAgIG9mIHRoZSBEWEUgc2Vy dmljZXMuIFRoaXMgcHJvdG9jb2wgbXVzdCBiZSBwcm9kdWNlZCBieSBhIGJvb3Qgc2VydmljZQ0K PiAgIG9yIHJ1bnRpbWUgRFhFIGRyaXZlciBhbmQgbWF5IG9ubHkgYmUgY29uc3VtZWQgYnkgdGhl IERYRSBGb3VuZGF0aW9uDQo+ICAgYW5kIERYRSBkcml2ZXJzIHRoYXQgcHJvZHVjZSBhcmNoaXRl Y3R1cmFsIHByb3RvY29scy4NCj4gDQo+IFRoZSBEWEUgY29yZSBpcyBvYnZpb3VzbHkgZnJlZSB0 byB1c2UgdGhlIENQVSBBcmNoIHByb3RvY29sLCBidXQgYSBVRUZJDQo+IGRyaXZlciBpcyBmb3Ji aWRkZW4gZnJvbSBpdCwgKmV2ZW4gaWYqIHdlIHNheSB0aGF0LCBpbiB0aGlzIFVFRkkgZHJpdmVy LA0KPiB3ZSBhcmUgZ29pbmcgdG8gdXNlIERYRSBzZXJ2aWNlcy4gKFdoaWNoIGNvbWUgZnJvbSB0 aGUgUEkgc3BlYywgYW5kIG5vdA0KPiB0aGUgVUVGSSBzcGVjLikNCj4gDQo+IFRoZXJlZm9yZSwg aGVyZSB3ZSBoYXZlIHRvIHVzZSBnRFMtPlNldE1lbW9yeVNwYWNlQXR0cmlidXRlcygpLg0KPiAN Cj4gVGhlIGdEUy0+U2V0TWVtb3J5U3BhY2VBdHRyaWJ1dGVzKCkgc2VydmljZSBkZXBlbmRzIG9u IHRoZSBDUFUgQXJjaA0KPiBwcm90b2NvbCwgYnkgdGhlIFBJIHNwZWMuIEl0IGlzIG5vdCBlYXN5 IHRvIHNlZSwgYmVjYXVzZSB0aGUgUEkgc3BlYyBoYXMNCj4gYSBmb3JtYXR0aW5nIGVycm9yIGlu IHRoaXMgYXJlYS4gSWYgeW91IGxvb2sgdW5kZXINCj4gR2V0TWVtb3J5U3BhY2VEZXNjcmlwdG9y KCksIHRoZXJlIGlzIGFuIGVycm9yIGNvZGUNCj4gDQo+ICAgRUZJX05PVF9BVkFJTEFCTEVfWUVU ICBUaGUgYXR0cmlidXRlcyBjYW5ub3QgYmUgc2V0IGJlY2F1c2UgQ1BVDQo+ICAgICAgICAgICAg ICAgICAgICAgICAgICBhcmNoaXRlY3R1cmFsIHByb3RvY29sIGlzIG5vdCBhdmFpbGFibGUgeWV0 Lg0KPiANCj4gT2J2aW91c2x5IHRoaXMgZXJyb3IgY29kZSBiZWxvbmdzIHRvIFNldE1lbW9yeVNw YWNlQXR0cmlidXRlcygpLCBub3QNCj4gR2V0TWVtb3J5U3BhY2VEZXNjcmlwdG9yKCkuDQo+IA0K PiBBbnl3YXksIGdEUyBzaG91bGQgYmUgdXNlZCwgYXJjaGl0ZWN0dXJhbCBwcm90b2NvbHMgc2hv dWxkbid0IGJlLg0KPiANCj4gDQo+ID4NCj4gPiAgICBPbGRUcGwgPSBnQlMtPlJhaXNlVFBMIChU UExfQ0FMTEJBQ0spOw0KPiA+DQo+ID4gQEAgLTQ3OSw3ICs0ODAsMTkgQEAgUWVtdVZpZGVvQ29u dHJvbGxlckRyaXZlclN0YXJ0ICgNCj4gPiAgI2lmIGRlZmluZWQgTURFX0NQVV9JQTMyIHx8IGRl ZmluZWQgTURFX0NQVV9YNjQNCj4gPiAgICBpZiAoUHJpdmF0ZS0+VmFyaWFudCA9PSBRRU1VX1ZJ REVPX0JPQ0hTX01NSU8gfHwNCj4gPiAgICAgICAgUHJpdmF0ZS0+VmFyaWFudCA9PSBRRU1VX1ZJ REVPX0JPQ0hTKSB7DQo+ID4gLSAgICBJbnN0YWxsVmJlU2hpbSAoQ2FyZC0+TmFtZSwgUHJpdmF0 ZS0+R3JhcGhpY3NPdXRwdXQuTW9kZS0+RnJhbWVCdWZmZXJCYXNlKTsNCj4gPiArICAgIC8vDQo+ ID4gKyAgICAvLyBQcmVwYXJlIENQVSBhcmNoIHByb3RvY29sIGZvciBOVUxMIHBvaW50ZXIgZGV0 ZWN0aW9uDQo+ID4gKyAgICAvLw0KPiA+ICsgICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2Nv bCAoDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgJmdFZmlDcHVBcmNoUHJvdG9jb2xHdWlkLA0K PiA+ICsgICAgICAgICAgICAgICAgICAgIE5VTEwsDQo+ID4gKyAgICAgICAgICAgICAgICAgICAg KFZPSUQgKiopICZDcHUNCj4gPiArICAgICAgICAgICAgICAgICAgICApOw0KPiA+ICsgICAgQVNT RVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gPiArDQo+ID4gKyAgICBESVNBQkxFX05VTExfREVU RUNUSU9OKENwdSk7DQo+ID4gKyAgICAgIEluc3RhbGxWYmVTaGltIChDYXJkLT5OYW1lLCBQcml2 YXRlLT5HcmFwaGljc091dHB1dC5Nb2RlLT5GcmFtZUJ1ZmZlckJhc2UpOw0KPiA+ICsgICAgRU5B QkxFX05VTExfREVURUNUSU9OKENwdSk7DQo+IA0KPiAoNykgVGhlIE5VTEwgZGV0ZWN0aW9uIGRp c2FibGluZyBhbmQgZW5hYmxpbmcgc2hvdWxkIGJyYWNrZXQgdGhlDQo+IGFmZmVjdGVkIGNvZGUg YXMgdGlnaHRseSBhcyBwb3NzaWJsZS4NCj4gDQo+IFNvIHBsZWFzZSBtb3ZlIHRoaXMgaW50byBJ bnN0YWxsVmJlU2hpbSgpIGFjY29yZGluZ2x5Lg0KPiANCj4gDQo+ID4gICAgfQ0KPiA+ICAjZW5k aWYNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9Pdm1mUGtnL1FlbXVWaWRlb0R4ZS9RZW11LmggYi9P dm1mUGtnL1FlbXVWaWRlb0R4ZS9RZW11LmgNCj4gPiBpbmRleCA3ZmJiMjViM2VmLi5iYjNiYzZl YjBmIDEwMDY0NA0KPiA+IC0tLSBhL092bWZQa2cvUWVtdVZpZGVvRHhlL1FlbXUuaA0KPiA+ICsr KyBiL092bWZQa2cvUWVtdVZpZGVvRHhlL1FlbXUuaA0KPiA+IEBAIC0yNSw2ICsyNSw3IEBADQo+ ID4gICNpbmNsdWRlIDxQcm90b2NvbC9QY2lJby5oPg0KPiA+ICAjaW5jbHVkZSA8UHJvdG9jb2wv RHJpdmVyU3VwcG9ydGVkRWZpVmVyc2lvbi5oPg0KPiA+ICAjaW5jbHVkZSA8UHJvdG9jb2wvRGV2 aWNlUGF0aC5oPg0KPiA+ICsjaW5jbHVkZSA8UHJvdG9jb2wvQ3B1Lmg+DQo+ID4NCj4gPiAgI2lu Y2x1ZGUgPExpYnJhcnkvRGVidWdMaWIuaD4NCj4gPiAgI2luY2x1ZGUgPExpYnJhcnkvVWVmaURy aXZlckVudHJ5UG9pbnQuaD4NCj4gPiBAQCAtODIsNiArODMsMjEgQEAgdHlwZWRlZiBzdHJ1Y3Qg ew0KPiA+DQo+ID4gICNkZWZpbmUgR1JBUEhJQ1NfT1VUUFVUX0lOVkFMSURFX01PREVfTlVNQkVS ICAweGZmZmYNCj4gPg0KPiA+ICsvLw0KPiA+ICsvLyBWQkUgY29kZSB3aWxsIGFjY2VzcyBtZW1v cnkgYmV0d2VlbiAwLTQwOTUgd2hpY2ggd2lsbCBjYXVzZSBwYWdlIGZhdWx0IGV4Y2VwdGlvbg0K PiA+ICsvLyBpZiBOVUxMIHBvaW50ZXIgZGV0ZWN0aW9uIG1lY2hhbmlzbSBpcyBlbmFibGVkLiBG b2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIHRvDQo+ID4gKy8vIGRpc2FibGUvZW5hYmxlIE5V TEwgcG9pbnRlciBkZXRlY3Rpb24gYmVmb3JlL2FmdGVyIGFjY2Vzc2luZyB0aG9zZSBtZW1vcnku DQo+ID4gKy8vDQo+ID4gKyNkZWZpbmUgTlVMTF9ERVRFQ1RJT05fRU5BQkxFRCAgKChQY2RHZXQ4 KFBjZE51bGxQb2ludGVyRGV0ZWN0aW9uUHJvcGVydHlNYXNrKSAmIChCSVQwfEJJVDcpKSA9PSBC SVQwKQ0KPiA+ICsjZGVmaW5lIERJU0FCTEVfTlVMTF9ERVRFQ1RJT04oQ3B1KSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICBpZiAoTlVMTF9ERVRF Q1RJT05fRU5BQkxFRCkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gKyAgICAoQ3B1KS0+U2V0TWVtb3J5QXR0cmlidXRlcygoQ3B1KSwgMCwg RUZJX1BBR0VfU0laRSwgMCk7ICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgIH0NCj4gPiAr I2RlZmluZSBFTkFCTEVfTlVMTF9ERVRFQ1RJT04oQ3B1KSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgaWYgKE5VTExfREVURUNUSU9OX0VOQUJM RUQpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0K PiA+ICsgICAgKENwdSktPlNldE1lbW9yeUF0dHJpYnV0ZXMoKENwdSksIDAsIEVGSV9QQUdFX1NJ WkUsIEVGSV9NRU1PUllfUlApOyAgICAgICAgIFwNCj4gPiArICB9DQo+ID4gKw0KPiANCj4gKDgp IEkgYmVsaWV2ZSBKb3JkYW4gdG9vIGNvbW1lbnRlZCBvbiB0aGVzZSBtYWNyb3MgZWxzZXdoZXJl ICh1bmRlcg0KPiBwYXRjaCAxLzQpLg0KPiANCj4gSW4gbXkgb3BpbmlvbiwgdGhpcyBmdW5jdGlv bmFsaXR5IHNob3VsZCBiZSBleHRyYWN0ZWQgaW50byBhIGxpYnJhcnkNCj4gY2xhc3MsIHdpdGgg YSBsaWJyYXJ5IGluc3RhbmNlIHRoYXQgaXMgc3VpdGFibGUgZm9yIGF0IGxlYXN0IFVFRklfRFJJ VkVSDQo+IG1vZHVsZXMuIChNYXliZSBldmVuIGZvciBEWEVfRFJJVkVSIG1vZHVsZXMuKQ0KPiAN Cj4gWW91IGNvdWxkIGFkZCBhIHNlcGFyYXRlIGxpYnJhcnkgaW5zdGFuY2UgZm9yIFNNTSBkcml2 ZXJzLCBpZiB0aGF0IHdlcmUNCj4gbmVjZXNzYXJ5Lg0KPiANCj4gDQo+ICg5KSBTdHlsZSBjb21t ZW50OiBwbGVhc2UgcHV0IG9uZSBzcGFjZSBjaGFyYWN0ZXIgYmV0d2VlbiB0aGUgZnVuY3Rpb24N Cj4gZGVzaWduYXRvciBhbmQgdGhlIG9wZW5pbmcgcGFyZW50aGVzaXMuDQo+IA0KPiANCj4gPiAg Ly8NCj4gPiAgLy8gUUVNVSBWaWRlbyBQcml2YXRlIERhdGEgU3RydWN0dXJlDQo+ID4gIC8vDQo+ ID4gZGlmZiAtLWdpdCBhL092bWZQa2cvUWVtdVZpZGVvRHhlL1FlbXVWaWRlb0R4ZS5pbmYgYi9P dm1mUGtnL1FlbXVWaWRlb0R4ZS9RZW11VmlkZW9EeGUuaW5mDQo+ID4gaW5kZXggN2M3ZDQyOWJj YS4uNWQxNjZlYjk5YyAxMDA2NDQNCj4gPiAtLS0gYS9Pdm1mUGtnL1FlbXVWaWRlb0R4ZS9RZW11 VmlkZW9EeGUuaW5mDQo+ID4gKysrIGIvT3ZtZlBrZy9RZW11VmlkZW9EeGUvUWVtdVZpZGVvRHhl LmluZg0KPiA+IEBAIC03Miw3ICs3Miw5IEBADQo+ID4gICAgZ0VmaUdyYXBoaWNzT3V0cHV0UHJv dG9jb2xHdWlkICAgICAgICAgICAgICAgICMgUFJPVE9DT0wgQllfU1RBUlQNCj4gPiAgICBnRWZp RGV2aWNlUGF0aFByb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgIyBQUk9UT0NPTCBCWV9T VEFSVA0KPiA+ICAgIGdFZmlQY2lJb1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgICAg ICAjIFBST1RPQ09MIFRPX1NUQVJUDQo+ID4gKyAgZ0VmaUNwdUFyY2hQcm90b2NvbEd1aWQNCj4g Pg0KPiA+ICBbUGNkXQ0KPiA+ICAgIGdPcHRpb25Sb21Qa2dUb2tlblNwYWNlR3VpZC5QY2REcml2 ZXJTdXBwb3J0ZWRFZmlWZXJzaW9uDQo+ID4gKyAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VH dWlkLlBjZE51bGxQb2ludGVyRGV0ZWN0aW9uUHJvcGVydHlNYXNrDQo+IA0KPiAoMTApIEluc3Rl YWQgb2YgdGhlc2UsIHRoZSBsaWJyYXJ5IGNsYXNzIHRoYXQgSSBkZXNjcmliZWQgdW5kZXIgKDgp DQo+IHNob3VsZCBiZSBhZGRlZCBoZXJlLg0KPiANCj4gQW55IGZ1cnRoZXIgZGVwZW5kZW5jaWVz IGxpa2UgUENEcywgcHJvdG9jb2xzIGV0YyBzaG91bGQgYmUgaW5oZXJpdGVkIGJ5DQo+IHRoZSBk cml2ZXIgdGhyb3VnaCB0aGUgbGlicmFyeSBpbnN0YW5jZSB0aGF0IHRoZSBwbGF0Zm9ybSBEU0Mg ZmlsZQ0KPiByZXNvbHZlcyB0aGUgbGlicmFyeSBjbGFzcyB0by4NCj4gDQo+IEJvbnVzOiBzaG91 bGQgeW91IHJlYWxpemUgdGhhdCB0aGUgZmVhdHVyZSBpcyBpbXBvc3NpYmxlIHRvIGltcGxlbWVu dA0KPiB3aXRob3V0IGFjY2Vzc2luZyB0aGUgQ1BVIEFyY2ggcHJvdG9jb2wgZGlyZWN0bHksIHlv dSBjb3VsZCBoaWRlIHRoZQ0KPiBwcm90b2NvbCBHVUlEIGRlcGVuZGVuY3kgaW4gdGhlIGxpYnJh cnkgaW5zdGFuY2UgSU5GIGZpbGUsIGFuZCBJJ2QgYmUNCj4gbm9uZSB0aGUgd2lzZXIuDQo+IA0K PiAuLi4gV2VsbCwgSSBjb3VsZCBhdCBsZWFzdCBwcmV0ZW5kIHRoYXQuIDopDQo+IA0KPiBUaGFu a3MsDQo+IExhc3psbw0K