From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: Re: [PATCH v5 04/12] drm/i915: Attach content type property Date: Tue, 23 Apr 2019 16:47:39 +0530 Message-ID: <20190423111737.GA2484@intel.com> References: <20190418085805.5648-1-ramalingam.c@intel.com> <20190418085805.5648-5-ramalingam.c@intel.com> <20190423081148.GC13337@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20190423081148.GC13337@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, gwan-gyeong.mun@intel.com List-Id: dri-devel@lists.freedesktop.org T24gMjAxOS0wNC0yMyBhdCAxMDoxMTo0OCArMDIwMCwgRGFuaWVsIFZldHRlciB3cm90ZToKPiBP biBUaHUsIEFwciAxOCwgMjAxOSBhdCAwMjoyNzo1N1BNICswNTMwLCBSYW1hbGluZ2FtIEMgd3Jv dGU6Cj4gPiBBdHRhY2hlcyB0aGUgY29udGVudCB0eXBlIHByb3BlcnR5IGZvciBIRENQMi4yIGNh cGFibGUgY29ubmVjdG9ycy4KPiA+IAo+ID4gSW1wbGVtZW50cyB0aGUgdXBkYXRlIG9mIGNvbnRl bnQgdHlwZSBmcm9tIHByb3BlcnR5IGFuZCBhcHBseSB0aGUKPiA+IHJlc3RyaWN0aW9uIG9uIEhE Q1AgdmVyc2lvbiBzZWxlY3Rpb24uCj4gPiAKPiA+IHYyOgo+ID4gICBzL2NwX2NvbnRlbnRfdHlw ZS9jb250ZW50X3Byb3RlY3Rpb25fdHlwZSBbZGFuaWVsXQo+ID4gICBkaXNhYmxlIGF0IGhkY3Bf YXRvbWljX2NoZWNrIHRvIGF2b2lkIGNoZWNrIGF0IGF0b21pY19zZXRfcHJvcGVydHkKPiA+IAlb TWFhcnRlbl0KPiA+IHYzOgo+ID4gICBzL2NvbnRlbnRfcHJvdGVjdGlvbl90eXBlL2hkY3BfY29u dGVudF90eXBlIFtQZWtrYV0KPiA+IHY0Ogo+ID4gICBoZGNwIGRpc2FibGUgaW5jYXNlIG9mIHR5 cGUgY2hhbmdlIGlzIG1vdmVkIGludG8gY29tbWl0IFtkYW5pZWxdLgo+ID4gCj4gPiBTaWduZWQt b2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0BpbnRlbC5jb20+Cj4gPiAtLS0KPiA+ ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgfCAzOCArKysrKysrKysrKysrKysr KysrKysrKystLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMgfCA0MyAr KysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfaGRjcC5oIHwgIDIgKy0KPiA+ICAzIGZpbGVzIGNoYW5nZWQsIDYzIGluc2VydGlvbnMo KyksIDIwIGRlbGV0aW9ucygtKQo+ID4gCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGRpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+ID4g aW5kZXggMjRmOTEwNmVmY2M2Li5kZDliZWE4NDA5MzcgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGRpLmMKPiA+IEBAIC0zNDc2LDcgKzM0NzYsOCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9l bmFibGVfZGRpKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4gIAkvKiBFbmFibGUg aGRjcCBpZiBpdCdzIGRlc2lyZWQgKi8KPiA+ICAJaWYgKGNvbm5fc3RhdGUtPmNvbnRlbnRfcHJv dGVjdGlvbiA9PQo+ID4gIAkgICAgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0RFU0lSRUQp Cj4gPiAtCQlpbnRlbF9oZGNwX2VuYWJsZSh0b19pbnRlbF9jb25uZWN0b3IoY29ubl9zdGF0ZS0+ Y29ubmVjdG9yKSk7Cj4gPiArCQlpbnRlbF9oZGNwX2VuYWJsZSh0b19pbnRlbF9jb25uZWN0b3Io Y29ubl9zdGF0ZS0+Y29ubmVjdG9yKSwKPiA+ICsJCQkJICAodTgpY29ubl9zdGF0ZS0+aGRjcF9j b250ZW50X3R5cGUpOwo+ID4gIH0KPiA+ICAKPiA+ICBzdGF0aWMgdm9pZCBpbnRlbF9kaXNhYmxl X2RkaV9kcChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiA+IEBAIC0zNTQ1LDE1ICsz NTQ2LDQ0IEBAIHN0YXRpYyB2b2lkIGludGVsX2RkaV91cGRhdGVfcGlwZShzdHJ1Y3QgaW50ZWxf ZW5jb2RlciAqZW5jb2RlciwKPiA+ICAJCQkJICBjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSwKPiA+ICAJCQkJICBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0 ZSAqY29ubl9zdGF0ZSkKPiA+ICB7Cj4gPiArCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5l Y3RvciA9Cj4gPiArCQkJCXRvX2ludGVsX2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3Ip Owo+ID4gKwlzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCA9ICZjb25uZWN0b3ItPmhkY3A7Cj4gPiAr CWJvb2wgIHJlX2VuYWJsZV9oZGNwID0gZmFsc2U7Cj4gPiArCWludCByZXQgPSAtRUlOVkFMOwo+ ID4gKwo+ID4gIAlpZiAoIWludGVsX2NydGNfaGFzX3R5cGUoY3J0Y19zdGF0ZSwgSU5URUxfT1VU UFVUX0hETUkpKQo+ID4gIAkJaW50ZWxfZGRpX3VwZGF0ZV9waXBlX2RwKGVuY29kZXIsIGNydGNf c3RhdGUsIGNvbm5fc3RhdGUpOwo+ID4gIAo+ID4gKwkvKgo+ID4gKwkgKiBEdXJpbmcgdGhlIEhE Q1AgZW5jcnlwdGlvbiBzZXNzaW9uIGlmIFR5cGUgY2hhbmdlIGlzIHJlcXVlc3RlZCwKPiA+ICsJ ICogZGlzYWJsZSB0aGUgSERDUCBhbmQgcmVlbmFibGUgaXQgd2l0aCBuZXcgVFlQRSB2YWx1ZS4K PiA+ICsJICovCj4gPiAgCWlmIChjb25uX3N0YXRlLT5jb250ZW50X3Byb3RlY3Rpb24gPT0KPiA+ IC0JICAgIERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9ERVNJUkVEKQo+ID4gLQkJaW50ZWxf aGRjcF9lbmFibGUodG9faW50ZWxfY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNvbm5lY3RvcikpOwo+ ID4gKwkgICAgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0VOQUJMRUQgJiYKPiA+ICsJICAg IGNvbm5fc3RhdGUtPmhkY3BfY29udGVudF90eXBlICE9IGhkY3AtPmNvbnRlbnRfdHlwZSkgewo+ ID4gKwkJaW50ZWxfaGRjcF9kaXNhYmxlKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5j b25uZWN0b3IpKTsKPiA+ICsJCXJlX2VuYWJsZV9oZGNwID0gdHJ1ZTsKPiA+ICsJfQo+ID4gKwo+ ID4gKwlpZiAoY29ubl9zdGF0ZS0+Y29udGVudF9wcm90ZWN0aW9uID09Cj4gPiArCSAgICBEUk1f TU9ERV9DT05URU5UX1BST1RFQ1RJT05fREVTSVJFRCB8fCByZV9lbmFibGVfaGRjcCkKPiA+ICsJ CXJldCA9IGludGVsX2hkY3BfZW5hYmxlKGNvbm5lY3RvciwKPiA+ICsJCQkJCSh1OCljb25uX3N0 YXRlLT5oZGNwX2NvbnRlbnRfdHlwZSk7Cj4gPiAgCWVsc2UgaWYgKGNvbm5fc3RhdGUtPmNvbnRl bnRfcHJvdGVjdGlvbiA9PQo+ID4gIAkJIERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9VTkRF U0lSRUQpCj4gPiAtCQlpbnRlbF9oZGNwX2Rpc2FibGUodG9faW50ZWxfY29ubmVjdG9yKGNvbm5f c3RhdGUtPmNvbm5lY3RvcikpOwo+ID4gKwkJaW50ZWxfaGRjcF9kaXNhYmxlKGNvbm5lY3Rvcik7 Cj4gPiArCj4gPiArCS8qCj4gPiArCSAqIER1cmluZyBUeXBlIGNoYW5nZSBoYW5kbGluZyByZS1l bmFibGluZyBvZiB0aGUgSERDUCBmYWlsZWQuIEhlbmNlCj4gPiArCSAqIGNoYW5nZXMgc3RhdGUg YXMgRU5BQkxFRC0+REVTSVJFRC4KPiA+ICsJICovCj4gPiArCWlmIChyZXQgJiYgcmVfZW5hYmxl X2hkY3ApIHsKPiA+ICsJCW11dGV4X2xvY2soJmhkY3AtPm11dGV4KTsKPiA+ICsJCWhkY3AtPnZh bHVlID0gRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0RFU0lSRUQ7Cj4gPiArCQlzY2hlZHVs ZV93b3JrKCZoZGNwLT5wcm9wX3dvcmspOwo+ID4gKwkJbXV0ZXhfdW5sb2NrKCZoZGNwLT5tdXRl eCk7Cj4gPiArCX0KPiAKPiBJJ20gdW5oYXBweSB3aXRoIHRoZSBjb252b2x1dGVkIGxvZ2ljIGhl cmUuIEl0J3MgY29ycmVjdCBJIHRoaW5rIGJ1dAo+IGZhaXJseSBoYXJkIHRvIGZvbGxvdy4gV2hh dCBhYm91dCB0aGlzIGluc3RlYWQ/Cj4gCj4gCXVuc2lnbmVkIGludCBjb250ZW50X3Byb3RlY3Rp b24gPSBjb25uX3N0YXRlLT5jb250ZW50X3Byb3RlY3Rpb247Cj4gCWJvb2wgY29udGVudF9wcm90 ZWN0aW9uX3R5cGVfY2hhbmdlZCA9Cj4gCQljb25uX3N0YXRlLT5oZGNwX2NvbnRlbnRfdHlwZSAh PSBoZGNwLT5jb250ZW50X3R5cGU7Cj4gCj4gCWlmIChjb25uX3N0YXRlLT5jb250ZW50X3Byb3Rl Y3Rpb24gPT0KPiAJCSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fVU5ERVNJUkVEIHx8Cj4g CSAgICBjb250ZW50X3Byb3RlY3Rpb25fdHlwZV9jaGFuZ2VkKQo+IAkJaW50ZWxfaGRjcF9kaXNh YmxlKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3IpKTsKPiAKPiAJLyog TWFrZSBzdXJlIHdlIHBpY2sgdXAgdHlwZSBjaGFuZ2VzICovCj4gCWlmIChjb250ZW50X3Byb3Rl Y3Rpb25fdHlwZV9jaGFuZ2VkKSB7Cj4gCQltdXRleF9sb2NrKCZoZGNwLT5tdXRleCk7Cj4gCQlo ZGNwLT52YWx1ZSA9IERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9ERVNJUkVEOwo+IAkJc2No ZWR1bGVfd29yaygmaGRjcC0+cHJvcF93b3JrKTsKPiAJCW11dGV4X3VubG9jaygmaGRjcC0+bXV0 ZXgpOwo+IAl9Cj4gCj4gCWlmIChjb25uX3N0YXRlLT5jb250ZW50X3Byb3RlY3Rpb24gPT0KPiAJ ICAgIERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9ERVNJUkVEIHx8Cj4gCSAgICBjb250ZW50 X3Byb3RlY3Rpb25fdHlwZV9jaGFuZ2VkKQo+IAkJaW50ZWxfaGRjcF9lbmFibGUodG9faW50ZWxf Y29ubmVjdG9yKGNvbm5fc3RhdGUtPmNvbm5lY3RvcikpOwo+IAo+IElkZWEgaXMgdG8gb25seSBo YXZlIG9uZSBkaXNhYmxlIGFuZCBvbmUgZW5hYmxlIGNhbGwsIGFuZCBtYWtlIHN1cmUgdGhlCj4g ZW5hYmxlIHBpY2tzIHVwIG91ciBjb250ZW50IHR5cGUgY2hhbmdlIG5vIG1hdHRlciB3aGF0LiBC dXQgbm90IHN1cmUgdGhhdAo+IGl0J3MgcmVhbGx5IGNsZWFyZXIuIFRob3VnaHRzPwpTdXJlLiBN b3JlIHNpbXBsaWZpZWQuIEkgd2lsbCBhZGQgeW91ciByZXZpZXdlZC1ieSB3aXRoIHRoaXMgY2hh bmdlIHRvCnRoZSBwYXRjaC4gVGhhbmtzLgoKLSBSYW0KPiAKPiBBc2lkZSBmcm9tIHRoaXMgbGd0 bS4KPiAtRGFuaWVsCj4gCj4gCj4gPiAgfQo+ID4gIAo+ID4gIHN0YXRpYyB2b2lkIGludGVsX2Rk aV9zZXRfZmlhX2xhbmVfY291bnQoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jCj4gPiBpbmRleCBhNjEzOTFkMzc0ZTguLjc3Mjk3NDY5 N2I1YSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYwo+ ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5jCj4gPiBAQCAtMTcxNywx NCArMTcxNywxNSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGNvbXBvbmVudF9vcHMgaTkxNV9oZGNw X2NvbXBvbmVudF9vcHMgPSB7Cj4gPiAgCS51bmJpbmQgPSBpOTE1X2hkY3BfY29tcG9uZW50X3Vu YmluZCwKPiA+ICB9Owo+ID4gIAo+ID4gLXN0YXRpYyBpbmxpbmUgaW50IGluaXRpYWxpemVfaGRj cF9wb3J0X2RhdGEoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gK3N0YXRp YyBpbmxpbmUgaW50IGluaXRpYWxpemVfaGRjcF9wb3J0X2RhdGEoc3RydWN0IGludGVsX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAo+ID4gKwkJCQkJICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9oZGNwX3No aW0gKnNoaW0pCj4gPiAgewo+ID4gIAlzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCA9ICZjb25uZWN0 b3ItPmhkY3A7Cj4gPiAgCXN0cnVjdCBoZGNwX3BvcnRfZGF0YSAqZGF0YSA9ICZoZGNwLT5wb3J0 X2RhdGE7Cj4gPiAgCj4gPiAgCWRhdGEtPnBvcnQgPSBjb25uZWN0b3ItPmVuY29kZXItPnBvcnQ7 Cj4gPiAgCWRhdGEtPnBvcnRfdHlwZSA9ICh1OClIRENQX1BPUlRfVFlQRV9JTlRFR1JBVEVEOwo+ ID4gLQlkYXRhLT5wcm90b2NvbCA9ICh1OCloZGNwLT5zaGltLT5wcm90b2NvbDsKPiA+ICsJZGF0 YS0+cHJvdG9jb2wgPSAodTgpc2hpbS0+cHJvdG9jb2w7Cj4gPiAgCj4gPiAgCWRhdGEtPmsgPSAx Owo+ID4gIAlpZiAoIWRhdGEtPnN0cmVhbXMpCj4gPiBAQCAtMTc3NCwxMiArMTc3NSwxMyBAQCB2 b2lkIGludGVsX2hkY3BfY29tcG9uZW50X2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQo+ID4gIAl9Cj4gPiAgfQo+ID4gIAo+ID4gLXN0YXRpYyB2b2lkIGludGVsX2hkY3Ay X2luaXQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gK3N0YXRpYyB2b2lk IGludGVsX2hkY3AyX2luaXQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4g KwkJCSAgICAgY29uc3Qgc3RydWN0IGludGVsX2hkY3Bfc2hpbSAqc2hpbSkKPiA+ICB7Cj4gPiAg CXN0cnVjdCBpbnRlbF9oZGNwICpoZGNwID0gJmNvbm5lY3Rvci0+aGRjcDsKPiA+ICAJaW50IHJl dDsKPiA+ICAKPiA+IC0JcmV0ID0gaW5pdGlhbGl6ZV9oZGNwX3BvcnRfZGF0YShjb25uZWN0b3Ip Owo+ID4gKwlyZXQgPSBpbml0aWFsaXplX2hkY3BfcG9ydF9kYXRhKGNvbm5lY3Rvciwgc2hpbSk7 Cj4gPiAgCWlmIChyZXQpIHsKPiA+ICAJCURSTV9ERUJVR19LTVMoIk1laSBoZGNwIGRhdGEgaW5p dCBmYWlsZWRcbiIpOwo+ID4gIAkJcmV0dXJuOwo+ID4gQEAgLTE3OTgsMjUgKzE4MDAsMjggQEAg aW50IGludGVsX2hkY3BfaW5pdChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCj4g PiAgCWlmICghc2hpbSkKPiA+ICAJCXJldHVybiAtRUlOVkFMOwo+ID4gIAo+ID4gKwlpZiAoaXNf aGRjcDJfc3VwcG9ydGVkKGRldl9wcml2KSkKPiA+ICsJCWludGVsX2hkY3AyX2luaXQoY29ubmVj dG9yLCBzaGltKTsKPiA+ICsKPiA+ICAJcmV0ID0KPiA+ICAJZHJtX2Nvbm5lY3Rvcl9hdHRhY2hf Y29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KCZjb25uZWN0b3ItPmJhc2UsCj4gPiAtCQkJCQkJ CSBmYWxzZSk7Cj4gPiAtCWlmIChyZXQpCj4gPiArCQkJCQkJCSBoZGNwLT5oZGNwMl9zdXBwb3J0 ZWQpOwo+ID4gKwlpZiAocmV0KSB7Cj4gPiArCQloZGNwLT5oZGNwMl9zdXBwb3J0ZWQgPSBmYWxz ZTsKPiA+ICsJCWtmcmVlKGhkY3AtPnBvcnRfZGF0YS5zdHJlYW1zKTsKPiA+ICAJCXJldHVybiBy ZXQ7Cj4gPiArCX0KPiA+ICAKPiA+ICAJaGRjcC0+c2hpbSA9IHNoaW07Cj4gPiAgCW11dGV4X2lu aXQoJmhkY3AtPm11dGV4KTsKPiA+ICAJSU5JVF9ERUxBWUVEX1dPUksoJmhkY3AtPmNoZWNrX3dv cmssIGludGVsX2hkY3BfY2hlY2tfd29yayk7Cj4gPiAgCUlOSVRfV09SSygmaGRjcC0+cHJvcF93 b3JrLCBpbnRlbF9oZGNwX3Byb3Bfd29yayk7Cj4gPiAtCj4gPiAtCWlmIChpc19oZGNwMl9zdXBw b3J0ZWQoZGV2X3ByaXYpKQo+ID4gLQkJaW50ZWxfaGRjcDJfaW5pdChjb25uZWN0b3IpOwo+ID4g IAlpbml0X3dhaXRxdWV1ZV9oZWFkKCZoZGNwLT5jcF9pcnFfcXVldWUpOwo+ID4gIAo+ID4gIAly ZXR1cm4gMDsKPiA+ICB9Cj4gPiAgCj4gPiAtaW50IGludGVsX2hkY3BfZW5hYmxlKHN0cnVjdCBp bnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiA+ICtpbnQgaW50ZWxfaGRjcF9lbmFibGUoc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLCB1OCBjb250ZW50X3R5cGUpCj4gPiAgewo+ ID4gIAlzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCA9ICZjb25uZWN0b3ItPmhkY3A7Cj4gPiAgCXVu c2lnbmVkIGxvbmcgY2hlY2tfbGlua19pbnRlcnZhbCA9IERSTV9IRENQX0NIRUNLX1BFUklPRF9N UzsKPiA+IEBAIC0xODI3LDYgKzE4MzIsNyBAQCBpbnQgaW50ZWxfaGRjcF9lbmFibGUoc3RydWN0 IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ID4gIAo+ID4gIAltdXRleF9sb2NrKCZoZGNw LT5tdXRleCk7Cj4gPiAgCVdBUk5fT04oaGRjcC0+dmFsdWUgPT0gRFJNX01PREVfQ09OVEVOVF9Q Uk9URUNUSU9OX0VOQUJMRUQpOwo+ID4gKwloZGNwLT5jb250ZW50X3R5cGUgPSBjb250ZW50X3R5 cGU7Cj4gPiAgCj4gPiAgCS8qCj4gPiAgCSAqIENvbnNpZGVyaW5nIHRoYXQgSERDUDIuMiBpcyBt b3JlIHNlY3VyZSB0aGFuIEhEQ1AxLjQsIElmIHRoZSBzZXR1cAo+ID4gQEAgLTE4MzgsOCArMTg0 NCwxMiBAQCBpbnQgaW50ZWxfaGRjcF9lbmFibGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29u bmVjdG9yKQo+ID4gIAkJCWNoZWNrX2xpbmtfaW50ZXJ2YWwgPSBEUk1fSERDUDJfQ0hFQ0tfUEVS SU9EX01TOwo+ID4gIAl9Cj4gPiAgCj4gPiAtCS8qIFdoZW4gSERDUDIuMiBmYWlscywgSERDUDEu NCB3aWxsIGJlIGF0dGVtcHRlZCAqLwo+ID4gLQlpZiAocmV0ICYmIGludGVsX2hkY3BfY2FwYWJs ZShjb25uZWN0b3IpKSB7Cj4gPiArCS8qCj4gPiArCSAqIFdoZW4gSERDUDIuMiBmYWlscyBhbmQg Q29udGVudCBUeXBlIGlzIG5vdCBUeXBlMSwgSERDUDEuNCB3aWxsCj4gPiArCSAqIGJlIGF0dGVt cHRlZC4KPiA+ICsJICovCj4gPiArCWlmIChyZXQgJiYgaW50ZWxfaGRjcF9jYXBhYmxlKGNvbm5l Y3RvcikgJiYKPiA+ICsJICAgIGhkY3AtPmNvbnRlbnRfdHlwZSAhPSBEUk1fTU9ERV9IRENQX0NP TlRFTlRfVFlQRTEpIHsKPiA+ICAJCXJldCA9IF9pbnRlbF9oZGNwX2VuYWJsZShjb25uZWN0b3Ip Owo+ID4gIAl9Cj4gPiAgCj4gPiBAQCAtMTkyMSwxMiArMTkzMSwxNSBAQCB2b2lkIGludGVsX2hk Y3BfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gPiAgCj4g PiAgCS8qCj4gPiAgCSAqIE5vdGhpbmcgdG8gZG8gaWYgdGhlIHN0YXRlIGRpZG4ndCBjaGFuZ2Us IG9yIEhEQ1Agd2FzIGFjdGl2YXRlZCBzaW5jZQo+ID4gLQkgKiB0aGUgbGFzdCBjb21taXQKPiA+ ICsJICogdGhlIGxhc3QgY29tbWl0LiBBbmQgYWxzbyBubyBjaGFuZ2UgaW4gaGRjcCBjb250ZW50 IHR5cGUuCj4gPiAgCSAqLwo+ID4gIAlpZiAob2xkX2NwID09IG5ld19jcCB8fAo+ID4gIAkgICAg KG9sZF9jcCA9PSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fREVTSVJFRCAmJgo+ID4gLQkg ICAgIG5ld19jcCA9PSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fRU5BQkxFRCkpCj4gPiAt CQlyZXR1cm47Cj4gPiArCSAgICAgbmV3X2NwID09IERSTV9NT0RFX0NPTlRFTlRfUFJPVEVDVElP Tl9FTkFCTEVEKSkgewo+ID4gKwkJaWYgKG9sZF9zdGF0ZS0+aGRjcF9jb250ZW50X3R5cGUgPT0K PiA+ICsJCQkJbmV3X3N0YXRlLT5oZGNwX2NvbnRlbnRfdHlwZSkKPiA+ICsJCQlyZXR1cm47Cj4g PiArCX0KPiA+ICAKPiA+ICAJY3J0Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X25ld19jcnRjX3N0 YXRlKG5ld19zdGF0ZS0+c3RhdGUsCj4gPiAgCQkJCQkJICAgbmV3X3N0YXRlLT5jcnRjKTsKPiA+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmgKPiA+IGluZGV4IGJlOGRhODVjODY2YS4uMTM1NTVi MDU0OTMwIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRjcC5o Cj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmgKPiA+IEBAIC0yMSw3 ICsyMSw3IEBAIHZvaWQgaW50ZWxfaGRjcF9hdG9taWNfY2hlY2soc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwKPiA+ICAJCQkgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpu ZXdfc3RhdGUpOwo+ID4gIGludCBpbnRlbF9oZGNwX2luaXQoc3RydWN0IGludGVsX2Nvbm5lY3Rv ciAqY29ubmVjdG9yLAo+ID4gIAkJICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9oZGNwX3NoaW0gKmhk Y3Bfc2hpbSk7Cj4gPiAtaW50IGludGVsX2hkY3BfZW5hYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0 b3IgKmNvbm5lY3Rvcik7Cj4gPiAraW50IGludGVsX2hkY3BfZW5hYmxlKHN0cnVjdCBpbnRlbF9j b25uZWN0b3IgKmNvbm5lY3RvciwgdTggY29udGVudF90eXBlKTsKPiA+ICBpbnQgaW50ZWxfaGRj cF9kaXNhYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7Cj4gPiAgYm9vbCBp c19oZGNwX3N1cHBvcnRlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0g cG9ydCBwb3J0KTsKPiA+ICBib29sIGludGVsX2hkY3BfY2FwYWJsZShzdHJ1Y3QgaW50ZWxfY29u bmVjdG9yICpjb25uZWN0b3IpOwo+ID4gLS0gCj4gPiAyLjE5LjEKPiA+IAo+IAo+IC0tIAo+IERh bmllbCBWZXR0ZXIKPiBTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KPiBodHRw Oi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWw=