From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 631FD6E51C for ; Mon, 2 Jul 2018 21:55:01 +0000 (UTC) Date: Mon, 2 Jul 2018 14:54:59 -0700 From: Rodrigo Vivi Message-ID: <20180702215459.GC31287@intel.com> References: <20180702082507.16816-1-dhinakaran.pandiyan@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20180702082507.16816-1-dhinakaran.pandiyan@intel.com> Subject: Re: [igt-dev] [PATCH i-g-t] tests/frontbuffer_tracking: Do not test sink crc 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: Dhinakaran Pandiyan Cc: igt-dev@lists.freedesktop.org, Dhinakaran Pandiyan List-ID: T24gTW9uLCBKdWwgMDIsIDIwMTggYXQgMDE6MjU6MDdBTSAtMDcwMCwgRGhpbmFrYXJhbiBQYW5k aXlhbiB3cm90ZToKPiBlRFAgc2luayBjcmMgcmVhZHMgdXNlIHZibGFuayBpbnRlcnJ1cHRzIHRo YXQgY2F1c2UgUFNSIGV4aXQgYW5kCj4gdGhlcmVmb3JlIG1ha2VzIHRoZW0gdW5zdWl0YWJsZSBm b3IgUFNSIHRlc3RpbmcuCj4gCj4gU2lnbmVkLW9mZi1ieTogRGhpbmFrYXJhbiBQYW5kaXlhbiA8 ZGhpbmFrYXJhbi5wYW5kaXlhbkBpbnRlbC5jb20+CkNjOiBQYXVsbyBaYW5vbmkgPHBhdWxvLnIu emFub25pQGludGVsLmNvbT4KClJldmlld2VkLWJ5OiBSb2RyaWdvIFZpdmkgPHJvZHJpZ28udml2 aUBpbnRlbC5jb20+Cgo+IC0tLQo+ICB0ZXN0cy9rbXNfZnJvbnRidWZmZXJfdHJhY2tpbmcuYyB8 IDE0MyArKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgMSBmaWxlIGNo YW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDEyMiBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0 IGEvdGVzdHMva21zX2Zyb250YnVmZmVyX3RyYWNraW5nLmMgYi90ZXN0cy9rbXNfZnJvbnRidWZm ZXJfdHJhY2tpbmcuYwo+IGluZGV4IGRiYjhiYTYyLi4xMTZhOTViYyAxMDA2NDQKPiAtLS0gYS90 ZXN0cy9rbXNfZnJvbnRidWZmZXJfdHJhY2tpbmcuYwo+ICsrKyBiL3Rlc3RzL2ttc19mcm9udGJ1 ZmZlcl90cmFja2luZy5jCj4gQEAgLTE4NCwzMiArMTg0LDEyIEBAIHN0cnVjdCB7Cj4gIAkuY2Fu X3Rlc3QgPSBmYWxzZSwKPiAgfTsKPiAgCj4gLSNkZWZpbmUgU0lOS19DUkNfU0laRSAxMgo+IC10 eXBlZGVmIHN0cnVjdCB7Cj4gLQljaGFyIGRhdGFbU0lOS19DUkNfU0laRV07Cj4gLX0gc2lua19j cmNfdDsKPiAtCj4gLXN0cnVjdCBib3RoX2NyY3Mgewo+IC0JaWd0X2NyY190IHBpcGU7Cj4gLQlz aW5rX2NyY190IHNpbms7Cj4gLX07Cj4gLQo+ICBpZ3RfcGlwZV9jcmNfdCAqcGlwZV9jcmM7Cj4g K2lndF9jcmNfdCAqd2FudGVkX2NyYzsKPiAgc3RydWN0IHsKPiAgCWJvb2wgaW5pdGlhbGl6ZWQ7 Cj4gLQlzdHJ1Y3QgYm90aF9jcmNzIGNyYzsKPiArCWlndF9jcmNfdCBjcmM7Cj4gIH0gYmx1ZV9j cmNzW0ZPUk1BVF9DT1VOVF07Cj4gLXN0cnVjdCBib3RoX2NyY3MgKndhbnRlZF9jcmM7Cj4gLQo+ IC1zdHJ1Y3Qgewo+IC0JaW50IGZkOwo+IC0JYm9vbCBzdXBwb3J0ZWQ7Cj4gLQlib29sIHJlbGlh YmxlOwo+IC19IHNpbmtfY3JjID0gewo+IC0JLmZkID0gLTEsCj4gLQkuc3VwcG9ydGVkID0gdHJ1 ZSwKPiAtCS5yZWxpYWJsZSA9IHRydWUsCj4gLX07Cj4gIAo+ICAvKiBUaGUgZ29hbCBvZiB0aGlz IHN0cnVjdHVyZSBpcyB0byBlYXNpbHkgYWxsb3cgdXMgdG8gZGVhbCB3aXRoIGNhc2VzIHdoZXJl IHdlCj4gICAqIGhhdmUgYSBiaWcgZnJhbWVidWZmZXIgYW5kIHRoZSBDUlRDIGlzIGp1c3QgZGlz cGxheWluZyBhIHN1YnJlZ2lvbiBvZiB0aGlzCj4gQEAgLTIyOSw3ICsyMDksNyBAQCBzdHJ1Y3Qg ZHJhd19wYXR0ZXJuX2luZm8gewo+ICAJc3RydWN0IHJlY3QgKCpnZXRfcmVjdCkoc3RydWN0IGZi X3JlZ2lvbiAqZmIsIGludCByKTsKPiAgCj4gIAlib29sIGluaXRpYWxpemVkW0ZPUk1BVF9DT1VO VF07Cj4gLQlzdHJ1Y3QgYm90aF9jcmNzICpjcmNzW0ZPUk1BVF9DT1VOVF07Cj4gKwlpZ3RfY3Jj X3QgKmNyY3NbRk9STUFUX0NPVU5UXTsKPiAgfTsKPiAgCj4gIC8qIERyYXcgYmlnIHJlY3Rhbmds ZXMgb24gdGhlIHNjcmVlbi4gKi8KPiBAQCAtOTkxLDQ0ICs5NzEsNiBAQCBzdGF0aWMgYm9vbCBk cnJzX3dhaXRfdW50aWxfcnJfc3dpdGNoX3RvX2xvdyh2b2lkKQo+ICAjZGVmaW5lIGRycnNfZW5h YmxlKCkJZHJyc19zZXQoMSkKPiAgI2RlZmluZSBkcnJzX2Rpc2FibGUoKQlkcnJzX3NldCgwKQo+ ICAKPiAtc3RhdGljIHZvaWQgZ2V0X3NpbmtfY3JjKHNpbmtfY3JjX3QgKmNyYywgYm9vbCBtYW5k YXRvcnkpCj4gLXsKPiAtCWludCByYywgZXJybm9fOwo+IC0KPiAtCWlmICghc2lua19jcmMuc3Vw cG9ydGVkKSB7Cj4gLQkJbWVtY3B5KGNyYywgInVuc3VwcG9ydGVkISIsIFNJTktfQ1JDX1NJWkUp Owo+IC0JCXJldHVybjsKPiAtCX0KPiAtCj4gLQlsc2VlayhzaW5rX2NyYy5mZCwgMCwgU0VFS19T RVQpOwo+IC0KPiAtCXJjID0gcmVhZChzaW5rX2NyYy5mZCwgY3JjLT5kYXRhLCBTSU5LX0NSQ19T SVpFKTsKPiAtCWVycm5vXyA9IGVycm5vOwo+IC0KPiAtCWlmIChyYyA9PSAtMSAmJiBlcnJub18g PT0gRU5PVFRZKSB7Cj4gLQkJaWd0X2luZm8oIlNpbmsgQ1JDIG5vdCBzdXBwb3J0ZWQ6IHBhbmVs IGRvZXNuJ3Qgc3VwcG9ydCBpdFxuIik7Cj4gLQkJc2lua19jcmMuc3VwcG9ydGVkID0gZmFsc2U7 Cj4gLQl9IGVsc2UgaWYgKHJjID09IC0xICYmIGVycm5vXyA9PSBFVElNRURPVVQpIHsKPiAtCQlp ZiAoc2lua19jcmMucmVsaWFibGUpIHsKPiAtCQkJaWd0X2luZm8oIlNpbmsgQ1JDIGlzIHVucmVs aWFibGUgb24gdGhpcyBtYWNoaW5lLlxuIik7Cj4gLQkJCXNpbmtfY3JjLnJlbGlhYmxlID0gZmFs c2U7Cj4gLQkJfQo+IC0KPiAtCQlpZiAobWFuZGF0b3J5KQo+IC0JCQlpZ3Rfc2tpcCgiU2luayBD UkMgaXMgdW5yZWxpYWJsZSBvbiB0aGlzIG1hY2hpbmUuXG4iKTsKPiAtCX0gZWxzZSB7Cj4gLQkJ aWd0X2Fzc2VydF9mKHJjICE9IC0xLCAiVW5leHBlY3RlZCBlcnJvcjogJWRcbiIsIGVycm5vXyk7 Cj4gLQkJaWd0X2Fzc2VydChyYyA9PSBTSU5LX0NSQ19TSVpFKTsKPiAtCX0KPiAtfQo+IC0KPiAt c3RhdGljIGJvb2wgc2lua19jcmNfZXF1YWwoc2lua19jcmNfdCAqYSwgc2lua19jcmNfdCAqYikK PiAtewo+IC0JcmV0dXJuIChtZW1jbXAoYS0+ZGF0YSwgYi0+ZGF0YSwgU0lOS19DUkNfU0laRSkg PT0gMCk7Cj4gLX0KPiAtCj4gLSNkZWZpbmUgYXNzZXJ0X3NpbmtfY3JjX2VxdWFsKGEsIGIpIGln dF9hc3NlcnQoc2lua19jcmNfZXF1YWwoYSwgYikpCj4gLQo+ICBzdGF0aWMgc3RydWN0IHJlY3Qg cGF0MV9nZXRfcmVjdChzdHJ1Y3QgZmJfcmVnaW9uICpmYiwgaW50IHIpCj4gIHsKPiAgCXN0cnVj dCByZWN0IHJlY3Q7Cj4gQEAgLTEyNjIsMzAgKzEyMDQsMjMgQEAgc3RhdGljIHZvaWQgc3RvcF9i dXN5X3RocmVhZCh2b2lkKQo+ICAJfQo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBwcmludF9jcmMo Y29uc3QgY2hhciAqc3RyLCBzdHJ1Y3QgYm90aF9jcmNzICpjcmMpCj4gK3N0YXRpYyB2b2lkIHBy aW50X2NyYyhjb25zdCBjaGFyICpzdHIsIGlndF9jcmNfdCAqY3JjKQo+ICB7Cj4gLQlpbnQgaTsK PiAgCWNoYXIgKnBpcGVfc3RyOwo+ICAKPiAtCXBpcGVfc3RyID0gaWd0X2NyY190b19zdHJpbmco JmNyYy0+cGlwZSk7Cj4gKwlwaXBlX3N0ciA9IGlndF9jcmNfdG9fc3RyaW5nKGNyYyk7Cj4gIAo+ IC0JaWd0X2RlYnVnKCIlcyBwaXBlOlslc10gc2luazpbIiwgc3RyLCBwaXBlX3N0cik7Cj4gLQlm b3IgKGkgPSAwOyBpIDwgU0lOS19DUkNfU0laRTsgaSsrKQo+IC0JCWlndF9kZWJ1ZygiJWMiLCBj cmMtPnNpbmsuZGF0YVtpXSk7Cj4gLQlpZ3RfZGVidWcoIl1cbiIpOwo+ICsJaWd0X2RlYnVnKCIl cyBwaXBlOlslc11cbiIsIHN0ciwgcGlwZV9zdHIpOwo+ICAKPiAgCWZyZWUocGlwZV9zdHIpOwo+ ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBjb2xsZWN0X2NyY3Moc3RydWN0IGJvdGhfY3JjcyAqY3Jj cywgYm9vbCBtYW5kYXRvcnlfc2lua19jcmMpCj4gK3N0YXRpYyB2b2lkIGNvbGxlY3RfY3JjKGln dF9jcmNfdCAqY3JjKQo+ICB7Cj4gLQlpZ3RfcGlwZV9jcmNfY29sbGVjdF9jcmMocGlwZV9jcmMs ICZjcmNzLT5waXBlKTsKPiAtCWdldF9zaW5rX2NyYygmY3Jjcy0+c2luaywgbWFuZGF0b3J5X3Np bmtfY3JjKTsKPiArCWlndF9waXBlX2NyY19jb2xsZWN0X2NyYyhwaXBlX2NyYywgY3JjKTsKPiAg fQo+ICAKPiAtc3RhdGljIHZvaWQgc2V0dXBfc2lua19jcmModm9pZCk7Cj4gLQo+IC1zdGF0aWMg dm9pZCBpbml0X2JsdWVfY3JjKGVudW0gcGl4ZWxfZm9ybWF0IGZvcm1hdCwgYm9vbCBtYW5kYXRv cnlfc2lua19jcmMpCj4gK3N0YXRpYyB2b2lkIGluaXRfYmx1ZV9jcmMoZW51bSBwaXhlbF9mb3Jt YXQgZm9ybWF0KQo+ICB7Cj4gIAlzdHJ1Y3QgaWd0X2ZiIGJsdWU7Cj4gIAo+IEBAIC0xMzA2LDEx ICsxMjQxLDkgQEAgc3RhdGljIHZvaWQgaW5pdF9ibHVlX2NyYyhlbnVtIHBpeGVsX2Zvcm1hdCBm b3JtYXQsIGJvb2wgbWFuZGF0b3J5X3NpbmtfY3JjKQo+ICAJaWYgKCFwaXBlX2NyYykgewo+ICAJ CXBpcGVfY3JjID0gaWd0X3BpcGVfY3JjX25ldyhkcm0uZmQsIHByaW1fbW9kZV9wYXJhbXMucGlw ZSwgSU5URUxfUElQRV9DUkNfU09VUkNFX0FVVE8pOwo+ICAJCWlndF9hc3NlcnQocGlwZV9jcmMp Owo+IC0KPiAtCQlzZXR1cF9zaW5rX2NyYygpOwo+ICAJfQo+ICAKPiAtCWNvbGxlY3RfY3Jjcygm Ymx1ZV9jcmNzW2Zvcm1hdF0uY3JjLCBtYW5kYXRvcnlfc2lua19jcmMpOwo+ICsJY29sbGVjdF9j cmMoJmJsdWVfY3Jjc1tmb3JtYXRdLmNyYyk7Cj4gIAo+ICAJcHJpbnRfY3JjKCJCbHVlIENSQzog ICIsICZibHVlX2NyY3NbZm9ybWF0XS5jcmMpOwo+ICAKPiBAQCAtMTMyMiw4ICsxMjU1LDcgQEAg c3RhdGljIHZvaWQgaW5pdF9ibHVlX2NyYyhlbnVtIHBpeGVsX2Zvcm1hdCBmb3JtYXQsIGJvb2wg bWFuZGF0b3J5X3NpbmtfY3JjKQo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpbml0X2NyY3MoZW51 bSBwaXhlbF9mb3JtYXQgZm9ybWF0LAo+IC0JCSAgICAgIHN0cnVjdCBkcmF3X3BhdHRlcm5faW5m byAqcGF0dGVybiwKPiAtCQkgICAgICBib29sIG1hbmRhdG9yeV9zaW5rX2NyYykKPiArCQkgICAg ICBzdHJ1Y3QgZHJhd19wYXR0ZXJuX2luZm8gKnBhdHRlcm4pCj4gIHsKPiAgCWludCByLCByXzsK PiAgCXN0cnVjdCBpZ3RfZmIgdG1wX2Zic1twYXR0ZXJuLT5uX3JlY3RzXTsKPiBAQCAtMTM1OSw3 ICsxMjkxLDcgQEAgc3RhdGljIHZvaWQgaW5pdF9jcmNzKGVudW0gcGl4ZWxfZm9ybWF0IGZvcm1h dCwKPiAgCQlpZ3RfcGxhbmVfc2V0X2ZiKHByaW1fbW9kZV9wYXJhbXMucHJpbWFyeS5wbGFuZSwg JnRtcF9mYnNbcl0pOwo+ICAJCWlndF9kaXNwbGF5X2NvbW1pdCgmZHJtLmRpc3BsYXkpOwo+ICAK PiAtCQljb2xsZWN0X2NyY3MoJnBhdHRlcm4tPmNyY3NbZm9ybWF0XVtyXSwgbWFuZGF0b3J5X3Np bmtfY3JjKTsKPiArCQljb2xsZWN0X2NyYygmcGF0dGVybi0+Y3Jjc1tmb3JtYXRdW3JdKTsKPiAg CX0KPiAgCj4gIAlmb3IgKHIgPSAwOyByIDwgcGF0dGVybi0+bl9yZWN0czsgcisrKSB7Cj4gQEAg LTE0MTIsMjUgKzEzNDQsNiBAQCBzdGF0aWMgdm9pZCB0ZWFyZG93bl9tb2Rlc2V0KHZvaWQpCj4g IAkJZGVzdHJveV9mYnMoZik7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIHNldHVwX3NpbmtfY3Jj KHZvaWQpCj4gLXsKPiAtCXNpbmtfY3JjX3QgY3JjOwo+IC0JZHJtTW9kZUNvbm5lY3RvclB0ciBj Owo+IC0KPiAtCWMgPSBwcmltX21vZGVfcGFyYW1zLm91dHB1dC0+Y29uZmlnLmNvbm5lY3RvcjsK PiAtCWlmIChjLT5jb25uZWN0b3JfdHlwZSAhPSBEUk1fTU9ERV9DT05ORUNUT1JfZURQKSB7Cj4g LQkJaWd0X2luZm8oIlNpbmsgQ1JDIG5vdCBzdXBwb3J0ZWQ6IHByaW1hcnkgc2NyZWVuIGlzIG5v dCBlRFBcbiIpOwo+IC0JCXNpbmtfY3JjLnN1cHBvcnRlZCA9IGZhbHNlOwo+IC0JCXJldHVybjsK PiAtCX0KPiAtCj4gLQlzaW5rX2NyYy5mZCA9IG9wZW5hdChkcm0uZGVidWdmcywgImk5MTVfc2lu a19jcmNfZURQMSIsIE9fUkRPTkxZKTsKPiAtCWlndF9hc3NlcnRfbHRlKDAsIHNpbmtfY3JjLmZk KTsKPiAtCj4gLQkvKiBEbyBhIGZpcnN0IHJlYWQgdG8gdHJ5IHRvIGRldGVjdCBpZiBpdCdzIHN1 cHBvcnRlZC4gKi8KPiAtCWdldF9zaW5rX2NyYygmY3JjLCBmYWxzZSk7Cj4gLX0KPiAtCj4gIHN0 YXRpYyB2b2lkIHNldHVwX2NyY3Modm9pZCkKPiAgewo+ICAJZW51bSBwaXhlbF9mb3JtYXQgZjsK PiBAQCAtMTQ4Niw5ICsxMzk5LDYgQEAgc3RhdGljIHZvaWQgdGVhcmRvd25fY3Jjcyh2b2lkKQo+ ICAJCQlmcmVlKHBhdHRlcm40LmNyY3NbZl0pOwo+ICAJfQo+ICAKPiAtCWlmIChzaW5rX2NyYy5m ZCAhPSAtMSkKPiAtCQljbG9zZShzaW5rX2NyYy5mZCk7Cj4gLQo+ICAJaWd0X3BpcGVfY3JjX2Zy ZWUocGlwZV9jcmMpOwo+ICB9Cj4gIAo+IEBAIC0xNjk1LDIzICsxNjA1LDE4IEBAIHN0YXRpYyBp bnQgYWRqdXN0X2Fzc2VydGlvbl9mbGFncyhjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0LCBpbnQg ZmxhZ3MpCj4gIAlyZXR1cm4gZmxhZ3M7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGRvX2NyY19h c3NlcnRpb25zKGludCBmbGFncywgYm9vbCBtYW5kYXRvcnlfc2lua19jcmMpCj4gK3N0YXRpYyB2 b2lkIGRvX2NyY19hc3NlcnRpb25zKGludCBmbGFncykKPiAgewo+IC0Jc3RydWN0IGJvdGhfY3Jj cyBjcmM7Cj4gKwlpZ3RfY3JjX3QgY3JjOwo+ICAKPiAgCWlmICghb3B0LmNoZWNrX2NyYyB8fCAo ZmxhZ3MgJiBET05UX0FTU0VSVF9DUkMpKQo+ICAJCXJldHVybjsKPiAgCj4gLQljb2xsZWN0X2Ny Y3MoJmNyYywgbWFuZGF0b3J5X3NpbmtfY3JjKTsKPiArCWNvbGxlY3RfY3JjKCZjcmMpOwo+ICAJ cHJpbnRfY3JjKCJDYWxjdWxhdGVkIENSQzoiLCAmY3JjKTsKPiAgCj4gIAlpZ3RfYXNzZXJ0KHdh bnRlZF9jcmMpOwo+IC0JaWd0X2Fzc2VydF9jcmNfZXF1YWwoJmNyYy5waXBlLCAmd2FudGVkX2Ny Yy0+cGlwZSk7Cj4gLQlpZiAobWFuZGF0b3J5X3NpbmtfY3JjKQo+IC0JCWFzc2VydF9zaW5rX2Ny Y19lcXVhbCgmY3JjLnNpbmssICZ3YW50ZWRfY3JjLT5zaW5rKTsKPiAtCWVsc2UgaWYgKHNpbmtf Y3JjLnJlbGlhYmxlICYmCj4gLQkJICFzaW5rX2NyY19lcXVhbCgmY3JjLnNpbmssICZ3YW50ZWRf Y3JjLT5zaW5rKSkKPiAtCQlpZ3RfaW5mbygiU2luayBDUkMgZGlmZmVyLCBidXQgbm90IHJlcXVp cmVkXG4iKTsKPiArCWlndF9hc3NlcnRfY3JjX2VxdWFsKCZjcmMsIHdhbnRlZF9jcmMpOwo+ICB9 Cj4gIAo+ICBzdGF0aWMgdm9pZCBkb19zdGF0dXNfYXNzZXJ0aW9ucyhpbnQgZmxhZ3MpCj4gQEAg LTE3NzAsNyArMTY3NSw2IEBAIHN0YXRpYyB2b2lkIGRvX3N0YXR1c19hc3NlcnRpb25zKGludCBm bGFncykKPiAgc3RhdGljIHZvaWQgX19kb19hc3NlcnRpb25zKGNvbnN0IHN0cnVjdCB0ZXN0X21v ZGUgKnQsIGludCBmbGFncywKPiAgCQkJICAgIGludCBsaW5lKQo+ICB7Cj4gLQlib29sIG1hbmRh dG9yeV9zaW5rX2NyYyA9IHQtPmZlYXR1cmUgJiBGRUFUVVJFX1BTUjsKPiAgCWZsYWdzID0gYWRq dXN0X2Fzc2VydGlvbl9mbGFncyh0LCBmbGFncyk7Cj4gIAo+ICAJaWd0X2RlYnVnKCJjaGVja2lu ZyBhc3NlcnRzIGluIGxpbmUgJWlcbiIsIGxpbmUpOwo+IEBAIC0xNzc5LDcgKzE2ODMsNyBAQCBz dGF0aWMgdm9pZCBfX2RvX2Fzc2VydGlvbnMoY29uc3Qgc3RydWN0IHRlc3RfbW9kZSAqdCwgaW50 IGZsYWdzLAo+ICAKPiAgCS8qIENoZWNrIHRoZSBDUkMgdG8gbWFrZSBzdXJlIHRoZSBkcmF3aW5n IG9wZXJhdGlvbnMgd29yawo+ICAJICogaW1tZWRpYXRlbHksIGluZGVwZW5kZW50bHkgb2YgdGhl IGZlYXR1cmVzIGJlaW5nIGVuYWJsZWQuICovCj4gLQlkb19jcmNfYXNzZXJ0aW9ucyhmbGFncywg bWFuZGF0b3J5X3NpbmtfY3JjKTsKPiArCWRvX2NyY19hc3NlcnRpb25zKGZsYWdzKTsKPiAgCj4g IAkvKiBOb3cgd2UgY2FuIGZsdXNoIHRoaW5ncyB0byBtYWtlIHRoZSB0ZXN0IGZhc3Rlci4gKi8K PiAgCWRvX2ZsdXNoKHQpOwo+IEBAIC0xNzkyLDcgKzE2OTYsNyBAQCBzdGF0aWMgdm9pZCBfX2Rv X2Fzc2VydGlvbnMoY29uc3Qgc3RydWN0IHRlc3RfbW9kZSAqdCwgaW50IGZsYWdzLAo+ICAJICog d291bGQgb25seSBkZWxheSB0aGUgdGVzdCBzdWl0ZSB3aGlsZSBhZGRpbmcgbm8gdmFsdWUgdG8g dGhlCj4gIAkgKiB0ZXN0IHN1aXRlLiAqLwo+ICAJaWYgKHQtPnNjcmVlbiA9PSBTQ1JFRU5fUFJJ TSkKPiAtCQlkb19jcmNfYXNzZXJ0aW9ucyhmbGFncywgbWFuZGF0b3J5X3NpbmtfY3JjKTsKPiAr CQlkb19jcmNfYXNzZXJ0aW9ucyhmbGFncyk7Cj4gIAo+ICAJaWYgKGZiYy5zdXBwb3J0c19sYXN0 X2FjdGlvbiAmJiBvcHQuZmJjX2NoZWNrX2xhc3RfYWN0aW9uKSB7Cj4gIAkJaWYgKGZsYWdzICYg QVNTRVJUX0xBU1RfQUNUSU9OX0NIQU5HRUQpCj4gQEAgLTE4NjUsOCArMTc2OSw2IEBAIHN0YXRp YyB2b2lkIGNoZWNrX3Rlc3RfcmVxdWlyZW1lbnRzKGNvbnN0IHN0cnVjdCB0ZXN0X21vZGUgKnQp Cj4gIAlpZiAodC0+ZmVhdHVyZSAmIEZFQVRVUkVfUFNSKSB7Cj4gIAkJaWd0X3JlcXVpcmVfZihw c3IuY2FuX3Rlc3QsCj4gIAkJCSAgICAgICJDYW4ndCB0ZXN0IFBTUiB3aXRoIHRoZSBjdXJyZW50 IG91dHB1dHNcbiIpOwo+IC0JCWlndF9yZXF1aXJlX2Yoc2lua19jcmMuc3VwcG9ydGVkLAo+IC0J CQkgICAgICAiQ2FuJ3QgdGVzdCBQU1Igd2l0aG91dCBzaW5rIENSQ3NcbiIpOwo+ICAJfQo+ICAK PiAgCWlmICh0LT5mZWF0dXJlICYgRkVBVFVSRV9EUlJTKQo+IEBAIC0xOTQ1LDkgKzE4NDcsOSBA QCBzdGF0aWMgdm9pZCBwcmVwYXJlX3N1YnRlc3RfZGF0YShjb25zdCBzdHJ1Y3QgdGVzdF9tb2Rl ICp0LAo+ICAKPiAgCXVuc2V0X2FsbF9jcnRjcygpOwo+ICAKPiAtCWluaXRfYmx1ZV9jcmModC0+ Zm9ybWF0LCB0LT5mZWF0dXJlICYgRkVBVFVSRV9QU1IpOwo+ICsJaW5pdF9ibHVlX2NyYyh0LT5m b3JtYXQpOwo+ICAJaWYgKHBhdHRlcm4pCj4gLQkJaW5pdF9jcmNzKHQtPmZvcm1hdCwgcGF0dGVy biwgdC0+ZmVhdHVyZSAmIEZFQVRVUkVfUFNSKTsKPiArCQlpbml0X2NyY3ModC0+Zm9ybWF0LCBw YXR0ZXJuKTsKPiAgCj4gIAllbmFibGVfZmVhdHVyZXNfZm9yX3Rlc3QodCk7Cj4gIH0KPiBAQCAt MjAxNiw3ICsxOTE4LDcgQEAgc3RhdGljIHZvaWQgcnRlX3N1YnRlc3QoY29uc3Qgc3RydWN0IHRl c3RfbW9kZSAqdCkKPiAgCXNldF9yZWdpb25fZm9yX3Rlc3QodCwgJnNjbmRfbW9kZV9wYXJhbXMu c3ByaXRlKTsKPiAgfQo+ICAKPiAtc3RhdGljIHZvaWQgdXBkYXRlX3dhbnRlZF9jcmMoY29uc3Qg c3RydWN0IHRlc3RfbW9kZSAqdCwgc3RydWN0IGJvdGhfY3JjcyAqY3JjKQo+ICtzdGF0aWMgdm9p ZCB1cGRhdGVfd2FudGVkX2NyYyhjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0LCBpZ3RfY3JjX3Qg KmNyYykKPiAgewo+ICAJaWYgKHQtPnNjcmVlbiA9PSBTQ1JFRU5fUFJJTSkKPiAgCQl3YW50ZWRf Y3JjID0gY3JjOwo+IEBAIC0zMTQwLDkgKzMwNDIsNiBAQCBzdGF0aWMgdm9pZCB0aWxpbmdjaGFu Z2Vfc3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0KQo+ICAgKiAgIElmIHlvdSBnZXQg YSBmYWlsdXJlIGhlcmUsIHlvdSBzaG91bGQgcnVuIHRoZSBtb3JlIHNwZWNpZmljIGRyYXcgYW5k IGZsaXAKPiAgICogICBzdWJ0ZXN0cyBvZiBlYWNoIGZlYXR1cmUgaW4gb3JkZXIgdG8gZGlzY292 ZXIgd2hhdCBleGFjdGx5IGlzIGZhaWxpbmcgYW5kCj4gICAqICAgd2h5Lgo+IC0gKgo+IC0gKiBU T0RPOiBkbyBzaW5rIENSQyBhc3NlcnRpb25zIGluIGNhc2Ugc2lua19jcmMuc3VwcG9ydGVkLiBP bmx5IGRvIHRoaXMgYWZ0ZXIKPiAtICogb3VyIHNpbmsgQ1JDIGNvZGUgZ2V0cyAxMDAlIHJlbGlh YmxlLCBpbiBvcmRlciB0byBhdm9pZCBDSSBmYWxzZSBuZWdhdGl2ZXMuCj4gICAqLwo+ICBzdGF0 aWMgdm9pZCBiYXNpY19zdWJ0ZXN0KGNvbnN0IHN0cnVjdCB0ZXN0X21vZGUgKnQpCj4gIHsKPiAt LSAKPiAyLjE0LjEKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwo+IGlndC1kZXYgbWFpbGluZyBsaXN0Cj4gaWd0LWRldkBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ln dC1kZXYKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0 LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==