From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [v10 01/12] drm: Add HDR source metadata property Date: Wed, 15 May 2019 22:45:41 +0300 Message-ID: <20190515194541.GJ24299@intel.com> References: <1557855394-12214-1-git-send-email-uma.shankar@intel.com> <1557855394-12214-2-git-send-email-uma.shankar@intel.com> <20190515191015.GD24299@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: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jonas Karlman Cc: "dcastagna@chromium.org" , "intel-gfx@lists.freedesktop.org" , "emil.l.velikov@gmail.com" , "dri-devel@lists.freedesktop.org" , Uma Shankar , "seanpaul@chromium.org" List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBNYXkgMTUsIDIwMTkgYXQgMDc6MzM6MTBQTSArMDAwMCwgSm9uYXMgS2FybG1hbiB3 cm90ZToKPiBPbiAyMDE5LTA1LTE1IDIxOjEwLCBWaWxsZSBTeXJqw6Rsw6Qgd3JvdGU6Cj4gPiBP biBUdWUsIE1heSAxNCwgMjAxOSBhdCAxMTowNjoyM1BNICswNTMwLCBVbWEgU2hhbmthciB3cm90 ZToKPiA+PiBUaGlzIHBhdGNoIGFkZHMgYSBibG9iIHByb3BlcnR5IHRvIGdldCBIRFIgbWV0YWRh dGEKPiA+PiBpbmZvcm1hdGlvbiBmcm9tIHVzZXJzcGFjZS4gVGhpcyB3aWxsIGJlIHNlbmQgYXMg cGFydAo+ID4+IG9mIEFWSSBJbmZvZnJhbWUgdG8gcGFuZWwuCj4gPj4KPiA+PiBJdCBhbHNvIGlt cGxlbWVudHMgZ2V0KCkgYW5kIHNldCgpIGZ1bmN0aW9ucyBmb3IgSERSIG91dHB1dAo+ID4+IG1l dGFkYXRhIHByb3BlcnR5LlRoZSBibG9iIGRhdGEgaXMgcmVjZWl2ZWQgZnJvbSB1c2Vyc3BhY2Ug YW5kCj4gPj4gc2F2ZWQgaW4gY29ubmVjdG9yIHN0YXRlLCB0aGUgc2FtZSBpcyByZXR1cm5lZCBh cyBibG9iIGluIGdldAo+ID4+IHByb3BlcnR5IGNhbGwgdG8gdXNlcnNwYWNlLgo+ID4+Cj4gPj4g djI6IFJlYmFzZSBhbmQgbW9kaWZpZWQgdGhlIG1ldGFkYXRhIHN0cnVjdHVyZSBlbGVtZW50cwo+ ID4+IGFzIHBlciBWaWxsZSdzIFBPQyBjaGFuZ2VzLgo+ID4+Cj4gPj4gdjM6IE5vIENoYW5nZQo+ ID4+Cj4gPj4gdjQ6IEFkZHJlc3NlZCBTaGFzaGFuaydzIHJldmlldyBjb21tZW50cwo+ID4+Cj4g Pj4gdjU6IFJlYmFzZS4KPiA+Pgo+ID4+IHY2OiBBZGRyZXNzZWQgQnJpYW4gU3RhcmtleSdzIHJl dmlldyBjb21tZW50cywgZGVmaW5lZAo+ID4+IG5ldyBzdHJ1Y3R1cmUgd2l0aCBoZWFkZXIgZm9y IGR5bmFtaWMgbWV0YWRhdGEgc2NhbGFiaWxpdHkuCj4gPj4gTWVyZ2UgZ2V0L3NldCBwcm9wZXJ0 eSBmdW5jdGlvbnMgZm9yIG1ldGFkYXRhIGluIHRoaXMgcGF0Y2guCj4gPj4KPiA+PiB2NzogQWRk cmVzc2VkIEpvbmFzIEthcmxtYW4gcmV2aWV3IGNvbW1lbnRzIGFuZCBkZWZpbmVkIHNlcGFyYXRl Cj4gPj4gc3RydWN0dXJlIGZvciBpbmZvZnJhbWUgdG8gYmV0dGVyIGFsaWduIHdpdGggQ1RBIDg2 MS5HIHNwZWMuIEFkZGVkCj4gPj4gU2hhc2hhbmsncyBSQi4KPiA+Pgo+ID4+IHY4OiBBZGRyZXNz ZWQgVmlsbGUncyByZXZpZXcgY29tbWVudHMuIE1vdmVkIHNpbmsgbWV0YWRhdGEgc3RydWN0dXJl Cj4gPj4gb3V0IG9mIHVhcGkgaGVhZGVycyBhcyBzdWdnZXN0ZWQgYnkgSm9uYXMgS2FybG1hbi4K PiA+Pgo+ID4+IHY5OiBSZWJhc2UgYW5kIGFkZHJlc3NlZCBKb25hcyBLYXJsbWFuIHJldmlldyBj b21tZW50cy4KPiA+Pgo+ID4+IFNpZ25lZC1vZmYtYnk6IFVtYSBTaGFua2FyIDx1bWEuc2hhbmth ckBpbnRlbC5jb20+Cj4gPj4gUmV2aWV3ZWQtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsu c2hhcm1hQGludGVsLmNvbT4KPiA+PiAtLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9t aWMuYyAgICAgIHwgIDIgKysKPiA+PiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5j IHwgMTMgKysrKysrKysrKysrKwo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5j ICAgfCAgNiArKysrKysKPiA+PiAgaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAgICAgIHwg MTEgKysrKysrKysrKysKPiA+PiAgaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmlnLmggICAgIHwg IDcgKysrKysrKwo+ID4+ICBpbmNsdWRlL2xpbnV4L2hkbWkuaCAgICAgICAgICAgICAgfCAyNiAr KysrKysrKysrKysrKysrKysrKysrKysrKwo+ID4+ICBpbmNsdWRlL3VhcGkvZHJtL2RybV9tb2Rl LmggICAgICAgfCAyMyArKysrKysrKysrKysrKysrKysrKysrKwo+ID4+ICA3IGZpbGVzIGNoYW5n ZWQsIDg4IGluc2VydGlvbnMoKykKPiA+Pgo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+ID4+IGluZGV4 IGY0OTI0Y2IuLjBkMjcxOTUgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWMuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiA+PiBAQCAt OTI1LDYgKzkyNSw4IEBAIHN0YXRpYyB2b2lkIGRybV9hdG9taWNfY29ubmVjdG9yX3ByaW50X3N0 YXRlKHN0cnVjdCBkcm1fcHJpbnRlciAqcCwKPiA+PiAgCj4gPj4gIAlkcm1fcHJpbnRmKHAsICJj b25uZWN0b3JbJXVdOiAlc1xuIiwgY29ubmVjdG9yLT5iYXNlLmlkLCBjb25uZWN0b3ItPm5hbWUp Owo+ID4+ICAJZHJtX3ByaW50ZihwLCAiXHRjcnRjPSVzXG4iLCBzdGF0ZS0+Y3J0YyA/IHN0YXRl LT5jcnRjLT5uYW1lIDogIihudWxsKSIpOwo+ID4+ICsJZHJtX3ByaW50ZihwLCAiXHRoZHJfbWV0 YWRhdGFfY2hhbmdlZD0lZFxuIiwKPiA+PiArCQkgICBzdGF0ZS0+aGRyX21ldGFkYXRhX2NoYW5n ZWQpOwo+ID4+ICAKPiA+PiAgCWlmIChjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlID09IERSTV9N T0RFX0NPTk5FQ1RPUl9XUklURUJBQ0spCj4gPj4gIAkJaWYgKHN0YXRlLT53cml0ZWJhY2tfam9i ICYmIHN0YXRlLT53cml0ZWJhY2tfam9iLT5mYikKPiA+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2RybV9hdG9taWNfdWFwaS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfdWFw aS5jCj4gPj4gaW5kZXggNDEzMWU2Ni4uNGFhODJjOTEgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWNfdWFwaS5jCj4gPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWNfdWFwaS5jCj4gPj4gQEAgLTY3Niw2ICs2NzYsOCBAQCBzdGF0aWMgaW50IGRybV9h dG9taWNfY29ubmVjdG9yX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yLAo+ID4+ICB7Cj4gPj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY29ubmVjdG9yLT5k ZXY7Cj4gPj4gIAlzdHJ1Y3QgZHJtX21vZGVfY29uZmlnICpjb25maWcgPSAmZGV2LT5tb2RlX2Nv bmZpZzsKPiA+PiArCWJvb2wgcmVwbGFjZWQgPSBmYWxzZTsKPiA+PiArCWludCByZXQ7Cj4gPj4g IAo+ID4+ICAJaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+cHJvcF9jcnRjX2lkKSB7Cj4gPj4gIAkJ c3RydWN0IGRybV9jcnRjICpjcnRjID0gZHJtX2NydGNfZmluZChkZXYsIGZpbGVfcHJpdiwgdmFs KTsKPiA+PiBAQCAtNzI2LDYgKzcyOCwxNCBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY29ubmVj dG9yX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4+ICAJ CSAqLwo+ID4+ICAJCWlmIChzdGF0ZS0+bGlua19zdGF0dXMgIT0gRFJNX0xJTktfU1RBVFVTX0dP T0QpCj4gPj4gIAkJCXN0YXRlLT5saW5rX3N0YXR1cyA9IHZhbDsKPiA+PiArCX0gZWxzZSBpZiAo cHJvcGVydHkgPT0gY29uZmlnLT5oZHJfb3V0cHV0X21ldGFkYXRhX3Byb3BlcnR5KSB7Cj4gPj4g KwkJcmV0ID0gZHJtX2F0b21pY19yZXBsYWNlX3Byb3BlcnR5X2Jsb2JfZnJvbV9pZChkZXYsCj4g Pj4gKwkJCQkmc3RhdGUtPmhkcl9vdXRwdXRfbWV0YWRhdGEsCj4gPj4gKwkJCQl2YWwsCj4gPj4g KwkJCQktMSwgc2l6ZW9mKHN0cnVjdCBoZHJfb3V0cHV0X21ldGFkYXRhKSwKPiA+IFRob3NlIGZ1 bmN0aW9uIGFyZ3VtZW50cyBhcmUgbm9uc2VzbmUgZm9yIGEgYmxvYiB0aGF0IGlzbid0IGFuIGFy cmF5Lgo+ID4KPiA+PiArCQkJCSZyZXBsYWNlZCk7Cj4gPj4gKwkJc3RhdGUtPmhkcl9tZXRhZGF0 YV9jaGFuZ2VkIHw9IHJlcGxhY2VkOwo+ID4+ICsJCXJldHVybiByZXQ7Cj4gPj4gIAl9IGVsc2Ug aWYgKHByb3BlcnR5ID09IGNvbmZpZy0+YXNwZWN0X3JhdGlvX3Byb3BlcnR5KSB7Cj4gPj4gIAkJ c3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvID0gdmFsOwo+ID4+ICAJfSBlbHNlIGlmIChwcm9w ZXJ0eSA9PSBjb25maWctPmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSkgewo+ID4+IEBAIC04MTQsNiAr ODI0LDkgQEAgc3RhdGljIGludCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+PiAgCQkqdmFsID0gc3RhdGUtPmNvbG9y c3BhY2U7Cj4gPj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+c2NhbGluZ19t b2RlX3Byb3BlcnR5KSB7Cj4gPj4gIAkJKnZhbCA9IHN0YXRlLT5zY2FsaW5nX21vZGU7Cj4gPj4g Kwl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+aGRyX291dHB1dF9tZXRhZGF0YV9wcm9w ZXJ0eSkgewo+ID4+ICsJCSp2YWwgPSBzdGF0ZS0+aGRyX291dHB1dF9tZXRhZGF0YSA/Cj4gPj4g KwkJCXN0YXRlLT5oZHJfb3V0cHV0X21ldGFkYXRhLT5iYXNlLmlkIDogMDsKPiA+PiAgCX0gZWxz ZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5jb250ZW50X3Byb3RlY3Rpb25fcHJvcGVydHkpIHsK PiA+PiAgCQkqdmFsID0gc3RhdGUtPmNvbnRlbnRfcHJvdGVjdGlvbjsKPiA+PiAgCX0gZWxzZSBp ZiAocHJvcGVydHkgPT0gY29uZmlnLT53cml0ZWJhY2tfZmJfaWRfcHJvcGVydHkpIHsKPiA+PiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fY29ubmVjdG9yLmMKPiA+PiBpbmRleCAxMWZjZDI1Li5jOWFjOGI5IDEwMDY0NAo+ ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiA+PiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gPj4gQEAgLTEwNTEsNiArMTA1MSwxMiBAQCBp bnQgZHJtX2Nvbm5lY3Rvcl9jcmVhdGVfc3RhbmRhcmRfcHJvcGVydGllcyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQo+ID4+ICAJCXJldHVybiAtRU5PTUVNOwo+ID4+ICAJZGV2LT5tb2RlX2NvbmZp Zy5ub25fZGVza3RvcF9wcm9wZXJ0eSA9IHByb3A7Cj4gPj4gIAo+ID4+ICsJcHJvcCA9IGRybV9w cm9wZXJ0eV9jcmVhdGUoZGV2LCBEUk1fTU9ERV9QUk9QX0JMT0IsCj4gPj4gKwkJCQkgICAiSERS X09VVFBVVF9NRVRBREFUQSIsIDApOwo+ID4+ICsJaWYgKCFwcm9wKQo+ID4+ICsJCXJldHVybiAt RU5PTUVNOwo+ID4+ICsJZGV2LT5tb2RlX2NvbmZpZy5oZHJfb3V0cHV0X21ldGFkYXRhX3Byb3Bl cnR5ID0gcHJvcDsKPiA+PiArCj4gPj4gIAlyZXR1cm4gMDsKPiA+PiAgfQo+ID4+ICAKPiA+PiBk aWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oIGIvaW5jbHVkZS9kcm0vZHJt X2Nvbm5lY3Rvci5oCj4gPj4gaW5kZXggZTI1N2I4Ny4uNTRkYWE1NCAxMDA2NDQKPiA+PiAtLS0g YS9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKPiA+PiArKysgYi9pbmNsdWRlL2RybS9kcm1f Y29ubmVjdG9yLmgKPiA+PiBAQCAtNjAzLDYgKzYwMywxMyBAQCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rv cl9zdGF0ZSB7Cj4gPj4gIAkgKiBhbmQgdGhlIGNvbm5lY3RvciBicGMgbGltaXRhdGlvbnMgb2J0 YWluZWQgZnJvbSBlZGlkLgo+ID4+ICAJICovCj4gPj4gIAl1OCBtYXhfYnBjOwo+ID4+ICsKPiA+ PiArCS8qKgo+ID4+ICsJICogQGhkcl9vdXRwdXRfbWV0YWRhdGE6Cj4gPj4gKwkgKiBEUk0gYmxv YiBwcm9wZXJ0eSBmb3IgSERSIG91dHB1dCBtZXRhZGF0YQo+ID4+ICsJICovCj4gPj4gKwlzdHJ1 Y3QgZHJtX3Byb3BlcnR5X2Jsb2IgKmhkcl9vdXRwdXRfbWV0YWRhdGE7Cj4gPj4gKwl1OCBoZHJf bWV0YWRhdGFfY2hhbmdlZCA6IDE7Cj4gPiBJIHRoaW5rIHRoZSBjaGFuZ2VkIGZsYWcgaXMgbm93 IHVudXNlZC4gU2hvdWxkIGJlIGRyb3BwZWQgaWYgc28uCj4gCj4gSSBhbSB1c2luZyB0aGlzIGNo YW5nZWQgZmxhZyBpbiBteSBkdy1oZG1pIEhEUiBwYXRjaCBbMV0gdG8gZm9yY2Ugc2V0IG1vZGVf Y2hhbmdlZC4KPiAKPiBpZiAobmV3X3N0YXRlLT5oZHJfbWV0YWRhdGFfY2hhbmdlZCkKPiDCoMKg wqAgY3J0Y19zdGF0ZS0+bW9kZV9jaGFuZ2VkID0gdHJ1ZTsKPiAKPiBNYXliZSB0aGlzIGlzIGJh ZCBwcmFjdGljZSBhbmQgc2hvdWxkIGJlIGhhbmRsZWQgaW4gc29tZSBvdGhlciB3YXk/CgpDb3Vs ZCBqdXN0IGNoZWNrIG9sZCBtZXRhZGF0YSAhPSBuZXcgbWV0YWRhdGEuIFRoZSBpOTE1IHBhdGNo IGV2ZW4KbWVtY21wKClzIHRoZSB0aGluZywgYnV0IEkgdGhpbmsgdGhhdCdzIHByb2JhYmx5IG92 ZXJkb2luZyBpdCBzaW5jZQp3ZSBhbnl3YXkgZG93bmdyYWRlIHRoZSBtb2Rlc2V0IHRvIGEgZmFz dHNldCB3aGVuZXZlciBwb3NzaWJsZS4KClRoZSBjb3JlIGRvZXNuJ3QgbWVtY21wKCkgZWl0aGVy IElJUkMsIHNvIGhkcl9tZXRhZGF0YV9jaGFuZ2VkIHNob3VsZApiZSBlcXVhbCB0byBqdXN0IGNv bXBhcmluZyB0aGUgb2xkIGFuZCBuZXcgYmxvYiBwb2ludGVycy4KCj4gCj4gWzFdIGh0dHBzOi8v Z2l0aHViLmNvbS9Ld2lib28vbGludXgtcm9ja2NoaXAvY29tbWl0L2E5Y2NlYTZkM2Q1MTAwMWY2 YjRhYjlhMWZiNjAwYTM4ZTUxN2I5Y2UKPiAKPiBSZWdhcmRzLAo+IEpvbmFzCj4gPgo+ID4+ICB9 Owo+ID4+ICAKPiA+PiAgLyoqCj4gPj4gQEAgLTEyMzcsNiArMTI0NCwxMCBAQCBzdHJ1Y3QgZHJt X2Nvbm5lY3RvciB7Cj4gPj4gIAkgKiAmZHJtX21vZGVfY29uZmlnLmNvbm5lY3Rvcl9mcmVlX3dv cmsuCj4gPj4gIAkgKi8KPiA+PiAgCXN0cnVjdCBsbGlzdF9ub2RlIGZyZWVfbm9kZTsKPiA+PiAr Cj4gPj4gKwkvKiBIRFIgbWV0ZGF0YSAqLwo+ID4+ICsJc3RydWN0IGhkcl9vdXRwdXRfbWV0YWRh dGEgaGRyX291dHB1dF9tZXRhZGF0YTsKPiA+PiArCXN0cnVjdCBoZHJfc2lua19tZXRhZGF0YSBo ZHJfc2lua19tZXRhZGF0YTsKPiA+PiAgfTsKPiA+PiAgCj4gPj4gICNkZWZpbmUgb2JqX3RvX2Nv bm5lY3Rvcih4KSBjb250YWluZXJfb2YoeCwgc3RydWN0IGRybV9jb25uZWN0b3IsIGJhc2UpCj4g Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oIGIvaW5jbHVkZS9k cm0vZHJtX21vZGVfY29uZmlnLmgKPiA+PiBpbmRleCA1NzY0ZWUzLi41ODI3OGNjIDEwMDY0NAo+ ID4+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oCj4gPj4gKysrIGIvaW5jbHVk ZS9kcm0vZHJtX21vZGVfY29uZmlnLmgKPiA+PiBAQCAtODQyLDYgKzg0MiwxMyBAQCBzdHJ1Y3Qg ZHJtX21vZGVfY29uZmlnIHsKPiA+PiAgCSAqLwo+ID4+ICAJc3RydWN0IGRybV9wcm9wZXJ0eSAq Y29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5Owo+ID4+ICAKPiA+PiArCS8qKgo+ID4+ICsJICog aGRyX291dHB1dF9tZXRhZGF0YV9wcm9wZXJ0eTogQ29ubmVjdG9yIHByb3BlcnR5IGNvbnRhaW5p bmcgaGRyCj4gPj4gKwkgKiBtZXRhdGRhLiBUaGlzIHdpbGwgYmUgcHJvdmlkZWQgYnkgdXNlcnNw YWNlIGNvbXBvc2l0b3JzIGJhc2VkCj4gPj4gKwkgKiBvbiBIRFIgY29udGVudAo+ID4+ICsJICov Cj4gPj4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpoZHJfb3V0cHV0X21ldGFkYXRhX3Byb3BlcnR5 Owo+ID4+ICsKPiA+PiAgCS8qIGR1bWIgaW9jdGwgcGFyYW1ldGVycyAqLwo+ID4+ICAJdWludDMy X3QgcHJlZmVycmVkX2RlcHRoLCBwcmVmZXJfc2hhZG93Owo+ID4+ICAKPiA+PiBkaWZmIC0tZ2l0 IGEvaW5jbHVkZS9saW51eC9oZG1pLmggYi9pbmNsdWRlL2xpbnV4L2hkbWkuaAo+ID4+IGluZGV4 IDkyN2FkNjQuLjY3ODA0NzYgMTAwNjQ0Cj4gPj4gLS0tIGEvaW5jbHVkZS9saW51eC9oZG1pLmgK PiA+PiArKysgYi9pbmNsdWRlL2xpbnV4L2hkbWkuaAo+ID4+IEBAIC0xNTIsNiArMTUyLDE2IEBA IGVudW0gaGRtaV9jb250ZW50X3R5cGUgewo+ID4+ICAJSERNSV9DT05URU5UX1RZUEVfR0FNRSwK PiA+PiAgfTsKPiA+PiAgCj4gPj4gK2VudW0gaGRtaV9tZXRhZGF0YV90eXBlIHsKPiA+PiArCUhE TUlfU1RBVElDX01FVEFEQVRBX1RZUEUxID0gMSwKPiA+PiArfTsKPiA+PiArCj4gPj4gK2VudW0g aGRtaV9lb3RmIHsKPiA+PiArCUhETUlfRU9URl9UUkFESVRJT05BTF9HQU1NQV9TRFIsCj4gPj4g KwlIRE1JX0VPVEZfVFJBRElUSU9OQUxfR0FNTUFfSERSLAo+ID4+ICsJSERNSV9FT1RGX1NNUFRF X1NUMjA4NCwKPiA+PiArfTsKPiA+PiArCj4gPj4gIHN0cnVjdCBoZG1pX2F2aV9pbmZvZnJhbWUg ewo+ID4+ICAJZW51bSBoZG1pX2luZm9mcmFtZV90eXBlIHR5cGU7Cj4gPj4gIAl1bnNpZ25lZCBj aGFyIHZlcnNpb247Cj4gPj4gQEAgLTMyMCw2ICszMzAsMjIgQEAgc3RydWN0IGhkbWlfdmVuZG9y X2luZm9mcmFtZSB7Cj4gPj4gIAl1bnNpZ25lZCBpbnQgczNkX2V4dF9kYXRhOwo+ID4+ICB9Owo+ ID4+ICAKPiA+PiArLyogSERSIE1ldGFkYXRhIGFzIHBlciA4NjEuRyBzcGVjICovCj4gPj4gK3N0 cnVjdCBoZHJfc3RhdGljX21ldGFkYXRhIHsKPiA+PiArCV9fdTggZW90ZjsKPiA+PiArCV9fdTgg bWV0YWRhdGFfdHlwZTsKPiA+PiArCV9fdTE2IG1heF9jbGw7Cj4gPj4gKwlfX3UxNiBtYXhfZmFs bDsKPiA+PiArCV9fdTE2IG1pbl9jbGw7Cj4gPj4gK307Cj4gPj4gKwo+ID4+ICtzdHJ1Y3QgaGRy X3NpbmtfbWV0YWRhdGEgewo+ID4+ICsJX191MzIgbWV0YWRhdGFfdHlwZTsKPiA+PiArCXVuaW9u IHsKPiA+PiArCQlzdHJ1Y3QgaGRyX3N0YXRpY19tZXRhZGF0YSBoZG1pX3R5cGUxOwo+ID4+ICsJ fTsKPiA+PiArfTsKPiA+PiArCj4gPj4gIGludCBoZG1pX3ZlbmRvcl9pbmZvZnJhbWVfaW5pdChz dHJ1Y3QgaGRtaV92ZW5kb3JfaW5mb2ZyYW1lICpmcmFtZSk7Cj4gPj4gIHNzaXplX3QgaGRtaV92 ZW5kb3JfaW5mb2ZyYW1lX3BhY2soc3RydWN0IGhkbWlfdmVuZG9yX2luZm9mcmFtZSAqZnJhbWUs Cj4gPj4gIAkJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCBzaXplKTsKPiA+PiBkaWZmIC0tZ2l0 IGEvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9k ZS5oCj4gPj4gaW5kZXggODNjZDE2My4uOTk3YTdlMCAxMDA2NDQKPiA+PiAtLS0gYS9pbmNsdWRl L3VhcGkvZHJtL2RybV9tb2RlLmgKPiA+PiArKysgYi9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2Rl LmgKPiA+PiBAQCAtNjMwLDYgKzYzMCwyOSBAQCBzdHJ1Y3QgZHJtX2NvbG9yX2x1dCB7Cj4gPj4g IAlfX3UxNiByZXNlcnZlZDsKPiA+PiAgfTsKPiA+PiAgCj4gPj4gKy8qIEhEUiBNZXRhZGF0YSBJ bmZvZnJhbWUgYXMgcGVyIDg2MS5HIHNwZWMgKi8KPiA+PiArc3RydWN0IGhkcl9tZXRhZGF0YV9p bmZvZnJhbWUgewo+ID4+ICsJX191OCBlb3RmOwo+ID4+ICsJX191OCBtZXRhZGF0YV90eXBlOwo+ ID4+ICsJc3RydWN0IHsKPiA+PiArCQlfX3UxNiB4LCB5Owo+ID4+ICsJCX0gZGlzcGxheV9wcmlt YXJpZXNbM107Cj4gPj4gKwlzdHJ1Y3Qgewo+ID4+ICsJCV9fdTE2IHgsIHk7Cj4gPj4gKwkJfSB3 aGl0ZV9wb2ludDsKPiA+PiArCV9fdTE2IG1heF9kaXNwbGF5X21hc3RlcmluZ19sdW1pbmFuY2U7 Cj4gPj4gKwlfX3UxNiBtaW5fZGlzcGxheV9tYXN0ZXJpbmdfbHVtaW5hbmNlOwo+ID4+ICsJX191 MTYgbWF4X2NsbDsKPiA+PiArCV9fdTE2IG1heF9mYWxsOwo+ID4+ICt9Owo+ID4+ICsKPiA+PiAr c3RydWN0IGhkcl9vdXRwdXRfbWV0YWRhdGEgewo+ID4+ICsJX191MzIgbWV0YWRhdGFfdHlwZTsK PiA+PiArCXVuaW9uIHsKPiA+PiArCQlzdHJ1Y3QgaGRyX21ldGFkYXRhX2luZm9mcmFtZSBoZG1p X21ldGFkYXRhX3R5cGUxOwo+ID4+ICsJfTsKPiA+PiArfTsKPiA+PiArCj4gPj4gICNkZWZpbmUg RFJNX01PREVfUEFHRV9GTElQX0VWRU5UIDB4MDEKPiA+PiAgI2RlZmluZSBEUk1fTU9ERV9QQUdF X0ZMSVBfQVNZTkMgMHgwMgo+ID4+ICAjZGVmaW5lIERSTV9NT0RFX1BBR0VfRkxJUF9UQVJHRVRf QUJTT0xVVEUgMHg0Cj4gPj4gLS0gCj4gPj4gMS45LjEKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50 ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRl dmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs