From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 09/15] drm/i915: Add NV12 support to intel_framebuffer_init Date: Thu, 10 Sep 2015 21:34:59 +0300 Message-ID: <20150910183459.GD26517@intel.com> References: <1441420391-19109-10-git-send-email-chandra.konduru@intel.com> <1441839543-20005-1-git-send-email-chandra.konduru@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 767436ED1B for ; Thu, 10 Sep 2015 11:35:03 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1441839543-20005-1-git-send-email-chandra.konduru@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chandra Konduru Cc: daniel.vetter@intel.com, intel-gfx@lists.freedesktop.org, ville.syrjala@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBTZXAgMDksIDIwMTUgYXQgMDM6NTk6MDNQTSAtMDcwMCwgQ2hhbmRyYSBLb25kdXJ1 IHdyb3RlOgo+IFRoaXMgcGF0Y2ggYWRkcyBOVjEyIGFzIHN1cHBvcnRlZCBmb3JtYXQgdG8KPiBp bnRlbF9mcmFtZWJ1ZmZlcl9pbml0IGFuZCBwZXJmb3JtcyB2YXJpb3VzIGNoZWNrcy4KPiAKPiB2 MjoKPiAtRml4IGFuIGlzc3VlIGluIGNoZWNrcyBhZGRlZCAobWUpCj4gCj4gdjM6Cj4gLWNvc21l dGljIHVwZGF0ZSwgc3BsaXQgY2hlY2tzIGludG8gdHdvIChWaWxsZSkKPiAKPiB2NDoKPiAtQWRk IHN0cmlkZSBhbGlnbm1lbnQgYW5kIG1vZGlmaWVyIGNoZWNrcyBmb3IgVVYgc3VicGxhbmUgKFZp bGxlKQo+IAo+IFNpZ25lZC1vZmYtYnk6IENoYW5kcmEgS29uZHVydSA8Y2hhbmRyYS5rb25kdXJ1 QGludGVsLmNvbT4KPiBUZXN0Y2FzZTogaWd0L2ttc19udjEyCj4gLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICAgNjcgKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgICAy ICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jICB8ICAgIDIgKy0KPiAg MyBmaWxlcyBjaGFuZ2VkLCA1NyBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXggODRkYWQ5NS4uNjEyNDMzOSAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtMjkwNiw5ICsyOTA2 LDkgQEAgc3RhdGljIHZvaWQgaXJvbmxha2VfdXBkYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRy bV9jcnRjICpjcnRjLAo+ICB9Cj4gIAo+ICB1MzIgaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1aW50NjRfdCBmYl9tb2RpZmllciwKPiAtCQkJICAgICAg dWludDMyX3QgcGl4ZWxfZm9ybWF0KQo+ICsJCQkgICAgICB1aW50MzJfdCBwaXhlbF9mb3JtYXQs IGludCBwbGFuZSkKPiAgewo+IC0JdTMyIGJpdHNfcGVyX3BpeGVsID0gZHJtX2Zvcm1hdF9wbGFu ZV9jcHAocGl4ZWxfZm9ybWF0LCAwKSAqIDg7Cj4gKwl1MzIgYml0c19wZXJfcGl4ZWwgPSBkcm1f Zm9ybWF0X3BsYW5lX2NwcChwaXhlbF9mb3JtYXQsIHBsYW5lKSAqIDg7Cj4gIAo+ICAJLyoKPiAg CSAqIFRoZSBzdHJpZGUgaXMgZWl0aGVyIGV4cHJlc3NlZCBhcyBhIG11bHRpcGxlIG9mIDY0IGJ5 dGVzCj4gQEAgLTMxMTcsNyArMzExNyw3IEBAIHN0YXRpYyB2b2lkIHNreWxha2VfdXBkYXRlX3By aW1hcnlfcGxhbmUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAKPiAgCW9iaiA9IGludGVsX2Zi X29iaihmYik7Cj4gIAlzdHJpZGVfZGl2ID0gaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChkZXYs IGZiLT5tb2RpZmllclswXSwKPiAtCQkJCQkgICAgICAgZmItPnBpeGVsX2Zvcm1hdCk7Cj4gKwkJ CQkJICAgICAgIGZiLT5waXhlbF9mb3JtYXQsIDApOwo+ICAJc3VyZl9hZGRyID0gaW50ZWxfcGxh bmVfb2JqX29mZnNldCh0b19pbnRlbF9wbGFuZShwbGFuZSksIG9iaiwgMCk7Cj4gIAo+ICAJLyoK PiBAQCAtOTEwMSw3ICs5MTAxLDcgQEAgc2t5bGFrZV9nZXRfaW5pdGlhbF9wbGFuZV9jb25maWco c3RydWN0IGludGVsX2NydGMgKmNydGMsCj4gIAo+ICAJdmFsID0gSTkxNV9SRUFEKFBMQU5FX1NU UklERShwaXBlLCAwKSk7Cj4gIAlzdHJpZGVfbXVsdCA9IGludGVsX2ZiX3N0cmlkZV9hbGlnbm1l bnQoZGV2LCBmYi0+bW9kaWZpZXJbMF0sCj4gLQkJCQkJCWZiLT5waXhlbF9mb3JtYXQpOwo+ICsJ CQkJCQlmYi0+cGl4ZWxfZm9ybWF0LCAwKTsKPiAgCWZiLT5waXRjaGVzWzBdID0gKHZhbCAmIDB4 M2ZmKSAqIHN0cmlkZV9tdWx0Owo+ICAKPiAgCWFsaWduZWRfaGVpZ2h0ID0gaW50ZWxfZmJfYWxp Z25faGVpZ2h0KGRldiwgZmItPmhlaWdodCwKPiBAQCAtMTExNzIsNyArMTExNzIsNyBAQCBzdGF0 aWMgdm9pZCBza2xfZG9fbW1pb19mbGlwKHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjKQo+ ICAJICovCj4gIAlzdHJpZGUgPSBmYi0+cGl0Y2hlc1swXSAvCj4gIAkJIGludGVsX2ZiX3N0cmlk ZV9hbGlnbm1lbnQoZGV2LCBmYi0+bW9kaWZpZXJbMF0sCj4gLQkJCQkJICAgZmItPnBpeGVsX2Zv cm1hdCk7Cj4gKwkJCQkJICAgZmItPnBpeGVsX2Zvcm1hdCwgMCk7Cj4gIAo+ICAJLyoKPiAgCSAq IEJvdGggUExBTkVfQ1RMIGFuZCBQTEFORV9TVFJJREUgYXJlIG5vdCB1cGRhdGVkIG9uIHZibGFu ayBidXQgb24KPiBAQCAtMTQyMzgsNiArMTQyMzgsNyBAQCBzdGF0aWMgaW50IGludGVsX2ZyYW1l YnVmZmVyX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgewo+ICAJdW5zaWduZWQgaW50 IGFsaWduZWRfaGVpZ2h0Owo+ICAJaW50IHJldDsKPiArCWludCBpOwo+ICAJdTMyIHBpdGNoX2xp bWl0LCBzdHJpZGVfYWxpZ25tZW50Owo+ICAKPiAgCVdBUk5fT04oIW11dGV4X2lzX2xvY2tlZCgm ZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKPiBAQCAtMTQyNzcsMTIgKzE0Mjc4LDE1IEBAIHN0YXRpYyBp bnQgaW50ZWxfZnJhbWVidWZmZXJfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCXJl dHVybiAtRUlOVkFMOwo+ICAJfQo+ICAKPiAtCXN0cmlkZV9hbGlnbm1lbnQgPSBpbnRlbF9mYl9z dHJpZGVfYWxpZ25tZW50KGRldiwgbW9kZV9jbWQtPm1vZGlmaWVyWzBdLAo+IC0JCQkJCQkgICAg IG1vZGVfY21kLT5waXhlbF9mb3JtYXQpOwo+IC0JaWYgKG1vZGVfY21kLT5waXRjaGVzWzBdICYg KHN0cmlkZV9hbGlnbm1lbnQgLSAxKSkgewo+IC0JCURSTV9ERUJVRygicGl0Y2ggKCVkKSBtdXN0 IGJlIGF0IGxlYXN0ICV1IGJ5dGUgYWxpZ25lZFxuIiwKPiAtCQkJICBtb2RlX2NtZC0+cGl0Y2hl c1swXSwgc3RyaWRlX2FsaWdubWVudCk7Cj4gLQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkvKiBjaGVj ayBzdHJpZGUgYWxpZ25tZW50IGZvciBzdWItcGxhbmVzICovCj4gKwlmb3IgKGkgPSAwOyBpIDwg ZHJtX2Zvcm1hdF9udW1fcGxhbmVzKG1vZGVfY21kLT5waXhlbF9mb3JtYXQpOyBpKyspIHsKPiAr CQlzdHJpZGVfYWxpZ25tZW50ID0gaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChkZXYsIG1vZGVf Y21kLT5tb2RpZmllcltpXSwKPiArCQkJCQkJICAgICBtb2RlX2NtZC0+cGl4ZWxfZm9ybWF0LCBp KTsKPiArCQlpZiAobW9kZV9jbWQtPnBpdGNoZXNbaV0gJiAoc3RyaWRlX2FsaWdubWVudCAtIDEp KSB7Cj4gKwkJCURSTV9ERUJVRygic3VicGxhbmUgJWQgcGl0Y2ggKCVkKSBtdXN0IGJlIGF0IGxl YXN0ICV1IGJ5dGVzICIKPiArCQkJCSJhbGlnbmVkXG4iLCBpLCBtb2RlX2NtZC0+cGl0Y2hlc1tp XSwgc3RyaWRlX2FsaWdubWVudCk7Cj4gKwkJCXJldHVybiAtRUlOVkFMOwo+ICsJCX0KPiAgCX0K PiAgCj4gIAlwaXRjaF9saW1pdCA9IGludGVsX2ZiX3BpdGNoX2xpbWl0KGRldiwgbW9kZV9jbWQt Pm1vZGlmaWVyWzBdLAo+IEBAIC0xNDM0OSw5ICsxNDM1Myw0OCBAQCBzdGF0aWMgaW50IGludGVs X2ZyYW1lYnVmZmVyX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkJcmV0dXJuIC1F SU5WQUw7Cj4gIAkJfQo+ICAJCWJyZWFrOwo+ICsJY2FzZSBEUk1fRk9STUFUX05WMTI6Cj4gKwkJ aWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgOSkgewo+ICsJCQlEUk1fREVCVUcoInVuc3VwcG9y dGVkIHBpeGVsIGZvcm1hdDogJXNcbiIsCj4gKwkJCQlkcm1fZ2V0X2Zvcm1hdF9uYW1lKG1vZGVf Y21kLT5waXhlbF9mb3JtYXQpKTsKPiArCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJfQo+ICsJCWlm IChvYmotPnRpbGluZ19tb2RlID09IEk5MTVfVElMSU5HX1ggJiYKPiArCQkJIShtb2RlX2NtZC0+ ZmxhZ3MgJiBEUk1fTU9ERV9GQl9NT0RJRklFUlMpKSB7CgpZb3VyIGVkaXRvciBzdGlsbCBzZWVt cyB0byBtZXNzIHVwIHRoZSBpbmRlbnRhdGlvbiBpbiB0aGVzZSBjYXNlcy4gQ2FuCnlvdSB0cnkg dG8gZml4IHRoYXQ/Cgo+ICsJCQltb2RlX2NtZC0+bW9kaWZpZXJbMV0gPSBJOTE1X0ZPUk1BVF9N T0RfWF9USUxFRDsKPiArCQl9CgpIbW0uIFRoaXMgb2JqIHRpbGluZyAtPiBtb2RpZmllciBjb252 ZXJzaW9uIHNob3VsZCBiZSBhIGZhaXJseSBnZW5lcmljCnRoaW5nIHRvIGRvLCBzbyBJIHN1Z2dl c3QgZG9pbmcgaXQgZm9yIGFsbCBwbGFuZXMgaW4gb25lIHBsYWNlLiBNYXliZQphZGQgYSBuZXcg ZnVuY3Rpb24gaW50ZWxfZmJfb2JqX3RpbGluZ190b19tb2RpZmllcigpIG9yIHNvbWV0aGluZyBs aWtlCnRoYXQgYW5kIGxvb3Agb3ZlciBhbGwgdGhlIHBsYW5lcyB0aGVyZS4KCj4gKwkJaWYgKCFt b2RlX2NtZC0+b2Zmc2V0c1sxXSkgewo+ICsJCQlEUk1fREVCVUcoInV2IHN0YXJ0IG9mZnNldCBu b3Qgc2V0XG4iKTsKPiArCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJfQoKU3RpbGwgbm90IHJlYWxs eSBoYXBweSB3aXRoIHRoaXMgY2hlY2sgc2luY2UgaXQncyBlaXRoZXIgdG9vIGxpbWl0aW5nLCBv cgpub3QgcmVzdHJpY3RpdmUgZW5vdWdoLiBEZXBlbmRpbmcgb24gaG93IHlvdSBsb29rIGF0IGl0 LiBEbyB5b3Uga25vdwppZiB0aGUgaGFyZHdhcmUgZ2V0cyB1cHNldCBpZiB5b3UgdGVsbCBpdCB1 c2Ugb3ZlcmxhcHBpbmcgWSBhbmQgVVYKc3VyZmFjZXM/Cgo+ICsJCWlmIChtb2RlX2NtZC0+cGl0 Y2hlc1swXSAhPSBtb2RlX2NtZC0+cGl0Y2hlc1sxXSkgewo+ICsJCQlEUk1fREVCVUcoInkgYW5k IHV2IHN1YnBsYW5lcyBoYXZlIGRpZmZlcmVudCBwaXRjaGVzXG4iKTsKPiArCQkJcmV0dXJuIC1F SU5WQUw7Cj4gKwkJfQo+ICsJCWlmIChtb2RlX2NtZC0+aGFuZGxlc1swXSAhPSBtb2RlX2NtZC0+ aGFuZGxlc1sxXSkgewo+ICsJCQlEUk1fREVCVUcoInkgYW5kIHV2IHN1YnBsYW5lcyBoYXZlIGRp ZmZlcmVudCBoYW5kbGVzXG4iKTsKPiArCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJfQo+ICsJCWlm IChtb2RlX2NtZC0+bW9kaWZpZXJbMF0gIT0gbW9kZV9jbWQtPm1vZGlmaWVyWzFdKSB7Cj4gKwkJ CURSTV9ERUJVRygieSBhbmQgdXYgc3VicGxhbmVzIGhhdmUgZGlmZmVyZW50IG1vZGlmaWVyc1xu Iik7Cj4gKwkJCXJldHVybiAtRUlOVkFMOwo+ICsJCX0KPiArCQlpZiAobW9kZV9jbWQtPm1vZGlm aWVyWzFdID09IEk5MTVfRk9STUFUX01PRF9ZZl9USUxFRCAmJgo+ICsJCQkobW9kZV9jbWQtPm9m ZnNldHNbMV0gJiAweEZGRikpIHsKPiArCQkJRFJNX0RFQlVHKCJ0aWxlLVlmIHV2IG9mZnNldCAw eCV4IGlzbid0IHN0YXJ0aW5nIG9uIG5ldyB0aWxlLXJvd1xuIiwKPiArCQkJCW1vZGVfY21kLT5v ZmZzZXRzWzFdKTsKPiArCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJfQo+ICsJCWlmIChtb2RlX2Nt ZC0+bW9kaWZpZXJbMV0gPT0gSTkxNV9GT1JNQVRfTU9EX1lfVElMRUQgJiYKPiArCQkJKChtb2Rl X2NtZC0+b2Zmc2V0c1sxXSAvIG1vZGVfY21kLT5waXRjaGVzWzFdKSAlIDQpKSB7Cj4gKwkJCURS TV9ERUJVRygidGlsZS1ZIHV2IG9mZnNldCAweCV4IGlzbid0IDQtbGluZSBhbGlnbmVkXG4iLAo+ ICsJCQkJbW9kZV9jbWQtPm9mZnNldHNbMV0pOwo+ICsJCQlyZXR1cm4gLUVJTlZBTDsKPiArCQl9 CgpJIHdhcyBnb2luZyB0byBzYXkgSSBjYW4ndCBmaW5kIGFueXRoaW5nIGluIHRoZSBzcGVjIHRv IHN1cHBvcnQgdGhpcywKYnV0IGFmdGVyIHNvbWUgbW9yZSByZWFkaW5nIEkgZ290IGl0ICJUaGUg ZGlzcGxheSBoYXJkd2FyZSByZXF1aXJlcwp0aGF0IHRoZSBVViBzdXJmYWNlIHN0YXJ0IHNhdGlz ZmllcyBmb3VyIGxpbmUgYWxpZ25tZW50IGZyb20gdGhlCmJlZ2luaW5nIG9mIHRoZSBwYWdlLiIg U28gdGhlIGNoZWNrIHNob3VsZCBiZSBzb21ldGhpbmcgbGlrZQooKG9mZnNldHNbMV0gJiAweGZm ZikgLyBwaXRjaGVzWzFdICUgNC4KCkhvd2V2ZXIgd2Ugc2hvdWxkIGFueXdheSBiZSBhYmxlIHRv IGFkanVzdCB0aGUgWC9ZIG9mZnNldHMgdG8gYWNjb3VudApmb3IgbWlzYWxpZ25tZW50IG9mIG9m ZnNldHNbMV0uIEkgdGhpbmsgdGhlIG9ubHkgdGhpbmcgd2Ugc2hvdWxkIG5lZWQKdG8gY2hlY2sg aXMgdGhhdCBvZmZzZXRzWzFdIGlzIG1hY3JvcGl4ZWwgYWxpZ25lZC4gVGhlIHBhdGNoIGxhY2tz IHN1Y2gKYSBjaGVjayBpbiBmYWN0LgoKRmVlbHMgbGlrZSBpdCB3b3VsZCBiZSB0aW1lIHRvIGV4 cGFuZCBpbnRlbF9nZW40X2NvbXB1dGVfcGFnZV9vZmZzZXQoKQp0byBoYW5kbGUgdGhlIG5ldyB0 aWxpbmcgZm9ybWF0cyBhbmQgc3RhcnQgdXNpbmcgaXQgZm9yIFNLTCsuIFRob3VnaApyb3RhdGlv biBtYXkgbmVlZCBzb21lIGFkZGl0aW9uYWwgdGhvdWdodC4gQWxzbyBtYXliZSBpdCdzIHRpbWUg dG8KZGlnIHVwIG15IG9sZCBvZmZzZXRzWzBdIGhhbmRsaW5nIHBhdGNoIGFuZCByZWZyZXNoIGl0 IGEgYml0IGFuZCB0cnkKdG8gZ2V0IGl0IG1lcmdlZCBhZ2Fpbi4KCj4gKwkJYnJlYWs7Cj4gIAlk ZWZhdWx0Ogo+ICAJCURSTV9ERUJVRygidW5zdXBwb3J0ZWQgcGl4ZWwgZm9ybWF0OiAlc1xuIiwK PiAtCQkJICBkcm1fZ2V0X2Zvcm1hdF9uYW1lKG1vZGVfY21kLT5waXhlbF9mb3JtYXQpKTsKPiAr CQkJZHJtX2dldF9mb3JtYXRfbmFtZShtb2RlX2NtZC0+cGl4ZWxfZm9ybWF0KSk7Cj4gIAkJcmV0 dXJuIC1FSU5WQUw7Cj4gIAl9Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXgg ZDUwYjhjYi4uNjJkMmExMSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTk4 MCw3ICs5ODAsNyBAQCB1bnNpZ25lZCBpbnQgaW50ZWxfZmJfYWxpZ25faGVpZ2h0KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCj4gIHZvaWQgaW50ZWxfZmJfb2JqX2ZsdXNoKHN0cnVjdCBkcm1faTkx NV9nZW1fb2JqZWN0ICpvYmosIGJvb2wgcmV0aXJlLAo+ICAJCQllbnVtIGZiX29wX29yaWdpbiBv cmlnaW4pOwo+ICB1MzIgaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCB1aW50NjRfdCBmYl9tb2RpZmllciwKPiAtCQkJICAgICAgdWludDMyX3QgcGl4ZWxf Zm9ybWF0KTsKPiArCQkJICAgICAgdWludDMyX3QgcGl4ZWxfZm9ybWF0LCBpbnQgcGxhbmUpOwo+ ICAKPiAgLyogaW50ZWxfYXVkaW8uYyAqLwo+ICB2b2lkIGludGVsX2luaXRfYXVkaW8oc3RydWN0 IGRybV9kZXZpY2UgKmRldik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3Nwcml0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPiBpbmRl eCA3OTc1OTRlLi40OWZlYWUwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3Nwcml0ZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMK PiBAQCAtMjAzLDcgKzIwMyw3IEBAIHNrbF91cGRhdGVfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAq ZHJtX3BsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJCQkgICAgICAgc3JjX3cgIT0g Y3J0Y193IHx8IHNyY19oICE9IGNydGNfaCk7Cj4gIAo+ICAJc3RyaWRlX2RpdiA9IGludGVsX2Zi X3N0cmlkZV9hbGlnbm1lbnQoZGV2LCBmYi0+bW9kaWZpZXJbMF0sCj4gLQkJCQkJICAgICAgIGZi LT5waXhlbF9mb3JtYXQpOwo+ICsJCQkJCSAgICAgICBmYi0+cGl4ZWxfZm9ybWF0LCAwKTsKPiAg Cj4gIAlzY2FsZXJfaWQgPSB0b19pbnRlbF9wbGFuZV9zdGF0ZShkcm1fcGxhbmUtPnN0YXRlKS0+ c2NhbGVyX2lkOwo+ICAKPiAtLSAKPiAxLjcuOS41Cj4gCj4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwg T1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==