From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sharma, Shashank" Subject: Re: [PATCH 04/11] drm: parse ycbcr420 vcb block Date: Tue, 9 May 2017 13:49:22 +0530 Message-ID: <877eb8cd-0026-c90f-c38c-77452b6a3313@intel.com> References: <1491583168-20042-1-git-send-email-shashank.sharma@intel.com> <1491583168-20042-5-git-send-email-shashank.sharma@intel.com> <20170508165810.GS12629@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170508165810.GS12629@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: intel-gfx@lists.freedesktop.org, Jose Abreu , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org UmVnYXJkcwoKU2hhc2hhbmsKCgpPbiA1LzgvMjAxNyAxMDoyOCBQTSwgVmlsbGUgU3lyasOkbMOk IHdyb3RlOgo+IE9uIEZyaSwgQXByIDA3LCAyMDE3IGF0IDA3OjM5OjIxUE0gKzAzMDAsIFNoYXNo YW5rIFNoYXJtYSB3cm90ZToKPj4gSERNSSAyLjAgc3BlYyBhZGRzIHN1cHBvcnQgZm9yIHljYmNy NDIwIHN1YnNhbXBsZWQgb3V0cHV0Lgo+PiBDRUEtODYxLUYgYWRkcyB0d28gbmV3IGJsb2NrcyBp biBFRElELCB0byBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0Cj4+IHNpbmsncyBzdXBwb3J0IGZv ciB5Y2JjcjQyMCBvdXRwdXQuCj4+Cj4+IE9uZSBvZiB0aGVzZSBuZXcgYmxvY2tzIGlzOiB5Y2Jj cjQyMCB2Y2IKPj4gLSB5Y2JjcjQyMCB2aWRlbyBjYXBhYmlsaXR5IGRhdGEgKHZjYikgYmxvY2s6 IHZpZGVvIG1vZGVzIHdoaWNoIGNhbiBiZQo+PiAgICBzdXBwb3J0IGluIHljYmNyNDIwIG91dHB1 dCBtb2RlIGFsc28gKGFsb25nIHdpdGggUkdCLCBZQ0JDUiA0NDQvNDIyIGV0YykKPj4KPj4gVGhp cyBwYXRjaCBhZGRzIHBhcnNpbmcgYW5kIGhhbmRsaW5nIG9mIHljYmNyNDIwLXZjYiBpbiB0aGUg RFJNIGxheWVyLgo+PiBUaGlzIGJsb2NrIGNvbnRhaW5zIGEgYml0bWFwIGFib3V0IHdoaWNoIG1v ZGUsIGZyb20gYW1vbmcgdGhlIGxpc3Qgb2YKPj4gbm9ybWFsIHN2ZCB2aWRlb21vZGVzLCBjYW4g c3VwcG9ydCB5Y2JjcjQyMCBvdXRwdXQgdG9vLgo+Pgo+PiBTbyBpZiBiaXQgMCBmcm9tIGZpcnN0 IHZjYiBieXRlIGlzIHNldCwgbWVhbnMgZmlyc3QgdmlkZW8gbW9kZSBpbiB0aGUKPj4gc3ZkIGxp c3QsIGNhbiBiZSBzdXBwb3J0ZWQgaW4geWNiY3I0MjAgb3V0cHV0IHRvby4gQml0IDIgbWVhbnMg c2Vjb25kCj4+IHZpZGVvIG1vZGUgZnJvbSBzdmQgbGlzdCwgYW5kIHNvIG9uLgo+Pgo+PiBDYzog VmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4+IENjOiBKb3Nl IEFicmV1IDxqb2FicmV1QHN5bm9wc3lzLmNvbT4KPj4gU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsg U2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+PiAtLS0KPj4gICBkcml2ZXJzL2dw dS9kcm0vZHJtX2VkaWQuYyAgfCA4MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrLS0KPj4gICBpbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggfCAgMSArCj4+ICAg MiBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+Pgo+PiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2VkaWQuYwo+PiBpbmRleCA2NGQ4ZTJlLi5kMDFiN2RmIDEwMDY0NAo+PiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQu Ywo+PiBAQCAtMjc3OCw2ICsyNzc4LDcgQEAgYWRkX2RldGFpbGVkX21vZGVzKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVjdCBlZGlkICplZGlkLAo+PiAgICNkZWZpbmUgU1BF QUtFUl9CTE9DSwkweDA0Cj4+ICAgI2RlZmluZSBWSURFT19DQVBBQklMSVRZX0JMT0NLCTB4MDcK Pj4gICAjZGVmaW5lIFZJREVPX0RBVEFfQkxPQ0tfNDIwCTB4MEUKPj4gKyNkZWZpbmUgVklERU9f Q0FQX0JMT0NLXzQyMAkweDBGCj4+ICAgI2RlZmluZSBFRElEX0JBU0lDX0FVRElPCSgxIDw8IDYp Cj4+ICAgI2RlZmluZSBFRElEX0NFQV9ZQ1JDQjQ0NAkoMSA8PCA1KQo+PiAgICNkZWZpbmUgRURJ RF9DRUFfWUNSQ0I0MjIJKDEgPDwgNCkKPj4gQEAgLTMxNDMsMTEgKzMxNDQsMjEgQEAgc3RhdGlj IGludAo+PiAgIGRvX2NlYV9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBj b25zdCB1OCAqZGIsIHU4IGxlbikKPj4gICB7Cj4+ICAgCWludCBpLCBtb2RlcyA9IDA7Cj4+ICsJ dTY0IGhkbWlfNDIwX2NhcF9tYXAgPSBjb25uZWN0b3ItPmRpc3BsYXlfaW5mby5oZG1pLnljYmNy NDIwX3ZjYl9tYXA7Cj4+ICAgCj4+ICAgCWZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgewo+PiAg IAkJc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGU7Cj4+ICAgCQltb2RlID0gZHJtX2Rpc3Bs YXlfbW9kZV9mcm9tX3ZpY19pbmRleChjb25uZWN0b3IsIGRiLCBsZW4sIGkpOwo+PiAgIAkJaWYg KG1vZGUpIHsKPj4gKwkJCS8qCj4+ICsJCQkgKiB5Y2JjcjQyMCBjYXBhYmlsaXR5IGJsb2NrIGNv bnRhaW5zIGEgYml0bWFwIHdoaWNoCj4+ICsJCQkgKiBnaXZlcyB0aGUgaW5kZXggb2Ygc3VjaCBD RUEgbW9kZXMgaW4gVkRCLCB3aGljaCBjYW4KPj4gKwkJCSAqIHN1cHBvcnQgeWNiY3I0MjAgc2Ft cGxpbmcgb3V0cHV0IGFsc28uCj4+ICsJCQkgKiBGb3IgZXhhbXBsZSwgaWYgdGhlIGJpdCAwIGlu IGJpdG1hcCBpcyBzZXQsCj4+ICsJCQkgKiBmaXJzdCBtb2RlIGluIFZEQiBjYW4gc3VwcG9ydCB5 Y2JjcjQyMCBvdXRwdXQgdG9vLgo+PiArCQkJICovCj4+ICsJCQlpZiAoaGRtaV80MjBfY2FwX21h cCAmICgxIDw8IGkpKQo+IFdlJ2QgbmVlZCB0byBtYWtlIHN1cmUgJ2xlbicgaXMgPD02NC4gTm90 IHN1cmUgaWYgdGhlcmUncyBhbnkgcG9pbnQgaW4KPiBtYWtpbmcgaXQgcG9zc2libGUgdG8gaGF2 ZSBtb3JlIHRoYW4gNjQgVkRCcy4gSWYgdGhlcmUgaXMsIHRoZW4gdGhlIHN0YW5kYXJkCj4gYml0 b3BzLmggc3R1ZmYgY291bGQgYmUgdXNlZCB0byBtYWtlIHRoZSBtYXAgbG9uZ2VyIHF1aXRlIHRy aXZpYWxseS4KSSBrbm93LCBhbW9uZyB0aGUgbW9uaXRvcnMgSSBoYXZlIHRlc3RlZCB3aXRoIChB Q0VSIGFuZCBTQU1TVU5HKSBJIGhhdmUgCmZvdW5kIG9ubHkgMSBvciAyIG1vZGVzIGluIHRoZSBj YXBhYmlsaXR5IG1hcC4KQnV0IGFzIHRoZXJlIGlzIG5vIGxpbWl0IG9mIGEgNDIwX1ZCRCBibG9j ayBsZW5ndGggZnJvbSB0aGUgc3BlYywgc28gCnRob3VnaHQgaXQgd291bGQgYmUgZ29vZCB0byBh c3N1bWUgc29tZSBzYWZlIGxpbWl0Lgo+Cj4gV2hhdGV2ZXIgbGltaXQgd2UgY2hvb3NlIEkgdGhp bmsgd2Ugc2hvdWxkIHByaW50IHNvbWUga2luZCBvZiB3YXJuaW5nCj4gdG8gaW5kaWNhdGUgdGhh dCB3ZSd2ZSBleGNlZWRlZCB3aGF0ZXZlciBhcmJpdHJhcnkgbGltaXQgd2UgY2hvc2UuIEFuZAo+ IEkgZGVmaW5pdGVseSB0aGluayBpdCBzaG91bGQgYmUgYSB3YXJuaW5nIGxldmVsIGF0IGxlYXN0 IHRvIG1ha2Ugc3VyZQo+IHdlIGdldCBhIGJ1ZyByZXBvcnQgYWJvdXQgaXQuClN1cmUsIEkgY2Fu IGFkZCBhIHdhcm5pbmcsIGZvciB0aGUgY2FzZXMgd2hlcmUgd2UgY3Jvc3MgNjQgbW9kZXMuCj4+ ICsJCQkJbW9kZS0+ZmxhZ3MgfD0gRFJNX01PREVfRkxBR180MjA7Cj4+ICAgCQkJZHJtX21vZGVf cHJvYmVkX2FkZChjb25uZWN0b3IsIG1vZGUpOwo+PiAgIAkJCW1vZGVzKys7Cj4+ICAgCQl9Cj4+ IEBAIC0zNTI2LDkgKzM1MzcsNjQgQEAgc3RhdGljIGJvb2wgY2VhX2RiX2lzX2hkbWlfdmRiNDIw KGNvbnN0IHU4ICpkYikKPj4gICAJcmV0dXJuIHRydWU7Cj4+ICAgfQo+PiAgIAo+PiArc3RhdGlj IGJvb2wgY2VhX2RiX2lzX2hkbWlfdmNiNDIwKGNvbnN0IHU4ICpkYikKPiBUbyBrZWVwIHdpdGgg dGhlIHNwZWMgdGVybWlub2xvZ3kgdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgY2FsbGVkCj4gY2Vh X2RiX2lzX3k0MjBjbWRiKCkuIFNhbWUgZm9yIHRoZSBkZWZpbmUgYW5kIG90aGVyIGZ1bmN0aW9u cyBkZWFsaW5nCj4gd2l0cmggdGhpcyBibG9jay4KR290IGl0Lgo+PiArewo+PiArCWlmIChjZWFf ZGJfdGFnKGRiKSAhPSBWSURFT19DQVBBQklMSVRZX0JMT0NLKQo+PiArCQlyZXR1cm4gZmFsc2U7 Cj4+ICsKPiBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUgcGF5bG9hZCBpcyBsb25nIGVub3VnaCB0 byBhY3R1YWxsIGNvbnRhaW4gdGhlCj4gZXh0ZW5kZWQgdGFnLgpEaW50IEkgY2hlY2sgdGhhdCBp biB0aGUgY2FsbGVyID8gYW55d2F5cywgSSB3aWxsIG1ha2Ugc3VyZSB0aGVyZSBpcyBhIApjaGVj ay4KPj4gKwlpZiAoY2VhX2RiX2V4dGVuZGVkX3RhZyhkYikgIT0gVklERU9fQ0FQX0JMT0NLXzQy MCkKPj4gKwkJcmV0dXJuIGZhbHNlOwo+PiArCj4+ICsJcmV0dXJuIHRydWU7Cj4+ICt9Cj4+ICsK Pj4gICAjZGVmaW5lIGZvcl9lYWNoX2NlYV9kYihjZWEsIGksIHN0YXJ0LCBlbmQpIFwKPj4gICAJ Zm9yICgoaSkgPSAoc3RhcnQpOyAoaSkgPCAoZW5kKSAmJiAoaSkgKyBjZWFfZGJfcGF5bG9hZF9s ZW4oJihjZWEpWyhpKV0pIDwgKGVuZCk7IChpKSArPSBjZWFfZGJfcGF5bG9hZF9sZW4oJihjZWEp WyhpKV0pICsgMSkKPj4gICAKPj4gK3N0YXRpYyB2b2lkIGRybV9wYXJzZV92Y2JfNDIwX2JpdG1h cChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+PiArCQkJCSAgICAgY29uc3QgdTgg KmRiKQo+PiArewo+PiArCXN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICppbmZvID0gJmNvbm5lY3Rv ci0+ZGlzcGxheV9pbmZvOwo+PiArCXN0cnVjdCBkcm1faGRtaV9pbmZvICpoZG1pID0gJmluZm8t PmhkbWk7Cj4+ICsJdTggbWFwX2xlbiA9IGNlYV9kYl9wYXlsb2FkX2xlbihkYikgLSAxOwo+PiAr CXU4IGNvdW50Owo+PiArCXU2NCBtYXAgPSAwOwo+PiArCj4+ICsJaWYgKCFkYikKPj4gKwkJcmV0 dXJuOwo+IElzIHRoYXQgcG9zc2libGUgc29tZWhvdz8KQmFkLCBjb3JydXB0IEVESUQgZXh0ZW5z aW9uIGZyb20gYSBiYWQgbW9uaXRvciA7LSkgPwo+Cj4+ICsKPj4gKwlpZiAobWFwX2xlbiA9PSAw KSB7Cj4+ICsJCS8qIEFsbCBDRUEgbW9kZXMgc3VwcG9ydCB5Y2JjcjQyMCBzYW1wbGluZyBhbHNv LiovCj4+ICsJCWhkbWktPnljYmNyNDIwX3ZjYl9tYXAgPSBVNjRfTUFYOwo+PiArCQlyZXR1cm47 Cj4+ICsJfQo+PiArCj4+ICsJLyoKPj4gKwkgKiBUaGlzIG1hcCBpbmRpY2F0ZXMgd2hpY2ggb2Yg dGhlIGV4aXN0aW5nIENFQSBibG9jayBtb2Rlcwo+PiArCSAqIGZyb20gVkRCIGNhbiBzdXBwb3J0 IFlDQkNSNDIwIG91dHB1dCB0b28uIFNvIGlmIGJpdD0wIGlzCj4+ICsJICogc2V0LCBmaXJzdCBt b2RlIGZyb20gVkRCIGNhbiBzdXBwb3J0IFlDQkNSNDIwIG91dHB1dCB0b28uCj4+ICsJICogV2Ug d2lsbCBwYXJzZSBhbmQga2VlcCB0aGlzIG1hcCwgYmVmb3JlIHBhcnNpbmcgVkRCIGl0c2VsZgo+ PiArCSAqIHRvIGF2b2lkIGdvaW5nIHRocm91Z2ggdGhlIHNhbWUgYmxvY2sgYWdhaW4gYW5kIGFn YWluLgo+PiArCSAqCj4+ICsJICogU3BlYyBpcyBub3QgY2xlYXIgYWJvdXQgbWF4IHBvc3NpYmxl IHNpemUgb2YgdGhpcyBibG9jay4KPj4gKwkgKiBDbGFtcGluZyBtYXggYml0bWFwIGJsb2NrIHNp emUgYXQgOCBieXRlcy4gRXZlcnkgYnl0ZSBjYW4KPj4gKwkgKiBhZGRyZXNzIDggQ0VBIG1vZGVz LCBpbiB0aGlzIHdheSB0aGlzIG1hcCBjYW4gYWRkcmVzcwo+PiArCSAqIDgqOCA9IGZpcnN0IDY0 IFNWRHMuCj4+ICsJICovCj4+ICsJaWYgKG1hcF9sZW4gPiA4KQo+PiArCQltYXBfbGVuID0gODsK Pj4gKwo+PiArCWZvciAoY291bnQgPSAwOyBjb3VudCA8IG1hcF9sZW47IGNvdW50KyspCj4+ICsJ CW1hcCA9IChkYlsyICsgY291bnRdIDw8IDggKiBjb3VudCkgfCBtYXA7Cj4+ICsKPj4gKwlpZiAo bWFwKSB7Cj4+ICsJCURSTV9ERUJVR19LTVMoIlNpbmsgc3VwcG9ydHMgeWNiY3IgNDIwXG4iKTsK Pj4gKwkJaW5mby0+Y29sb3JfZm9ybWF0cyB8PSBEUk1fQ09MT1JfRk9STUFUX1lDUkNCNDIwOwo+ PiArCX0KPj4gKwo+PiArCWhkbWktPnljYmNyNDIwX3ZjYl9tYXAgPSBtYXA7Cj4+ICt9Cj4+ICsK Pj4gICBzdGF0aWMgaW50Cj4+ICAgYWRkX2NlYV9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAq Y29ubmVjdG9yLCBzdHJ1Y3QgZWRpZCAqZWRpZCkKPj4gICB7Cj4+IEBAIC0zNTYxLDYgKzM2Mjcs OCBAQCBhZGRfY2VhX21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIHN0cnVj dCBlZGlkICplZGlkKQo+PiAgIAkJCQkvKiBBZGQgNDoyOjAob25seSkgbW9kZXMgcHJlc2VudCBp biBFRElEICovCj4+ICAgCQkJCW1vZGVzICs9IGRvXzQyMF92ZGJfbW9kZXMoY29ubmVjdG9yLCB2 ZGI0MjAsCj4+ICAgCQkJCQkJCSAgdmRiNDIwX2xlbik7Cj4+ICsJCQl9IGVsc2UgaWYgKGNlYV9k Yl9pc19oZG1pX3ZjYjQyMChkYikpIHsKPj4gKwkJCQlkcm1fcGFyc2VfdmNiXzQyMF9iaXRtYXAo Y29ubmVjdG9yLCBkYik7Cj4+ICAgCQkJfQo+PiAgIAkJfQo+PiAgIAl9Cj4+IEBAIC00MjQxLDYg KzQzMDksOCBAQCBzdGF0aWMgdm9pZCBkcm1fcGFyc2VfY2VhX2V4dChzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAo+PiAgIAkJCWRybV9wYXJzZV9oZG1pX3ZzZGJfdmlkZW8oY29ubmVj dG9yLCBkYik7Cj4+ICAgCQlpZiAoY2VhX2RiX2lzX2hkbWlfZm9ydW1fdnNkYihkYikpCj4+ICAg CQkJZHJtX3BhcnNlX2hkbWlfZm9ydW1fdnNkYihjb25uZWN0b3IsIGRiKTsKPj4gKwkJaWYgKGNl YV9kYl9pc19oZG1pX3ZjYjQyMChkYikpCj4+ICsJCQlkcm1fcGFyc2VfdmNiXzQyMF9iaXRtYXAo Y29ubmVjdG9yLCBkYik7Cj4+ICAgCX0KPj4gICB9Cj4+ICAgCj4+IEBAIC00NDkyLDYgKzQ1NjIs MTQgQEAgaW50IGRybV9hZGRfZWRpZF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yLCBzdHJ1Y3QgZWRpZCAqZWRpZCkKPj4gICAJbnVtX21vZGVzICs9IGFkZF9jdnRfbW9kZXMo Y29ubmVjdG9yLCBlZGlkKTsKPj4gICAJbnVtX21vZGVzICs9IGFkZF9zdGFuZGFyZF9tb2Rlcyhj b25uZWN0b3IsIGVkaWQpOwo+PiAgIAludW1fbW9kZXMgKz0gYWRkX2VzdGFibGlzaGVkX21vZGVz KGNvbm5lY3RvciwgZWRpZCk7Cj4+ICsKPj4gKwkvKgo+PiArCSAqIENFQS04NjEtRiBhZGRzIHlj YmNyIGNhcGFiaWxpdHkgbWFwIGJsb2NrLCBmb3IgSERNSSAyLjAgc2lua3MuCj4+ICsJICogVG8g YXZvaWQgbXVsdGlwbGUgcGFyc2luZyBvZiBzYW1lIGJsb2NrLCBsZXRzIGdldCB0aGUgc2luayBp bmZvCj4+ICsJICogYmVmb3JlIHBhcnNpbmcgQ0VBIG1vZGVzLgo+PiArCSAqLwo+PiArCWRybV9h ZGRfZGlzcGxheV9pbmZvKGNvbm5lY3RvciwgZWRpZCk7Cj4gSXMgdGhlcmUgYW55IHJlYXNvbiB3 aHkgdGhpcyBjYW4ndCBiZSBtb3ZlZCB0byBiZSBjYWxsZWQgYmVmb3JlIGFueQo+IG1vZGVzIGFy ZSBhZGRlZD8gSGF2aW5nIGl0IGluIHRoZSBtaWRkbGUgbGlrZSB0aGlzIGZlZWxzIHdyb25nLgpJ biBmYWN0IEkgd2FzIGFsc28gdGhpbmtpbmcgYWJvdXQgbW92aW5nIGl0IHRvIHRoZSBzdGFydCwg ZHVlIHRvIHRoZSAKbG9vayBhbmQgZmVlbCBvZiB0aGUgY29kZSwgdGhlbiB0aG91Z2ggaXQgd291 bGQgYmUgYmV0dGVyIHRvIGhhdmUgCm1pbmltdW0gY2hhbmdlcyBpbiB0aGUgcm91dGluZS4KQnV0 IHN1cmUsIEkgd291bGQgYmUgaGFwcHkgdG8gbW92ZSBpdC4KCi0gU2hhc2hhbmsKPgo+PiArCj4+ ICAgCW51bV9tb2RlcyArPSBhZGRfY2VhX21vZGVzKGNvbm5lY3RvciwgZWRpZCk7Cj4+ICAgCW51 bV9tb2RlcyArPSBhZGRfYWx0ZXJuYXRlX2NlYV9tb2Rlcyhjb25uZWN0b3IsIGVkaWQpOwo+PiAg IAludW1fbW9kZXMgKz0gYWRkX2Rpc3BsYXlpZF9kZXRhaWxlZF9tb2Rlcyhjb25uZWN0b3IsIGVk aWQpOwo+PiBAQCAtNDUwMSw4ICs0NTc5LDYgQEAgaW50IGRybV9hZGRfZWRpZF9tb2RlcyhzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZWRpZCAqZWRpZCkKPj4gICAJaWYg KHF1aXJrcyAmIChFRElEX1FVSVJLX1BSRUZFUl9MQVJHRV82MCB8IEVESURfUVVJUktfUFJFRkVS X0xBUkdFXzc1KSkKPj4gICAJCWVkaWRfZml4dXBfcHJlZmVycmVkKGNvbm5lY3RvciwgcXVpcmtz KTsKPj4gICAKPj4gLQlkcm1fYWRkX2Rpc3BsYXlfaW5mbyhjb25uZWN0b3IsIGVkaWQpOwo+PiAt Cj4+ICAgCWlmIChxdWlya3MgJiBFRElEX1FVSVJLX0ZPUkNFXzZCUEMpCj4+ICAgCQljb25uZWN0 b3ItPmRpc3BsYXlfaW5mby5icGMgPSA2Owo+PiAgIAo+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9k cm0vZHJtX2Nvbm5lY3Rvci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4+IGluZGV4 IGNlZjc2YjIuLmRiZmE2YTEgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0 b3IuaAo+PiArKysgYi9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPj4gQEAgLTEzNiw2ICsx MzYsNyBAQCBzdHJ1Y3QgZHJtX3NjZGMgewo+PiAgIHN0cnVjdCBkcm1faGRtaV9pbmZvIHsKPj4g ICAJLyoqIEBzY2RjOiBzaW5rJ3Mgc2NkYyBzdXBwb3J0IGFuZCBjYXBhYmlsaXRpZXMgKi8KPj4g ICAJc3RydWN0IGRybV9zY2RjIHNjZGM7Cj4+ICsJdTY0IHljYmNyNDIwX3ZjYl9tYXA7Cj4+ICAg fTsKPj4gICAKPj4gICAvKioKPj4gLS0gCj4+IDIuNy40CgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK