From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6B89E89208 for ; Tue, 9 Apr 2019 12:47:29 +0000 (UTC) From: "Lisovskiy, Stanislav" Date: Tue, 9 Apr 2019 12:47:24 +0000 Message-ID: <5c9172ae806236a53c82d5f2b3ed31655efa4135.camel@intel.com> References: <1554476159-25312-1-git-send-email-juhapekka.heikkila@gmail.com> <6525db62bc81dd968bb17da7106354545d3429af.camel@intel.com> In-Reply-To: <6525db62bc81dd968bb17da7106354545d3429af.camel@intel.com> Content-Language: en-US Content-ID: <1B56697DCEBAC0469956ED7B7FE7272B@intel.com> MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: before going testing check how many planes are allowed 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: "juhapekka.heikkila@gmail.com" , "igt-dev@lists.freedesktop.org" , "Souza, Jose" List-ID: T24gTW9uLCAyMDE5LTA0LTA4IGF0IDE4OjI5IC0wNzAwLCBTb3V6YSwgSm9zZSB3cm90ZToNCj4g T24gRnJpLCAyMDE5LTA0LTA1IGF0IDE3OjU1ICswMzAwLCBKdWhhLVBla2thIEhlaWtraWxhIHdy b3RlOg0KPiA+IGJlZm9yZSBzdGFydCB0ZXN0aW5nIHRyeSBvdXQgaG93IG1hbnkgcGxhbmVzIGtl cm5lbCB3aWxsDQo+ID4gYWxsb3cgc2ltdWx0YW5lb3VzbHkgdG8gYmUgdXNlZC4NCj4gPiANCj4g PiB2MiAoSm9zZSBTb3V6YSwgRGFuaWVsIFZldHRlcik6IEZpeCByZXNvdXJjZSBsZWFrcy4gUmFu ZG9taXplDQo+ID4gdXNlZCBwbGFuZXMuDQo+ID4gDQo+ID4gU2lnbmVkLW9mZi1ieTogSnVoYS1Q ZWtrYSBIZWlra2lsYSA8anVoYXBla2thLmhlaWtraWxhQGdtYWlsLmNvbT4NCj4gPiAtLS0NCj4g PiAgdGVzdHMva21zX3BsYW5lX211bHRpcGxlLmMgfCA4OA0KPiA+ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0NCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDcxIGlu c2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQ0KPiA+IA0KPiA+IGRpZmYgLS1naXQgYS90ZXN0 cy9rbXNfcGxhbmVfbXVsdGlwbGUuYw0KPiA+IGIvdGVzdHMva21zX3BsYW5lX211bHRpcGxlLmMN Cj4gPiBpbmRleCBiZmFlZWRlLi5mMjcwN2RjIDEwMDY0NA0KPiA+IC0tLSBhL3Rlc3RzL2ttc19w bGFuZV9tdWx0aXBsZS5jDQo+ID4gKysrIGIvdGVzdHMva21zX3BsYW5lX211bHRpcGxlLmMNCj4g PiBAQCAtODAsMTYgKzgwLDYgQEAgc3RhdGljIHZvaWQgdGVzdF9maW5pKGRhdGFfdCAqZGF0YSwg aWd0X291dHB1dF90DQo+ID4gKm91dHB1dCwgaW50IG5fcGxhbmVzKQ0KPiA+ICB7DQo+ID4gIAlp Z3RfcGlwZV9jcmNfc3RvcChkYXRhLT5waXBlX2NyYyk7DQo+ID4gIA0KPiA+IC0JZm9yIChpbnQg aSA9IDA7IGkgPCBuX3BsYW5lczsgaSsrKSB7DQo+ID4gLQkJaWd0X3BsYW5lX3QgKnBsYW5lID0g ZGF0YS0+cGxhbmVbaV07DQo+ID4gLQkJaWYgKCFwbGFuZSkNCj4gPiAtCQkJY29udGludWU7DQo+ ID4gLQkJaWYgKHBsYW5lLT50eXBlID09IERSTV9QTEFORV9UWVBFX1BSSU1BUlkpDQo+ID4gLQkJ CWNvbnRpbnVlOw0KPiA+IC0JCWlndF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwpOw0KPiA+IC0J CWRhdGEtPnBsYW5lW2ldID0gTlVMTDsNCj4gPiAtCX0NCj4gPiAtDQo+ID4gIAkvKiByZXNldCB0 aGUgY29uc3RyYWludCBvbiB0aGUgcGlwZSAqLw0KPiA+ICAJaWd0X291dHB1dF9zZXRfcGlwZShv dXRwdXQsIFBJUEVfQU5ZKTsNCj4gPiAgDQo+ID4gQEAgLTk5LDcgKzg5LDggQEAgc3RhdGljIHZv aWQgdGVzdF9maW5pKGRhdGFfdCAqZGF0YSwgaWd0X291dHB1dF90DQo+ID4gKm91dHB1dCwgaW50 IG5fcGxhbmVzKQ0KPiA+ICAJZnJlZShkYXRhLT5wbGFuZSk7DQo+ID4gIAlkYXRhLT5wbGFuZSA9 IE5VTEw7DQo+ID4gIA0KPiA+IC0JaWd0X3JlbW92ZV9mYihkYXRhLT5kcm1fZmQsIGRhdGEtPmZi KTsNCj4gPiArCWZyZWUoZGF0YS0+ZmIpOw0KPiA+ICsJZGF0YS0+ZmIgPSBOVUxMOw0KPiA+ICAN Cj4gPiAgCWlndF9kaXNwbGF5X3Jlc2V0KCZkYXRhLT5kaXNwbGF5KTsNCj4gPiAgfQ0KPiA+IEBA IC0xOTUsNiArMTg2LDcgQEAgcHJlcGFyZV9wbGFuZXMoZGF0YV90ICpkYXRhLCBlbnVtIHBpcGUg cGlwZV9pZCwNCj4gPiBjb2xvcl90ICpjb2xvciwNCj4gPiAgCWludCAqeTsNCj4gPiAgCWludCAq c2l6ZTsNCj4gPiAgCWludCBpOw0KPiA+ICsJaW50KiBzdWZmbGU7DQo+ID4gIA0KPiA+ICAJaWd0 X291dHB1dF9zZXRfcGlwZShvdXRwdXQsIHBpcGVfaWQpOw0KPiA+ICAJcHJpbWFyeSA9IGlndF9v dXRwdXRfZ2V0X3BsYW5lX3R5cGUob3V0cHV0LA0KPiA+IERSTV9QTEFORV9UWVBFX1BSSU1BUlkp Ow0KPiA+IEBAIC0yMDYsNiArMTk4LDM0IEBAIHByZXBhcmVfcGxhbmVzKGRhdGFfdCAqZGF0YSwg ZW51bSBwaXBlDQo+ID4gcGlwZV9pZCwNCj4gPiBjb2xvcl90ICpjb2xvciwNCj4gPiAgCWlndF9h c3NlcnRfZih5LCAiRmFpbGVkIHRvIGFsbG9jYXRlICVsZCBieXRlcyBmb3IgdmFyaWFibGUNCj4g PiB5XG4iLCAobG9uZyBpbnQpIChwaXBlLT5uX3BsYW5lcyAqIHNpemVvZigqeSkpKTsNCj4gPiAg CXNpemUgPSBtYWxsb2MocGlwZS0+bl9wbGFuZXMgKiBzaXplb2YoKnNpemUpKTsNCj4gPiAgCWln dF9hc3NlcnRfZihzaXplLCAiRmFpbGVkIHRvIGFsbG9jYXRlICVsZCBieXRlcyBmb3IgdmFyaWFi bGUNCj4gPiBzaXplXG4iLCAobG9uZyBpbnQpIChwaXBlLT5uX3BsYW5lcyAqIHNpemVvZigqc2l6 ZSkpKTsNCj4gPiArCXN1ZmZsZSA9IG1hbGxvYyhwaXBlLT5uX3BsYW5lcyAqIHNpemVvZigqc3Vm ZmxlKSk7DQo+ID4gKwlpZ3RfYXNzZXJ0X2Yoc3VmZmxlLCAiRmFpbGVkIHRvIGFsbG9jYXRlICVs ZCBieXRlcyBmb3IgdmFyaWFibGUNCj4gPiBzaXplXG4iLCAobG9uZyBpbnQpIChwaXBlLT5uX3Bs YW5lcyAqIHNpemVvZigqc3VmZmxlKSkpOw0KPiA+ICsNCj4gPiArCWZvciAoaSA9IDA7IGkgPCBw aXBlLT5uX3BsYW5lczsgaSsrKQ0KPiA+ICsJCXN1ZmZsZVtpXSA9IGk7DQo+ID4gKw0KPiA+ICsJ LyoNCj4gPiArCSAqIHN1ZmZsZSB0YWJsZSBmb3IgcGxhbmVzLiB1c2luZyByYW5kKCkgc2hvdWxk IGtlZXAgaXQNCj4gPiArCSAqICdyYW5kb21pemVkIGluIGV4cGVjdGVkIHdheScNCj4gPiArCSAq Lw0KPiA+ICsJZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7DQo+IA0KPiBOb3QgYmVhdXRpZnVs IGF0IGFsbA0KPiANCj4gPiArCQlpbnQgbiwgbTsNCj4gPiArCQlpbnQgYSwgYjsNCj4gPiArDQo+ ID4gKwkJbiA9IHJhbmQoKSAlIChwaXBlLT5uX3BsYW5lcy0xKTsNCj4gPiArCQltID0gcmFuZCgp ICUgKHBpcGUtPm5fcGxhbmVzLTEpOw0KPiA+ICsNCj4gPiArCQkvKg0KPiA+ICsJCSAqIGtlZXAg cHJpbWFyeSBwbGFuZSBhdCBpdHMgcGxhY2UgZm9yIHRlc3QncyBzYWtlLg0KPiA+ICsJCSAqLw0K PiA+ICsJCWlmKG4gPT0gcHJpbWFyeS0+aW5kZXggfHwgbSA9PSBwcmltYXJ5LT5pbmRleCkNCj4g PiArCQkJY29udGludWU7DQo+ID4gKw0KPiA+ICsJCWEgPSBzdWZmbGVbbl07DQo+ID4gKwkJYiA9 IHN1ZmZsZVttXTsNCj4gPiArCQlzdWZmbGVbbl0gPSBiOw0KPiA+ICsJCXN1ZmZsZVttXSA9IGE7 DQo+ID4gKwl9DQo+ID4gIA0KPiA+ICAJbW9kZSA9IGlndF9vdXRwdXRfZ2V0X21vZGUob3V0cHV0 KTsNCj4gPiAgDQo+ID4gQEAgLTIxMyw3ICsyMzMsMTEgQEAgcHJlcGFyZV9wbGFuZXMoZGF0YV90 ICpkYXRhLCBlbnVtIHBpcGUNCj4gPiBwaXBlX2lkLA0KPiA+IGNvbG9yX3QgKmNvbG9yLA0KPiA+ ICAJeFtwcmltYXJ5LT5pbmRleF0gPSAwOw0KPiA+ICAJeVtwcmltYXJ5LT5pbmRleF0gPSAwOw0K PiA+ICAJZm9yIChpID0gMDsgaSA8IG1heF9wbGFuZXM7IGkrKykgew0KPiA+IC0JCWlndF9wbGFu ZV90ICpwbGFuZSA9IGlndF9vdXRwdXRfZ2V0X3BsYW5lKG91dHB1dCwgaSk7DQo+ID4gKwkJLyoN Cj4gPiArCQkgKiBIZXJlIGlzIG1hZGUgYXNzdW1wdGlvbiBwcmltYXJ5IHBsYW5lIHdpbGwgaGF2 ZQ0KPiA+ICsJCSAqIGluZGV4IHplcm8uDQo+ID4gKwkJICovDQo+ID4gKwkJaWd0X3BsYW5lX3Qg KnBsYW5lID0gaWd0X291dHB1dF9nZXRfcGxhbmUob3V0cHV0LA0KPiA+IHN1ZmZsZVtpXSk7DQo+ ID4gIAkJdWludDMyX3QgcGxhbmVfZm9ybWF0Ow0KPiA+ICAJCXVpbnQ2NF90IHBsYW5lX3RpbGlu ZzsNCj4gPiAgDQo+ID4gQEAgLTI1MSw2ICsyNzUsMTAgQEAgcHJlcGFyZV9wbGFuZXMoZGF0YV90 ICpkYXRhLCBlbnVtIHBpcGUNCj4gPiBwaXBlX2lkLA0KPiA+IGNvbG9yX3QgKmNvbG9yLA0KPiA+ ICAJY3JlYXRlX2ZiX2Zvcl9tb2RlX3Bvc2l0aW9uKGRhdGEsIG91dHB1dCwgbW9kZSwgY29sb3Is IHgsIHksDQo+ID4gIAkJCQkgICAgc2l6ZSwgc2l6ZSwgdGlsaW5nLCBtYXhfcGxhbmVzKTsNCj4g PiAgCWlndF9wbGFuZV9zZXRfZmIoZGF0YS0+cGxhbmVbcHJpbWFyeS0+aW5kZXhdLCAmZGF0YS0N Cj4gPiA+IGZiW3ByaW1hcnktPmluZGV4XSk7DQo+ID4gDQo+ID4gKwlmcmVlKCh2b2lkKil4KTsN Cj4gPiArCWZyZWUoKHZvaWQqKXkpOw0KPiA+ICsJZnJlZSgodm9pZCopc2l6ZSk7DQo+ID4gKwlm cmVlKCh2b2lkKilzdWZmbGUpOw0KPiA+ICB9DQo+ID4gIA0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ IEBAIC0yNjAsNyArMjg4LDkgQEAgdGVzdF9wbGFuZV9wb3NpdGlvbl93aXRoX291dHB1dChkYXRh X3QgKmRhdGEsDQo+ID4gZW51bSBwaXBlIHBpcGUsDQo+ID4gIHsNCj4gPiAgCWNvbG9yX3QgYmx1 ZSAgPSB7IDAuMGYsIDAuMGYsIDEuMGYgfTsNCj4gPiAgCWlndF9jcmNfdCBjcmM7DQo+ID4gKwlp Z3RfcGxhbmVfdCAqcGxhbmU7DQo+ID4gIAlpbnQgaTsNCj4gPiArCWludCBlcnIsIGMgPSAwOw0K PiA+ICAJaW50IGl0ZXJhdGlvbnMgPSBvcHQuaXRlcmF0aW9ucyA8IDEgPyAxIDogb3B0Lml0ZXJh dGlvbnM7DQo+ID4gIAlib29sIGxvb3BfZm9yZXZlcjsNCj4gPiAgCWNoYXIgaW5mb1syNTZdOw0K PiA+IEBAIC0yNzQsMjIgKzMwNCw0NiBAQCB0ZXN0X3BsYW5lX3Bvc2l0aW9uX3dpdGhfb3V0cHV0 KGRhdGFfdCAqZGF0YSwNCj4gPiBlbnVtIHBpcGUgcGlwZSwNCj4gPiAgCQkJaXRlcmF0aW9ucywg aXRlcmF0aW9ucyA+IDEgPyAiaXRlcmF0aW9ucyIgOg0KPiA+ICJpdGVyYXRpb24iKTsNCj4gPiAg CX0NCj4gPiAgDQo+ID4gLQlpZ3RfaW5mbygiVGVzdGluZyBjb25uZWN0b3IgJXMgdXNpbmcgcGlw ZSAlcyB3aXRoICVkIHBsYW5lcyAlcw0KPiA+IHdpdGggc2VlZCAlZFxuIiwNCj4gPiAtCQkgaWd0 X291dHB1dF9uYW1lKG91dHB1dCksIGttc3Rlc3RfcGlwZV9uYW1lKHBpcGUpLA0KPiA+IG5fcGxh bmVzLA0KPiA+IC0JCSBpbmZvLCBvcHQuc2VlZCk7DQo+ID4gLQ0KPiA+ICAJdGVzdF9pbml0KGRh dGEsIHBpcGUsIG5fcGxhbmVzKTsNCj4gPiAgDQo+ID4gIAl0ZXN0X2dyYWJfY3JjKGRhdGEsIG91 dHB1dCwgcGlwZSwgJmJsdWUsIHRpbGluZyk7DQo+ID4gIA0KPiA+ICsJLyoNCj4gPiArCSAqIEZp bmQgb3V0IGhvdyBtYW55IHBsYW5lcyBhcmUgYWxsb3dlZCBzaW11bHRhbmVvdXNseQ0KPiA+ICsJ ICovDQo+ID4gKwlkbyB7DQo+ID4gKwkJYysrOw0KPiANCj4gQWRkaW5nIG9uZSBwbGFuZSBhdCB0 aW1lIGlzIGEgd2FzdGUgb2YgQ0kgdGltZSBpbiBwbGF0Zm9ybXMgd2l0aG91dCBhDQo+IGhpZ2gg bnVtYmVyIG9mIHBsYW5lcyhhbnl0aGluZyBiZXNpZGVzIElDTCksIGJldHRlciBzdGFydCB3aXRo IG1heA0KPiBhbmQNCj4gZGVjcmVhc2luZyB1bnRpbCBjb21taXQgaXMgYWNjZXB0ZWQuDQoNCkl0 IGlzIGFjdHVhbGx5IG9wcG9zaXRlLiBQbGF0Zm9ybXMgd2l0aCBoaWdoIGFtb3VudCBvZiBwbGFu ZXMgd291bGQNCmJlIHNsb3dlciBvYnZpb3VzbHksIGFzIHlvdSB3aWxsIGhhdmUgdG8gaW5jcmVt ZW50IG1vcmUgYW5kIGZhc3RlciANCmZvciBzeXN0ZW1zIHdpdGggbGVzcyBhbW91bnQgb2YgcGxh bmVzLiBDb25zaWRlciAwLT43IGFuZCAwLQ0KPjMocGxhdGZvcm1zIHdpdGggbGVzcyBhbW91bnQg b2YgcGxhbmVzKSAtIHNvIHdoZXJlIGlzIG1vcmUgd2FzdGUNCm9mIHRpbWU/DQoNCj4gDQo+ID4g KwkJcHJlcGFyZV9wbGFuZXMoZGF0YSwgcGlwZSwgJmJsdWUsIHRpbGluZywgYywgb3V0cHV0KTsN Cj4gPiArCQllcnIgPSBpZ3RfZGlzcGxheV90cnlfY29tbWl0MigmZGF0YS0+ZGlzcGxheSwNCj4g PiBDT01NSVRfQVRPTUlDKTsNCj4gDQo+IE5vIG5lZWQgdG8gZG8gYSByZWFsIGNvbW1pdCBoZXJl LCB5b3UgY2FuIG9ubHkgdGVzdCB3aXRoOg0KDQpUaGlzIGlzIGlndF9kaXNwbGF5X1RSWV9jb21t aXQyLg0KDQo+IA0KPiBlcnIgPSBpZ3RfZGlzcGxheV90cnlfY29tbWl0X2F0b21pYygmZGF0YS0+ ZGlzcGxheSwNCj4gRFJNX01PREVfQVRPTUlDX1RFU1RfT05MWSB8IERSTV9NT0RFX0FUT01JQ19B TExPV19NT0RFU0VULCBOVUxMKTsNCj4gDQo+IA0KPiBBbHNvIGlmIGEgZXJyIGRpZmZlcmVudCB0 aGFuIC1FSU5WQUwgaXMgcmV0dXJuZWQgeW91IHNob3VsZCBoYW5kbGUNCj4gbGlrZQ0KPiBhIGVy cm9yLg0KPiANCj4gPiArDQo+ID4gKwkJZm9yX2VhY2hfcGxhbmVfb25fcGlwZSgmZGF0YS0+ZGlz cGxheSwgcGlwZSwgcGxhbmUpDQo+ID4gKwkJCWlndF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwp Ow0KPiA+ICsNCj4gPiArCQlmb3IgKGludCB4ID0gMDsgeCA8IGM7IHgrKykNCj4gPiArCQkJaWd0 X3JlbW92ZV9mYihkYXRhLT5kcm1fZmQsICZkYXRhLT5mYlt4XSk7DQo+IA0KPiBUaGlzIGlzIHN0 aWxsIGxlYWtpbmcsIGV4YW1wbGU6DQo+IA0KPiBjID0gMw0KPiBwbGFuZSAwLCBwbGFuZSAxIGFu ZCBwbGFuZSAzIGVuYWJsZWQNCg0KVGhlcmUgc2hvdWxkIGJlIG5vIGxlYWsgaGVyZS4gSGUgdXNl cyBzdWZmbGVbaV0gDQpmb3IgaW5kZXggaW5kaXJlY3Rpb24gaW4gcHJlcGFyZV9wbGFuZXMgbGlr ZSBpZ3RfcGxhbmVfdCAqcGxhbmUgPQ0KaWd0X291dHB1dF9nZXRfcGxhbmUob3V0cHV0LCBzdWZm bGVbaV0pLCBzbyB0aGF0IHN1ZmZsZVswXT0wLA0Kc3VmZmxlWzFdPTEsIHN1ZmZsZVsyXT0zLCBt ZWFud2hpbGUgY29ycmVzcG9uZGVudCBkYXRhLT5mYltpXQ0KcmVtYWlucyBjb250aWd1b3VzLCBz byB0aGF0IHBsYW5lIDAgY29ycmVzcG9uZHMgdG8gZGF0YS0+ZmJbMF0sDQpwbGFuZSAxIC0+IGRh dGEtPmZiWzFdIGFuZCBwbGFuZSAzIC0+IGRhdGEtPmZiWzJdLiANClNvIGFsbCB0aGUgaWd0X3Jl bW92ZV9mYiBjYWxscyB0YXJnZXQgY29ycmVjdCBkYXRhLT5mYltdIHRocm91Z2gNCnN1ZmZsZVtp XSB1c2VkIGFzIGluZGlyZWN0aW9uIGxheWVyLg0KDQo+IA0KPiBPdGhlciBsZWFrLCB0aGUgZnJh bWVidWZmZXIgY3JlYXRlZCBpbiB0ZXN0X2dyYWJfY3JjKCkNCj4gDQo+IA0KPiA+ICsJfSB3aGls ZSAoIWVyciAmJiBjIDwgbl9wbGFuZXMpOw0KPiA+ICsNCj4gPiArCWlmKGVycikNCj4gPiArCQlj LS07DQo+ID4gKw0KPiA+ICsJaWd0X2luZm8oIlRlc3RpbmcgY29ubmVjdG9yICVzIHVzaW5nIHBp cGUgJXMgd2l0aCAlZCBwbGFuZXMgJXMNCj4gPiB3aXRoIHNlZWQgJWRcbiIsDQo+ID4gKwkJIGln dF9vdXRwdXRfbmFtZShvdXRwdXQpLCBrbXN0ZXN0X3BpcGVfbmFtZShwaXBlKSwgYywNCj4gPiAr CQkgaW5mbywgb3B0LnNlZWQpOw0KPiA+ICsNCj4gPiAgCWkgPSAwOw0KPiA+ICAJd2hpbGUgKGkg PCBpdGVyYXRpb25zIHx8IGxvb3BfZm9yZXZlcikgew0KPiA+IC0JCXByZXBhcmVfcGxhbmVzKGRh dGEsIHBpcGUsICZibHVlLCB0aWxpbmcsIG5fcGxhbmVzLA0KPiA+IG91dHB1dCk7DQo+ID4gKwkJ cHJlcGFyZV9wbGFuZXMoZGF0YSwgcGlwZSwgJmJsdWUsIHRpbGluZywgYywgb3V0cHV0KTsNCj4g PiAgDQo+ID4gIAkJaWd0X2Rpc3BsYXlfY29tbWl0MigmZGF0YS0+ZGlzcGxheSwgQ09NTUlUX0FU T01JQyk7DQo+ID4gIA0KPiA+ICAJCWlndF9waXBlX2NyY19nZXRfY3VycmVudChkYXRhLT5kaXNw bGF5LmRybV9mZCwgZGF0YS0NCj4gPiA+IHBpcGVfY3JjLCAmY3JjKTsNCj4gPiANCj4gPiAgDQo+ ID4gKwkJZm9yX2VhY2hfcGxhbmVfb25fcGlwZSgmZGF0YS0+ZGlzcGxheSwgcGlwZSwgcGxhbmUp DQo+ID4gKwkJCWlndF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwpOw0KPiA+ICsNCj4gPiArCQlm b3IgKGludCB4ID0gMDsgeCA8IGM7IHgrKykNCj4gPiArCQkJaWd0X3JlbW92ZV9mYihkYXRhLT5k cm1fZmQsICZkYXRhLT5mYlt4XSk7DQo+IA0KPiBtb3ZlIHRoaXMgY2xlYW51cCB0byBmdW5jdGlv biBhbmQgY2FsbCBpdCBoZXJlIGFuZCB3aGVyZSB5b3UgdGVzdCB0aGUNCj4gbnVtYmVyIG9mIHBs YW5lcyB0aGF0IGNhbiBiZSBlbmFibGVkDQo+IA0KPiA+ICsNCj4gPiAgCQlpZ3RfYXNzZXJ0X2Ny Y19lcXVhbCgmZGF0YS0+cmVmX2NyYywgJmNyYyk7DQo+ID4gIA0KPiA+ICAJCWkrKzsNCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGlu ZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldg==