From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=104.47.0.65; helo=eur01-he1-obe.outbound.protection.outlook.com; envelope-from=sami.mujawar@arm.com; receiver=edk2-devel@lists.01.org Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0065.outbound.protection.outlook.com [104.47.0.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 8463320D7ADF6 for ; Fri, 15 Jun 2018 06:51:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fG3N/bT8JSZY29Lkcomx0Ru/Hr7WSUJfpluFHmWHYRA=; b=rjAfLamM9W/ZwGPuQdoecYkhRHrRNvgK19PYQ1yszL3JPf27eHk6VqVC00795kPT2bs3jgeQxJPn40HwacXGMTqS+JuciEhhqy17pRk6s7GI1KXUB2f/6oiWRWCUZYroTGrs2NktukYWp8iBGMxek5Z0kbbM9CqhS4dQFsidpBc= Received: from DB6PR0802MB2375.eurprd08.prod.outlook.com (10.172.228.142) by DB6PR0802MB2456.eurprd08.prod.outlook.com (10.172.251.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.863.16; Fri, 15 Jun 2018 13:51:32 +0000 Received: from DB6PR0802MB2375.eurprd08.prod.outlook.com ([fe80::8176:1e3f:735b:69a9]) by DB6PR0802MB2375.eurprd08.prod.outlook.com ([fe80::8176:1e3f:735b:69a9%3]) with mapi id 15.20.0863.010; Fri, 15 Jun 2018 13:51:32 +0000 From: Sami Mujawar To: "Zeng, Star" , "edk2-devel@lists.01.org" CC: "ruiyu.ni@intel.com" , nd , Stephanie Hughes-Fitt , "eric.dong@intel.com" , "ard.biesheuvel@linaro.org" , "leif.lindholm@linaro.org" Thread-Topic: [edk2] [PATCH v1] MdeModulePkg: Enable SATA Controller PCI mem space Thread-Index: AQHUA9RBvXPUPqzE2EiMrlu+4RCDKqRhEn+AgAAM3yA= Date: Fri, 15 Jun 2018 13:51:32 +0000 Message-ID: References: <20180614113820.11872-1-sami.mujawar@arm.com> <0bf51b69-39dd-4d2e-b1b7-9a65914a42b3@intel.com> In-Reply-To: <0bf51b69-39dd-4d2e-b1b7-9a65914a42b3@intel.com> Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Sami.Mujawar@arm.com; x-originating-ip: [217.140.96.140] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DB6PR0802MB2456; 7:LKFqBTNG/QKKr7KCMjtNP6XEXbMJDz1dU0zCGbRPKac0NZRWh3Sth7AoOmt7UoMr3twbaK0bWnm77YTREVyNHyQO3I4e9i7nxCiqgcihjyDepPQFZ7EVGX3cfQ97l6mmxgSCB7QcbgW3+qBszcSswEhDEp1RsC+Db5MGvxO+6QbxNueM4Kwfz3mTMdFohcbinWld7784lKEpi/b7+rK1ZbLemOynKvWiN/D/u/WokXeIaKUXL/NWPDXVOawK3zI9 x-ms-exchange-antispam-srfa-diagnostics: SOS;SOR; x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: bdb8987c-8227-4a82-3571-08d5d2c71a43 x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(711020)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:DB6PR0802MB2456; x-ms-traffictypediagnostic: DB6PR0802MB2456: nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917)(166708455590820)(162533806227266)(228905959029699); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231254)(944501410)(52105095)(3002001)(93006095)(93001095)(10201501046)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:DB6PR0802MB2456; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0802MB2456; x-forefront-prvs: 0704670F76 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(366004)(346002)(376002)(39380400002)(39860400002)(13464003)(189003)(199004)(446003)(2501003)(476003)(305945005)(106356001)(8936002)(5250100002)(486006)(105586002)(110136005)(7736002)(316002)(74316002)(33656002)(54906003)(81156014)(3846002)(66066001)(6116002)(8676002)(11346002)(2906002)(99286004)(81166006)(966005)(3280700002)(3660700001)(2900100001)(4326008)(5660300001)(53546011)(53936002)(102836004)(72206003)(186003)(6246003)(26005)(229853002)(86362001)(6506007)(76176011)(6306002)(478600001)(9686003)(25786009)(68736007)(55016002)(7696005)(14454004)(59450400001)(6436002)(97736004)(575784001); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0802MB2456; H:DB6PR0802MB2375.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: OqEDTsEQ0IDZGanqTC7RtWiXKCleAyJnO0S9/qGE/1Z7isU1oW8qyugPC9WbzcxAnSjfAOjZKjvNUOX0bcrudaklW8osN6WxJ0ZHcvGzVuKD5PND4PMG/Zbb48+X/XGmo71fze1hzh0/FUCTJJvwCU2vDRB3KA1akQMKzEMcrTz4ZrpWZkVYO2P1xqRItkLw spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: bdb8987c-8227-4a82-3571-08d5d2c71a43 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jun 2018 13:51:32.2359 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2456 Subject: Re: [PATCH v1] MdeModulePkg: Enable SATA Controller PCI mem space X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Jun 2018 13:51:37 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgWmVuZywNCg0KUGxlYXNlIGZpbmQgbXkgcmVzcG9uc2UgbWFya2VkIFtTQU1JXSBiZWxvdy4N Cg0KUmVnYXJkcywNCg0KU2FtaSBNdWphd2FyDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQpGcm9tOiBaZW5nLCBTdGFyIDxzdGFyLnplbmdAaW50ZWwuY29tPiANClNlbnQ6IDE1IEp1bmUg MjAxOCAxMDo0MiBBTQ0KVG86IFNhbWkgTXVqYXdhciA8U2FtaS5NdWphd2FyQGFybS5jb20+OyBl ZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KQ2M6IHJ1aXl1Lm5pQGludGVsLmNvbTsgbmQgPG5kQGFy bS5jb20+OyBTdGVwaGFuaWUgSHVnaGVzLUZpdHQgPFN0ZXBoYW5pZS5IdWdoZXMtRml0dEBhcm0u Y29tPjsgZXJpYy5kb25nQGludGVsLmNvbTsgYXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZzsgbGVp Zi5saW5kaG9sbUBsaW5hcm8ub3JnOyBzdGFyLnplbmdAaW50ZWwuY29tDQpTdWJqZWN0OiBSZTog W2VkazJdIFtQQVRDSCB2MV0gTWRlTW9kdWxlUGtnOiBFbmFibGUgU0FUQSBDb250cm9sbGVyIFBD SSBtZW0gc3BhY2UNCg0KR2VuZXJhbGx5LCB0aGUgcGF0Y2ggaXMgZ29vZCB0byBtZS4NClNvbWUg Y29tbWVudHMgYmVsb3cuDQoNCk9uIDIwMTgvNi8xNCAxOTozOCwgU2FtaSBNdWphd2FyIHdyb3Rl Og0KPiBUaGUgU0FUQSBjb250cm9sbGVyIGRyaXZlciBjcmFzaGVzIHdoaWxlIGFjY2Vzc2luZyB0 aGUgUENJIG1lbW9yeSwgYXMgDQo+IHRoZSBQQ0kgbWVtb3J5IHNwYWNlIGlzIG5vdCBlbmFibGVk Lg0KDQpUaGUgY29kZSAiYWNjZXNzaW5nIHRoZSBQQ0kgbWVtb3J5IiB5b3UgbWVudGlvbmVkIGhl cmUgaXMgdGhlIEFoY2lSZWFkUmVnIGluIHRoZSBmb2xsb3dpbmcgY29kZSBibG9jaywgcmlnaHQ/ DQpbU0FNSV0gWWVzLg0KPiANCj4gRW5hYmxlIHRoZSBQQ0kgbWVtb3J5IHNwYWNlIGFjY2VzcyB0 byBwcmV2ZW50IHRoZSBTQVRBIENvbnRyb2xsZXIgDQo+IGRyaXZlciBmcm9tIGNyYXNoaW5nLg0K PiANCj4gQ29udHJpYnV0ZWQtdW5kZXI6IFRpYW5vQ29yZSBDb250cmlidXRpb24gQWdyZWVtZW50 IDEuMQ0KPiBTaWduZWQtb2ZmLWJ5OiBTYW1pIE11amF3YXIgPHNhbWkubXVqYXdhckBhcm0uY29t Pg0KPiAtLS0NCj4gVGhlIGNoYW5nZXMgY2FuIGJlIHNlZW4gYXQgDQo+IGh0dHBzOi8vZ2l0aHVi LmNvbS9zYW1pbXVqYXdhci9lZGsyL3RyZWUvMjg0X3NhdGFfY29udHJvbGVyX3BjaV9tZW1fZmkN Cj4geF92MQ0KPiANCj4gTm90ZXM6DQo+ICAgICAgdjE6DQo+ICAgICAgLSBGaXggU0FUQSBDb250 cm9sbGVyIGRyaXZlciBjcmFzaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1NBTUld DQo+IA0KPiAgIE1kZU1vZHVsZVBrZy9CdXMvUGNpL1NhdGFDb250cm9sbGVyRHhlL1NhdGFDb250 cm9sbGVyLmMgfCA4MCArKysrKysrKysrKysrKysrKysrLQ0KPiAgIE1kZU1vZHVsZVBrZy9CdXMv UGNpL1NhdGFDb250cm9sbGVyRHhlL1NhdGFDb250cm9sbGVyLmggfCAgNyArKw0KPiAgIDIgZmls ZXMgY2hhbmdlZCwgODYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPiANCj4gZGlmZiAt LWdpdCBhL01kZU1vZHVsZVBrZy9CdXMvUGNpL1NhdGFDb250cm9sbGVyRHhlL1NhdGFDb250cm9s bGVyLmMgDQo+IGIvTWRlTW9kdWxlUGtnL0J1cy9QY2kvU2F0YUNvbnRyb2xsZXJEeGUvU2F0YUNv bnRyb2xsZXIuYw0KPiBpbmRleCANCj4gYTZkNTVjMTU1NzE3MjhlYjNmZDU3MjAwM2YzODNiYTdj ODY2MzVhZS4uMjFjYzEwMWQ2OTNmNWFkZmQ5ZDQzZjBjMjFhMA0KPiA5NmViNTliYTczYjEgMTAw NjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9CdXMvUGNpL1NhdGFDb250cm9sbGVyRHhlL1NhdGFD b250cm9sbGVyLmMNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0J1cy9QY2kvU2F0YUNvbnRyb2xsZXJE eGUvU2F0YUNvbnRyb2xsZXIuYw0KPiBAQCAtMiw2ICsyLDcgQEANCj4gICAgIFRoaXMgZHJpdmVy IG1vZHVsZSBwcm9kdWNlcyBJREVfQ09OVFJPTExFUl9JTklUIHByb3RvY29sIGZvciBTYXRhIENv bnRyb2xsZXJzLg0KPiAgIA0KPiAgICAgQ29weXJpZ2h0IChjKSAyMDExIC0gMjAxNiwgSW50ZWwg Q29ycG9yYXRpb24uIEFsbCByaWdodHMgDQo+IHJlc2VydmVkLjxCUj4NCj4gKyAgQ29weXJpZ2h0 IChjKSAyMDE4LCBBUk0gTHRkLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gICAgIFRoaXMg cHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMNCj4gICAgIGFyZSBsaWNlbnNl ZCBhbmQgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRo ZSBCU0QgTGljZW5zZQ0KPiAgICAgd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24u ICBUaGUgZnVsbCB0ZXh0IG9mIHRoZSBsaWNlbnNlIA0KPiBtYXkgYmUgZm91bmQgYXQgQEAgLTM2 NCw2ICszNjUsNyBAQCBTYXRhQ29udHJvbGxlclN0YXJ0ICgNCj4gICAgIEVGSV9TQVRBX0NPTlRS T0xMRVJfUFJJVkFURV9EQVRBICAqUHJpdmF0ZTsNCj4gICAgIFVJTlQzMiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBEYXRhMzI7DQo+ICAgICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgVG90YWxDb3VudDsNCj4gKyAgVUlOVDY0ICAgICAgICAgICAgICAgICAgICAgICAgICAg IFBjaUF0dHJpYnV0ZXM7DQo+ICAgDQo+ICAgICBERUJVRyAoKEVGSV9EX0lORk8sICJTYXRhQ29u dHJvbGxlclN0YXJ0IHN0YXJ0XG4iKSk7DQo+ICAgDQo+IEBAIC00MDYsNiArNDA4LDYxIEBAIFNh dGFDb250cm9sbGVyU3RhcnQgKA0KPiAgICAgUHJpdmF0ZS0+SWRlSW5pdC5DYWxjdWxhdGVNb2Rl ICA9IElkZUluaXRDYWxjdWxhdGVNb2RlOw0KPiAgICAgUHJpdmF0ZS0+SWRlSW5pdC5TZXRUaW1p bmcgICAgICA9IElkZUluaXRTZXRUaW1pbmc7DQo+ICAgICBQcml2YXRlLT5JZGVJbml0LkVudW1B bGwgICAgICAgID0gU0FUQV9FTlVNRVJfQUxMOw0KPiArICBQcml2YXRlLT5QY2lBdHRyaWJ1dGVz Q2hhbmdlZCAgID0gRkFMU0U7DQo+ICsNCj4gKyAgLy8gU2F2ZSBvcmlnaW5hbCBQQ0kgYXR0cmli dXRlcw0KPiArICBTdGF0dXMgPSBQY2lJby0+QXR0cmlidXRlcyAoDQo+ICsgICAgICAgICAgICAg ICAgICAgIFBjaUlvLA0KPiArICAgICAgICAgICAgICAgICAgICBFZmlQY2lJb0F0dHJpYnV0ZU9w ZXJhdGlvbkdldCwNCj4gKyAgICAgICAgICAgICAgICAgICAgMCwNCj4gKyAgICAgICAgICAgICAg ICAgICAgJlByaXZhdGUtPk9yaWdpbmFsUGNpQXR0cmlidXRlcw0KPiArICAgICAgICAgICAgICAg ICAgICApOw0KPiArICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ICsgICAgICBnb3RvIERv bmU7DQo+ICsgIH0NCg0KR29vZCB0byBtZS4NCg0KPiArDQo+ICsgIERFQlVHICgoDQo+ICsgICAg RUZJX0RfSU5GTywNCj4gKyAgICAiUENJIEF0dHJpYnV0ZXMgPSAweCVsbHhcbiIsDQoNCkhvdyBh Ym91dCB1c2luZyAiT3JpZ2luYWwgUENJIEF0dHJpYnV0ZXMgPSAweCVsbHhcbiI/DQpbU0FNSV0g SSB3aWxsIHN1Ym1pdCBhIHBhdGNoIHdpdGggdGhpcyBmaXhlZC4NCg0KPiArICAgIFByaXZhdGUt Pk9yaWdpbmFsUGNpQXR0cmlidXRlcw0KPiArICAgICkpOw0KPiArDQo+ICsgIGlmICgoUHJpdmF0 ZS0+T3JpZ2luYWxQY2lBdHRyaWJ1dGVzICYgRUZJX1BDSV9JT19BVFRSSUJVVEVfTUVNT1JZKSA9 PSAwKSB7DQo+ICsgICAgU3RhdHVzID0gUGNpSW8tPkF0dHJpYnV0ZXMgKA0KPiArICAgICAgICAg ICAgICAgICAgICAgIFBjaUlvLA0KPiArICAgICAgICAgICAgICAgICAgICAgIEVmaVBjaUlvQXR0 cmlidXRlT3BlcmF0aW9uU3VwcG9ydGVkLA0KPiArICAgICAgICAgICAgICAgICAgICAgIDAsDQo+ ICsgICAgICAgICAgICAgICAgICAgICAgJlBjaUF0dHJpYnV0ZXMNCj4gKyAgICAgICAgICAgICAg ICAgICAgICApOw0KPiArICAgIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCj4gKyAgICAgIGdv dG8gRG9uZTsNCj4gKyAgICB9DQo+ICsNCj4gKyAgICBERUJVRyAoKEVGSV9EX0lORk8sICJTdXBw b3J0ZWQgUENJIEF0dHJpYnV0ZXMgPSAweCVsbHhcbiIsIA0KPiArIFBjaUF0dHJpYnV0ZXMpKTsN Cj4gKw0KPiArICAgIGlmICgoUGNpQXR0cmlidXRlcyAmIEVGSV9QQ0lfSU9fQVRUUklCVVRFX01F TU9SWSkgPT0gMCkgew0KPiArICAgICAgREVCVUcgKCgNCj4gKyAgICAgICAgRUZJX0RfRVJST1Is DQo+ICsgICAgICAgICJFcnJvcjogRUZJX1BDSV9JT19BVFRSSUJVVEVfTUVNT1JZIG5vdCBzdXBw b3J0ZWRcbiINCj4gKyAgICAgICAgKSk7DQo+ICsgICAgICBTdGF0dXMgPSBFRklfVU5TVVBQT1JU RUQ7DQo+ICsgICAgICBnb3RvIERvbmU7DQo+ICsgICAgfQ0KPiArDQo+ICsgICAgUGNpQXR0cmli dXRlcyA9IFByaXZhdGUtPk9yaWdpbmFsUGNpQXR0cmlidXRlcyB8IA0KPiArIEVGSV9QQ0lfSU9f QVRUUklCVVRFX01FTU9SWTsNCj4gKw0KPiArICAgIERFQlVHICgoRUZJX0RfSU5GTywgIkVuYWJs ZSBQQ0kgQXR0cmlidXRlcyA9IDB4JWxseFxuIiwgUGNpQXR0cmlidXRlcykpOw0KPiArICAgIFN0 YXR1cyA9IFBjaUlvLT5BdHRyaWJ1dGVzICgNCj4gKyAgICAgICAgICAgICAgICAgICAgICBQY2lJ bywNCj4gKyAgICAgICAgICAgICAgICAgICAgICBFZmlQY2lJb0F0dHJpYnV0ZU9wZXJhdGlvbkVu YWJsZSwNCj4gKyAgICAgICAgICAgICAgICAgICAgICBQY2lBdHRyaWJ1dGVzLA0KPiArICAgICAg ICAgICAgICAgICAgICAgIE5VTEwNCj4gKyAgICAgICAgICAgICAgICAgICAgICApOw0KPiArICAg IGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCj4gKyAgICAgIGdvdG8gRG9uZTsNCj4gKyAgICB9 DQoNCkl0IGlzIHRoZSBjYXNlIGZvciBlbmFibGluZyBtZW1vcnkgc3BhY2UsIGJ1dCB0aGVyZSBt YXkgYmUgY2FzZSB0byBuZWVkIElPIHNwYWNlIGVuYWJsaW5nLiBJIHN1Z2dlc3QgdG8gdXNlIHRo ZSBjb2RlIGJsb2NrIChzYW1lIHdpdGggb3RoZXIgZGV2aWNlIGRyaXZlcnMpLg0KDQogICBTdGF0 dXMgPSBQY2lJby0+QXR0cmlidXRlcyAoDQogICAgICAgICAgICAgICAgICAgICBQY2lJbywNCiAg ICAgICAgICAgICAgICAgICAgIEVmaVBjaUlvQXR0cmlidXRlT3BlcmF0aW9uU3VwcG9ydGVkLA0K ICAgICAgICAgICAgICAgICAgICAgMCwNCiAgICAgICAgICAgICAgICAgICAgICZTdXBwb3J0cw0K ICAgICAgICAgICAgICAgICAgICAgKTsNCiAgIGlmICghRUZJX0VSUk9SIChTdGF0dXMpKSB7DQog ICAgIFN1cHBvcnRzICY9IChVSU5UNjQpRUZJX1BDSV9ERVZJQ0VfRU5BQkxFOw0KICAgICBTdGF0 dXMgPSBQY2lJby0+QXR0cmlidXRlcyAoDQogICAgICAgICAgICAgICAgICAgICAgIFBjaUlvLA0K ICAgICAgICAgICAgICAgICAgICAgICBFZmlQY2lJb0F0dHJpYnV0ZU9wZXJhdGlvbkVuYWJsZSwN CiAgICAgICAgICAgICAgICAgICAgICAgU3VwcG9ydHMsDQogICAgICAgICAgICAgICAgICAgICAg IE5VTEwNCiAgICAgICAgICAgICAgICAgICAgICAgKTsNCiAgIH0NCg0KW1NBTUldIFRoaXMgU0FU QSBDb250cm9sbGVyIGRyaXZlciBvbmx5IHVzZXMgdGhlIFBDSSBCQVI1IHJlZ2lzdGVyIHNwYWNl IHdoaWNoIGlzIHRoZSBBSENJIEJhc2UgQWRkcmVzcyAoQUJBUikuIEFjY29yZGluZyB0byB0aGUg J1NlcmlhbCBBVEEgQWR2YW5jZWQgSG9zdCBDb250cm9sbGVyIEludGVyZmFjZSAoQUhDSSkgMS4z LjEnIHNwZWNpZmljYXRpb24sIHNlY3Rpb24gMi4xLjExLCAnVGhpcyByZWdpc3RlciBhbGxvY2F0 ZXMgc3BhY2UgZm9yIHRoZSBIQkEgbWVtb3J5IHJlZ2lzdGVycycuDQpUaGUgc2VjdGlvbiAyLjEu MTAsIGFsbG93cyBwcm92aXNpb24gZm9yIE9wdGlvbmFsIEJBUnMgd2hpY2ggbWF5IHN1cHBvcnQg ZWl0aGVyIG1lbW9yeSBvciBJL08gc3BhY2VzLiBIb3dldmVyLCBpbiB0aGUgY29udGV4dCBvZiB0 aGUgY3VycmVudCBTQVRBIGNvbnRyb2xsZXIgZHJpdmVyLCB3aGljaCBvbmx5IGV2ZXIgYWNjZXNz IHRoZSBBQkFSLCBlbmFibGluZyBJL08gbWVtb3J5IHNwYWNlIGlzIG5vdCByZXF1aXJlZC4NCg0K PiArICAgIFByaXZhdGUtPlBjaUF0dHJpYnV0ZXNDaGFuZ2VkID0gVFJVRTsgIH0NCj4gICANCj4g ICAgIFN0YXR1cyA9IFBjaUlvLT5QY2kuUmVhZCAoDQo+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgUGNpSW8sDQo+IEBAIC00MTQsNyArNDcxLDEwIEBAIFNhdGFDb250cm9sbGVyU3RhcnQgKA0K PiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZiAoUGNpRGF0YS5IZHIuQ2xhc3NDb2Rl KSwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICBQY2lEYXRhLkhkci5DbGFzc0NvZGUNCj4g ICAgICAgICAgICAgICAgICAgICAgICAgICApOw0KPiAtICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0 dXMpOw0KPiArICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ICsgICAgQVNTRVJUIChGQUxT RSk7DQo+ICsgICAgZ290byBEb25lOw0KPiArICB9DQo+ICAgDQo+ICAgICBpZiAoSVNfUENJX0lE RSAoJlBjaURhdGEpKSB7DQo+ICAgICAgIFByaXZhdGUtPklkZUluaXQuQ2hhbm5lbENvdW50ID0g SURFX01BWF9DSEFOTkVMOyBAQCAtNDgxLDYgDQo+ICs1NDEsMTUgQEAgRG9uZToNCj4gICAgICAg ICBpZiAoUHJpdmF0ZS0+SWRlbnRpZnlWYWxpZCAhPSBOVUxMKSB7DQo+ICAgICAgICAgICBGcmVl UG9vbCAoUHJpdmF0ZS0+SWRlbnRpZnlWYWxpZCk7DQo+ICAgICAgICAgfQ0KPiArICAgICAgaWYg KFByaXZhdGUtPlBjaUF0dHJpYnV0ZXNDaGFuZ2VkKSB7DQo+ICsgICAgICAgIC8vIFJlc3RvcmUg b3JpZ2luYWwgUENJIGF0dHJpYnV0ZXMNCg0KUHJlZmVyIHRvIHVzZQ0KDQovLw0KLy8gUmVzdG9y ZSBvcmlnaW5hbCBQQ0kgYXR0cmlidXRlcw0KLy8NCg0KW1NBTUldIERvaW5nIHRoaXMgd291bGQg dmlvbGF0ZSB0aGUgZWRrMiBjb2Rpbmcgc3RhbmRhcmQuIFNlZSBFREsyIENvZGluZyBTdGFuZGFy ZCBTcGVjaWZpY2F0aW9uLCByZXZpc2lvbiAyLjIwLCBzZWN0aW9uIDYuMi4zLg0KDQo+ICsgICAg ICAgIFBjaUlvLT5BdHRyaWJ1dGVzICgNCj4gKyAgICAgICAgICAgICAgICAgUGNpSW8sDQo+ICsg ICAgICAgICAgICAgICAgIEVmaVBjaUlvQXR0cmlidXRlT3BlcmF0aW9uU2V0LA0KPiArICAgICAg ICAgICAgICAgICBQcml2YXRlLT5PcmlnaW5hbFBjaUF0dHJpYnV0ZXMsDQo+ICsgICAgICAgICAg ICAgICAgIE5VTEwNCj4gKyAgICAgICAgICAgICAgICAgKTsNCj4gKyAgICAgIH0NCj4gICAgICAg ICBGcmVlUG9vbCAoUHJpdmF0ZSk7DQo+ICAgICAgIH0NCj4gICAgIH0NCj4gQEAgLTU1Niw2ICs2 MjUsMTUgQEAgU2F0YUNvbnRyb2xsZXJTdG9wICgNCj4gICAgICAgaWYgKFByaXZhdGUtPklkZW50 aWZ5VmFsaWQgIT0gTlVMTCkgew0KPiAgICAgICAgIEZyZWVQb29sIChQcml2YXRlLT5JZGVudGlm eVZhbGlkKTsNCj4gICAgICAgfQ0KPiArICAgIGlmIChQcml2YXRlLT5QY2lBdHRyaWJ1dGVzQ2hh bmdlZCkgew0KPiArICAgICAgLy8gUmVzdG9yZSBvcmlnaW5hbCBQQ0kgYXR0cmlidXRlcw0KUHJl ZmVyIHRvIHVzZQ0KDQovLw0KLy8gUmVzdG9yZSBvcmlnaW5hbCBQQ0kgYXR0cmlidXRlcw0KLy8N Cg0KW1NBTUldIERvaW5nIHRoaXMgd291bGQgdmlvbGF0ZSB0aGUgZWRrMiBjb2Rpbmcgc3RhbmRh cmQuIFNlZSBFREsyIENvZGluZyBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uLCByZXZpc2lvbiAyLjIw LCBzZWN0aW9uIDYuMi4zLg0KDQo+ICsgICAgICBQcml2YXRlLT5QY2lJby0+QXR0cmlidXRlcyAo DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICBQcml2YXRlLT5QY2lJbywNCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgIEVmaVBjaUlvQXR0cmlidXRlT3BlcmF0aW9uU2V0LA0KPiArICAgICAg ICAgICAgICAgICAgICAgICAgUHJpdmF0ZS0+T3JpZ2luYWxQY2lBdHRyaWJ1dGVzLA0KPiArICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgKTsN Cj4gKyAgICB9DQo+ICAgICAgIEZyZWVQb29sIChQcml2YXRlKTsNCj4gICAgIH0NCj4gICANCj4g ZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9CdXMvUGNpL1NhdGFDb250cm9sbGVyRHhlL1NhdGFD b250cm9sbGVyLmggDQo+IGIvTWRlTW9kdWxlUGtnL0J1cy9QY2kvU2F0YUNvbnRyb2xsZXJEeGUv U2F0YUNvbnRyb2xsZXIuaA0KPiBpbmRleCANCj4gZjdkYjNiODMyYTE0YzBjODMxNDUxOGNmZGY0 MTk4YzdhNGU4ZWYyNS4uY2I4MmI1NTc2M2EwNzdmNTk5NGM0YTAwZWE0OA0KPiA5M2JmYTJlMDdh NzkgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9CdXMvUGNpL1NhdGFDb250cm9sbGVyRHhl L1NhdGFDb250cm9sbGVyLmgNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0J1cy9QY2kvU2F0YUNvbnRy b2xsZXJEeGUvU2F0YUNvbnRyb2xsZXIuaA0KPiBAQCAtMiw2ICsyLDcgQEANCj4gICAgIEhlYWRl ciBmaWxlIGZvciBTYXRhIENvbnRyb2xsZXIgZHJpdmVyLg0KPiAgIA0KPiAgICAgQ29weXJpZ2h0 IChjKSAyMDExIC0gMjAxNiwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgDQo+IHJlc2Vy dmVkLjxCUj4NCj4gKyAgQ29weXJpZ2h0IChjKSAyMDE3LCBBUk0gTHRkLiBBbGwgcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gICAgIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRl cmlhbHMNCj4gICAgIGFyZSBsaWNlbnNlZCBhbmQgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRl cm1zIGFuZCBjb25kaXRpb25zIG9mIHRoZSBCU0QgTGljZW5zZQ0KPiAgICAgd2hpY2ggYWNjb21w YW5pZXMgdGhpcyBkaXN0cmlidXRpb24uICBUaGUgZnVsbCB0ZXh0IG9mIHRoZSBsaWNlbnNlIA0K PiBtYXkgYmUgZm91bmQgYXQgQEAgLTEwNCw2ICsxMDUsMTIgQEAgdHlwZWRlZiBzdHJ1Y3QgX0VG SV9TQVRBX0NPTlRST0xMRVJfUFJJVkFURV9EQVRBIHsNCj4gICAgIC8vDQo+ICAgICBFRklfSURF TlRJRllfREFUQSAgICAgICAgICAgICAgICAgKklkZW50aWZ5RGF0YTsNCj4gICAgIEJPT0xFQU4g ICAgICAgICAgICAgICAgICAgICAgICAgICAqSWRlbnRpZnlWYWxpZDsNCj4gKw0KPiArICAvLy8g VHJhY2sgdGhlIHN0YXRlIHNvIHRoYXQgdGhlIFBDSSBhdHRyaWJ1dGVzIHRoYXQgd2VyZSBtb2Rp ZmllZCAgDQo+ICsgLy8vIGNhbiBiZSByZXN0b3JlZCB0byB0aGUgb3JpZ2luYWwgdmFsdWUgbGF0 ZXINCg0KUHJlZmVyIHRvIHVzZQ0KDQovLw0KLy8gVHJhY2sgdGhlIHN0YXRlIHNvIHRoYXQgdGhl IFBDSSBhdHRyaWJ1dGVzIHRoYXQgd2VyZSBtb2RpZmllZCAvLyBjYW4gYmUgcmVzdG9yZWQgdG8g dGhlIG9yaWdpbmFsIHZhbHVlIGxhdGVyIC8vDQoNCnRvIGFsaWduIHdpdGggb3RoZXJzLg0KW1NB TUldIERvaW5nIHRoaXMgd291bGQgdmlvbGF0ZSB0aGUgZWRrMiBjb2Rpbmcgc3RhbmRhcmQuIFNl ZSBFREsyIENvZGluZyBTdGFuZGFyZCBTcGVjaWZpY2F0aW9uLCByZXZpc2lvbiAyLjIwLCBzZWN0 aW9uIDYuMi4zLiANCiAgICAgICAgICAgICBBbHNvICcvLy8nIGlzIHVzZWQgZm9yIGRvY3VtZW50 aW5nIHN0cnVjdHVyZSBtZW1iZXJzLiBTZWUgRURLMiBDb2RpbmcgU3RhbmRhcmQgU3BlY2lmaWNh dGlvbiwgcmV2aXNpb24gMi4yMCwgc2VjdGlvbiA2LjkuDQogICAgICAgICAgICAgSSB3aWxsIHN1 Ym1pdCBhbiB1cGRhdGVkIHBhdGNoIHdpdGggJy4nIGF0IHRoZSBlbmQgdG8gaW5kaWNhdGUgd2hl cmUgdGhlIGNvbW1lbnQgYmxvY2sgZW5kcy4NCg0KPiArICBCT09MRUFOICAgICAgICAgICAgICAg ICAgICAgICAgICAgUGNpQXR0cmlidXRlc0NoYW5nZWQ7DQo+ICsgIC8vLyBDb3B5IG9mIHRoZSBv cmlnaW5hbCBQQ0kgQXR0cmlidXRlcw0KDQpQcmVmZXIgdG8gdXNlDQoNCi8vDQovLyBDb3B5IG9m IHRoZSBvcmlnaW5hbCBQQ0kgQXR0cmlidXRlcw0KLy8NCg0KdG8gYWxpZ24gd2l0aCBvdGhlcnMu DQpbU0FNSV0gVGhpcyB3b3VsZCB2aW9sYXRlIHRoZSBlZGsyIGNvZGluZyBzdGFuZGFyZC4gU2Vl IEVESzIgQ29kaW5nIFN0YW5kYXJkIFNwZWNpZmljYXRpb24sIHJldmlzaW9uIDIuMjAsIHNlY3Rp b24gNi4yLjMuDQoNCj4gKyAgVUlOVDY0ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yaWdp bmFsUGNpQXR0cmlidXRlczsNCj4gICB9IEVGSV9TQVRBX0NPTlRST0xMRVJfUFJJVkFURV9EQVRB Ow0KPiAgIA0KPiAgICNkZWZpbmUgU0FUQV9DT05UUk9MTEVSX1BSSVZBVEVfREFUQV9GUk9NX1RI SVMoYSkgQ1IoYSwgDQo+IEVGSV9TQVRBX0NPTlRST0xMRVJfUFJJVkFURV9EQVRBLCBJZGVJbml0 LCBTQVRBX0NPTlRST0xMRVJfU0lHTkFUVVJFKQ0KPiANCg0K