From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ander Conselvan De Oliveira Subject: Re: [Intel-gfx] [PATCH v4 10/15] drm/i915: add compute-config for YCBCR outputs Date: Tue, 20 Jun 2017 17:20:41 +0300 Message-ID: <1497968441.2289.8.camel@gmail.com> References: <1497888502-24980-1-git-send-email-shashank.sharma@intel.com> <1497888502-24980-11-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1497888502-24980-11-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Shashank Sharma , dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, ville.syrjala@linux.intel.com Cc: Daniel Vetter List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCAyMDE3LTA2LTE5IGF0IDIxOjM4ICswNTMwLCBTaGFzaGFuayBTaGFybWEgd3JvdGU6 Cj4gVGhpcyBwYXRjaCBjaGVja3MgZW5jb2RlciBsZXZlbCBzdXBwb3J0IGZvciBIRE1JIFlDQkNS IG91dHB1dHMuCj4gSERNSSBvdXRwdXQgbW9kZSBpcyBhIGNvbm5lY3RvciBwcm9wZXJ0eSwgdGhp cyBwYXRjaCBjaGVja3MgaWYKPiBzb3VyY2UgYW5kIHNpbmsgY2FuIHN1cHBvcnQgdGhlIEhETUkg b3V0cHV0IHR5cGUgc2VsZWN0ZWQgYnkgdXNlci4KPiBBbmQgaWYgdGhleSBib3RoIGNhbiwgaXQg Y29tbWl0cyB0aGUgaGRtaSBvdXRwdXQgdHlwZSBpbnRvIGNydGMgc3RhdGUsCj4gZm9yIGZ1cnRo ZXIgc3RhZ2luZyBpbiBkcml2ZXIuCj4gCj4gVjI6IFNwbGl0IHRoZSBwYXRjaCBpbnRvIHR3bywg a2VwdCBoZWxwZXIgZnVuY3Rpb25zIGluIERSTSBsYXllci4KPiBWMzogQ2hhbmdlZCB0aGUgY29t cHV0ZV9jb25maWcgZnVuY3Rpb24gYmFzZWQgb24gbmV3IERSTSBBUEkuCj4gVjQ6IFJlYmFzZQo+ IAo+IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiBD YzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Cj4gQ2M6IEFuZGVyIENv bnNlbHZhbiBEZSBPbGl2ZWlyYSA8YW5kZXIuY29uc2VsdmFuLmRlLm9saXZlaXJhQGludGVsLmNv bT4KPiBTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRl bC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICAx ICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgIDMgKysKPiAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jICAgIHwgOTMgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKy0tCj4gIDMgZmlsZXMgY2hhbmdlZCwgOTQgaW5zZXJ0aW9ucygrKSwg MyBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5k ZXggZjliZjBkNS4uZGEyOTUzNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKPiBAQCAtMTE5MzAsNiArMTE5MzAsNyBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCVBJUEVfQ09ORl9DSEVDS19JKGhk bWlfc2NyYW1ibGluZyk7Cj4gIAlQSVBFX0NPTkZfQ0hFQ0tfSShoZG1pX2hpZ2hfdG1kc19jbG9j a19yYXRpbyk7Cj4gIAlQSVBFX0NPTkZfQ0hFQ0tfSShoYXNfaW5mb2ZyYW1lKTsKPiArCVBJUEVf Q09ORl9DSEVDS19JKGhkbWlfb3V0cHV0KTsKPiAgCj4gIAlQSVBFX0NPTkZfQ0hFQ0tfSShoYXNf YXVkaW8pOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2 LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IGluZGV4IDE3MjczNTAuLjM4 ZmU1NmMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IEBAIC03ODAsNiArNzgwLDkg QEAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgewo+ICAKPiAgCS8qIEhETUkgSGlnaCBUTURTIGNo YXIgcmF0ZSByYXRpbyAqLwo+ICAJYm9vbCBoZG1pX2hpZ2hfdG1kc19jbG9ja19yYXRpbzsKPiAr Cj4gKwkvKiBIRE1JIG91dHB1dCB0eXBlICovCj4gKwllbnVtIGRybV9oZG1pX291dHB1dF90eXBl IGhkbWlfb3V0cHV0Owo+ICB9Owo+ICAKPiAgc3RydWN0IGludGVsX2NydGMgewo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9oZG1pLmMKPiBpbmRleCAxNzBhYmM0Li4yMmRhNWNkIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2hkbWkuYwo+IEBAIC0xMzE3LDcgKzEzMTcsOCBAQCBpbnRlbF9oZG1pX21v ZGVfdmFsaWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAgCXJldHVybiBzdGF0 dXM7Cj4gIH0KPiAgCj4gLXN0YXRpYyBib29sIGhkbWlfMTJicGNfcG9zc2libGUoc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3N0YXRpYyBib29sIGhkbWlfMTJicGNfcG9z c2libGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gKwkJCQllbnVtIGRy bV9oZG1pX291dHB1dF90eXBlIGhkbWlfb3V0KQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPQo+ICAJCXRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYp Owo+IEBAIC0xMzI5LDYgKzEzMzAsMTYgQEAgc3RhdGljIGJvb2wgaGRtaV8xMmJwY19wb3NzaWJs ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAgCWlmIChIQVNfR01DSF9E SVNQTEFZKGRldl9wcml2KSkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+ICsJaWYgKGhkbWlfb3V0 ID09IERSTV9IRE1JX09VVFBVVF9ZQ0JDUjQyMikgewo+ICsJCS8qCj4gKwkJICogSERNSSBzcGVj IHNheXMgWUNCQ1I0MjIgaXMgMTJicGMsIGJ1dCBpdHMgbm90IGEgZGVlcAo+ICsJCSAqIGNvbG9y IGZvcm1hdC4gU28gcmVzcGVjdCB0aGUgc3BlYywgYW5kIG5vdCBhbGxvdyB0aGlzCj4gKwkJICog dG8gYmUgZGVlcCBjb2xvcgo+ICsJCSAqLwo+ICsJCURSTV9ERUJVR19LTVMoIk5vdCBhbGxvd2lu ZyBkZWVwIGNvbG9yIGZvciBZQ0JDUjQyMiBvdXRwdXRcbiIpOwo+ICsJCXJldHVybiBmYWxzZTsK PiArCX0KPiArCgpJIHN1cHBvc2UgdGhpcyBpcyBhYm91dCB0aGUgcmVtYXJrIGluIHNlY3Rpb24g Ni4yLjQgb2YgdGhlIEhETUkgMS40IHNwZWMuIElmIEknbQppbnRlcnByZXRpbmcgdGhhdCBjb3Jy ZWN0bHksIHRoZSByZWxldmFudCBpbmZvcm1hdGlvbiBmb3IgdXMgaXMgdGhhdCB0aGUgVE1EUwpj bG9jayBkb2Vzbid0IG5lZWQgdG8gYmUgbXVsdGlwbGllZCBieSAxLjUsIHVubGlrZSBvdGhlciAx MiBicGMgc2NlbmFyaW9zLgoKVG8gbWUgaXQgc2VlbXMgbWlzbGVhZGluZyB0byBzYXkgMTIgYnBj IGlzIG5vdCBwb3NzaWJsZSBpbiB0aGF0IGNhc2UuIEknbQp3b25kZXJpbmcgaWYgaXQgbWFrZXMg bW9yZSBzZW5zZSB0byBzcGxpdCB0aGlzIGluIHR3byBwYXJ0czoKCiAoaSkgIFdoYXQgaXMgdGhl IFRNRFMgY2xvY2sgc2NhbGluZyBmb3IgYSBnaXZlbiBvdXRwdXQgZm9ybWF0PwogKGlpKSBJcyB0 aGUgZm9ybWF0IGFuZCBzY2FsZWQgVE1EUyBjbG9jayBzdXBwb3J0ZWQgYnkgdGhlIHNvdXJjZSBh bmQgdGhlIHNpbms/CgoKPiAgCS8qCj4gIAkgKiBIRE1JIDEyYnBjIGFmZmVjdHMgdGhlIGNsb2Nr cywgc28gaXQncyBvbmx5IHBvc3NpYmxlCj4gIAkgKiB3aGVuIG5vdCBjbG9uaW5nIHdpdGggb3Ro ZXIgZW5jb2RlciB0eXBlcy4KPiBAQCAtMTM0Miw2ICsxMzUzLDEyIEBAIHN0YXRpYyBib29sIGhk bWlfMTJicGNfcG9zc2libGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4g IAkJaWYgKGNvbm5lY3Rvcl9zdGF0ZS0+Y3J0YyAhPSBjcnRjX3N0YXRlLT5iYXNlLmNydGMpCj4g IAkJCWNvbnRpbnVlOwo+ICAKPiArCQlpZiAoaGRtaV9vdXQgPT0gRFJNX0hETUlfT1VUUFVUX1lD QkNSNDIwKSB7Cj4gKwkJCWlmICghKGluZm8tPmhkbWkueTQyMF9kY19tb2RlcyAmCj4gKwkJCQkJ RFJNX0VESURfWUNCQ1I0MjBfRENfMzYpKQo+ICsJCQkJcmV0dXJuIGZhbHNlOwo+ICsJCX0KPiAr Cj4gIAkJaWYgKChpbmZvLT5lZGlkX2hkbWlfZGNfbW9kZXMgJiBEUk1fRURJRF9IRE1JX0RDXzM2 KSA9PSAwKQo+ICAJCQlyZXR1cm4gZmFsc2U7Cj4gIAl9Cj4gQEAgLTEzNTQsNiArMTM3MSw2NSBA QCBzdGF0aWMgYm9vbCBoZG1pXzEyYnBjX3Bvc3NpYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlKQo+ICAJcmV0dXJuIHRydWU7Cj4gIH0KPiAgCj4gK3N0YXRpYyB1OAo+ICtp bnRlbF9oZG1pX2dldF9zcmNfb3V0cHV0X3N1cHBvcnQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm5lY3RvcikKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gY29u bmVjdG9yLT5kZXYtPmRldl9wcml2YXRlOwo+ICsJdTggc3VwcG9ydGVkX291dHB1dHMgPSBEUk1f Q09MT1JfRk9STUFUX1JHQjQ0NDsKPiArCj4gKwlpZiAoZGV2X3ByaXYtPmluZm8uZ2VuIDwgNykK PiArCQlyZXR1cm4gc3VwcG9ydGVkX291dHB1dHM7Cj4gKwo+ICsJLyogR2VuIDcgYW5kIGFib3Zl IHN1cHBvcnQgSERNSSAxLjRiIG91dHB1dHMgKi8KPiArCXN1cHBvcnRlZF9vdXRwdXRzIHw9IChE Uk1fQ09MT1JfRk9STUFUX1lDUkNCNDQ0IHwKPiArCQkJCURSTV9DT0xPUl9GT1JNQVRfWUNSQ0I0 MjIpOwo+ICsKPiArCWlmIChJU19HRU1JTklMQUtFKGRldl9wcml2KSkKPiArCQlzdXBwb3J0ZWRf b3V0cHV0cyB8PSBEUk1fQ09MT1JfRk9STUFUX1lDUkNCNDIwOwo+ICsKPiArCXJldHVybiBzdXBw b3J0ZWRfb3V0cHV0czsKPiArfQo+ICsKPiArc3RhdGljIGVudW0gZHJtX2hkbWlfb3V0cHV0X3R5 cGUKPiAraW50ZWxfaGRtaV9jb21wdXRlX3ljYmNyX2NvbmZpZyhzdHJ1Y3QgZHJtX2Nvbm5lY3Rv cl9zdGF0ZSAqY29ubl9zdGF0ZSwKPiArCQkJICAgICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjb25maWcsCj4gKwkJCSAgICAgICBpbnQgKmNsb2NrXzEyYnBjLCBpbnQgKmNsb2NrXzhicGMp Cj4gK3sKPiArCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IgPSBjb25uX3N0YXRlLT5j b25uZWN0b3I7Cj4gKwlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSA9ICZjb25maWctPmJh c2UuYWRqdXN0ZWRfbW9kZTsKPiArCWVudW0gZHJtX2hkbWlfb3V0cHV0X3R5cGUgdHlwZSA9IGNv bm5fc3RhdGUtPmhkbWlfb3V0cHV0Owo+ICsJdTggc3JjX291dHB1dF9jYXAgPSBpbnRlbF9oZG1p X2dldF9zcmNfb3V0cHV0X3N1cHBvcnQoY29ubmVjdG9yKTsKPiArCj4gKwkvKgo+ICsJICogQ2Fu IHdlIHN1cHBvcnQgYW55IFlDQkNSIG91dHB1dCBiYXNlZCBvbiB0aGVzZSBwYXJhbWV0ZXJzID8K PiArCSAqIGN1cnJlbnQgc291cmNlIGNhcGFiaWxpdGllcyArCj4gKwkgKiBjdXJyZW50IHNpbmsg Y2FwYWJpbGl0aWVzICsKPiArCSAqIGdpdmVuIHZpZGVvIG1vZGUgKwo+ICsJICogY3VycmVudCB1 c2VyJ3MgY2hvaWNlIGZvciBIRE1JIG91dHB1dCAoZnJvbSBjb25uZWN0b3IgcHJvcGVydHkpCj4g KwkgKi8KPiArCXR5cGUgPSBkcm1fZmluZF9oZG1pX291dHB1dF90eXBlKGNvbm5lY3RvciwgbW9k ZSwgdHlwZSwgc3JjX291dHB1dF9jYXApOwo+ICsJaWYgKCh0eXBlID09IERSTV9IRE1JX09VVFBV VF9JTlZBTElEKSB8fAoKVW5uZWNlc3NhcnkgcGFyZW50aGVzaXMuCgo+ICsJCSh0eXBlID09IERS TV9IRE1JX09VVFBVVF9ERUZBVUxUX1JHQikpIHsKCkRpdHRvLCBwbHVzIHdyb25nIGluZGVudGF0 aW9uLgoKPiArCQlEUk1fREVCVUdfS01TKCJDYW4ndCBzdXBwb3J0IFlDQkNSIG91dHB1dFxuIik7 Cj4gKwkJcmV0dXJuIHR5cGU7Cj4gKwl9Cj4gKwo+ICsJaWYgKHR5cGUgPT0gRFJNX0hETUlfT1VU UFVUX1lDQkNSNDIwKSB7Cj4gKwo+ICsJCS8qIFlDQkNSNDIwIFRNRFMgcmF0ZSByZXF1aXJlbWVu dCBpcyBoYWxmIHRoZSBwaXhlbCBjbG9jayAqLwo+ICsJCWNvbmZpZy0+aGRtaV9vdXRwdXQgPSBE Uk1fSERNSV9PVVRQVVRfWUNCQ1I0MjA7Cj4gKwkJY29uZmlnLT5wb3J0X2Nsb2NrIC89IDI7Cj4g KwkJKmNsb2NrXzEyYnBjIC89IDI7Cj4gKwkJKmNsb2NrXzhicGMgLz0gMjsKPiArCj4gKwl9CgpJ IHRoaW5rIHdpdGggdGhlIGlkZWEgSSBkZXNjcmliZWQgYWJvdmUsIHRoaXMgY291bGQgYmUgZG9u ZSBpbiBpbgppbnRlbF9oZG1pX2NvbXB1dF9jb25maWcoKS4gCgo+ICsKPiArCS8qIEVuY29kZXIg aXMgY2FwYWJsZSBvZiB0aGlzIG91dHB1dCwgbGV0cyBjb21taXQgdG8gQ1JUQyAqLwo+ICsJY29u ZmlnLT5oZG1pX291dHB1dCA9IHR5cGU7Cj4gKwlEUk1fREVCVUdfS01TKCJIRE1JIG91dHB1dDog JXNcbiIsIGRybV9nZXRfaGRtaV9vdXRwdXRfbmFtZSh0eXBlKSk7Cj4gKwlyZXR1cm4gdHlwZTsK CkNvdWxkbid0IHRoaXMgZnVuY3Rpb24ganVzdCByZXR1cm4gdHJ1ZSBvciBmYWxzZT8gVGhlIHZh bHVlIGlzIHJldHVybmVkIGJ5CmVkaXRpbmcgY29uZmlnLT5oZG1pX291dHB1dC4gTm90IGEgYmln IGZhbiBvZiBoYXZpbmcgRFJNX0hETUlfT1VUUFVUX0lOVkFMSUQgdG8KbWVhbiB0aGF0IHNvbWV0 aGluZyBmYWlsZWQuCgpBbmRlcgoKPiArfQo+ICsKPiAgYm9vbCBpbnRlbF9oZG1pX2NvbXB1dGVf Y29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkgICAgICAgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAo+ICAJCQkgICAgICAgc3RydWN0IGRybV9j b25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpCj4gQEAgLTEzNjEsMTMgKzE0MzcsMTUgQEAgYm9v bCBpbnRlbF9oZG1pX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy LAo+ICAJc3RydWN0IGludGVsX2hkbWkgKmludGVsX2hkbWkgPSBlbmNfdG9faW50ZWxfaGRtaSgm ZW5jb2Rlci0+YmFzZSk7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0 b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKPiAgCXN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICph ZGp1c3RlZF9tb2RlID0gJnBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGU7Cj4gLQlzdHJ1 Y3QgZHJtX3NjZGMgKnNjZGMgPSAmY29ubl9zdGF0ZS0+Y29ubmVjdG9yLT5kaXNwbGF5X2luZm8u aGRtaS5zY2RjOwo+ICsJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciA9IGNvbm5fc3Rh dGUtPmNvbm5lY3RvcjsKPiArCXN0cnVjdCBkcm1fc2NkYyAqc2NkYyA9ICZjb25uZWN0b3ItPmRp c3BsYXlfaW5mby5oZG1pLnNjZGM7Cj4gIAlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9jb25uZWN0b3Jf c3RhdGUgKmludGVsX2Nvbm5fc3RhdGUgPQo+ICAJCXRvX2ludGVsX2RpZ2l0YWxfY29ubmVjdG9y X3N0YXRlKGNvbm5fc3RhdGUpOwo+ICAJaW50IGNsb2NrXzhicGMgPSBwaXBlX2NvbmZpZy0+YmFz ZS5hZGp1c3RlZF9tb2RlLmNydGNfY2xvY2s7Cj4gIAlpbnQgY2xvY2tfMTJicGMgPSBjbG9ja184 YnBjICogMyAvIDI7Cj4gIAlpbnQgZGVzaXJlZF9icHA7Cj4gIAlib29sIGZvcmNlX2R2aSA9IGlu dGVsX2Nvbm5fc3RhdGUtPmZvcmNlX2F1ZGlvID09IEhETUlfQVVESU9fT0ZGX0RWSTsKPiArCWVu dW0gZHJtX2hkbWlfb3V0cHV0X3R5cGUgaGRtaV9vdXQgPSBjb25uX3N0YXRlLT5oZG1pX291dHB1 dDsKPiAgCj4gIAlwaXBlX2NvbmZpZy0+aGFzX2hkbWlfc2luayA9ICFmb3JjZV9kdmkgJiYgaW50 ZWxfaGRtaS0+aGFzX2hkbWlfc2luazsKPiAgCj4gQEAgLTEzOTEsNiArMTQ2OSwxNSBAQCBib29s IGludGVsX2hkbWlfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIs Cj4gIAkJY2xvY2tfMTJicGMgKj0gMjsKPiAgCX0KPiAgCj4gKwkvKiBDaGVjayBpZiBZQ0JDUiBI RE1JIG91dHB1dCBoYW5kbGluZyBpcyByZXF1aXJlZCAqLwo+ICsJaGRtaV9vdXQgPSBpbnRlbF9o ZG1pX2NvbXB1dGVfeWNiY3JfY29uZmlnKGNvbm5fc3RhdGUsCj4gKwkJCQkJICAgcGlwZV9jb25m aWcsICZjbG9ja18xMmJwYywKPiArCQkJCQkgICAmY2xvY2tfOGJwYyk7Cj4gKwlpZiAoaGRtaV9v dXQgPT0gRFJNX0hETUlfT1VUUFVUX0lOVkFMSUQpIHsKPiArCQlEUk1fRVJST1IoIkNhbid0IHN1 cHBvcnQgZGVzaXJlZCBIRE1JIG91dHB1dFxuIik7Cj4gKwkJcmV0dXJuIGZhbHNlOwo+ICsJfQo+ ICsKPiAgCWlmIChIQVNfUENIX1NQTElUKGRldl9wcml2KSAmJiAhSEFTX0RESShkZXZfcHJpdikp Cj4gIAkJcGlwZV9jb25maWctPmhhc19wY2hfZW5jb2RlciA9IHRydWU7Cj4gIAo+IEBAIC0xNDEw LDcgKzE0OTcsNyBAQCBib29sIGludGVsX2hkbWlfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVs X2VuY29kZXIgKmVuY29kZXIsCj4gIAkgKi8KPiAgCWlmIChwaXBlX2NvbmZpZy0+cGlwZV9icHAg PiA4KjMgJiYgcGlwZV9jb25maWctPmhhc19oZG1pX3NpbmsgJiYgIWZvcmNlX2R2aSAmJgo+ICAJ ICAgIGhkbWlfcG9ydF9jbG9ja192YWxpZChpbnRlbF9oZG1pLCBjbG9ja18xMmJwYywgdHJ1ZSwg Zm9yY2VfZHZpKSA9PSBNT0RFX09LICYmCj4gLQkgICAgaGRtaV8xMmJwY19wb3NzaWJsZShwaXBl X2NvbmZpZykpIHsKPiArCSAgICBoZG1pXzEyYnBjX3Bvc3NpYmxlKHBpcGVfY29uZmlnLCBoZG1p X291dCkpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJwaWNraW5nIGJwYyB0byAxMiBmb3IgSERNSSBv dXRwdXRcbiIpOwo+ICAJCWRlc2lyZWRfYnBwID0gMTIqMzsKPiAgCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=