From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 2/2] kms_rotation_crc: Adding test for 90/270 rotation Date: Tue, 21 Apr 2015 12:54:58 +0100 Message-ID: <55363A92.3090408@linux.intel.com> References: <1428395344-12303-1-git-send-email-sonika.jindal@intel.com> <1428395344-12303-2-git-send-email-sonika.jindal@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id F3FB87205F for ; Tue, 21 Apr 2015 04:55:00 -0700 (PDT) In-Reply-To: <1428395344-12303-2-git-send-email-sonika.jindal@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Sonika Jindal , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org CkhpLAoKT24gMDQvMDcvMjAxNSAwOToyOSBBTSwgU29uaWthIEppbmRhbCB3cm90ZToKPiBBZGRp bmcgOTAvMjcwIHJvdGF0aW9uIHRlc3RjYXNlIGZvciBwcmltYXJ5IGFuZCBzcHJpdGUgcGxhbmVz Lgo+Cj4gdjI6IEFkZGVkIHBvc2l0aW9uIHRlc3QgZm9yIHNwcml0ZS4gQ2hlY2tpbmcgZm9yIGdl biA+IDkgZm9yIDkwLzI3MC4KPiBTb21lIGNsZWFudXAgYW5kIHJlYmFzZS4KPiB2MzogQWRkZWQg dGVzdCBmb3IgdW5zdXBwb3J0ZWQgdGlsaW5nIGFuZCB1bnN1cHBvcnRlZCBwaXhlbCBmb3JtYXQg Zm9yIDkwLzI3MAo+Cj4gU2lnbmVkLW9mZi1ieTogU29uaWthIEppbmRhbCA8c29uaWthLmppbmRh bEBpbnRlbC5jb20+Cj4gLS0tCj4gICB0ZXN0cy9rbXNfcm90YXRpb25fY3JjLmMgfCAgMjQ4ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0KPiAgIDEgZmlsZSBj aGFuZ2VkLCAyMTUgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0 IGEvdGVzdHMva21zX3JvdGF0aW9uX2NyYy5jIGIvdGVzdHMva21zX3JvdGF0aW9uX2NyYy5jCj4g aW5kZXggZTExZDdhOS4uNDhhZmFhMSAxMDA2NDQKPiAtLS0gYS90ZXN0cy9rbXNfcm90YXRpb25f Y3JjLmMKPiArKysgYi90ZXN0cy9rbXNfcm90YXRpb25fY3JjLmMKPiBAQCAtMjgsMTQgKzI4LDIx IEBACj4gICAjaW5jbHVkZSAiaWd0X2RlYnVnZnMuaCIKPiAgICNpbmNsdWRlICJpZ3Rfa21zLmgi Cj4gICAjaW5jbHVkZSAiaWd0X2NvcmUuaCIKPiArI2luY2x1ZGUgImludGVsX2NoaXBzZXQuaCIK Pgo+ICAgdHlwZWRlZiBzdHJ1Y3Qgewo+ICAgCWludCBnZnhfZmQ7Cj4gICAJaWd0X2Rpc3BsYXlf dCBkaXNwbGF5Owo+ICAgCXN0cnVjdCBpZ3RfZmIgZmI7Cj4gICAJc3RydWN0IGlndF9mYiBmYl9j dXJzb3I7Cj4gKwlzdHJ1Y3QgaWd0X2ZiIGZiX2Z1bGw7Cj4gKwlzdHJ1Y3QgaWd0X2ZiIGZiXzU2 NTsKPiArCXN0cnVjdCBpZ3RfZmIgZmJfdGlsaW5nOwoKQ291bGQgeW91IGRvIHdpdGgganVzdCBm YiBhbmQgbm90IGhhdmluZyBmYl81NjUgYW5kIGZiX3RpbGluZyBzaW5jZSBJIAp0aGluayB5b3Ug b25seSB1c2Ugb25lIGF0IGEgdGltZT8KCj4gICAJaWd0X2NyY190IHJlZl9jcmM7Cj4gICAJaWd0 X3BpcGVfY3JjX3QgKnBpcGVfY3JjOwo+ICsJaWd0X3JvdGF0aW9uX3Qgcm90YXRpb247Cj4gKwlp bnQgcG9zX3g7Cj4gKwlpbnQgcG9zX3k7Cj4gICB9IGRhdGFfdDsKPgo+ICAgc3RhdGljIHZvaWQK PiBAQCAtNjMsMTggKzcwLDQ2IEBAIHBhaW50X3NxdWFyZXMoZGF0YV90ICpkYXRhLCBzdHJ1Y3Qg aWd0X2ZiICpmYiwgZHJtTW9kZU1vZGVJbmZvICptb2RlLAo+ICAgCQl3ID0gbW9kZS0+aGRpc3Bs YXk7Cj4gICAJCWggPSBtb2RlLT52ZGlzcGxheTsKPgo+IC0JCWNyID0gaWd0X2dldF9jYWlyb19j dHgoZGF0YS0+Z2Z4X2ZkLCAmZGF0YS0+ZmIpOwo+ICsJCWNyID0gaWd0X2dldF9jYWlyb19jdHgo ZGF0YS0+Z2Z4X2ZkLCBmYik7Cj4KPiAgIAkJaWYgKHJvdGF0aW9uID09IElHVF9ST1RBVElPTl8x ODApIHsKPiAgIAkJCWNhaXJvX3RyYW5zbGF0ZShjciwgdywgaCk7Cj4gICAJCQljYWlyb19yb3Rh dGUoY3IsIE1fUEkpOwo+ICAgCQl9Cj4KPiAtCQkvKiBQYWludCB3aXRoIDQgc3F1YXJlcyBvZiBS ZWQsIEdyZWVuLCBXaGl0ZSwgQmx1ZSBDbG9ja3dpc2UgKi8KPiAtCQlpZ3RfcGFpbnRfY29sb3Io Y3IsIDAsIDAsIHcgLyAyLCBoIC8gMiwgMS4wLCAwLjAsIDAuMCk7Cj4gLQkJaWd0X3BhaW50X2Nv bG9yKGNyLCB3IC8gMiwgMCwgdyAvIDIsIGggLyAyLCAwLjAsIDEuMCwgMC4wKTsKPiAtCQlpZ3Rf cGFpbnRfY29sb3IoY3IsIDAsIGggLyAyLCB3IC8gMiwgaCAvIDIsIDAuMCwgMC4wLCAxLjApOwo+ IC0JCWlndF9wYWludF9jb2xvcihjciwgdyAvIDIsIGggLyAyLCB3IC8gMiwgaCAvIDIsIDEuMCwg MS4wLCAxLjApOwo+ICsJCS8qCj4gKwkJICogInJvdGF0aW9uIiBpcyB1c2VkIGZvciBjcmVhdGlu ZyByZWYgcm90YXRlZCBmYiBhbmQKPiArCQkgKiAiZGF0YS0+cm90YXRpb24iIGlzIHVzZWQgdG8g ZGV0ZXJtaW5lIHRoZSByZXF1aXJlZCBzaXplCj4gKwkJICogd2hpbGUgY3JlYXRpbmcgdW5yb3Rh dGVkIGZiLgo+ICsJCSAqLwoKVGhpcyBjb21tZW50IGFuZCB0aGUgc2V0dXAgYmVsb3cgaXMgbm90 IHRoZSBtb3N0IHN0cmFpZ2h0Zm9yd2FyZCB0byAKdW5kZXJzdGFuZC4KCklmIEkgZ290IGl0IHJp Z2h0IHlvdSB3YW50IHJvdGF0aW9uIHRvIGRyYXcgYSByb3RhdGVkIGltYWdlLCBhbmQgCmVmZmVj dGl2ZWx5IGEgZmxhZyB0byBzYXkgd2hldGhlciB0aGUgZHJhd24gaW1hZ2UgaXMgdG8gYmUgb3Zl ciBmdWxsIGZiIApvciBpbiBhIHNxdWFyZS4KClRoZW4gd2hhdCBhYm91dCBoYXZpbmcgc29tZXRo aW5nIGxpa2UgYSAic3F1YXJlX2ltYWdlIiBib29sZWFuIGZsYWcgCmluc3RlYWQgb2YgdHdvIHJv dGF0aW9uIHBhcmFtZXRlcnM/Cgo+ICsJCWlmIChyb3RhdGlvbiA9PSBJR1RfUk9UQVRJT05fOTAp IHsKPiArCQkJLyogUGFpbnQgNCBzcXVhcmVzIHdpdGggd2lkdGggPT0gaGVpZ2h0IGluIEJsdWUs IFJlZCwKPiArCQkJR3JlZW4sIFdoaXRlIENsb2Nrd2lzZSBvcmRlciB0byBsb29rIGxpa2UgOTAg ZGVncmVlIHJvdGF0ZWQqLwo+ICsJCQl3ID0gaCA9IG1vZGUtPnZkaXNwbGF5Owo+ICsJCQlpZ3Rf cGFpbnRfY29sb3IoY3IsIDAsIDAsIHcgLyAyLCBoIC8gMiwgMC4wLCAwLjAsIDEuMCk7Cj4gKwkJ CWlndF9wYWludF9jb2xvcihjciwgdyAvIDIsIDAsIHcgLyAyLCBoIC8gMiwgMS4wLCAwLjAsIDAu MCk7Cj4gKwkJCWlndF9wYWludF9jb2xvcihjciwgMCwgaCAvIDIsIHcgLyAyLCBoIC8gMiwgMS4w LCAxLjAsIDEuMCk7Cj4gKwkJCWlndF9wYWludF9jb2xvcihjciwgdyAvIDIsIGggLyAyLCB3IC8g MiwgaCAvIDIsIDAuMCwgMS4wLCAwLjApOwo+ICsKPiArCQl9IGVsc2UgaWYgKHJvdGF0aW9uID09 IElHVF9ST1RBVElPTl8yNzApIHsKPiArCQkJLyogUGFpbnQgNCBzcXVhcmVzIHdpdGggd2lkdGgg PT0gaGVpZ2h0IGluIEdyZWVuLCBXaGl0ZSwKPiArCQkJQmx1ZSwgUmVkIENsb2Nrd2lzZSBvcmRl ciB0byBsb29rIGxpa2UgMjcwIGRlZ3JlZSByb3RhdGVkKi8KPiArCQkJdyA9IGggPSBtb2RlLT52 ZGlzcGxheTsKPiArCQkJaWd0X3BhaW50X2NvbG9yKGNyLCAwLCAwLCB3IC8gMiwgaCAvIDIsIDAu MCwgMS4wLCAwLjApOwo+ICsJCQlpZ3RfcGFpbnRfY29sb3IoY3IsIHcgLyAyLCAwLCB3IC8gMiwg aCAvIDIsIDEuMCwgMS4wLCAxLjApOwo+ICsJCQlpZ3RfcGFpbnRfY29sb3IoY3IsIDAsIGggLyAy LCB3IC8gMiwgaCAvIDIsIDEuMCwgMC4wLCAwLjApOwo+ICsJCQlpZ3RfcGFpbnRfY29sb3IoY3Is IHcgLyAyLCBoIC8gMiwgdyAvIDIsIGggLyAyLCAwLjAsIDAuMCwgMS4wKTsKPiArCj4gKwkJfSBl bHNlIHsKPiArCQkJaWYgKGRhdGEtPnJvdGF0aW9uID09IElHVF9ST1RBVElPTl85MCB8fAo+ICsJ CQkJZGF0YS0+cm90YXRpb24gPT0gSUdUX1JPVEFUSU9OXzI3MCkKPiArCQkJCXcgPSBoID0gbW9k ZS0+dmRpc3BsYXk7Cj4gKwkJCS8qIFBhaW50IHdpdGggNCBzcXVhcmVzIG9mIFJlZCwgR3JlZW4s IFdoaXRlLCBCbHVlIENsb2Nrd2lzZSAqLwo+ICsJCQlpZ3RfcGFpbnRfY29sb3IoY3IsIDAsIDAs IHcgLyAyLCBoIC8gMiwgMS4wLCAwLjAsIDAuMCk7Cj4gKwkJCWlndF9wYWludF9jb2xvcihjciwg dyAvIDIsIDAsIHcgLyAyLCBoIC8gMiwgMC4wLCAxLjAsIDAuMCk7Cj4gKwkJCWlndF9wYWludF9j b2xvcihjciwgMCwgaCAvIDIsIHcgLyAyLCBoIC8gMiwgMC4wLCAwLjAsIDEuMCk7Cj4gKwkJCWln dF9wYWludF9jb2xvcihjciwgdyAvIDIsIGggLyAyLCB3IC8gMiwgaCAvIDIsIDEuMCwgMS4wLCAx LjApOwo+ICsJCX0KPiAgIAl9Cj4gICAJY2Fpcm9fZGVzdHJveShjcik7Cj4gICB9Cj4gQEAgLTg0 LDcgKzExOSwxMiBAQCBzdGF0aWMgdm9pZCBwcmVwYXJlX2NydGMoZGF0YV90ICpkYXRhLCBpZ3Rf b3V0cHV0X3QgKm91dHB1dCwgZW51bSBwaXBlIHBpcGUsCj4gICB7Cj4gICAJZHJtTW9kZU1vZGVJ bmZvICptb2RlOwo+ICAgCWlndF9kaXNwbGF5X3QgKmRpc3BsYXkgPSAmZGF0YS0+ZGlzcGxheTsK PiAtCWludCBmYl9pZCwgZmJfY3Vyc29yX2lkOwo+ICsJaW50IGZiX2lkLCBmYl9jdXJzb3JfaWQs IGZiX2Z1bGxfaWQ7Cj4gKwlpbnQgdywgaDsKPiArCXVpbnQ2NF90IHRpbGluZyA9IExPQ0FMX0RS TV9GT1JNQVRfTU9EX05PTkU7Cj4gKwllbnVtIGlndF9jb21taXRfc3R5bGUgY29tbWl0ID0gQ09N TUlUX0xFR0FDWTsKPiArCWludCBvbGRfcm90YXRpb247Cj4gKwlpZ3RfcGxhbmVfdCAqcHJpbWFy eTsKPgo+ICAgCWlndF9vdXRwdXRfc2V0X3BpcGUob3V0cHV0LCBwaXBlKTsKPgo+IEBAIC05NCwx MCArMTM0LDQ1IEBAIHN0YXRpYyB2b2lkIHByZXBhcmVfY3J0YyhkYXRhX3QgKmRhdGEsIGlndF9v dXRwdXRfdCAqb3V0cHV0LCBlbnVtIHBpcGUgcGlwZSwKPgo+ICAgCW1vZGUgPSBpZ3Rfb3V0cHV0 X2dldF9tb2RlKG91dHB1dCk7Cj4KPiArCXcgPSBtb2RlLT5oZGlzcGxheTsKPiArCWggPSBtb2Rl LT52ZGlzcGxheTsKPiArCj4gKwlmYl9mdWxsX2lkID0gaWd0X2NyZWF0ZV9mYihkYXRhLT5nZnhf ZmQsCj4gKwkJCXcsIGgsCj4gKwkJCURSTV9GT1JNQVRfWFJHQjg4ODgsCj4gKwkJCXRpbGluZywK PiArCQkJJmRhdGEtPmZiX2Z1bGwpOwo+ICsJaWd0X2Fzc2VydChmYl9mdWxsX2lkKTsKPiArCj4g KwkvKgo+ICsJICogV2l0aCBpZ3RfZGlzcGxheV9jb21taXQyIGFuZCBDT01NSVRfVU5JVkVSU0FM LCB3ZSBjYWxsIGp1c3QgdGhlCj4gKwkgKiBzZXRwbGFuZSB3aXRob3V0IGEgbW9kZXNldC4gU28s IHRvIGJlIGFibGUgdG8gY2FsbAo+ICsJICogaWd0X2Rpc3BsYXlfY29tbWl0IGFuZCB1bHRpbWF0 ZWx5IHNldGNydGMgdG8gZG8gdGhlIGZpcnN0IG1vZGVzZXQsCj4gKwkgKiB3ZSBjcmVhdGUgYW4g ZmIgY292ZXJpbmcgdGhlIGNydGMgYW5kIGNhbGwgY29tbWl0Cj4gKwkgKi8KPiArCj4gKwlvbGRf cm90YXRpb24gPSBkYXRhLT5yb3RhdGlvbjsKPiArCWRhdGEtPnJvdGF0aW9uID0gSUdUX1JPVEFU SU9OXzA7Cj4gKwlwcmltYXJ5ID0gaWd0X291dHB1dF9nZXRfcGxhbmUob3V0cHV0LCBJR1RfUExB TkVfUFJJTUFSWSk7Cj4gKwlwYWludF9zcXVhcmVzKGRhdGEsICZkYXRhLT5mYl9mdWxsLCBtb2Rl LCBJR1RfUk9UQVRJT05fMCwgcHJpbWFyeSk7Cj4gKwlpZ3RfcGxhbmVfc2V0X2ZiKHByaW1hcnks ICZkYXRhLT5mYl9mdWxsKTsKPiArCWlndF9kaXNwbGF5X2NvbW1pdChkaXNwbGF5KTsKPiArCWRh dGEtPnJvdGF0aW9uID0gb2xkX3JvdGF0aW9uOwo+ICsKPiArCS8qCj4gKwkgKiBGb3IgOTAvMjcw LCB3ZSB3aWxsIHVzZSBjcmVhdGUgc21hbGxlciBmYiBzbyB0aGF0IHRoZSByb3RhdGVkCj4gKwkg KiBmcmFtZSBjYW4gZml0IGluCj4gKwkgKi8KPiArCWlmIChkYXRhLT5yb3RhdGlvbiA9PSBJR1Rf Uk9UQVRJT05fOTAgfHwKPiArCQlkYXRhLT5yb3RhdGlvbiA9PSBJR1RfUk9UQVRJT05fMjcwKSB7 Cj4gKwkJdGlsaW5nID0gTE9DQUxfSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQ7Cj4gKwkJdyA9IGgg PSAgbW9kZS0+dmRpc3BsYXk7Cj4gKwl9Cj4gKwo+ICAgCWZiX2lkID0gaWd0X2NyZWF0ZV9mYihk YXRhLT5nZnhfZmQsCj4gLQkJCW1vZGUtPmhkaXNwbGF5LCBtb2RlLT52ZGlzcGxheSwKPiArCQkJ dywgaCwKPiAgIAkJCURSTV9GT1JNQVRfWFJHQjg4ODgsCj4gLQkJCUxPQ0FMX0RSTV9GT1JNQVRf TU9EX05PTkUsCj4gKwkJCXRpbGluZywKPiAgIAkJCSZkYXRhLT5mYik7Cj4gICAJaWd0X2Fzc2Vy dChmYl9pZCk7Cj4KPiBAQCAtMTEwLDI3ICsxODUsMjAgQEAgc3RhdGljIHZvaWQgcHJlcGFyZV9j cnRjKGRhdGFfdCAqZGF0YSwgaWd0X291dHB1dF90ICpvdXRwdXQsIGVudW0gcGlwZSBwaXBlLAo+ Cj4gICAJLyogU3RlcCAxOiBjcmVhdGUgYSByZWZlcmVuY2UgQ1JDIGZvciBhIHNvZnR3YXJlLXJv dGF0ZWQgZmIgKi8KPgo+IC0JLyoKPiAtCSAqIFhYWDogV2UgYWx3YXlzIHNldCB0aGUgcHJpbWFy eSBwbGFuZSB0byBhY3R1YWxseSBlbmFibGUgdGhlIHBpcGUgYXMKPiAtCSAqIHRoZXJlJ3Mgbm8g d2F5ICh0aGF0IHdvcmtzKSB0byBsaWdodCB1cCBhIHBpcGUgd2l0aCBvbmx5IGEgc3ByaXRlCj4g LQkgKiBwbGFuZSBlbmFibGVkIGF0IHRoZSBtb21lbnQuCj4gLQkgKi8KPiAtCWlmICghcGxhbmUt PmlzX3ByaW1hcnkpIHsKPiAtCQlpZ3RfcGxhbmVfdCAqcHJpbWFyeTsKPiAtCj4gLQkJcHJpbWFy eSA9IGlndF9vdXRwdXRfZ2V0X3BsYW5lKG91dHB1dCwgSUdUX1BMQU5FX1BSSU1BUlkpOwo+IC0J CXBhaW50X3NxdWFyZXMoZGF0YSwgJmRhdGEtPmZiLCBtb2RlLCBJR1RfUk9UQVRJT05fMTgwLCBw cmltYXJ5KTsKPiAtCQlpZ3RfcGxhbmVfc2V0X2ZiKHByaW1hcnksICZkYXRhLT5mYik7Cj4gLQl9 Cj4gLQo+ICAgCWlmIChwbGFuZS0+aXNfY3Vyc29yKSB7Cj4gLQkJcGFpbnRfc3F1YXJlcyhkYXRh LCAmZGF0YS0+ZmJfY3Vyc29yLCBtb2RlLCBJR1RfUk9UQVRJT05fMTgwLCBwbGFuZSk7Cj4gKwkJ cGFpbnRfc3F1YXJlcyhkYXRhLCAmZGF0YS0+ZmJfY3Vyc29yLCBtb2RlLCBkYXRhLT5yb3RhdGlv biwgcGxhbmUpOwo+ICAgCQlpZ3RfcGxhbmVfc2V0X2ZiKHBsYW5lLCAmZGF0YS0+ZmJfY3Vyc29y KTsKPiAgIAl9IGVsc2Ugewo+IC0JCXBhaW50X3NxdWFyZXMoZGF0YSwgJmRhdGEtPmZiLCBtb2Rl LCBJR1RfUk9UQVRJT05fMTgwLCBwbGFuZSk7Cj4gKwkJcGFpbnRfc3F1YXJlcyhkYXRhLCAmZGF0 YS0+ZmIsIG1vZGUsIGRhdGEtPnJvdGF0aW9uLCBwbGFuZSk7Cj4gICAJCWlndF9wbGFuZV9zZXRf ZmIocGxhbmUsICZkYXRhLT5mYik7Cj4gKwkJaWd0X3BsYW5lX3NldF9wb3NpdGlvbihwbGFuZSwg ZGF0YS0+cG9zX3gsIGRhdGEtPnBvc195KTsKPiAgIAl9Cj4gLQlpZ3RfZGlzcGxheV9jb21taXQo ZGlzcGxheSk7Cj4gKwlpZiAocGxhbmUtPmlzX3ByaW1hcnkgfHwgcGxhbmUtPmlzX2N1cnNvcikg ewo+ICsJCWlndF9yZXF1aXJlKGRhdGEtPmRpc3BsYXkuaGFzX3VuaXZlcnNhbF9wbGFuZXMpOwo+ ICsJCWNvbW1pdCA9IENPTU1JVF9VTklWRVJTQUw7Cj4gKwl9Cj4gKwo+ICsJaWd0X2Rpc3BsYXlf Y29tbWl0MihkaXNwbGF5LCBjb21taXQpOwo+ICAgCWlndF9waXBlX2NyY19jb2xsZWN0X2NyYyhk YXRhLT5waXBlX2NyYywgJmRhdGEtPnJlZl9jcmMpOwo+Cj4gICAJLyoKPiBAQCAtMTU1LDYgKzIy Myw3IEBAIHN0YXRpYyB2b2lkIGNsZWFudXBfY3J0YyhkYXRhX3QgKmRhdGEsIGlndF9vdXRwdXRf dCAqb3V0cHV0LCBpZ3RfcGxhbmVfdCAqcGxhbmUpCj4KPiAgIAlpZ3RfcmVtb3ZlX2ZiKGRhdGEt PmdmeF9mZCwgJmRhdGEtPmZiKTsKPiAgIAlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmdmeF9mZCwgJmRh dGEtPmZiX2N1cnNvcik7Cj4gKwlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmdmeF9mZCwgJmRhdGEtPmZi X2Z1bGwpOwo+Cj4gICAJLyogWFhYOiBzZWUgdGhlIG5vdGUgaW4gcHJlcGFyZV9jcnRjKCkgKi8K PiAgIAlpZiAoIXBsYW5lLT5pc19wcmltYXJ5KSB7Cj4gQEAgLTE3MCw2ICsyMzksNjkgQEAgc3Rh dGljIHZvaWQgY2xlYW51cF9jcnRjKGRhdGFfdCAqZGF0YSwgaWd0X291dHB1dF90ICpvdXRwdXQs IGlndF9wbGFuZV90ICpwbGFuZSkKPiAgIAlpZ3RfZGlzcGxheV9jb21taXQoZGlzcGxheSk7Cj4g ICB9Cj4KPiArc3RhdGljIHZvaWQgdGVzdF91bnN1cHBvcnRlZF90aWxpbmdfcGl4ZWxfZm9ybWF0 KGRhdGFfdCAqZGF0YSwgZW51bSBpZ3RfcGxhbmUgcGxhbmVfdHlwZSkKPiArewoKSWYgdGhlIGZ1 bmN0aW9uIGJvZHkgaGVyZSBpcyBlc3NlbnRpYWxseSB0aGUgc2FtZSBhcyAKdGVzdF9wbGFuZV9y b3RhdGlvbiwgY291bGQgeW91IGF2b2lkIGFkZGluZyBkdXBsaWNhdGluZyBjb2RlIGJ5IHBhc3Np bmcgCmluIHRpbGluZyBhbmQgcGl4ZWwgZm9ybWF0IHRvIHRlc3RfcGxhbmVfcm90YXRpb24gKG1h eWJlIHZpYSBkYXRhKT8gV2l0aCAKYSAiZXhwZWN0IGZhaWwiIGZsYWcsIG9yIGV2ZW4ganVzdCBl bWJlZGRpbmcgdGhlIGtub3dsZWRnZSB3b3VsZCB3b3JrLgoKUmVnYXJkcywKClR2cnRrbwpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=