From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v5 04/12] drm/i915: Attach content type property Date: Tue, 23 Apr 2019 10:11:48 +0200 Message-ID: <20190423081148.GC13337@phenom.ffwll.local> References: <20190418085805.5648-1-ramalingam.c@intel.com> <20190418085805.5648-5-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20190418085805.5648-5-ramalingam.c@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Ramalingam C Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, gwan-gyeong.mun@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBBcHIgMTgsIDIwMTkgYXQgMDI6Mjc6NTdQTSArMDUzMCwgUmFtYWxpbmdhbSBDIHdy b3RlOgo+IEF0dGFjaGVzIHRoZSBjb250ZW50IHR5cGUgcHJvcGVydHkgZm9yIEhEQ1AyLjIgY2Fw YWJsZSBjb25uZWN0b3JzLgo+IAo+IEltcGxlbWVudHMgdGhlIHVwZGF0ZSBvZiBjb250ZW50IHR5 cGUgZnJvbSBwcm9wZXJ0eSBhbmQgYXBwbHkgdGhlCj4gcmVzdHJpY3Rpb24gb24gSERDUCB2ZXJz aW9uIHNlbGVjdGlvbi4KPiAKPiB2MjoKPiAgIHMvY3BfY29udGVudF90eXBlL2NvbnRlbnRfcHJv dGVjdGlvbl90eXBlIFtkYW5pZWxdCj4gICBkaXNhYmxlIGF0IGhkY3BfYXRvbWljX2NoZWNrIHRv IGF2b2lkIGNoZWNrIGF0IGF0b21pY19zZXRfcHJvcGVydHkKPiAJW01hYXJ0ZW5dCj4gdjM6Cj4g ICBzL2NvbnRlbnRfcHJvdGVjdGlvbl90eXBlL2hkY3BfY29udGVudF90eXBlIFtQZWtrYV0KPiB2 NDoKPiAgIGhkY3AgZGlzYWJsZSBpbmNhc2Ugb2YgdHlwZSBjaGFuZ2UgaXMgbW92ZWQgaW50byBj b21taXQgW2RhbmllbF0uCj4gCj4gU2lnbmVkLW9mZi1ieTogUmFtYWxpbmdhbSBDIDxyYW1hbGlu Z2FtLmNAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGku YyAgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKystLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfaGRjcC5jIHwgNDMgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmggfCAgMiArLQo+ICAzIGZpbGVzIGNoYW5n ZWQsIDYzIGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RkaS5jCj4gaW5kZXggMjRmOTEwNmVmY2M2Li5kZDliZWE4NDA5MzcgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kZGkuYwo+IEBAIC0zNDc2LDcgKzM0NzYsOCBAQCBzdGF0aWMgdm9pZCBp bnRlbF9lbmFibGVfZGRpKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJLyogRW5h YmxlIGhkY3AgaWYgaXQncyBkZXNpcmVkICovCj4gIAlpZiAoY29ubl9zdGF0ZS0+Y29udGVudF9w cm90ZWN0aW9uID09Cj4gIAkgICAgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0RFU0lSRUQp Cj4gLQkJaW50ZWxfaGRjcF9lbmFibGUodG9faW50ZWxfY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNv bm5lY3RvcikpOwo+ICsJCWludGVsX2hkY3BfZW5hYmxlKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25u X3N0YXRlLT5jb25uZWN0b3IpLAo+ICsJCQkJICAodTgpY29ubl9zdGF0ZS0+aGRjcF9jb250ZW50 X3R5cGUpOwo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBpbnRlbF9kaXNhYmxlX2RkaV9kcChzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiBAQCAtMzU0NSwxNSArMzU0Niw0NCBAQCBzdGF0 aWMgdm9pZCBpbnRlbF9kZGlfdXBkYXRlX3BpcGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4gIAkJCQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ ICAJCQkJICBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSkKPiAg ewo+ICsJc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yID0KPiArCQkJCXRvX2ludGVs X2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3IpOwo+ICsJc3RydWN0IGludGVsX2hkY3Ag KmhkY3AgPSAmY29ubmVjdG9yLT5oZGNwOwo+ICsJYm9vbCAgcmVfZW5hYmxlX2hkY3AgPSBmYWxz ZTsKPiArCWludCByZXQgPSAtRUlOVkFMOwo+ICsKPiAgCWlmICghaW50ZWxfY3J0Y19oYXNfdHlw ZShjcnRjX3N0YXRlLCBJTlRFTF9PVVRQVVRfSERNSSkpCj4gIAkJaW50ZWxfZGRpX3VwZGF0ZV9w aXBlX2RwKGVuY29kZXIsIGNydGNfc3RhdGUsIGNvbm5fc3RhdGUpOwo+ICAKPiArCS8qCj4gKwkg KiBEdXJpbmcgdGhlIEhEQ1AgZW5jcnlwdGlvbiBzZXNzaW9uIGlmIFR5cGUgY2hhbmdlIGlzIHJl cXVlc3RlZCwKPiArCSAqIGRpc2FibGUgdGhlIEhEQ1AgYW5kIHJlZW5hYmxlIGl0IHdpdGggbmV3 IFRZUEUgdmFsdWUuCj4gKwkgKi8KPiAgCWlmIChjb25uX3N0YXRlLT5jb250ZW50X3Byb3RlY3Rp b24gPT0KPiAtCSAgICBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fREVTSVJFRCkKPiAtCQlp bnRlbF9oZGNwX2VuYWJsZSh0b19pbnRlbF9jb25uZWN0b3IoY29ubl9zdGF0ZS0+Y29ubmVjdG9y KSk7Cj4gKwkgICAgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0VOQUJMRUQgJiYKPiArCSAg ICBjb25uX3N0YXRlLT5oZGNwX2NvbnRlbnRfdHlwZSAhPSBoZGNwLT5jb250ZW50X3R5cGUpIHsK PiArCQlpbnRlbF9oZGNwX2Rpc2FibGUodG9faW50ZWxfY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNv bm5lY3RvcikpOwo+ICsJCXJlX2VuYWJsZV9oZGNwID0gdHJ1ZTsKPiArCX0KPiArCj4gKwlpZiAo Y29ubl9zdGF0ZS0+Y29udGVudF9wcm90ZWN0aW9uID09Cj4gKwkgICAgRFJNX01PREVfQ09OVEVO VF9QUk9URUNUSU9OX0RFU0lSRUQgfHwgcmVfZW5hYmxlX2hkY3ApCj4gKwkJcmV0ID0gaW50ZWxf aGRjcF9lbmFibGUoY29ubmVjdG9yLAo+ICsJCQkJCSh1OCljb25uX3N0YXRlLT5oZGNwX2NvbnRl bnRfdHlwZSk7Cj4gIAllbHNlIGlmIChjb25uX3N0YXRlLT5jb250ZW50X3Byb3RlY3Rpb24gPT0K PiAgCQkgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX1VOREVTSVJFRCkKPiAtCQlpbnRlbF9o ZGNwX2Rpc2FibGUodG9faW50ZWxfY29ubmVjdG9yKGNvbm5fc3RhdGUtPmNvbm5lY3RvcikpOwo+ ICsJCWludGVsX2hkY3BfZGlzYWJsZShjb25uZWN0b3IpOwo+ICsKPiArCS8qCj4gKwkgKiBEdXJp bmcgVHlwZSBjaGFuZ2UgaGFuZGxpbmcgcmUtZW5hYmxpbmcgb2YgdGhlIEhEQ1AgZmFpbGVkLiBI ZW5jZQo+ICsJICogY2hhbmdlcyBzdGF0ZSBhcyBFTkFCTEVELT5ERVNJUkVELgo+ICsJICovCj4g KwlpZiAocmV0ICYmIHJlX2VuYWJsZV9oZGNwKSB7Cj4gKwkJbXV0ZXhfbG9jaygmaGRjcC0+bXV0 ZXgpOwo+ICsJCWhkY3AtPnZhbHVlID0gRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0RFU0lS RUQ7Cj4gKwkJc2NoZWR1bGVfd29yaygmaGRjcC0+cHJvcF93b3JrKTsKPiArCQltdXRleF91bmxv Y2soJmhkY3AtPm11dGV4KTsKPiArCX0KCkknbSB1bmhhcHB5IHdpdGggdGhlIGNvbnZvbHV0ZWQg bG9naWMgaGVyZS4gSXQncyBjb3JyZWN0IEkgdGhpbmsgYnV0CmZhaXJseSBoYXJkIHRvIGZvbGxv dy4gV2hhdCBhYm91dCB0aGlzIGluc3RlYWQ/CgoJdW5zaWduZWQgaW50IGNvbnRlbnRfcHJvdGVj dGlvbiA9IGNvbm5fc3RhdGUtPmNvbnRlbnRfcHJvdGVjdGlvbjsKCWJvb2wgY29udGVudF9wcm90 ZWN0aW9uX3R5cGVfY2hhbmdlZCA9CgkJY29ubl9zdGF0ZS0+aGRjcF9jb250ZW50X3R5cGUgIT0g aGRjcC0+Y29udGVudF90eXBlOwoKCWlmIChjb25uX3N0YXRlLT5jb250ZW50X3Byb3RlY3Rpb24g PT0KCQkgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX1VOREVTSVJFRCB8fAoJICAgIGNvbnRl bnRfcHJvdGVjdGlvbl90eXBlX2NoYW5nZWQpCgkJaW50ZWxfaGRjcF9kaXNhYmxlKHRvX2ludGVs X2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3IpKTsKCgkvKiBNYWtlIHN1cmUgd2UgcGlj ayB1cCB0eXBlIGNoYW5nZXMgKi8KCWlmIChjb250ZW50X3Byb3RlY3Rpb25fdHlwZV9jaGFuZ2Vk KSB7CgkJbXV0ZXhfbG9jaygmaGRjcC0+bXV0ZXgpOwoJCWhkY3AtPnZhbHVlID0gRFJNX01PREVf Q09OVEVOVF9QUk9URUNUSU9OX0RFU0lSRUQ7CgkJc2NoZWR1bGVfd29yaygmaGRjcC0+cHJvcF93 b3JrKTsKCQltdXRleF91bmxvY2soJmhkY3AtPm11dGV4KTsKCX0KCglpZiAoY29ubl9zdGF0ZS0+ Y29udGVudF9wcm90ZWN0aW9uID09CgkgICAgRFJNX01PREVfQ09OVEVOVF9QUk9URUNUSU9OX0RF U0lSRUQgfHwKCSAgICBjb250ZW50X3Byb3RlY3Rpb25fdHlwZV9jaGFuZ2VkKQoJCWludGVsX2hk Y3BfZW5hYmxlKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uX3N0YXRlLT5jb25uZWN0b3IpKTsKCklk ZWEgaXMgdG8gb25seSBoYXZlIG9uZSBkaXNhYmxlIGFuZCBvbmUgZW5hYmxlIGNhbGwsIGFuZCBt YWtlIHN1cmUgdGhlCmVuYWJsZSBwaWNrcyB1cCBvdXIgY29udGVudCB0eXBlIGNoYW5nZSBubyBt YXR0ZXIgd2hhdC4gQnV0IG5vdCBzdXJlIHRoYXQKaXQncyByZWFsbHkgY2xlYXJlci4gVGhvdWdo dHM/CgpBc2lkZSBmcm9tIHRoaXMgbGd0bS4KLURhbmllbAoKCj4gIH0KPiAgCj4gIHN0YXRpYyB2 b2lkIGludGVsX2RkaV9zZXRfZmlhX2xhbmVfY291bnQoc3RydWN0IGludGVsX2VuY29kZXIgKmVu Y29kZXIsCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYwo+IGluZGV4IGE2MTM5MWQzNzRlOC4u NzcyOTc0Njk3YjVhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hk Y3AuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYwo+IEBAIC0xNzE3 LDE0ICsxNzE3LDE1IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgY29tcG9uZW50X29wcyBpOTE1X2hk Y3BfY29tcG9uZW50X29wcyA9IHsKPiAgCS51bmJpbmQgPSBpOTE1X2hkY3BfY29tcG9uZW50X3Vu YmluZCwKPiAgfTsKPiAgCj4gLXN0YXRpYyBpbmxpbmUgaW50IGluaXRpYWxpemVfaGRjcF9wb3J0 X2RhdGEoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ICtzdGF0aWMgaW5saW5l IGludCBpbml0aWFsaXplX2hkY3BfcG9ydF9kYXRhKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNv bm5lY3RvciwKPiArCQkJCQkgICAgY29uc3Qgc3RydWN0IGludGVsX2hkY3Bfc2hpbSAqc2hpbSkK PiAgewo+ICAJc3RydWN0IGludGVsX2hkY3AgKmhkY3AgPSAmY29ubmVjdG9yLT5oZGNwOwo+ICAJ c3RydWN0IGhkY3BfcG9ydF9kYXRhICpkYXRhID0gJmhkY3AtPnBvcnRfZGF0YTsKPiAgCj4gIAlk YXRhLT5wb3J0ID0gY29ubmVjdG9yLT5lbmNvZGVyLT5wb3J0Owo+ICAJZGF0YS0+cG9ydF90eXBl ID0gKHU4KUhEQ1BfUE9SVF9UWVBFX0lOVEVHUkFURUQ7Cj4gLQlkYXRhLT5wcm90b2NvbCA9ICh1 OCloZGNwLT5zaGltLT5wcm90b2NvbDsKPiArCWRhdGEtPnByb3RvY29sID0gKHU4KXNoaW0tPnBy b3RvY29sOwo+ICAKPiAgCWRhdGEtPmsgPSAxOwo+ICAJaWYgKCFkYXRhLT5zdHJlYW1zKQo+IEBA IC0xNzc0LDEyICsxNzc1LDEzIEBAIHZvaWQgaW50ZWxfaGRjcF9jb21wb25lbnRfaW5pdChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAl9Cj4gIH0KPiAgCj4gLXN0YXRpYyB2 b2lkIGludGVsX2hkY3AyX2luaXQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ ICtzdGF0aWMgdm9pZCBpbnRlbF9oZGNwMl9pbml0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNv bm5lY3RvciwKPiArCQkJICAgICBjb25zdCBzdHJ1Y3QgaW50ZWxfaGRjcF9zaGltICpzaGltKQo+ ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxfaGRjcCAqaGRjcCA9ICZjb25uZWN0b3ItPmhkY3A7Cj4gIAlp bnQgcmV0Owo+ICAKPiAtCXJldCA9IGluaXRpYWxpemVfaGRjcF9wb3J0X2RhdGEoY29ubmVjdG9y KTsKPiArCXJldCA9IGluaXRpYWxpemVfaGRjcF9wb3J0X2RhdGEoY29ubmVjdG9yLCBzaGltKTsK PiAgCWlmIChyZXQpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJNZWkgaGRjcCBkYXRhIGluaXQgZmFp bGVkXG4iKTsKPiAgCQlyZXR1cm47Cj4gQEAgLTE3OTgsMjUgKzE4MDAsMjggQEAgaW50IGludGVs X2hkY3BfaW5pdChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCj4gIAlpZiAoIXNo aW0pCj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gIAo+ICsJaWYgKGlzX2hkY3AyX3N1cHBvcnRlZChk ZXZfcHJpdikpCj4gKwkJaW50ZWxfaGRjcDJfaW5pdChjb25uZWN0b3IsIHNoaW0pOwo+ICsKPiAg CXJldCA9Cj4gIAlkcm1fY29ubmVjdG9yX2F0dGFjaF9jb250ZW50X3Byb3RlY3Rpb25fcHJvcGVy dHkoJmNvbm5lY3Rvci0+YmFzZSwKPiAtCQkJCQkJCSBmYWxzZSk7Cj4gLQlpZiAocmV0KQo+ICsJ CQkJCQkJIGhkY3AtPmhkY3AyX3N1cHBvcnRlZCk7Cj4gKwlpZiAocmV0KSB7Cj4gKwkJaGRjcC0+ aGRjcDJfc3VwcG9ydGVkID0gZmFsc2U7Cj4gKwkJa2ZyZWUoaGRjcC0+cG9ydF9kYXRhLnN0cmVh bXMpOwo+ICAJCXJldHVybiByZXQ7Cj4gKwl9Cj4gIAo+ICAJaGRjcC0+c2hpbSA9IHNoaW07Cj4g IAltdXRleF9pbml0KCZoZGNwLT5tdXRleCk7Cj4gIAlJTklUX0RFTEFZRURfV09SSygmaGRjcC0+ Y2hlY2tfd29yaywgaW50ZWxfaGRjcF9jaGVja193b3JrKTsKPiAgCUlOSVRfV09SSygmaGRjcC0+ cHJvcF93b3JrLCBpbnRlbF9oZGNwX3Byb3Bfd29yayk7Cj4gLQo+IC0JaWYgKGlzX2hkY3AyX3N1 cHBvcnRlZChkZXZfcHJpdikpCj4gLQkJaW50ZWxfaGRjcDJfaW5pdChjb25uZWN0b3IpOwo+ICAJ aW5pdF93YWl0cXVldWVfaGVhZCgmaGRjcC0+Y3BfaXJxX3F1ZXVlKTsKPiAgCj4gIAlyZXR1cm4g MDsKPiAgfQo+ICAKPiAtaW50IGludGVsX2hkY3BfZW5hYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0 b3IgKmNvbm5lY3RvcikKPiAraW50IGludGVsX2hkY3BfZW5hYmxlKHN0cnVjdCBpbnRlbF9jb25u ZWN0b3IgKmNvbm5lY3RvciwgdTggY29udGVudF90eXBlKQo+ICB7Cj4gIAlzdHJ1Y3QgaW50ZWxf aGRjcCAqaGRjcCA9ICZjb25uZWN0b3ItPmhkY3A7Cj4gIAl1bnNpZ25lZCBsb25nIGNoZWNrX2xp bmtfaW50ZXJ2YWwgPSBEUk1fSERDUF9DSEVDS19QRVJJT0RfTVM7Cj4gQEAgLTE4MjcsNiArMTgz Miw3IEBAIGludCBpbnRlbF9oZGNwX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25u ZWN0b3IpCj4gIAo+ICAJbXV0ZXhfbG9jaygmaGRjcC0+bXV0ZXgpOwo+ICAJV0FSTl9PTihoZGNw LT52YWx1ZSA9PSBEUk1fTU9ERV9DT05URU5UX1BST1RFQ1RJT05fRU5BQkxFRCk7Cj4gKwloZGNw LT5jb250ZW50X3R5cGUgPSBjb250ZW50X3R5cGU7Cj4gIAo+ICAJLyoKPiAgCSAqIENvbnNpZGVy aW5nIHRoYXQgSERDUDIuMiBpcyBtb3JlIHNlY3VyZSB0aGFuIEhEQ1AxLjQsIElmIHRoZSBzZXR1 cAo+IEBAIC0xODM4LDggKzE4NDQsMTIgQEAgaW50IGludGVsX2hkY3BfZW5hYmxlKHN0cnVjdCBp bnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiAgCQkJY2hlY2tfbGlua19pbnRlcnZhbCA9IERS TV9IRENQMl9DSEVDS19QRVJJT0RfTVM7Cj4gIAl9Cj4gIAo+IC0JLyogV2hlbiBIRENQMi4yIGZh aWxzLCBIRENQMS40IHdpbGwgYmUgYXR0ZW1wdGVkICovCj4gLQlpZiAocmV0ICYmIGludGVsX2hk Y3BfY2FwYWJsZShjb25uZWN0b3IpKSB7Cj4gKwkvKgo+ICsJICogV2hlbiBIRENQMi4yIGZhaWxz IGFuZCBDb250ZW50IFR5cGUgaXMgbm90IFR5cGUxLCBIRENQMS40IHdpbGwKPiArCSAqIGJlIGF0 dGVtcHRlZC4KPiArCSAqLwo+ICsJaWYgKHJldCAmJiBpbnRlbF9oZGNwX2NhcGFibGUoY29ubmVj dG9yKSAmJgo+ICsJICAgIGhkY3AtPmNvbnRlbnRfdHlwZSAhPSBEUk1fTU9ERV9IRENQX0NPTlRF TlRfVFlQRTEpIHsKPiAgCQlyZXQgPSBfaW50ZWxfaGRjcF9lbmFibGUoY29ubmVjdG9yKTsKPiAg CX0KPiAgCj4gQEAgLTE5MjEsMTIgKzE5MzEsMTUgQEAgdm9pZCBpbnRlbF9oZGNwX2F0b21pY19j aGVjayhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICAKPiAgCS8qCj4gIAkgKiBO b3RoaW5nIHRvIGRvIGlmIHRoZSBzdGF0ZSBkaWRuJ3QgY2hhbmdlLCBvciBIRENQIHdhcyBhY3Rp dmF0ZWQgc2luY2UKPiAtCSAqIHRoZSBsYXN0IGNvbW1pdAo+ICsJICogdGhlIGxhc3QgY29tbWl0 LiBBbmQgYWxzbyBubyBjaGFuZ2UgaW4gaGRjcCBjb250ZW50IHR5cGUuCj4gIAkgKi8KPiAgCWlm IChvbGRfY3AgPT0gbmV3X2NwIHx8Cj4gIAkgICAgKG9sZF9jcCA9PSBEUk1fTU9ERV9DT05URU5U X1BST1RFQ1RJT05fREVTSVJFRCAmJgo+IC0JICAgICBuZXdfY3AgPT0gRFJNX01PREVfQ09OVEVO VF9QUk9URUNUSU9OX0VOQUJMRUQpKQo+IC0JCXJldHVybjsKPiArCSAgICAgbmV3X2NwID09IERS TV9NT0RFX0NPTlRFTlRfUFJPVEVDVElPTl9FTkFCTEVEKSkgewo+ICsJCWlmIChvbGRfc3RhdGUt PmhkY3BfY29udGVudF90eXBlID09Cj4gKwkJCQluZXdfc3RhdGUtPmhkY3BfY29udGVudF90eXBl KQo+ICsJCQlyZXR1cm47Cj4gKwl9Cj4gIAo+ICAJY3J0Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0 X25ld19jcnRjX3N0YXRlKG5ld19zdGF0ZS0+c3RhdGUsCj4gIAkJCQkJCSAgIG5ld19zdGF0ZS0+ Y3J0Yyk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuaAo+IGluZGV4IGJlOGRhODVjODY2YS4u MTM1NTViMDU0OTMwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hk Y3AuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuaAo+IEBAIC0yMSw3 ICsyMSw3IEBAIHZvaWQgaW50ZWxfaGRjcF9hdG9taWNfY2hlY2soc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwKPiAgCQkJICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqbmV3 X3N0YXRlKTsKPiAgaW50IGludGVsX2hkY3BfaW5pdChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpj b25uZWN0b3IsCj4gIAkJICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9oZGNwX3NoaW0gKmhkY3Bfc2hp bSk7Cj4gLWludCBpbnRlbF9oZGNwX2VuYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25u ZWN0b3IpOwo+ICtpbnQgaW50ZWxfaGRjcF9lbmFibGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAq Y29ubmVjdG9yLCB1OCBjb250ZW50X3R5cGUpOwo+ICBpbnQgaW50ZWxfaGRjcF9kaXNhYmxlKHN0 cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7Cj4gIGJvb2wgaXNfaGRjcF9zdXBwb3J0 ZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIHBvcnQgcG9ydCk7Cj4g IGJvb2wgaW50ZWxfaGRjcF9jYXBhYmxlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rv cik7Cj4gLS0gCj4gMi4xOS4xCj4gCgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVl ciwgSW50ZWwgQ29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApk cmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs