From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [v6 2/2] drm/i915/icl: Enable Plane Input CSC for YUV to RGB Conversion Date: Wed, 31 Oct 2018 16:02:09 +0200 Message-ID: <20181031140209.GQ9144@intel.com> References: <1540992931-26022-1-git-send-email-uma.shankar@intel.com> <1540992931-26022-3-git-send-email-uma.shankar@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0CC4E8997A for ; Wed, 31 Oct 2018 14:02:37 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1540992931-26022-3-git-send-email-uma.shankar@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Uma Shankar Cc: intel-gfx@lists.freedesktop.org, ville.syrjala@intel.com, maarten.lankhorst@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBPY3QgMzEsIDIwMTggYXQgMDc6MDU6MzFQTSArMDUzMCwgVW1hIFNoYW5rYXIgd3Jv dGU6Cj4gUGxhbmUgaW5wdXQgQ1NDIG5lZWRzIHRvIGJlIGVuYWJsZWQgdG8gY29udmVydCBmcmFt YnVmZmVycyBmcm9tCj4gWVVWIHRvIFJHQi4gVGhpcyBpcyBuZWVkZWQgZm9yIGJvdHRvbSAzIHBs YW5lcyBvbiBJQ0wsIHJlc3Qgb2YKPiB0aGUgcGxhbmVzIGhhdmUgaGFyZGNvZGVkIGNvbnZlcnNp b24gYW5kIHRha2VuIGNhcmUgYnkgdGhlIGxlZ2FjeQo+IGNvZGUuCj4gCj4gVGhpcyBwYXRjaCBk ZWZpbmVzIHRoZSBjby1lZmZpY2llbnQgdmFsdWVzIGZvciBZVVYgdG8gUkdCIGNvbnZlcnNpb24K PiBpbiBCVDcwOSBhbmQgQlQ2MDEgZm9ybWF0cy4gSXQgcHJvZ3JhbXMgdGhlIGNvZWZmaWNpZW50 cyBhbmQgZW5hYmxlcwo+IHRoZSBwbGFuZSBpbnB1dCBjc2MgdW5pdCBpbiBoYXJkd2FyZS4KPiAK PiBUaGlzIGhhcyBiZWVuIHZlcmlmaWVkIGFuZCB0ZXN0ZWQgYnkgTWFhcnRlbiBhbmQgdGhlIGNo YW5nZSBpcyB3b3JraW5nCj4gYXMgZXhwZWN0ZWQuCj4gCj4gdjI6IEFkZHJlc3NlZCBNYWFydGVu J3MgYW5kIFZpbGxlJ3MgcmV2aWV3IGNvbW1lbnRzIGFuZCBhZGRlZCB0aGUKPiBjb2VmZmljaWVu dHMgaW4gYSAyRCBhcnJheSBpbnN0ZWFkIG9mIGluZGVwZW5kZW50IE1hY3Jvcy4KPiAKPiB2Mzog QWRkZWQgaW5kaXZpZHVhbCBjb2VmZmljaWVudCBtYXRyaXggKDkgdmFsdWVzKSBpbnN0ZWFkIG9m IDYKPiByZWdpc3RlciB2YWx1ZXMgYXMgcGVyIE1hYXJ0ZW4ncyBjb21tZW50LiBBbHNvIGFkZHJl c2VkIGEgc2hpZnQKPiBpc3N1ZSB3aXRoIEIgY2hhbm5lbCBjb2VmZmljaWVudC4KPiAKPiB2NDog QWRkZWQgc3VwcG9ydCBmb3IgTGltaXRlZCBSYW5nZSBDb2xvciBIYW5kbGluZwo+IAo+IHY1OiBG aXhlZCBNYXR0IGFuZCBNYWFydGVuJ3MgcmV2aWV3IGNvbW1lbnRzLgo+IAo+IHY2OiBBZGRlZCBo dW1hbiByZWFkYWJsZSBtYXRyaXggdmFsdWVzIGZvciBZVVYgdG8gUkdCIENvbnZlcnNpb24gYWxv bmcKPiB3aXRoIGp1c3QgdGhlIGJzcGVjIHJlZ2lzdGVyIHZhbHVlcywgYXMgcGVyIE1hdHQncyBz dWdnZXN0aW9uLgo+IAo+IFNpZ25lZC1vZmYtYnk6IFVtYSBTaGFua2FyIDx1bWEuc2hhbmthckBp bnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMgICB8 IDEwMyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAgMjMgKysrKysrLS0KPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgICAyICsKPiAgMyBmaWxlcyBjaGFuZ2VkLCAxMjIgaW5z ZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfY29sb3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9y LmMKPiBpbmRleCA1MTI3ZGEyLi42ZGM5MDc1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2NvbG9yLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9j b2xvci5jCj4gQEAgLTU3LDYgKzU3LDE1IEBACj4gICNkZWZpbmUgQ1NDX1JHQl9UT19ZVVZfUlZf R1YgMHhiY2U4OWFkOAo+ICAjZGVmaW5lIENTQ19SR0JfVE9fWVVWX0JWIDB4MWUwODAwMDAKPiAg Cj4gKyNkZWZpbmUgIFJPRkYoeCkgICAgICAgICAgKCgoeCkgJiAweGZmZmYpIDw8IDE2KQo+ICsj ZGVmaW5lICBHT0ZGKHgpICAgICAgICAgICgoKHgpICYgMHhmZmZmKSA8PCAwKQo+ICsjZGVmaW5l ICBCT0ZGKHgpICAgICAgICAgICgoKHgpICYgMHhmZmZmKSA8PCAxNikKPiArCj4gKy8qIFByZW9m ZnNldCB2YWx1ZXMgZm9yIFlVViB0byBSR0IgQ29udmVyc2lvbiAqLwo+ICsjZGVmaW5lIFBSRU9G Rl9ZVVZfVE9fUkdCX0hJCQkweDE4MDAKPiArI2RlZmluZSBQUkVPRkZfWVVWX1RPX1JHQl9NRQkJ MHgxRjAwCj4gKyNkZWZpbmUgUFJFT0ZGX1lVVl9UT19SR0JfTE8JCTB4MTgwMAo+ICsKPiAgLyoK PiAgICogRXh0cmFjdCB0aGUgQ1NDIGNvZWZmaWNpZW50IGZyb20gYSBDVE0gY29lZmZpY2llbnQg KGluIFUzMi4zMiBmaXhlZCBwb2ludAo+ICAgKiBmb3JtYXQpLiBUaGlzIG1hY3JvIHRha2VzIHRo ZSBjb2VmZmljaWVudCB3ZSB3YW50IHRyYW5zZm9ybWVkIGFuZCB0aGUKPiBAQCAtNjQzLDYgKzY1 MiwxMDAgQEAgaW50IGludGVsX2NvbG9yX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAg CXJldHVybiAtRUlOVkFMOwo+ICB9Cj4gIAo+ICt2b2lkIGljbF9wcm9ncmFtX2lucHV0X2NzY19j b2VmZihjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiArCQkJCSBj b25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlKQo+ICt7Cj4gKwlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPQo+ICsJCXRvX2k5MTUocGxhbmVfc3RhdGUt PmJhc2UucGxhbmUtPmRldik7Cj4gKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVs X2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKPiArCWVudW0gcGlwZSBwaXBlID0gY3J0Yy0+ cGlwZTsKPiArCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmUgPQo+ICsJCXRvX2ludGVs X3BsYW5lKHBsYW5lX3N0YXRlLT5iYXNlLnBsYW5lKTsKPiArCWVudW0gcGxhbmVfaWQgcGxhbmUg PSBpbnRlbF9wbGFuZS0+aWQ7Cj4gKwo+ICsJc3RhdGljIGNvbnN0IHUxNiBpbnB1dF9jc2NfbWF0 cml4W11bOV0gPSB7Cj4gKwkJLyoKPiArCQkgKiBCVC42MDEgZnVsbCByYW5nZSBZQ2JDciAtPiBm dWxsIHJhbmdlIFJHQgo+ICsJCSAqIFRoZSBtYXRyaXggcmVxdWlyZWQgaXMgOgo+ICsJCSAqIFsx LjAwMCwgMC4wMDAsIDEuMzcxLAo+ICsJCSAqICAxLjAwMCwgLTAuMzM2LCAtMC42OTgsCj4gKwkJ ICogIDEuMDAwLCAxLjczMiwgMC4wMDAwXQo+ICsJCSAqLwo+ICsJCVtEUk1fQ09MT1JfWUNCQ1Jf QlQ2MDFdID0gewo+ICsJCQkweDdBRjgsIDB4NzgwMCwgMHgwLAo+ICsJCQkweDhCMjgsIDB4Nzgw MCwgMHg5QUMwLAo+ICsJCQkweDAsIDB4NzgwMCwgMHg3REQ4LAo+ICsJCX0sCj4gKwkJLyoKPiAr CQkgKiBCVC43MDkgZnVsbCByYW5nZSBZQ2JDciAtPiBmdWxsIHJhbmdlIFJHQgo+ICsJCSAqIFRo ZSBtYXRyaXggcmVxdWlyZWQgaXMgOgo+ICsJCSAqIFsxLjAwMCwgMC4wMDAsIDEuNTc0LAo+ICsJ CSAqICAxLjAwMCwgLTAuMTg3LCAtMC40NjgsCj4gKwkJICogIDEuMDAwLCAxLjg1NSwgMC4wMDAw XQo+ICsJCSAqLwo+ICsJCVtEUk1fQ09MT1JfWUNCQ1JfQlQ3MDldID0gewo+ICsJCQkweDdDOTgs IDB4NzgwMCwgMHgwLAo+ICsJCQkweDlFRjgsIDB4NzgwMCwgMHhBQkY4LAo+ICsJCQkweDAsIDB4 NzgwMCwgIDB4N0VEOCwKPiArCQl9LAo+ICsJfTsKPiArCj4gKwkvKiBNYXRyaXggZm9yIExpbWl0 ZWQgUmFuZ2UgdG8gRnVsbCBSYW5nZSBDb252ZXJzaW9uICovCj4gKwlzdGF0aWMgY29uc3QgdTE2 IGlucHV0X2NzY19tYXRyaXhfbHJbXVs5XSA9IHsKPiArCQkvKgo+ICsJCSAqIEJULjYwMSBMaW10 ZWQgcmFuZ2UgWUNiQ3IgLT4gZnVsbCByYW5nZSBSR0IKPiArCQkgKiBUaGUgbWF0cml4IHJlcXVp cmVkIGlzIDoKPiArCQkgKiBbMS4xNjQzODQsIDAuMDAwLCAxLjU5NjM3MCwKPiArCQkgKiAgMS4x MzgzOTMsIC0wLjM4MjUwMCwgLTAuNzk0NTk4LAo+ICsJCSAqICAxLjEzODM5MywgMS45NzE2OTYs IDAuMDAwMF0KPiArCQkgKi8KPiArCQlbRFJNX0NPTE9SX1lDQkNSX0JUNjAxXSA9IHsKPiArCQkJ MHg3Q0M4LCAweDc5NTAsIDB4MCwKPiArCQkJMHg4Q0I4LCAweDc5MTgsIDB4OUM0MCwKPiArCQkJ MHgwLCAweDc5MTgsIDB4N0ZDOCwKPiArCQl9LAo+ICsJCS8qCj4gKwkJICogQlQuNzA5IExpbWl0 ZWQgcmFuZ2UgWUNiQ3IgLT4gZnVsbCByYW5nZSBSR0IKPiArCQkgKiBUaGUgbWF0cml4IHJlcXVp cmVkIGlzIDoKPiArCQkgKiBbMS4xNjQsIDAuMDAwLCAxLjgzMzY3MSwKPiArCQkgKiAgMS4xMzgz OTMsIC0wLjIxMzI0OSwgLTAuNTMyOTA5LAo+ICsJCSAqICAxLjEzODM5MywgMi4xMTI0MDIsIDAu MDAwMF0KPiArCQkgKi8KPiArCQlbRFJNX0NPTE9SX1lDQkNSX0JUNzA5XSA9IHsKPiArCQkJMHg3 RUE4LCAweDc5NTAsIDB4MCwKPiArCQkJMHg4ODg4LCAweDc5MTgsIDB4QURBOCwKPiArCQkJMHgw LCAweDc5MTgsICAweDY4NzAsCj4gKwkJfSwKPiArCX07Cj4gKwljb25zdCB1MTYgKmNzYzsKPiAr Cj4gKwlpZiAocGxhbmVfc3RhdGUtPmJhc2UuY29sb3JfcmFuZ2UgPT0gRFJNX0NPTE9SX1lDQkNS X0ZVTExfUkFOR0UpCj4gKwkJY3NjID0gaW5wdXRfY3NjX21hdHJpeFtwbGFuZV9zdGF0ZS0+YmFz ZS5jb2xvcl9lbmNvZGluZ107Cj4gKwllbHNlCj4gKwkJY3NjID0gaW5wdXRfY3NjX21hdHJpeF9s cltwbGFuZV9zdGF0ZS0+YmFzZS5jb2xvcl9lbmNvZGluZ107Cj4gKwo+ICsJSTkxNV9XUklURShQ TEFORV9JTlBVVF9DU0NfQ09FRkYocGlwZSwgcGxhbmUsIDApLCBST0ZGKGNzY1swXSkgfAo+ICsJ CSAgIEdPRkYoY3NjWzFdKSk7Cj4gKwlJOTE1X1dSSVRFKFBMQU5FX0lOUFVUX0NTQ19DT0VGRihw aXBlLCBwbGFuZSwgMSksIEJPRkYoY3NjWzJdKSk7Cj4gKwlJOTE1X1dSSVRFKFBMQU5FX0lOUFVU X0NTQ19DT0VGRihwaXBlLCBwbGFuZSwgMiksIFJPRkYoY3NjWzNdKSB8Cj4gKwkJICAgR09GRihj c2NbNF0pKTsKPiArCUk5MTVfV1JJVEUoUExBTkVfSU5QVVRfQ1NDX0NPRUZGKHBpcGUsIHBsYW5l LCAzKSwgQk9GRihjc2NbNV0pKTsKPiArCUk5MTVfV1JJVEUoUExBTkVfSU5QVVRfQ1NDX0NPRUZG KHBpcGUsIHBsYW5lLCA0KSwgUk9GRihjc2NbNl0pIHwKPiArCQkgICBHT0ZGKGNzY1s3XSkpOwo+ ICsJSTkxNV9XUklURShQTEFORV9JTlBVVF9DU0NfQ09FRkYocGlwZSwgcGxhbmUsIDUpLCBCT0ZG KGNzY1s4XSkpOwo+ICsKPiArCUk5MTVfV1JJVEUoUExBTkVfSU5QVVRfQ1NDX1BSRU9GRihwaXBl LCBwbGFuZSwgMCksCj4gKwkJICAgUFJFT0ZGX1lVVl9UT19SR0JfSEkpOwo+ICsJSTkxNV9XUklU RShQTEFORV9JTlBVVF9DU0NfUFJFT0ZGKHBpcGUsIHBsYW5lLCAxKSwKPiArCQkgICBQUkVPRkZf WVVWX1RPX1JHQl9NRSk7Cj4gKwlJOTE1X1dSSVRFKFBMQU5FX0lOUFVUX0NTQ19QUkVPRkYocGlw ZSwgcGxhbmUsIDIpLAo+ICsJCSAgIFBSRU9GRl9ZVVZfVE9fUkdCX0xPKTsKPiArCj4gKwlJOTE1 X1dSSVRFKFBMQU5FX0lOUFVUX0NTQ19QT1NUT0ZGKHBpcGUsIHBsYW5lLCAwKSwgMHgwKTsKPiAr CUk5MTVfV1JJVEUoUExBTkVfSU5QVVRfQ1NDX1BPU1RPRkYocGlwZSwgcGxhbmUsIDEpLCAweDAp Owo+ICsJSTkxNV9XUklURShQTEFORV9JTlBVVF9DU0NfUE9TVE9GRihwaXBlLCBwbGFuZSwgMiks IDB4MCk7Cj4gK30KPiArCj4gIHZvaWQgaW50ZWxfY29sb3JfaW5pdChzdHJ1Y3QgZHJtX2NydGMg KmNydGMpCj4gIHsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5 MTUoY3J0Yy0+ZGV2KTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXgg ZmUwNDVhYi4uZDE2YTA2NCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK PiBAQCAtMzY2Niw2ICszNjY2LDcgQEAgdTMyIGdsa19wbGFuZV9jb2xvcl9jdGwoY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPQo+ICAJCXRvX2k5MTUocGxhbmVfc3RhdGUtPmJhc2UucGxhbmUtPmRl dik7Cj4gIAljb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHBsYW5lX3N0YXRlLT5i YXNlLmZiOwo+ICsJc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSA9IHRvX2ludGVsX3BsYW5lKHBs YW5lX3N0YXRlLT5iYXNlLnBsYW5lKTsKPiAgCXUzMiBwbGFuZV9jb2xvcl9jdGwgPSAwOwo+ICAK PiAgCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgMTEpIHsKPiBAQCAtMzY3NiwxMyArMzY3Nywy MyBAQCB1MzIgZ2xrX3BsYW5lX2NvbG9yX2N0bChjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSwKPiAgCXBsYW5lX2NvbG9yX2N0bCB8PSBnbGtfcGxhbmVfY29sb3JfY3Rs X2FscGhhKHBsYW5lX3N0YXRlKTsKPiAgCj4gIAlpZiAoZmItPmZvcm1hdC0+aXNfeXV2KSB7Cj4g LQkJaWYgKHBsYW5lX3N0YXRlLT5iYXNlLmNvbG9yX2VuY29kaW5nID09IERSTV9DT0xPUl9ZQ0JD Ul9CVDcwOSkKPiAtCQkJcGxhbmVfY29sb3JfY3RsIHw9IFBMQU5FX0NPTE9SX0NTQ19NT0RFX1lV VjcwOV9UT19SR0I3MDk7Cj4gLQkJZWxzZQo+IC0JCQlwbGFuZV9jb2xvcl9jdGwgfD0gUExBTkVf Q09MT1JfQ1NDX01PREVfWVVWNjAxX1RPX1JHQjcwOTsKPiArCQlpZiAoIWljbF9pc19oZHJfcGxh bmUocGxhbmUpKSB7Cj4gKwkJCWlmIChwbGFuZV9zdGF0ZS0+YmFzZS5jb2xvcl9lbmNvZGluZyA9 PQo+ICsJCQkJCURSTV9DT0xPUl9ZQ0JDUl9CVDcwOSkKPiArCQkJCXBsYW5lX2NvbG9yX2N0bCB8 PQo+ICsJCQkJCVBMQU5FX0NPTE9SX0NTQ19NT0RFX1lVVjcwOV9UT19SR0I3MDk7Cj4gKwkJCWVs c2UKPiArCQkJCXBsYW5lX2NvbG9yX2N0bCB8PQo+ICsJCQkJCVBMQU5FX0NPTE9SX0NTQ19NT0RF X1lVVjYwMV9UT19SR0I3MDk7Cj4gIAo+IC0JCWlmIChwbGFuZV9zdGF0ZS0+YmFzZS5jb2xvcl9y YW5nZSA9PSBEUk1fQ09MT1JfWUNCQ1JfRlVMTF9SQU5HRSkKPiAtCQkJcGxhbmVfY29sb3JfY3Rs IHw9IFBMQU5FX0NPTE9SX1lVVl9SQU5HRV9DT1JSRUNUSU9OX0RJU0FCTEU7Cj4gKwkJCWlmIChw bGFuZV9zdGF0ZS0+YmFzZS5jb2xvcl9yYW5nZSA9PQo+ICsJCQkJCURSTV9DT0xPUl9ZQ0JDUl9G VUxMX1JBTkdFKQo+ICsJCQkJcGxhbmVfY29sb3JfY3RsIHw9Cj4gKwkJCQlQTEFORV9DT0xPUl9Z VVZfUkFOR0VfQ09SUkVDVElPTl9ESVNBQkxFOwo+ICsJCX0gZWxzZSB7Cj4gKwkJCWljbF9wcm9n cmFtX2lucHV0X2NzY19jb2VmZihjcnRjX3N0YXRlLCBwbGFuZV9zdGF0ZSk7CgpXcm9uZyBwbGFj ZS4gVGhpcyBuZWVkcyB0byBiZSAuaW4gdXBkYXRlX3BsYW5lKCkuCgo+ICsJCQlwbGFuZV9jb2xv cl9jdGwgfD0gUExBTkVfQ09MT1JfSU5QVVRfQ1NDX0VOQUJMRTsKPiArCQl9CgpJJ2QgcHJvYmFi bHkgd3JpdGUgdGhpcyB3aG9sZSB0aGluZyBhcyBzb21ldGhpbmcgbGlrZToKCmlmIChpc19oZHJf cGxhbmUoKSAmJiBpc195dXYpIHsKCWN0bCB8PSBJTlBVVF9DU0NfRU5BQkxFOwp9IGVsc2UgaWYg KGlzX3l1dikgewoJLi4uCn0KCmFzIHRoYXQgYXZvaWRzIHRoZSBkZWVwIG5lc3RpbmcgeW91IG5v dyBoYXZlLgoKPiAgCX0KPiAgCj4gIAlyZXR1cm4gcGxhbmVfY29sb3JfY3RsOwo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rydi5oCj4gaW5kZXggZGIyNDMwOC4uYmQ5ZTk0NiAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rydi5oCj4gQEAgLTIyODUsNiArMjI4NSw4IEBAIGludCBpbnRlbF9wbGFuZV9h dG9taWNfY2hlY2tfd2l0aF9zdGF0ZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqb2xk X2NydGNfCj4gIGludCBpbnRlbF9jb2xvcl9jaGVjayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHN0 cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpOwo+ICB2b2lkIGludGVsX2NvbG9yX3NldF9jc2Mo c3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsKPiAgdm9pZCBpbnRlbF9jb2xvcl9s b2FkX2x1dHMoc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsKPiArdm9pZCBpY2xf cHJvZ3JhbV9pbnB1dF9jc2NfY29lZmYoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNy dGNfc3RhdGUsCj4gKwkJCQkgY29uc3Qgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpwbGFuZV9z dGF0ZSk7Cj4gIAo+ICAvKiBpbnRlbF9sc3Bjb24uYyAqLwo+ICBib29sIGxzcGNvbl9pbml0KHN0 cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0KTsKPiAtLSAKPiAxLjkuMQo+ IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoK LS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK