From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7F42889A86 for ; Mon, 22 Jul 2019 08:37:39 +0000 (UTC) References: <20190715215136.21744-1-lucas.demarchi@intel.com> <20190715215136.21744-10-lucas.demarchi@intel.com> <20190719125415.GL5942@intel.com> From: "B S, Karthik" Message-ID: Date: Mon, 22 Jul 2019 14:07:36 +0530 MIME-Version: 1.0 In-Reply-To: <20190719125415.GL5942@intel.com> Content-Language: en-US Subject: Re: [igt-dev] [PATCH 09/10] tests/kms_plane_multiple/tgl: PCU messaging test List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= , Lucas De Marchi Cc: igt-dev@lists.freedesktop.org List-ID: Ck9uIDcvMTkvMjAxOSA2OjI0IFBNLCBWaWxsZSBTeXJqw6Rsw6Qgd3JvdGU6Cj4gT24gTW9uLCBK dWwgMTUsIDIwMTkgYXQgMDI6NTE6MzVQTSAtMDcwMCwgTHVjYXMgRGUgTWFyY2hpIHdyb3RlOgo+ PiBGcm9tOiBLYXJ0aGlrIEIgUyA8a2FydGhpay5iLnNAaW50ZWwuY29tPgo+Pgo+PiBBZGQgYSBz dWJ0ZXN0IHRoYXQgZ2l2ZXMgZmxpcHMgd2hpY2ggYWx0ZXJuYXRlIGJldHdlZW4gbGVhc3QgYmFu ZHdpZHRoCj4+IHJlcXVpcmVtZW50IGFuZCBoaWdoZXN0IGJhbmR3aWR0aCByZXF1aXJlbWVudC4K Pj4KPj4gQ2M6IE1pa2EgS2Fob2xhIDxtaWthLmthaG9sYUBpbnRlbC5jb20+Cj4+IFNpZ25lZC1v ZmYtYnk6IEthcnRoaWsgQiBTIDxrYXJ0aGlrLmIuc0BpbnRlbC5jb20+Cj4+IFNpZ25lZC1vZmYt Ynk6IEx1Y2FzIERlIE1hcmNoaSA8bHVjYXMuZGVtYXJjaGlAaW50ZWwuY29tPgo+PiAtLS0KPj4g ICB0ZXN0cy9rbXNfcGxhbmVfbXVsdGlwbGUuYyB8IDE3OCArKysrKysrKysrKysrKysrKysrKysr KysrKysrKystLS0tLS0tCj4+ICAgMSBmaWxlIGNoYW5nZWQsIDE0OCBpbnNlcnRpb25zKCspLCAz MCBkZWxldGlvbnMoLSkKPj4KPj4gZGlmZiAtLWdpdCBhL3Rlc3RzL2ttc19wbGFuZV9tdWx0aXBs ZS5jIGIvdGVzdHMva21zX3BsYW5lX211bHRpcGxlLmMKPj4gaW5kZXggODFlZDQ1ZGQuLjJjNzI2 ZmRhIDEwMDY0NAo+PiAtLS0gYS90ZXN0cy9rbXNfcGxhbmVfbXVsdGlwbGUuYwo+PiArKysgYi90 ZXN0cy9rbXNfcGxhbmVfbXVsdGlwbGUuYwo+PiBAQCAtMzQsNiArMzQsMTEgQEAgSUdUX1RFU1Rf REVTQ1JJUFRJT04oIlRlc3QgYXRvbWljIG1vZGUgc2V0dGluZyB3aXRoIG11bHRpcGxlIHBsYW5l cy4iKTsKPj4gICAKPj4gICAjZGVmaW5lIFNJWkVfUExBTkUgICAgICAyNTYKPj4gICAjZGVmaW5l IFNJWkVfQ1VSU09SICAgICAxMjgKPj4gKyNkZWZpbmUgU0laRV9QTEFORV9MT1cJIDEwCj4+ICsj ZGVmaW5lIFNJWkVfUEFORQkgIDUKPj4gKyNkZWZpbmUgU01BTExfU0NSRUVOCSAgMAo+PiArI2Rl ZmluZSBGVUxMX1NDUkVFTgkgIDEKPj4gKyNkZWZpbmUgVEVTVF9QQ1VfQUxHTwkgIDEKPiBUaGF0 J3Mgd2F5IHRvbyBpOTE1IHNwZWNpZmljLiBTdWNoIGEgdGVzdCBzaG91bGQgYmUgdG90YWxseSBn ZW5lcmljLgpTdXJlLiBJJ2xsIHVwZGF0ZSBURVNUX1BDVV9BTEdPIHRvIFRFU1RfQkFORFdJRFRI LiBXb3VsZCB0aGF0IGJlIGZpbmU/IApJJ2xsIGFsc28gY2hhbmdlIHRoZSB0ZXN0IG5hbWUgZnJv bSAqX3BjdSB0byAqX2J3PwoKQWxzbyB0byBtYWtlIGl0IG1vcmUgZ2VuZXJpYywgc2hhbGwgSSBy ZW1vdmUgdGhlIEdlbjEyKyBjaGVjayBmb3IgdGhpcyAKdGVzdCwgYXMgdGhpcyB0ZXN0IGlzIGV4 cGVjdGVkIHRvIHdvcmsgb24gb3RoZXIgcGxhdGZvcm1zIGFzIHdlbGwuCj4KPj4gICAjZGVmaW5l IExPT1BfRk9SRVZFUiAgICAgLTEKPj4gICAKPj4gICB0eXBlZGVmIHN0cnVjdCB7Cj4+IEBAIC00 OCw5ICs1MywxNyBAQCB0eXBlZGVmIHN0cnVjdCB7Cj4+ICAgCWlndF9jcmNfdCByZWZfY3JjOwo+ PiAgIAlpZ3RfcGlwZV9jcmNfdCAqcGlwZV9jcmM7Cj4+ICAgCWlndF9wbGFuZV90ICoqcGxhbmU7 Cj4+ICsJdW5zaWduZWQgaW50IGZsYWc7Cj4+ICAgCXN0cnVjdCBpZ3RfZmIgKmZiOwo+PiAgIH0g ZGF0YV90Owo+PiAgIAo+PiArZW51bSBiYW5kd2lkdGggewo+PiArCUJXX1BSSU1BUllfTE9XLAo+ PiArCUJXX1BSSU1BUllfSElHSCwKPj4gKwlCV19QUklNQVJZX0xPVzIsCj4+ICsJQldfSElHSCwK Pj4gKwlCV19JTlZBTElELAo+PiArfTsKPj4gICAvKiBDb21tYW5kIGxpbmUgcGFyYW1ldGVycy4g Ki8KPj4gICBzdHJ1Y3Qgewo+PiAgIAlpbnQgaXRlcmF0aW9uczsKPj4gQEAgLTk3LDcgKzExMCw3 IEBAIHN0YXRpYyB2b2lkIHRlc3RfZmluaShkYXRhX3QgKmRhdGEsIGlndF9vdXRwdXRfdCAqb3V0 cHV0LCBpbnQgbl9wbGFuZXMpCj4+ICAgCj4+ICAgc3RhdGljIHZvaWQKPj4gICBnZXRfcmVmZXJl bmNlX2NyYyhkYXRhX3QgKmRhdGEsIGlndF9vdXRwdXRfdCAqb3V0cHV0LCBlbnVtIHBpcGUgcGlw ZSwKPj4gLQkgICAgICBjb2xvcl90ICpjb2xvciwgdWludDY0X3QgdGlsaW5nKQo+PiArCSAgICAg IGNvbG9yX3QgKmNvbG9yLCB1aW50NjRfdCB0aWxpbmcsIGludCBCVykKPj4gICB7Cj4+ICAgCWRy bU1vZGVNb2RlSW5mbyAqbW9kZTsKPj4gICAJaWd0X3BsYW5lX3QgKnByaW1hcnk7Cj4+IEBAIC0x MTAsNyArMTIzLDkgQEAgZ2V0X3JlZmVyZW5jZV9jcmMoZGF0YV90ICpkYXRhLCBpZ3Rfb3V0cHV0 X3QgKm91dHB1dCwgZW51bSBwaXBlIHBpcGUsCj4+ICAgCj4+ICAgCW1vZGUgPSBpZ3Rfb3V0cHV0 X2dldF9tb2RlKG91dHB1dCk7Cj4+ICAgCj4+IC0JaWd0X2NyZWF0ZV9jb2xvcl9mYihkYXRhLT5k cm1fZmQsIG1vZGUtPmhkaXNwbGF5LCBtb2RlLT52ZGlzcGxheSwKPj4gKwlpZ3RfY3JlYXRlX2Nv bG9yX2ZiKGRhdGEtPmRybV9mZCwKPj4gKwkJCSAgICBCVyA/IG1vZGUtPmhkaXNwbGF5IDogU0la RV9QTEFORV9MT1csCj4+ICsJCQkgICAgQlcgPyBtb2RlLT52ZGlzcGxheSA6IFNJWkVfUExBTkVf TE9XLAo+PiAgIAkJCSAgICBEUk1fRk9STUFUX1hSR0I4ODg4LAo+PiAgIAkJCSAgICBMT0NBTF9E Uk1fRk9STUFUX01PRF9OT05FLAo+PiAgIAkJCSAgICBjb2xvci0+cmVkLCBjb2xvci0+Z3JlZW4s IGNvbG9yLT5ibHVlLAo+PiBAQCAtMjgxLDYgKzI5Niw3NiBAQCBwcmVwYXJlX3BsYW5lcyhkYXRh X3QgKmRhdGEsIGVudW0gcGlwZSBwaXBlX2lkLCBjb2xvcl90ICpjb2xvciwKPj4gICAgKiAgICAg VGhlIHJlc3VsdGluZyBDUkMgc2hvdWxkIGJlIGlkZW50aWNhbCB0byB0aGUgcmVmZXJlbmNlIENS Qwo+PiAgICAqLwo+PiAgIAo+PiArc3RhdGljIHZvaWQKPj4gK3ByZXBhcmVfcGxhbmVzMihkYXRh X3QgKmRhdGEsIGVudW0gcGlwZSBwaXBlX2lkLCBjb2xvcl90ICpjb2xvciwKPj4gKwkgICAgICAg dWludDY0X3QgdGlsaW5nLCBpbnQgbWF4X3BsYW5lcywgaWd0X291dHB1dF90ICpvdXRwdXQsCj4+ ICsJICAgICAgIGVudW0gYmFuZHdpZHRoIGJhbmR3aWR0aCkKPj4gK3sKPj4gKwlkcm1Nb2RlTW9k ZUluZm8gKm1vZGU7Cj4+ICsJaW50IGhzaXplLCB2c2l6ZTsKPj4gKwlpbnQgaTsKPj4gKwljYWly b190ICpjcjsKPj4gKwo+PiArCWlndF9vdXRwdXRfc2V0X3BpcGUob3V0cHV0LCBwaXBlX2lkKTsK Pj4gKwltb2RlID0gaWd0X291dHB1dF9nZXRfbW9kZShvdXRwdXQpOwo+PiArCj4+ICsJc3dpdGNo IChiYW5kd2lkdGgpIHsKPj4gKwljYXNlIEJXX1BSSU1BUllfTE9XOgo+PiArCWNhc2UgQldfUFJJ TUFSWV9MT1cyOgo+PiArCQloc2l6ZSA9IFNJWkVfUExBTkVfTE9XOwo+PiArCQl2c2l6ZSA9IFNJ WkVfUExBTkVfTE9XOwo+PiArCQlicmVhazsKPj4gKwljYXNlIEJXX1BSSU1BUllfSElHSDoKPj4g KwljYXNlIEJXX0hJR0g6Cj4+ICsJCWhzaXplID0gbW9kZS0+aGRpc3BsYXk7Cj4+ICsJCXZzaXpl ID0gbW9kZS0+dmRpc3BsYXk7Cj4+ICsJCWJyZWFrOwo+PiArCWRlZmF1bHQ6Cj4+ICsJCWlndF93 YXJuKCJJbnZhbGlkIEJXXG4iKTsKPj4gKwl9Cj4+ICsKPj4gKwlmb3IgKGkgPSAwOyBpIDwgbWF4 X3BsYW5lczsgaSsrKSB7Cj4+ICsJCWlndF9wbGFuZV90ICpwbGFuZSA9IGlndF9vdXRwdXRfZ2V0 X3BsYW5lKG91dHB1dCwgaSk7Cj4+ICsJCXVpbnQzMl90IGZvcm1hdCA9IERSTV9GT1JNQVRfWFJH Qjg4ODg7Cj4+ICsKPj4gKwkJaWYgKHBsYW5lLT50eXBlID09IERSTV9QTEFORV9UWVBFX0NVUlNP Uikgewo+PiArCQkJZm9ybWF0ID0gRFJNX0ZPUk1BVF9BUkdCODg4ODsKPj4gKwkJCXRpbGluZyA9 IExPQ0FMX0RSTV9GT1JNQVRfTU9EX05PTkU7Cj4+ICsJCQloc2l6ZSA9IFNJWkVfQ1VSU09SOwo+ PiArCQkJdnNpemUgPSBTSVpFX0NVUlNPUjsKPj4gKwkJfQo+PiArCj4+ICsJCWRhdGEtPnBsYW5l W2ldID0gcGxhbmU7Cj4+ICsJCWlndF9jcmVhdGVfY29sb3JfZmIoZGF0YS0+ZHJtX2ZkLAo+PiAr CQkJCSAgICBoc2l6ZSwgdnNpemUsCj4+ICsJCQkJICAgIGZvcm1hdCwgdGlsaW5nLAo+PiArCQkJ CSAgICBjb2xvci0+cmVkLCBjb2xvci0+Z3JlZW4sCj4+ICsJCQkJICAgIGNvbG9yLT5ibHVlLAo+ PiArCQkJCSAgICAmZGF0YS0+ZmJbaV0pOwo+PiArCQlpZ3RfcGxhbmVfc2V0X3Bvc2l0aW9uKGRh dGEtPnBsYW5lW2ldLCAwLCAwKTsKPj4gKwo+PiArCQloc2l6ZSAtPSBTSVpFX1BBTkU7Cj4+ICsK Pj4gKwkJLyogQ3JlYXRlIGJsYWNrIGNvbG9yIGhvbGVzIGluIGFsbCBwbGFuZXMgb3RoZXIgdGhh biB0aGUgY3Vyc29yCj4+ICsJCSAqIGFuZCB0aGUgdG9wbW9zdCBwbGFuZSwgc28gdGhhdCBhbGwg cGxhbmVzIHB1dCB0b2dldGhlcgo+PiArCQkgKiBwcm9kdWNlcyBhIHNvbGlkIGJsdWUgc2NyZWVu IHRoYXQgbWF0Y2hlcyB3aXRoCj4+ICsJCSAqIHRoZSByZWZlcmVuY2UgQ1JDLgo+PiArCQkgKi8K Pj4gKwkJaWYgKGkgPCAobWF4X3BsYW5lcyAtIDIpICYmIGJhbmR3aWR0aCA9PSBCV19ISUdIKSB7 Cj4+ICsJCQljciA9IGlndF9nZXRfY2Fpcm9fY3R4KGRhdGEtPmRybV9mZCwgJmRhdGEtPmZiW2ld KTsKPj4gKwkJCWlndF9wYWludF9jb2xvcihjciwgMCwgMCwgaHNpemUsIHZzaXplLCAwLjAsIDAu MCwgMC4wKTsKPj4gKwkJCWlndF9wdXRfY2Fpcm9fY3R4KGRhdGEtPmRybV9mZCwgJmRhdGEtPmZi W2ldLCBjcik7Cj4+ICsJCX0KPj4gKwo+PiArCQlpZ3RfcGxhbmVfc2V0X2ZiKGRhdGEtPnBsYW5l W2ldLCAmZGF0YS0+ZmJbaV0pOwo+PiArCj4+ICsJCWlmIChiYW5kd2lkdGggIT0gQldfSElHSCAm Jgo+PiArCQkgICAgcGxhbmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSkKPj4gKwkJ CWJyZWFrOwo+PiArCj4+ICsJfQo+PiArfQo+PiArCj4+ICAgc3RhdGljIHZvaWQKPj4gICB0ZXN0 X3BsYW5lX3Bvc2l0aW9uX3dpdGhfb3V0cHV0KGRhdGFfdCAqZGF0YSwgZW51bSBwaXBlIHBpcGUs Cj4+ICAgCQkJCWlndF9vdXRwdXRfdCAqb3V0cHV0LCBpbnQgbl9wbGFuZXMsCj4+IEBAIC0zMDYs NDYgKzM5MSw2NyBAQCB0ZXN0X3BsYW5lX3Bvc2l0aW9uX3dpdGhfb3V0cHV0KGRhdGFfdCAqZGF0 YSwgZW51bSBwaXBlIHBpcGUsCj4+ICAgCj4+ICAgCXRlc3RfaW5pdChkYXRhLCBwaXBlLCBuX3Bs YW5lcyk7Cj4+ICAgCj4+IC0JZ2V0X3JlZmVyZW5jZV9jcmMoZGF0YSwgb3V0cHV0LCBwaXBlLCAm Ymx1ZSwgdGlsaW5nKTsKPj4gKwlpZiAoZGF0YS0+ZmxhZyA9PSBURVNUX1BDVV9BTEdPKSB7Cj4+ ICsJCWZvciAoaSA9IEJXX1BSSU1BUllfTE9XOyBpIDwgQldfSU5WQUxJRDsgaSsrKSB7Cj4+ICsJ CQlpZiAoaSA9PSBCV19QUklNQVJZX0xPVyB8fCBpID09IEJXX1BSSU1BUllfTE9XMikKPj4gKwkJ CQlnZXRfcmVmZXJlbmNlX2NyYyhkYXRhLCBvdXRwdXQsIHBpcGUsICZibHVlLAo+PiArCQkJCQkJ dGlsaW5nLCBTTUFMTF9TQ1JFRU4pOwo+PiArCQkJZWxzZQo+PiArCQkJCWdldF9yZWZlcmVuY2Vf Y3JjKGRhdGEsIG91dHB1dCwgcGlwZSwgJmJsdWUsCj4+ICsJCQkJCQl0aWxpbmcsIEZVTExfU0NS RUVOKTsKPj4gKwo+PiArCQkJLyogRmluZCBvdXQgaG93IG1hbnkgcGxhbmVzIGFyZSBhbGxvd2Vk IHNpbXVsdGFuZW91c2x5ICovCj4+ICsJCQlkbyB7Cj4+ICsJCQkJYysrOwo+PiArCQkJCXByZXBh cmVfcGxhbmVzKGRhdGEsIHBpcGUsICZibHVlLCB0aWxpbmcsIGMsIG91dHB1dCk7Cj4+ICsJCQkJ ZXJyID0gaWd0X2Rpc3BsYXlfdHJ5X2NvbW1pdDIoJmRhdGEtPmRpc3BsYXksIENPTU1JVF9BVE9N SUMpOwo+PiAgIAo+PiAtCS8qIEZpbmQgb3V0IGhvdyBtYW55IHBsYW5lcyBhcmUgYWxsb3dlZCBz aW11bHRhbmVvdXNseSAqLwo+PiAtCWRvIHsKPj4gLQkJYysrOwo+PiAtCQlwcmVwYXJlX3BsYW5l cyhkYXRhLCBwaXBlLCAmYmx1ZSwgdGlsaW5nLCBjLCBvdXRwdXQpOwo+PiAtCQllcnIgPSBpZ3Rf ZGlzcGxheV90cnlfY29tbWl0MigmZGF0YS0+ZGlzcGxheSwgQ09NTUlUX0FUT01JQyk7Cj4+ICsJ CQkJZm9yX2VhY2hfcGxhbmVfb25fcGlwZSgmZGF0YS0+ZGlzcGxheSwgcGlwZSwgcGxhbmUpCj4+ ICsJCQkJCWlndF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwpOwo+PiAgIAo+PiAtCQlmb3JfZWFj aF9wbGFuZV9vbl9waXBlKCZkYXRhLT5kaXNwbGF5LCBwaXBlLCBwbGFuZSkKPj4gLQkJCWlndF9w bGFuZV9zZXRfZmIocGxhbmUsIE5VTEwpOwo+PiArCQkJCWZvciAoaW50IHggPSAwOyB4IDwgYzsg eCsrKQo+PiArCQkJCQlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmRybV9mZCwgJmRhdGEtPmZiW3hdKTsK Pj4gKwkJCX0gd2hpbGUgKCFlcnIgJiYgYyA8IG5fcGxhbmVzKTsKPj4gICAKPj4gLQkJZm9yIChp bnQgeCA9IDA7IHggPCBjOyB4KyspCj4+IC0JCQlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmRybV9mZCwg JmRhdGEtPmZiW3hdKTsKPj4gLQl9IHdoaWxlICghZXJyICYmIGMgPCBuX3BsYW5lcyk7Cj4+ICsJ CQlpZiAoZXJyKQo+PiArCQkJCWMtLTsKPj4gICAKPj4gLQlpZiAoZXJyKQo+PiAtCQljLS07Cj4+ ICsJCQlpZ3RfaW5mbygiVGVzdGluZyBjb25uZWN0b3IgJXMgdXNpbmcgcGlwZSAlcyB3aXRoICVk IHBsYW5lcyAlcyB3aXRoIHNlZWQgJWRcbiIsCj4+ICsJCQkJCWlndF9vdXRwdXRfbmFtZShvdXRw dXQpLCBrbXN0ZXN0X3BpcGVfbmFtZShwaXBlKSwgYywKPj4gKwkJCQkJaW5mbywgb3B0LnNlZWQp Owo+PiAgIAo+PiAtCWlndF9pbmZvKCJUZXN0aW5nIGNvbm5lY3RvciAlcyB1c2luZyBwaXBlICVz IHdpdGggJWQgcGxhbmVzICVzIHdpdGggc2VlZCAlZFxuIiwKPj4gLQkJIGlndF9vdXRwdXRfbmFt ZShvdXRwdXQpLCBrbXN0ZXN0X3BpcGVfbmFtZShwaXBlKSwgYywKPj4gLQkJIGluZm8sIG9wdC5z ZWVkKTsKPj4gKwkJCXByZXBhcmVfcGxhbmVzMihkYXRhLCBwaXBlLCAmYmx1ZSwgdGlsaW5nLAo+ PiArCQkJCQluX3BsYW5lcywgb3V0cHV0LCBpKTsKPj4gKwkJCWlndF9kaXNwbGF5X2NvbW1pdDIo JmRhdGEtPmRpc3BsYXksIENPTU1JVF9BVE9NSUMpOwo+PiAgIAo+PiAtCWkgPSAwOwo+PiAtCXdo aWxlIChpIDwgaXRlcmF0aW9ucyB8fCBsb29wX2ZvcmV2ZXIpIHsKPj4gLQkJLyogcmFuZG9taXpl IHBsYW5lcyBhbmQgc2V0IHVwIHRoZSBob2xlcyAqLwo+PiAtCQlwcmVwYXJlX3BsYW5lcyhkYXRh LCBwaXBlLCAmYmx1ZSwgdGlsaW5nLCBjLCBvdXRwdXQpOwo+PiArCQkJaWd0X3BpcGVfY3JjX2dl dF9jdXJyZW50KGRhdGEtPmRpc3BsYXkuZHJtX2ZkLAo+PiArCQkJCQlkYXRhLT5waXBlX2NyYywg JmNyYyk7Cj4+ICAgCj4+IC0JCWlndF9kaXNwbGF5X2NvbW1pdDIoJmRhdGEtPmRpc3BsYXksIENP TU1JVF9BVE9NSUMpOwo+PiArCQkJaWd0X2Fzc2VydF9jcmNfZXF1YWwoJmRhdGEtPnJlZl9jcmMs ICZjcmMpOwo+PiArCQl9Cj4+ICsJfSBlbHNlIHsKPj4gKwkJaSA9IDA7Cj4+ICsJCWdldF9yZWZl cmVuY2VfY3JjKGRhdGEsIG91dHB1dCwgcGlwZSwgJmJsdWUsIHRpbGluZywgRlVMTF9TQ1JFRU4p Owo+PiArCj4+ICsJCXdoaWxlIChpIDwgaXRlcmF0aW9ucyB8fCBsb29wX2ZvcmV2ZXIpIHsKPj4g KwkJCXByZXBhcmVfcGxhbmVzKGRhdGEsIHBpcGUsICZibHVlLCB0aWxpbmcsCj4+ICsJCQkJICAg ICAgIG5fcGxhbmVzLCBvdXRwdXQpOwo+PiAgIAo+PiAtCQlpZ3RfcGlwZV9jcmNfZ2V0X2N1cnJl bnQoZGF0YS0+ZGlzcGxheS5kcm1fZmQsIGRhdGEtPnBpcGVfY3JjLCAmY3JjKTsKPj4gKwkJCWln dF9kaXNwbGF5X2NvbW1pdDIoJmRhdGEtPmRpc3BsYXksIENPTU1JVF9BVE9NSUMpOwo+PiAgIAo+ PiAtCQlmb3JfZWFjaF9wbGFuZV9vbl9waXBlKCZkYXRhLT5kaXNwbGF5LCBwaXBlLCBwbGFuZSkK Pj4gLQkJCWlndF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwpOwo+PiArCQkJaWd0X3BpcGVfY3Jj X2dldF9jdXJyZW50KGRhdGEtPmRpc3BsYXkuZHJtX2ZkLAo+PiArCQkJCQkJIGRhdGEtPnBpcGVf Y3JjLCAmY3JjKTsKPj4gICAKPj4gLQkJZm9yIChpbnQgeCA9IDA7IHggPCBjOyB4KyspCj4+IC0J CQlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmRybV9mZCwgJmRhdGEtPmZiW3hdKTsKPj4gKwkJCWZvcl9l YWNoX3BsYW5lX29uX3BpcGUoJmRhdGEtPmRpc3BsYXksIHBpcGUsIHBsYW5lKQo+PiArCQkJCWln dF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwpOwo+PiAgIAo+PiAtCQlpZ3RfYXNzZXJ0X2NyY19l cXVhbCgmZGF0YS0+cmVmX2NyYywgJmNyYyk7Cj4+ICsJCQlmb3IgKGludCB4ID0gMDsgeCA8IGM7 IHgrKykKPj4gKwkJCQlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmRybV9mZCwgJmRhdGEtPmZiW3hdKTsK Pj4gICAKPj4gLQkJaSsrOwo+PiArCQkJaWd0X2Fzc2VydF9jcmNfZXF1YWwoJmRhdGEtPnJlZl9j cmMsICZjcmMpOwo+PiArCj4+ICsJCQlpKys7Cj4+ICsJCX0KPj4gICAJfQo+PiAgIAo+PiAgIAl0 ZXN0X2ZpbmkoZGF0YSwgb3V0cHV0LCBuX3BsYW5lcyk7Cj4+IEBAIC0zNTUsOCArNDYxLDEyIEBA IHN0YXRpYyB2b2lkCj4+ICAgdGVzdF9wbGFuZV9wb3NpdGlvbihkYXRhX3QgKmRhdGEsIGVudW0g cGlwZSBwaXBlLCB1aW50NjRfdCB0aWxpbmcpCj4+ICAgewo+PiAgIAlpZ3Rfb3V0cHV0X3QgKm91 dHB1dDsKPj4gKwlpbnQgZGV2aWQgPSBpbnRlbF9nZXRfZHJtX2RldmlkKGRhdGEtPmRybV9mZCk7 Cj4+ICAgCWludCBuX3BsYW5lcyA9IGRhdGEtPmRpc3BsYXkucGlwZXNbcGlwZV0ubl9wbGFuZXM7 Cj4+ICAgCj4+ICsJaWYgKGRhdGEtPmZsYWcgPT0gVEVTVF9QQ1VfQUxHTykKPj4gKwkJaWd0X3Jl cXVpcmUoQVRfTEVBU1RfR0VOKGRldmlkLCAxMikpOwo+PiArCj4+ICAgCW91dHB1dCA9IGlndF9n ZXRfc2luZ2xlX291dHB1dF9mb3JfcGlwZSgmZGF0YS0+ZGlzcGxheSwgcGlwZSk7Cj4+ICAgCWln dF9yZXF1aXJlKG91dHB1dCk7Cj4+ICAgCj4+IEBAIC0zNzcsNiArNDg3LDE0IEBAIHJ1bl90ZXN0 c19mb3JfcGlwZShkYXRhX3QgKmRhdGEsIGVudW0gcGlwZSBwaXBlKQo+PiAgIAkJaWd0X3JlcXVp cmUoZGF0YS0+ZGlzcGxheS5waXBlc1twaXBlXS5uX3BsYW5lcyA+IDApOwo+PiAgIAl9Cj4+ICAg Cj4+ICsKPj4gKwlkYXRhLT5mbGFnID0gVEVTVF9QQ1VfQUxHTzsKPj4gKwo+PiArCWlndF9zdWJ0 ZXN0X2YoImF0b21pYy1waXBlLSVzLXRpbGluZy1ub25lX3BjdSIsIGttc3Rlc3RfcGlwZV9uYW1l KHBpcGUpKQo+PiArCQl0ZXN0X3BsYW5lX3Bvc2l0aW9uKGRhdGEsIHBpcGUsIExPQ0FMX0RSTV9G T1JNQVRfTU9EX05PTkUpOwo+PiArCj4+ICsJZGF0YS0+ZmxhZyA9IDA7Cj4+ICsKPj4gICAJaWd0 X3N1YnRlc3RfZigiYXRvbWljLXBpcGUtJXMtdGlsaW5nLXgiLCBrbXN0ZXN0X3BpcGVfbmFtZShw aXBlKSkKPj4gICAJCXRlc3RfcGxhbmVfcG9zaXRpb24oZGF0YSwgcGlwZSwgTE9DQUxfSTkxNV9G T1JNQVRfTU9EX1hfVElMRUQpOwo+PiAgIAo+PiAtLSAKPj4gMi4yMS4wCj4+Cj4+IF9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+IGlndC1kZXYgbWFpbGlu ZyBsaXN0Cj4+IGlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4+IGh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3Qt ZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=