From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4478B6EA41 for ; Fri, 5 Apr 2019 06:57:37 +0000 (UTC) From: "Lisovskiy, Stanislav" Date: Fri, 5 Apr 2019 06:57:34 +0000 Message-ID: References: <20190404121359.3339-1-stanislav.lisovskiy@intel.com> <20190404121359.3339-3-stanislav.lisovskiy@intel.com> <8e5938c0ef48a0a9948dcb369a82807a3b3a9440.camel@intel.com> In-Reply-To: <8e5938c0ef48a0a9948dcb369a82807a3b3a9440.camel@intel.com> Content-Language: en-US Content-ID: <5EA8FF55E3592A488A2874AB6657A98B@intel.com> MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t v5 2/2] igt/tests/kms_atomic_transition: Tolerate if can't have all planes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: "igt-dev@lists.freedesktop.org" , "Souza, Jose" Cc: "Syrjala, Ville" , "Peres, Martin" List-ID: T24gVGh1LCAyMDE5LTA0LTA0IGF0IDE3OjU5IC0wNzAwLCBTb3V6YSwgSm9zZSB3cm90ZToNCj4g T24gVGh1LCAyMDE5LTA0LTA0IGF0IDE1OjEzICswMzAwLCBTdGFuaXNsYXYgTGlzb3Zza2l5IHdy b3RlOg0KPiA+IFdpdGggc29tZSB1cGNvbWluZyBjaGFuZ2VzIGk5MTUgbWlnaHQgbm90IGFsbG93 DQo+ID4gYWxsIHNwcml0ZSBwbGFuZXMgZW5hYmxlZCwgZGVwZW5kaW5nIG9uIGF2YWlsYWJsZQ0K PiA+IGJhbmR3aWR0aCBsaW1pdGF0aW9uLiBUaHVzIHRoZSB0ZXN0IG5lZWQgdG8gZGVjcmVtZW50 DQo+ID4gYW1vdW50IG9mIHBsYW5lcyBhbmQgdHJ5IGFnYWluLCBpbnN0ZWFkIG9mIHBhbmlja2lu Zy4NCj4gPiANCj4gPiB2MjogUmVtb3ZlZCBleGNlc3NpdmUgbmVzdGVkIGNvbmRpdGlvbnMsIG1h a2luZyBjb2RlIGEgYml0DQo+ID4gICAgIG1vcmUgcmVhZGFibGUoaG9wZWZ1bGx5KS4NCj4gPiAN Cj4gPiB2MzogU3RvcHBlZCB1c2luZyBnbG9iYWwgbl9wbGFuZXMgdmFyaWFibGUgYXMgaXQgbWln aHQgY2F1c2UNCj4gPiAgICAgcmVzb3VyY2VzIGJlaW5nIHVucmVsZWFzZWQuDQo+ID4gICAgIFVz aW5nIG5vdyBwYXJtc1tpXS5tYXNrIGFzIGEgd2F5IHRvIGRldGVybWluZSBpZiBwbGFuZQ0KPiA+ ICAgICBoYXMgdG8gYmUgaW5jbHVkZWQgaW50byBjb21taXQuDQo+ID4gDQo+ID4gdjQ6IFJlbW92 ZWQgdW5uZWVkZWQgbl9vdmVybGF5cyBpbml0aWFsaXphdGlvbi4NCj4gPiANCj4gPiB2NTogUmFu ZG9taXplIHdoaWNoIG9mIHNwcml0ZSBwbGFuZXMgdG8gcmVtb3ZlIGlmIGhpdHRpbmcNCj4gPiAg ICAgcmVzb3VyY2UgbGltaXRzLg0KPiA+IA0KPiA+IFNpZ25lZC1vZmYtYnk6IFN0YW5pc2xhdiBM aXNvdnNraXkgPHN0YW5pc2xhdi5saXNvdnNraXlAaW50ZWwuY29tPg0KPiA+IC0tLQ0KPiA+ICB0 ZXN0cy9rbXNfYXRvbWljX3RyYW5zaXRpb24uYyB8IDEyMyArKysrKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0NCj4gPiAtLS0tDQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCA3MSBpbnNlcnRpb25zKCsp LCA1MiBkZWxldGlvbnMoLSkNCj4gPiANCj4gPiBkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2F0b21p Y190cmFuc2l0aW9uLmMNCj4gPiBiL3Rlc3RzL2ttc19hdG9taWNfdHJhbnNpdGlvbi5jDQo+ID4g aW5kZXggNjM4ZmUxN2UuLmU2ZDU1Y2EwIDEwMDY0NA0KPiA+IC0tLSBhL3Rlc3RzL2ttc19hdG9t aWNfdHJhbnNpdGlvbi5jDQo+ID4gKysrIGIvdGVzdHMva21zX2F0b21pY190cmFuc2l0aW9uLmMN Cj4gPiBAQCAtMjEyLDkgKzIxMiwxMiBAQCBzdGF0aWMgdm9pZCBzZXR1cF9wYXJtcyhpZ3RfZGlz cGxheV90DQo+ID4gKmRpc3BsYXksDQo+ID4gZW51bSBwaXBlIHBpcGUsDQo+ID4gIAl1bnNpZ25l ZCBzcHJpdGVfd2lkdGgsIHNwcml0ZV9oZWlnaHQsIHByZXZfdywgcHJldl9oOw0KPiA+ICAJYm9v bCBtYXhfc3ByaXRlX3dpZHRoLCBtYXhfc3ByaXRlX2hlaWdodCwgYWxwaGEgPSB0cnVlOw0KPiA+ ICAJdWludDMyX3Qgbl9wbGFuZXMgPSBkaXNwbGF5LT5waXBlc1twaXBlXS5uX3BsYW5lczsNCj4g PiAtCXVpbnQzMl90IG5fb3ZlcmxheXMgPSAwLCBvdmVybGF5c1tuX3BsYW5lc107DQo+ID4gKwl1 aW50MzJfdCBuX292ZXJsYXlzLCBvdmVybGF5c1tuX3BsYW5lc107DQo+ID4gIAlpZ3RfcGxhbmVf dCAqcGxhbmU7DQo+ID4gLQl1aW50MzJfdCBpdGVyX21hc2sgPSAzOw0KPiA+ICsJdWludDMyX3Qg aXRlcl9tYXNrOw0KPiA+ICsJaW50IHJldHJpZXMgPSBuX3BsYW5lcyAtIDE7DQo+ID4gKwlpbnQg cmV0ID0gMDsNCj4gPiArCXVpbnQzMl90IHBsYW5lc190b19yZW1vdmU7DQo+ID4gIA0KPiA+ICAJ ZG9fb3JfZGllKGRybUdldENhcChkaXNwbGF5LT5kcm1fZmQsIERSTV9DQVBfQ1VSU09SX1dJRFRI LA0KPiA+ICZjdXJzb3Jfd2lkdGgpKTsNCj4gPiAgCWlmIChjdXJzb3Jfd2lkdGggPj0gbW9kZS0+ aGRpc3BsYXkpDQo+ID4gQEAgLTIyNCw2ICsyMjcsMTEgQEAgc3RhdGljIHZvaWQgc2V0dXBfcGFy bXMoaWd0X2Rpc3BsYXlfdA0KPiA+ICpkaXNwbGF5LA0KPiA+IGVudW0gcGlwZSBwaXBlLA0KPiA+ ICAJaWYgKGN1cnNvcl9oZWlnaHQgPj0gbW9kZS0+dmRpc3BsYXkpDQo+ID4gIAkJY3Vyc29yX2hl aWdodCA9IG1vZGUtPnZkaXNwbGF5Ow0KPiA+ICANCj4gPiArcmV0cnk6DQo+ID4gKwluX292ZXJs YXlzID0gMDsNCj4gPiArCWl0ZXJfbWFzayA9IDM7DQo+ID4gKwlwbGFuZXNfdG9fcmVtb3ZlID0g ZGlzcGxheS0+cGlwZXNbcGlwZV0ubl9wbGFuZXMgLSBuX3BsYW5lczsNCj4gPiArDQo+ID4gIAlm b3JfZWFjaF9wbGFuZV9vbl9waXBlKGRpc3BsYXksIHBpcGUsIHBsYW5lKSB7DQo+ID4gIAkJaW50 IGkgPSBwbGFuZS0+aW5kZXg7DQo+ID4gIA0KPiA+IEBAIC0yMzgsMTIgKzI0NiwzMCBAQCBzdGF0 aWMgdm9pZCBzZXR1cF9wYXJtcyhpZ3RfZGlzcGxheV90DQo+ID4gKmRpc3BsYXksDQo+ID4gZW51 bSBwaXBlIHBpcGUsDQo+ID4gIAkJCXBhcm1zW2ldLmhlaWdodCA9IGN1cnNvcl9oZWlnaHQ7DQo+ ID4gIAkJCXBhcm1zW2ldLm1hc2sgPSAxIDw8IDE7DQo+ID4gIAkJfSBlbHNlIHsNCj4gPiAtCQkJ cGFybXNbaV0uZmIgPSBzcHJpdGVfZmI7DQo+ID4gLQkJCXBhcm1zW2ldLm1hc2sgPSAxIDw8IDI7 DQo+ID4gLQ0KPiA+IC0JCQlpdGVyX21hc2sgfD0gMSA8PCAyOw0KPiA+IC0NCj4gPiAtCQkJb3Zl cmxheXNbbl9vdmVybGF5cysrXSA9IGk7DQo+ID4gKwkJCS8qIFJhbmRvbWl6ZSBpZiB3ZSByZW1v dmUgdGhhdCBzcHJpdGUgcGxhbmUgb3INCj4gPiBub3QgKi8NCj4gPiArCQkJdWludDMyX3QgcmVt b3ZlID0NCj4gPiBoYXJzX3BldHJ1c2thX2Y1NF8xX3JhbmRvbV91bnNhZmVfbWF4KDIpOw0KPiA+ ICsJCQkvKg0KPiA+ICsJCQkgKiBGaWd1cmUgb3V0IGhvdyBtdWNoIHNwcml0ZSBwbGFuZXMgbGVm dDoNCj4gPiArCQkJICogcGxhbmVzIGxlZnQgPSBvdmVyYWxsIGFtb3VudCAtIDEgcHJpbWFyeSAt IDENCj4gPiBjdXJzb3IgLSBzcHJpdGUgcGxhbmVzIHVzZWQNCj4gPiArCQkJICovDQo+ID4gKwkJ CWludCBwbGFuZXNfbGVmdCA9IGRpc3BsYXktDQo+ID4gPnBpcGVzW3BpcGVdLm5fcGxhbmVzIA0K PiA+IC0gMiAtIG5fb3ZlcmxheXM7DQo+ID4gKwkJCS8qDQo+ID4gKwkJCSAqIFJlbW92ZSB0aGUg cGxhbmUgaWYgcmVtb3ZlIGlzIHNldCBhbmQgd2UNCj4gPiBoYXZlIHNwcml0ZSBwbGFuZXMgdG8g cmVtb3ZlLg0KPiA+ICsJCQkgKiBJZiB3ZSBoYXZlIGxlZnQgc2FtZSBvciBsZXNzIGFtb3VudCBv Zg0KPiA+IHBsYW5lcyB0aGFuIHdlIG5lZWQNCj4gPiArCQkJICogdG8gcmVtb3ZlIHRoZW4gbm8g cmFuZG9taXphdGlvbiwganVzdA0KPiA+IHJlbW92ZS4NCj4gPiArCQkJICovDQo+ID4gKwkJCWlm ICgocmVtb3ZlICYmIHBsYW5lc190b19yZW1vdmUgPiAwKSB8fA0KPiA+IChwbGFuZXNfdG9fcmVt b3ZlID49IHBsYW5lc19sZWZ0KSkgew0KPiANCj4gVGhpcyB3aWxsIG5vdCBndWFyYW50ZWUgdGhh dCB4KHBsYW5lc190b19yZW1vdmUpIHBsYW5lcyB3aWxsIGJlDQo+IHJlbW92ZWQuDQoNClRoZXJl IGFyZSB0d28gY2FzZXM6DQoNCjEpIElmIHBsYW5lcyB0byByZW1vdmUgaXMgbGVzcyB0aGFuIHBs YW5lcyBsZWZ0LCBpdCBtZWFucyB0aGF0IHdlDQogICBzdGlsbCBoYXZlIHNvbWUgZnJlZWRvbSBm b3IgcmFuZG9taXphdGlvbiB3aGljaCBwbGFuZXMgaGFzIHRvIGJlICAgDQpyZW1vdmVkLiBMZXRz IHNheSB3ZSBuZWVkIHRvIHJlbW92ZSAzLCBidXQgd2UgaGF2ZSBmb3IgNSwgdGhlbiB3ZSBjYW4N CiAgIHJhbmRvbWl6ZSB3aGljaCAzIG91dCBvZiA1IHdlIGNhbiByZW1vdmUuIFNvIGluIHRoYXQg Y2FzZSB3ZSB1c2UNCiAgIHJlbW92ZSB2YXJpYWJsZSBhcyBhIHJhbmRvbSBmYWN0b3IgdG8gZGVj aWRlIHdoZXRoZXIgcGxhbmUgaGFzIHRvIGJlDQogICByZW1vdmVkIG9yIG5vdC4NCiAgIA0KMikg SWYgcGxhbmVzIHRvIHJlbW92ZSBpcyBlcXVhbChvciBtb3JlKSB0aGFuIHBsYW5lcyBsZWZ0LCBp dCBtZWFucw0KICAgdGhhdCB3ZSBuZWVkIHRvIHJlbW92ZSBhbnl3YXkuIExldHMgc2F5IHdlIG5l ZWQgdG8gcmVtb3ZlIDMgYW5kIHdlDQogICBoYXZlIDMuIE9idmlvdXNseSB3ZSBuZWVkIHRvIHJl bW92ZSBhbGwgb2YgdGhvc2UuDQoNCklmIHlvdSBzdGlsbCBzZWUgdGhhdCB0aGVyZSBpcyBhIGZs YXcgaW4gdGhpcyBhbGdvcml0aG0sIGNhbiB5b3UgcGxlYXNlDQpleHBsYWluPw0KDQo+IA0KPiA+ ICsJCQkJcGFybXNbaV0uZmIgPSBOVUxMOw0KPiA+ICsJCQkJcGFybXNbaV0ubWFzayA9IDA7DQo+ ID4gKwkJCQlwbGFuZXNfdG9fcmVtb3ZlLS07DQo+ID4gKwkJCQlpZ3Rfd2FybigiUmVtb3ZlZCBw bGFuZSAlZFxuIiwgaSk7DQo+ID4gKwkJCX0NCj4gPiArCQkJZWxzZSB7DQo+ID4gKwkJCQlwYXJt c1tpXS5mYiA9IHNwcml0ZV9mYjsNCj4gPiArCQkJCXBhcm1zW2ldLm1hc2sgPSAxIDw8IDI7DQo+ ID4gKwkJCQlpdGVyX21hc2sgfD0gMSA8PCAyOw0KPiA+ICsJCQkJb3ZlcmxheXNbbl9vdmVybGF5 cysrXSA9IGk7DQo+ID4gKwkJCX0NCj4gPiAgCQl9DQo+ID4gIAl9DQo+ID4gIA0KPiA+IEBAIC0y NzgsMTYgKzMwNCwxMyBAQCBzdGF0aWMgdm9pZCBzZXR1cF9wYXJtcyhpZ3RfZGlzcGxheV90DQo+ ID4gKmRpc3BsYXksDQo+ID4gZW51bSBwaXBlIHBpcGUsDQo+ID4gIAkgKiBQcmUgZ2VuOSBub3Qg YWxsIHNpemVzIGFyZSBzdXBwb3J0ZWQsIGZpbmQgdGhlIGJpZ2dlc3QNCj4gPiBwb3NzaWJsZQ0K PiA+ICAJICogc2l6ZSB0aGF0IGNhbiBiZSBlbmFibGVkIG9uIGFsbCBzcHJpdGUgcGxhbmVzLg0K PiA+ICAJICovDQo+ID4gLXJldHJ5Og0KPiA+ICAJcHJldl93ID0gc3ByaXRlX3dpZHRoID0gY3Vy c29yX3dpZHRoOw0KPiA+ICAJcHJldl9oID0gc3ByaXRlX2hlaWdodCA9IGN1cnNvcl9oZWlnaHQ7 DQo+ID4gIA0KPiA+ICAJbWF4X3Nwcml0ZV93aWR0aCA9IChzcHJpdGVfd2lkdGggPT0gbW9kZS0+ aGRpc3BsYXkpOw0KPiA+ICAJbWF4X3Nwcml0ZV9oZWlnaHQgPSAoc3ByaXRlX2hlaWdodCA9PSBt b2RlLT52ZGlzcGxheSk7DQo+ID4gIA0KPiA+IC0Jd2hpbGUgKDEpIHsNCj4gPiAtCQlpbnQgcmV0 Ow0KPiA+IC0NCj4gPiArCXdoaWxlICghbWF4X3Nwcml0ZV93aWR0aCAmJiAhbWF4X3Nwcml0ZV9o ZWlnaHQpIHsNCj4gPiAgCQlzZXRfc3ByaXRlX3doKGRpc3BsYXksIHBpcGUsIHBhcm1zLCBzcHJp dGVfZmIsDQo+ID4gIAkJCSAgICAgIGFscGhhLCBzcHJpdGVfd2lkdGgsIHNwcml0ZV9oZWlnaHQp Ow0KPiA+ICANCj4gPiBAQCAtMjk1LDU0ICszMTgsNDkgQEAgcmV0cnk6DQo+ID4gIAkJcmV0ID0g aWd0X2Rpc3BsYXlfdHJ5X2NvbW1pdF9hdG9taWMoZGlzcGxheSwNCj4gPiBEUk1fTU9ERV9BVE9N SUNfVEVTVF9PTkxZIHwgRFJNX01PREVfQVRPTUlDX0FMTE9XX01PREVTRVQsIE5VTEwpOw0KPiA+ ICAJCWlndF9hc3NlcnQoIWlzX2F0b21pY19jaGVja19mYWlsdXJlX2Vycm5vKHJldCkpOw0KPiA+ ICANCj4gPiAtCQlpZiAoaXNfYXRvbWljX2NoZWNrX3BsYW5lX3NpemVfZXJybm8ocmV0KSkgew0K PiA+IC0JCQlpZiAoY3Vyc29yX3dpZHRoID09IHNwcml0ZV93aWR0aCAmJg0KPiA+IC0JCQkgICAg Y3Vyc29yX2hlaWdodCA9PSBzcHJpdGVfaGVpZ2h0KSB7DQo+ID4gLQkJCQlpZ3RfYXNzZXJ0X2Yo YWxwaGEsDQo+ID4gLQkJCQkJICAgICAgIkNhbm5vdCBjb25maWd1cmUgdGhlDQo+ID4gdGVzdCB3 aXRoIGFsbCBzcHJpdGUgcGxhbmVzIGVuYWJsZWRcbiIpOw0KPiA+IC0NCj4gPiAtCQkJCS8qIHJl dHJ5IG9uY2Ugd2l0aCBYUkdCIGZvcm1hdC4gKi8NCj4gPiAtCQkJCWFscGhhID0gZmFsc2U7DQo+ ID4gLQkJCQlnb3RvIHJldHJ5Ow0KPiA+IC0JCQl9DQo+ID4gLQ0KPiA+IC0JCQlzcHJpdGVfd2lk dGggPSBwcmV2X3c7DQo+ID4gLQkJCXNwcml0ZV9oZWlnaHQgPSBwcmV2X2g7DQo+ID4gLQ0KPiA+ IC0JCQlpZiAobWF4X3Nwcml0ZV93aWR0aCAmJiBtYXhfc3ByaXRlX2hlaWdodCkgew0KPiA+IC0J CQkJc2V0X3Nwcml0ZV93aChkaXNwbGF5LCBwaXBlLCBwYXJtcywNCj4gPiBzcHJpdGVfZmIsDQo+ ID4gLQkJCQkJICAgICAgYWxwaGEsIHNwcml0ZV93aWR0aCwNCj4gPiBzcHJpdGVfaGVpZ2h0KTsN Cj4gPiAtCQkJCWJyZWFrOw0KPiA+IC0JCQl9DQo+ID4gLQ0KPiA+IC0JCQlpZiAoIW1heF9zcHJp dGVfd2lkdGgpDQo+ID4gLQkJCQltYXhfc3ByaXRlX3dpZHRoID0gdHJ1ZTsNCj4gPiAtCQkJZWxz ZQ0KPiA+IC0JCQkJbWF4X3Nwcml0ZV9oZWlnaHQgPSB0cnVlOw0KPiA+IC0JCX0gZWxzZSB7DQo+ ID4gKwkJaWYgKCFpc19hdG9taWNfY2hlY2tfcGxhbmVfc2l6ZV9lcnJubyhyZXQpKSB7DQo+ID4g IAkJCXByZXZfdyA9IHNwcml0ZV93aWR0aDsNCj4gPiAgCQkJcHJldl9oID0gc3ByaXRlX2hlaWdo dDsNCj4gPiAtCQl9DQo+ID4gLQ0KPiA+IC0JCWlmICghbWF4X3Nwcml0ZV93aWR0aCkgew0KPiA+ IC0JCQlzcHJpdGVfd2lkdGggKj0gMjsNCj4gPiAtDQo+ID4gKyAgICANCj4gPiArCQkJc3ByaXRl X3dpZHRoICo9IG1heF9zcHJpdGVfd2lkdGggPyAxIDogMjsNCj4gPiAgCQkJaWYgKHNwcml0ZV93 aWR0aCA+PSBtb2RlLT5oZGlzcGxheSkgew0KPiA+ICAJCQkJbWF4X3Nwcml0ZV93aWR0aCA9IHRy dWU7DQo+ID4gLQ0KPiA+ICAJCQkJc3ByaXRlX3dpZHRoID0gbW9kZS0+aGRpc3BsYXk7DQo+ID4g IAkJCX0NCj4gPiAtCQl9IGVsc2UgaWYgKCFtYXhfc3ByaXRlX2hlaWdodCkgew0KPiA+IC0JCQlz cHJpdGVfaGVpZ2h0ICo9IDI7DQo+ID4gIA0KPiA+ICsJCQlzcHJpdGVfaGVpZ2h0ICo9IG1heF9z cHJpdGVfaGVpZ2h0ID8gMSA6IDI7DQo+ID4gIAkJCWlmIChzcHJpdGVfaGVpZ2h0ID49IG1vZGUt PnZkaXNwbGF5KSB7DQo+ID4gIAkJCQltYXhfc3ByaXRlX2hlaWdodCA9IHRydWU7DQo+ID4gLQ0K PiA+ICAJCQkJc3ByaXRlX2hlaWdodCA9IG1vZGUtPnZkaXNwbGF5Ow0KPiA+ICAJCQl9DQo+ID4g LQkJfSBlbHNlDQo+ID4gLQkJCS8qIE1heCBzaXplZCBzcHJpdGVzIGZvciBhbGwhICovDQo+ID4g LQkJCWJyZWFrOw0KPiA+ICsJCQljb250aW51ZTsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCWlm IChjdXJzb3Jfd2lkdGggPT0gc3ByaXRlX3dpZHRoICYmDQo+ID4gKwkJICAgIGN1cnNvcl9oZWln aHQgPT0gc3ByaXRlX2hlaWdodCkgew0KPiA+ICsJCQlpZ3RfYXNzZXJ0X2YocmV0cmllcyA+IDAs DQo+ID4gKwkJCQkgICAgICAiQ2Fubm90IGNvbmZpZ3VyZSB0aGUgdGVzdCB3aXRoDQo+ID4gYWxs IHNwcml0ZSBwbGFuZXMgZW5hYmxlZFxuIik7DQo+ID4gKwkJCS0tcmV0cmllczsNCj4gPiArCQkJ LyogcmV0cnkgb25jZSB3aXRoIFhSR0IgZm9ybWF0LiAqLw0KPiA+ICsJCQlpZiAoYWxwaGEpIHsN Cj4gPiArCQkJCWFscGhhID0gZmFsc2U7DQo+ID4gKwkJCQlpZ3Rfd2FybigiUmVtb3ZlZCBhbHBo YVxuIik7DQo+ID4gKwkJCX0NCj4gPiArCQkJZWxzZSB7DQo+ID4gKwkJCQlpZ3RfYXNzZXJ0X2Yo bl9wbGFuZXMgPiAxLCAiTm8gcGxhbmVzDQo+ID4gbGVmdCB0byBwcm9jZWVkIHdpdGghIik7DQo+ ID4gKwkJCQluX3BsYW5lcy0tOw0KPiA+ICsJCQkJaWd0X3dhcm4oIlJlZHVjZWQgYXZhaWxhYmxl IHBsYW5lcyB0bw0KPiA+ICVkXG4iLCBuX3BsYW5lcyk7DQo+ID4gKwkJCX0NCj4gPiArCQkJZ290 byByZXRyeTsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCXNwcml0ZV93aWR0aCA9IHByZXZfdzsN Cj4gPiArCQlzcHJpdGVfaGVpZ2h0ID0gcHJldl9oOw0KPiA+ICsNCj4gPiArCQlpZiAoIW1heF9z cHJpdGVfd2lkdGgpDQo+ID4gKwkJCW1heF9zcHJpdGVfd2lkdGggPSB0cnVlOw0KPiA+ICsJCWVs c2UNCj4gPiArCQkJbWF4X3Nwcml0ZV9oZWlnaHQgPSB0cnVlOw0KPiA+ICAJfQ0KPiA+ICANCj4g PiAgCWlndF9pbmZvKCJSdW5uaW5nIHRlc3Qgb24gcGlwZSAlcyB3aXRoIHJlc29sdXRpb24gJWR4 JWQgYW5kDQo+ID4gc3ByaXRlIHNpemUgJWR4JWQgYWxwaGEgJWlcbiIsDQo+ID4gQEAgLTQ2Myw3 ICs0ODEsNiBAQCBydW5fdHJhbnNpdGlvbl90ZXN0KGlndF9kaXNwbGF5X3QgKmRpc3BsYXksDQo+ ID4gZW51bQ0KPiA+IHBpcGUgcGlwZSwgaWd0X291dHB1dF90ICpvdXRwdXQNCj4gPiAgDQo+ID4g IAlpZiAoZmxhZ3MgJiBEUk1fTU9ERV9BVE9NSUNfQUxMT1dfTU9ERVNFVCkgew0KPiA+ICAJCWln dF9vdXRwdXRfc2V0X3BpcGUob3V0cHV0LCBQSVBFX05PTkUpOw0KPiA+IC0NCj4gPiAgCQlpZ3Rf ZGlzcGxheV9jb21taXQyKGRpc3BsYXksIENPTU1JVF9BVE9NSUMpOw0KPiA+ICANCj4gPiAgCQlp Z3Rfb3V0cHV0X3NldF9waXBlKG91dHB1dCwgcGlwZSk7DQo+ID4gQEAgLTUyNSw4ICs1NDIsMTAg QEAgcnVuX3RyYW5zaXRpb25fdGVzdChpZ3RfZGlzcGxheV90ICpkaXNwbGF5LA0KPiA+IGVudW0N Cj4gPiBwaXBlIHBpcGUsIGlndF9vdXRwdXRfdCAqb3V0cHV0DQo+ID4gIAkJfQ0KPiA+ICANCj4g PiAgCQkvKiBmb3JjZSBwbGFuZXMgdG8gYmUgcGFydCBvZiBjb21taXQgKi8NCj4gPiAtCQlmb3Jf ZWFjaF9wbGFuZV9vbl9waXBlKGRpc3BsYXksIHBpcGUsIHBsYW5lKQ0KPiA+IC0JCQlpZ3RfcGxh bmVfc2V0X3Bvc2l0aW9uKHBsYW5lLCAwLCAwKTsNCj4gPiArCQlmb3JfZWFjaF9wbGFuZV9vbl9w aXBlKGRpc3BsYXksIHBpcGUsIHBsYW5lKSB7DQo+ID4gKwkJCWlmIChwYXJtc1twbGFuZS0+aW5k ZXhdLm1hc2spDQo+ID4gKwkJCQlpZ3RfcGxhbmVfc2V0X3Bvc2l0aW9uKHBsYW5lLCAwLCAwKTsN Cj4gPiArCQl9DQo+ID4gIA0KPiA+ICAJCWlndF9kaXNwbGF5X2NvbW1pdDIoZGlzcGxheSwgQ09N TUlUX0FUT01JQyk7DQo+ID4gIA0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3Qt ZGV2