From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sharma, Shashank" Subject: Re: [PATCH v5 09/17] drm: create hdmi output property Date: Wed, 5 Jul 2017 11:39:30 +0530 Message-ID: <3eeb3546-7cc0-77eb-cc82-6e30a5d66047@intel.com> References: <1499177524-26292-1-git-send-email-shashank.sharma@intel.com> <1499177524-26292-10-git-send-email-shashank.sharma@intel.com> <20170704153627.wapxm6tjp4m6vkxc@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170704153627.wapxm6tjp4m6vkxc@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Daniel Vetter , intel-gfx@lists.freedesktop.org, Jose Abreu , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org UmVnYXJkcwoKU2hhc2hhbmsKCgpPbiA3LzQvMjAxNyA5OjA2IFBNLCBEYW5pZWwgVmV0dGVyIHdy b3RlOgo+IE9uIFR1ZSwgSnVsIDA0LCAyMDE3IGF0IDA3OjQxOjU2UE0gKzA1MzAsIFNoYXNoYW5r IFNoYXJtYSB3cm90ZToKPj4gSERNSSBkaXNwbGF5cyBjYW4gc3VwcG9ydCB2YXJpb3VzIG91dHB1 dCB0eXBlcywgYmFzZWQgb24KPj4gdGhlIGNvbG9yIHNwYWNlIGFuZCBzdWJzYW1wbGluZyB0eXBl LiBUaGUgcG9zc2libGUKPj4gb3V0cHV0cyBmcm9tIGEgSERNSSAyLjAgbW9uaXRvciBjb3VsZCBi ZToKPj4gICAtIFJHQgo+PiAgIC0gWUNCQ1IgNDQ0Cj4+ICAgLSBZQ0JDUiA0MjIKPj4gICAtIFlD QkNSIDQyMAo+Pgo+PiBUaGlzIHBhdGNoIGFkZHMgYSBkcm0gcHJvcGVydHkgImhkbWlfb3V0cHV0 X2Zvcm1hdCIsIHVzaW5nIHdoaWNoLAo+PiBhIHVzZXIgY2FuIHNwZWNpZnkgaXRzIHByZWZlcmVu Y2UsIGZvciB0aGUgSERNSSBvdXRwdXQgdHlwZS4gVGhlCj4+IG91dHB1dCB0eXBlIGVudW1zIGFy ZSBzaW1pbGFyIHRvIHRoZSBtZW50aW9uZWQgb3V0cHV0cyBhYm92ZS4gVG8KPj4gaGFuZGxlIHZh cmlvdXMgc3Vic2FtcGxpbmcgb2YgWUNCQ1Igb3V0cHV0IHR5cGVzLCB0aGlzIHByb3BlcnR5Cj4+ IGFsbG93cyB0d28gc3BlY2lhbCBjYXNlczoKPj4gICAtIERSTV9IRE1JX09VVFBVVF9ZQ0JDUl9I UQo+PiAgICAgVGhpcyBpbmRpY2F0ZXMgcHJlZmVycmVkIG91dHB1dCBzaG91bGQgYmUgWUNCQ1Ig b3V0cHV0LCB3aXRoIGhpZ2hlc3QKPj4gICAgIHN1YnNhbXBsaW5nIHJhdGUgYnkgdGhlIHNvdXJj ZS9zaW5rLCB3aGljaCBjYW4gYmUgdHlwaWNhbGx5Ogo+PiAgIAktIHljYmNyNDQ0Cj4+ICAgCS0g eWNiY3I0MjIKPj4gICAJLSB5Y2JjcjQyMAo+PiAgIC0gRFJNX0hETUlfT1VUUFVUX1lDQkNSX0xR Cj4+ICAgICBUaGlzIGluZGljYXRlcyBwcmVmZXJyZWQgb3V0cHV0IHNob3VsZCBiZSBZQ0JDUiBv dXRwdXQsIHdpdGggbG93ZXN0Cj4+ICAgICBzdWJzYW1wbGluZyByYXRlIHN1cHBvcnRlZCBieSBz b3VyY2Uvc2luaywgd2hpY2ggY2FuIGJlOgo+PiAgIAktIHljYmNyNDIwCj4+ICAgCS0geWNiY3I0 MjIKPj4gICAJLSB5Y2JjcjQ0NAo+Pgo+PiBEZWZhdWx0IHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSBp cyBzZXQgdG8gMCA9IFJHQiwgc28gbm8gY2hhbmdlcyBpZiB5b3UKPj4gZG9udCBzZXQgdGhlIHBy b3BlcnR5Lgo+Pgo+PiBQUzogV2hpbGUgZG9pbmcgbW9kZXNldCBmb3IgWUNCQ1IgNDIwIG9ubHkg bW9kZXMsIHRoaXMgcHJvcGVydHkgaXMKPj4gICAgICBpZ25vcmVkLCBhcyB0aG9zZSB0aW1pbmdz IGNhbiBiZSBzdXBwb3J0ZWQgb25seSBpbiBZQ0JDUiA0MjAKPj4gICAgICBvdXRwdXQgbW9kZS4K Pj4KPj4gVjI6IEFkZGVkIGRlc2NyaXB0aW9uIGZvciB0aGUgbmV3IHZhcmlhYmxlIHRvIGFkZHJl c3MgYnVpbGQgd2FybmluZwo+PiBWMzogUmViYXNlCj4+IFY0OiBSZWJhc2UKPj4gVjU6IEFkZGVk IGdldF9wcm9wZXJ0eSBjb3VudGVycGFydCB0byBmaXggSUdUIEJBVCBmYWlsdXJlcyAoQkFUL0NJ KQo+PiAgICAgIERhbnZldDoKPj4gICAgICAtIEFkZCBkb2N1bWVudGF0aW9uIGZvciB0aGUgbmV3 IHByb3BlcnR5Cj4+ICAgICAgLSBDcmVhdGUgYSBzdWItc2VjdGlvbiBmb3IgSERNSSBwcm9wZXJ0 aWVzLCBhbmQgYWRkIGRvY3VtZW50YXRpb24gZm9yCj4+ICAgICAgICBmZXcgbW9yZSBIRE1JIHBy b3BldGllcy4gQWRkZWQgZG9jdW1lbnRhdGlvbiBmb3I6Cj4+IAktIEJyb2FkY2FzdCBSR0IKPj4g CS0gYXNwZWN0IHJhdGlvCj4+Cj4+IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbT4KPj4gQ2M6IEpvc2UgQWJyZXUgPGpvYWJyZXVAc3lub3BzeXMuY29tPgo+ PiBDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Cj4+IFNpZ25lZC1v ZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KPiBCdW5j aCBtb3JlIGRvY3VtZW50YXRpb24gbml0cGlja3MgYmVsb3cuIEknZCBwZXJzb25hbGx5IGFsc28g c3BsaXQgdXAgdGhlCj4gcGF0Y2ggaW50byBkb2N1bWVudGluZyB0aGUgZXhpc3RpbmcgcHJvcHMg YW5kIGFkZGluZyB0aGUgbmV3IGZvcm1hdCBvbmUuCkluIGZhY3QgdGhhdHMgd2hhdCBJIHdvdWxk IGRvIG5vdy4gSSBkb250IHdhbnQgSERNSSAyLjAgcGF0Y2ggc2VyaWVzIHRvIApnZXQgYmxvY2tl ZCBkdWUgdG8gZG9jdW1lbnRhdGlvbiwgYXMgd2l0aCBhbGwgdGhlIGNvbW1lbnRzCml0IHNlZW1z IGxpa2Ugc29tZSB3b3JrLiBMZXRzIGRvIGl0IGluIHRoaXMgd2F5OgogIC0gVGhpcyBwYXRjaCBz ZXJpZXMgd2lsbCBhZGQgdGhlIGRvY3VtZW50YXRpb24gZm9yIGhkbWlfb3V0cHV0X3Byb3BlcnR5 Ci0gSSB3aWxsIHNlbmQgYSBzZXBhcmF0ZSBwYXRjaCB3aGljaCB3aWxsIGNvbGxlY3RpdmVseSBh ZGQgZG9jdW1lbnRhdGlvbiAKZm9yIGFsbCBzdGFuZGFyZCBIRE1JIHByb3BlcnRpZXMuCj4gVGhh bmtzLCBEYW5pZWwKPgo+PiAtLS0KPj4gICBEb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdCAg ICAgICB8IDEyICsrKysrKysKPj4gICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jICAgICAg ICB8ICA0ICsrKwo+PiAgIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIHwgIDQg KysrCj4+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyAgICAgfCA2OSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystCj4+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9j cnRjX2ludGVybmFsLmggfCAgMSArCj4+ICAgZHJpdmVycy9ncHUvZHJtL2RybV9tb2RlX2NvbmZp Zy5jICAgfCAgNCArKysKPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9tb2Rlcy5jICB8 IDEzICsrKysrKysKPj4gICBpbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggICAgICAgICB8IDE4 ICsrKysrKysrKysKPj4gICBpbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaCAgICAgICB8ICA1 ICsrKwo+PiAgIDkgZmlsZXMgY2hhbmdlZCwgMTI5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24o LSkKPj4KPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L2RybS1rbXMucnN0IGIvRG9j dW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKPj4gaW5kZXggMzA3Mjg0MS4uZGNkZDZmZiAxMDA2 NDQKPj4gLS0tIGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKPj4gKysrIGIvRG9jdW1l bnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKPj4gQEAgLTUwOCw2ICs1MDgsMTggQEAgU3RhbmRhcmQg Q29ubmVjdG9yIFByb3BlcnRpZXMKPj4gICAuLiBrZXJuZWwtZG9jOjogZHJpdmVycy9ncHUvZHJt L2RybV9jb25uZWN0b3IuYwo+PiAgICAgIDpkb2M6IHN0YW5kYXJkIGNvbm5lY3RvciBwcm9wZXJ0 aWVzCj4+ICAgCj4+ICtTdGFuZGFyZCBIRE1JIFByb3BlcnRpZXMKPj4gKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCj4+ICsKPj4gKy4uIGtlcm5lbC1kb2M6OiBkcml2ZXJzL2dwdS9kcm0v ZHJtX2Nvbm5lY3Rvci5jCj4+ICsgICA6ZG9jOiBoZG1pX291dHB1dF9mb3JtYXQKPj4gKwo+PiAr Li4ga2VybmVsLWRvYzo6IGRyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPj4gKyAgIDpk b2M6IGFzcGVjdCByYXRpbyBwcm9wZXJ0eQo+IEknZCBoYXZlIGp1c3QgY3JlYXRlZCAxIERPQzog c2VjdGlvbiB0aXRsZWQgInN0YW5kYXJkIEhETUkgcHJvcGVydGllcyIgYW5kCj4gbGlzdGVkIGFs bCBvZiB0aGVtIGluIDEgY29tbWVudCBibG9jay4gUGVvcGxlIG9mdGVuIGZvcmdldCB0byBhZGQg dGhlCj4gaW5jbHVkZSBzdGFuemEgaW4gdGhlIC5yc3QgZmlsZXMsIGhhdmluZyBiaWdnZXIgY29t bWVudHMgaGVscHMgd2l0aCB0aGF0Lgo+Cj4gQnV0IGZlZWwgZnJlZSB0byBnbyBlaXRoZXIgd2F5 LgpZZXMsIHRoaXMgd291bGQgYmUgZWFzaWVyIGZvciBtZSB0b28sIGJ1dCB0aGlzIG1lYW5zIEkg d2lsbCBoYXZlIHRvIGFkZCAKYWxsIHRoZSBkb2N1bWVudGF0aW9uIGluIG9uZSBwbGFjZSwgaW4g b25lIGZpbGUsIHdoZXRoZXIgdGhlIHJlc3BlY3RpdmUKcHJvcGVydHkgaXMgY3JlYXRlZCBhdCB0 aGF0IHBsYWNlIG9yIG5vdC4gSSBhbSBub3Qgc3VyZSBpZiBldmVyeW9uZSAKd291bGQgYmUgb2sg d2l0aCB0aGF0IGR1cmluZyByZXZpZXcuIEJ1dCBpZiB5b3UgdGhpbmsgd2Ugc2hvdWxkIGdvIGFo ZWFkLAp0aGFua3MgZm9yIGVhc2luZyB0aGlzIHVwIGZvciBtZSA6LSkuCj4KPj4gKwo+PiArLi4g a2VybmVsLWRvYzo6IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX21vZGVzLmMKPj4gKyAgIDpk b2M6IEJyb2FkY2FzdCBSR0IgcHJvcGVydHkKPiBQbGVhc2Ugbm8gZ2VuZXJpYyBwcm9wZXJ0aWVz IGRvY3VtZW50ZWQgaW4gZHJpdmVyIGNvZGUuCkJyb2FkY2FzdCBSR0IgcHJvcGVydHkgaXMgY3Jl YXRlZCBoZXJlLCBhbmQgYWxzbywgd2hpbGUgSSB3YXMgYWRkaW5nIApkb2N1bWVudGF0aW9uIGZv ciBpdCwgSSByZWFsaXplZCBpdHMga2VwdCBpbiBkZXZfcHJpdiwgd2hpY2ggaXMgc3BlY2lmaWMg dG8KSTkxNSBkcml2ZXIsIFNvIGl0cyBub3QgZ2VuZXJpYyB0b28uIEkgd2FzIG5vdCBzdXJlIGlm IHRoYXQgd2lsbCBiZSBPSywgCmlmIEkgYWRkIGFuIEludGVsIHNwZWNpZmljIHByb3BlcnR5J3Mg ZGVzY3JpcHRpb24gaW4gRFJNIGxheWVyID8KPj4gKwo+PiAgIFBsYW5lIENvbXBvc2l0aW9uIFBy b3BlcnRpZXMKPj4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+ICAgCj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWMuYwo+PiBpbmRleCAwOWNhNjYyLi5hZGNiODlkIDEwMDY0NAo+PiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRv bWljLmMKPj4gQEAgLTExOTIsNiArMTE5Miw4IEBAIGludCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9z ZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPj4gICAJCXN0YXRl LT5waWN0dXJlX2FzcGVjdF9yYXRpbyA9IHZhbDsKPj4gICAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9 PSBjb25uZWN0b3ItPnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSkgewo+PiAgIAkJc3RhdGUtPnNjYWxp bmdfbW9kZSA9IHZhbDsKPj4gKwl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+aGRtaV9v dXRwdXRfcHJvcGVydHkpIHsKPj4gKwkJc3RhdGUtPmhkbWlfb3V0cHV0ID0gdmFsOwo+PiAgIAl9 IGVsc2UgaWYgKGNvbm5lY3Rvci0+ZnVuY3MtPmF0b21pY19zZXRfcHJvcGVydHkpIHsKPj4gICAJ CXJldHVybiBjb25uZWN0b3ItPmZ1bmNzLT5hdG9taWNfc2V0X3Byb3BlcnR5KGNvbm5lY3RvciwK Pj4gICAJCQkJc3RhdGUsIHByb3BlcnR5LCB2YWwpOwo+PiBAQCAtMTI3Miw2ICsxMjc0LDggQEAg ZHJtX2F0b21pY19jb25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCj4+ICAgCQkqdmFsID0gc3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvOwo+PiAg IAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+c2NhbGluZ19tb2RlX3Byb3BlcnR5 KSB7Cj4+ICAgCQkqdmFsID0gc3RhdGUtPnNjYWxpbmdfbW9kZTsKPj4gKwl9IGVsc2UgaWYgKHBy b3BlcnR5ID09IGNvbmZpZy0+aGRtaV9vdXRwdXRfcHJvcGVydHkpIHsKPj4gKwkJKnZhbCA9IHN0 YXRlLT5oZG1pX291dHB1dDsKPj4gICAJfSBlbHNlIGlmIChjb25uZWN0b3ItPmZ1bmNzLT5hdG9t aWNfZ2V0X3Byb3BlcnR5KSB7Cj4+ICAgCQlyZXR1cm4gY29ubmVjdG9yLT5mdW5jcy0+YXRvbWlj X2dldF9wcm9wZXJ0eShjb25uZWN0b3IsCj4+ICAgCQkJCXN0YXRlLCBwcm9wZXJ0eSwgdmFsKTsK Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIGIvZHJp dmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPj4gaW5kZXggMjNlNDY2MS4uMmU3NDU5 ZiAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPj4gQEAgLTYzNyw2ICs2 MzcsMTAgQEAgZHJtX2F0b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+PiAgIAkJCWlmIChvbGRfY29ubmVjdG9yX3N0YXRlLT5saW5rX3N0YXR1cyAhPQo+ PiAgIAkJCSAgICBuZXdfY29ubmVjdG9yX3N0YXRlLT5saW5rX3N0YXR1cykKPj4gICAJCQkJbmV3 X2NydGNfc3RhdGUtPmNvbm5lY3RvcnNfY2hhbmdlZCA9IHRydWU7Cj4+ICsKPj4gKwkJCWlmIChv bGRfY29ubmVjdG9yX3N0YXRlLT5oZG1pX291dHB1dCAhPQo+PiArCQkJICAgIG5ld19jb25uZWN0 b3Jfc3RhdGUtPmhkbWlfb3V0cHV0KQo+PiArCQkJCW5ld19jcnRjX3N0YXRlLT5jb25uZWN0b3Jz X2NoYW5nZWQgPSB0cnVlOwo+PiAgIAkJfQo+PiAgIAo+PiAgIAkJaWYgKGZ1bmNzLT5hdG9taWNf Y2hlY2spCj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwo+PiBpbmRleCA4MDcyZTZlLi44MzU3OTE4 IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPj4gQEAgLTIyNyw2ICsyMjcsMTEgQEAg aW50IGRybV9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+PiAgIAkJCQkJ ICAgICAgY29uZmlnLT5lZGlkX3Byb3BlcnR5LAo+PiAgIAkJCQkJICAgICAgMCk7Cj4+ICAgCj4+ ICsJaWYgKGNvbm5lY3Rvcl90eXBlICE9IERSTV9NT0RFX0NPTk5FQ1RPUl9WSVJUVUFMKQo+PiAr CQlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmY29ubmVjdG9yLT5iYXNlLAo+PiArCQkJCQkg ICBjb25maWctPmhkbWlfb3V0cHV0X3Byb3BlcnR5LAo+PiArCQkJCQkgICAwKTsKPj4gKwo+PiAg IAlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmY29ubmVjdG9yLT5iYXNlLAo+PiAgIAkJCQkg ICAgICBjb25maWctPmRwbXNfcHJvcGVydHksIDApOwo+PiAgIAo+PiBAQCAtNjE3LDYgKzYyMiwy NiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCBkcm1fbGlua19zdGF0 dXNfZW51bV9saXN0W10gPSB7Cj4+ICAgfTsKPj4gICBEUk1fRU5VTV9OQU1FX0ZOKGRybV9nZXRf bGlua19zdGF0dXNfbmFtZSwgZHJtX2xpbmtfc3RhdHVzX2VudW1fbGlzdCkKPj4gICAKPj4gK3N0 YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3Byb3BfZW51bV9saXN0IGRybV9oZG1pX291dHB1dF9lbnVt X2xpc3RbXSA9IHsKPj4gKwl7IERSTV9IRE1JX09VVFBVVF9ERUZBVUxUX1JHQiwgIm91dHB1dF9y Z2IiIH0sCj4+ICsJeyBEUk1fSERNSV9PVVRQVVRfWUNCQ1I0NDQsICJvdXRwdXRfeWNiY3I0NDQi IH0sCj4+ICsJeyBEUk1fSERNSV9PVVRQVVRfWUNCQ1I0MjIsICJvdXRwdXRfeWNiY3I0MjIiIH0s Cj4+ICsJeyBEUk1fSERNSV9PVVRQVVRfWUNCQ1I0MjAsICJvdXRwdXRfeWNiY3I0MjAiIH0sCj4+ ICsJeyBEUk1fSERNSV9PVVRQVVRfWUNCQ1JfSFEsICJvdXRwdXRfeWNiY3JfaGlnaF9zdWJzYW1w bGluZyIgfSwKPj4gKwl7IERSTV9IRE1JX09VVFBVVF9ZQ0JDUl9MUSwgIm91dHB1dF95Y2Jjcl9s b3dfc3Vic2FtcGxpbmciIH0sCj4+ICsJeyBEUk1fSERNSV9PVVRQVVRfSU5WQUxJRCwgImludmFs aWRfb3V0cHV0IiB9LAo+PiArfTsKPj4gKwo+PiArLyoqCj4+ICsgKiBkcm1fZ2V0X2hkbWlfb3V0 cHV0X25hbWUgLSByZXR1cm4gYSBzdHJpbmcgZm9yIGEgZ2l2ZW4gaGRtaSBvdXRwdXQgZW51bQo+ PiArICogQHR5cGU6IGVudW0gb2Ygb3V0cHV0IHR5cGUKPj4gKyAqLwo+PiArY29uc3QgY2hhciAq ZHJtX2dldF9oZG1pX291dHB1dF9uYW1lKGVudW0gZHJtX2hkbWlfb3V0cHV0X3R5cGUgdHlwZSkK Pj4gK3sKPj4gKwlyZXR1cm4gZHJtX2hkbWlfb3V0cHV0X2VudW1fbGlzdFt0eXBlXS5uYW1lOwo+ PiArfQo+PiArRVhQT1JUX1NZTUJPTChkcm1fZ2V0X2hkbWlfb3V0cHV0X25hbWUpOwo+PiArCj4+ ICAgLyoqCj4+ICAgICogZHJtX2Rpc3BsYXlfaW5mb19zZXRfYnVzX2Zvcm1hdHMgLSBzZXQgdGhl IHN1cHBvcnRlZCBidXMgZm9ybWF0cwo+PiAgICAqIEBpbmZvOiBkaXNwbGF5IGluZm8gdG8gc3Rv cmUgYnVzIGZvcm1hdHMgaW4KPj4gQEAgLTY5Nyw3ICs3MjIsMzYgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX3R2X3N1YmNvbm5lY3Rvcl9lbnVtX2xpc3RbXSA9 IHsKPj4gICAJeyBEUk1fTU9ERV9TVUJDT05ORUNUT1JfU0NBUlQsICAgICAiU0NBUlQiICAgICB9 LCAvKiBUVi1vdXQgKi8KPj4gICB9Owo+PiAgIERSTV9FTlVNX05BTUVfRk4oZHJtX2dldF90dl9z dWJjb25uZWN0b3JfbmFtZSwKPj4gLQkJIGRybV90dl9zdWJjb25uZWN0b3JfZW51bV9saXN0KQo+ PiArCQkgZHJtX3R2X3N1YmNvbm5lY3Rvcl9lbnVtX2xpc3QpOwo+PiArCj4+ICsvKioKPj4gKyAq IERPQzogaGRtaV9vdXRwdXRfZm9ybWF0Cj4+ICsgKgo+PiArICogaGRtaV9vdXRwdXRfZm9ybWF0 Ogo+PiArICoJRW51bSBwcm9wZXJ0eSB3aGljaCBhbGxvd3MgYSB1c2Vyc3BhY2UgdG8gcHJvdmlk ZSBpdHMgcHJlZmVyZW5jZSBmb3IgYQo+PiArICoJSERNSSBvdXRwdXQgZm9ybWF0LiBTdGFuZGFy ZCBIRE1JIDEuNGIgb3V0cHV0cyBjYW4gc3VwcG9ydCBSR0IvWUNCQ1I0NDQKPj4gKyAqCVlDQkNS NDIyIG91dHB1dCBmb3JtYXRzLCB3aGVyZWFzIEhETUkgMi4wIG91dHB1dHMgY2FuIGFkZGl0aW9u YWxseQo+PiArICoJc3VwcG9ydCBZQ0JDUjQyMCBvdXRwdXQuIERlZmF1bHQgdmFsdWUgb2YgdGhl IHByb3BlcnR5IGlzIEhETUkgb3V0cHV0Cj4+ICsgKglSR0IuCj4+ICsgKgo+PiArICoJQSBkcml2 ZXIgY2FuIGF0dGFjaCB0byB0aGlzIHByb3BlcnR5LCBhbmQgdGhlbiBoYW5kbGUgdGhlIEhETUkg b3V0cHV0Cj4+ICsgKgliYXNlZCBvbiBpdHMgY2FwYWJpbGl0aWVzIGFuZCBzaW5rIHN1cHBvcnQu IFRoZXJlIGFyZSBmZXcgaGVscGVyCj4+ICsgKglmdW5jdGlvbnMgYXZhaWxhYmxlIGluIGRybV9t b2Rlcy5jIHdoaWNoIGNhbiBoZWxwIGluIGZpbmRpbmcgdGhlIGJlc3QKPj4gKyAqCXN1aXRhYmxl IG91dHB1dCBjb25zaWRlcmluZyBhIHNpbmsvc291cmNlL21vZGUgY29tYmluYXRpb24uIFJlZmVy IHRvCj4+ICsgKglkcm1fbW9kZXMuYzpkcm1fZGlzcGxheV9pbmZvX2hkbWlfb3V0cHV0X3R5cGUo KQo+PiArICovCj4+ICtpbnQgZHJtX2Nvbm5lY3Rvcl9jcmVhdGVfaGRtaV9wcm9wZXJ0aWVzKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4+ICt7Cj4+ICsJc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJv cDsKPj4gKwo+PiArCXByb3AgPSBkcm1fcHJvcGVydHlfY3JlYXRlX2VudW0oZGV2LCAwLCAiaGRt aV9vdXRwdXRfZm9ybWF0IiwKPj4gKwkJCQkJZHJtX2hkbWlfb3V0cHV0X2VudW1fbGlzdCwKPj4g KwkJCQkJQVJSQVlfU0laRShkcm1faGRtaV9vdXRwdXRfZW51bV9saXN0KSk7Cj4+ICsJaWYgKCFw cm9wKQo+PiArCQlyZXR1cm4gLUVOT01FTTsKPj4gKwlkZXYtPm1vZGVfY29uZmlnLmhkbWlfb3V0 cHV0X3Byb3BlcnR5ID0gcHJvcDsKPj4gKwlyZXR1cm4gMDsKPj4gK30KPj4gICAKPj4gICAvKioK Pj4gICAgKiBET0M6IHN0YW5kYXJkIGNvbm5lY3RvciBwcm9wZXJ0aWVzCj4+IEBAIC0xMDI0LDYg KzEwNzgsMTkgQEAgaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX3NjYWxpbmdfbW9kZV9wcm9wZXJ0 eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+PiAgIH0KPj4gICBFWFBPUlRfU1lN Qk9MKGRybV9jb25uZWN0b3JfYXR0YWNoX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eSk7Cj4+ICAgCj4+ ICsKPj4gKy8qKgo+PiArICogRE9DOiBhc3BlY3QgcmF0aW8gcHJvcGVydHkKPj4gKyAqCj4+ICsg KiBhc3BlY3QgcmF0aW86Cj4+ICsgKglFbnVtIHByb3BlcnR5IHRvIG92ZXJyaWRlIHRoZSBIRE1J IG91dHB1dCdzIGFzcGVjdCByYXRpby4KPj4gKyAqCVdoZW4gdGhpcyBwcm9wZXJ0eSBpcyBzZXQs IHRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIGZyYW1lIGluCj4+ICsgKglBVkkgaW5mb2ZyYW1lcyBp cyBzZXQgYXMgcGVyIHRoZSBwcm9wZXJ0eSB2YWx1ZS4gRm9yIGV4YW1wbGUKPj4gKyAqCWlmIHVz ZXJzcGFjZSBzZXRzIHRoZSBwcm9wZXJ0eSB2YWx1ZSB0byBEUk1fTU9ERV9QSUNUVVJFX0FTUEVD VF80XzMKPj4gKyAqCXRoZSBvdXRwdXQgYXNwZWN0IHJhdGlvIGlzIHNldCB0byA0OjMgKHJlZ2Fy ZGxlc3Mgb2YgdGhlIFBBUiBvZiBtb2RlKQo+IFdvdWxkIGJlIGdvb2QgdG8gZG9jdW1lbnQgYWxs IHBvc3NpYmxlIHZhbHVlcy4gU2FtZSBmb3IgdGhlIG90aGVyCj4gcHJvcGVydGllcywgcGx1cyBp bnNlcnQgYSBsaW5rIHRvIHRoZSBmdW5jdGlvbiB0aGF0IGNyZWF0ZXMgdGhlIHByb3BlcnR5Cj4g KHdoZXJlIHdlIGhhdmUgdGhhdCkuClRoaXMgaXMgdGhlIHBhcnQsIHdoaWNoIG1ha2VzIG1lIGZl ZWwgdGhhdCBJIHNob3VsZCBjcmVhdGUgdGhpcyBwYXRjaCAKc2VwYXJhdGVseSwgYXMgdGhpcyBz ZWVtcyBsaWtlIHNsaWdodGx5IGJpZ2dlciBjbGVhbnVwIHRoYW4KSSB0aG91Z2h0LCBzbyBJIGRv bnQgd2FudCB0aGlzIHRvIGJlIGEgcGFydCBvZiBIRE1JIDIuMCBzZXJpZXMuCj4KPj4gKyAqCj4+ ICsgKi8KPj4gKwo+PiAgIC8qKgo+PiAgICAqIGRybV9tb2RlX2NyZWF0ZV9hc3BlY3RfcmF0aW9f cHJvcGVydHkgLSBjcmVhdGUgYXNwZWN0IHJhdGlvIHByb3BlcnR5Cj4+ICAgICogQGRldjogRFJN IGRldmljZQo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjX2ludGVybmFs LmggYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaW50ZXJuYWwuaAo+PiBpbmRleCBkMDc3YzU0 Li5lNmM0YWRjIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaW50ZXJu YWwuaAo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGNfaW50ZXJuYWwuaAo+PiBAQCAt MTQwLDYgKzE0MCw3IEBAIGludCBkcm1fbW9kZV9jb25uZWN0b3Jfc2V0X29ial9wcm9wKHN0cnVj dCBkcm1fbW9kZV9vYmplY3QgKm9iaiwKPj4gICAJCQkJICAgIHN0cnVjdCBkcm1fcHJvcGVydHkg KnByb3BlcnR5LAo+PiAgIAkJCQkgICAgdWludDY0X3QgdmFsdWUpOwo+PiAgIGludCBkcm1fY29u bmVjdG9yX2NyZWF0ZV9zdGFuZGFyZF9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp Owo+PiAraW50IGRybV9jb25uZWN0b3JfY3JlYXRlX2hkbWlfcHJvcGVydGllcyhzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KTsKPj4gICBjb25zdCBjaGFyICpkcm1fZ2V0X2Nvbm5lY3Rvcl9mb3JjZV9u YW1lKGVudW0gZHJtX2Nvbm5lY3Rvcl9mb3JjZSBmb3JjZSk7Cj4+ICAgCj4+ICAgLyogSU9DVEwg Ki8KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZV9jb25maWcuYyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fbW9kZV9jb25maWcuYwo+PiBpbmRleCBkOTg2MjI1Li4zYmE5MjYy IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVfY29uZmlnLmMKPj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2RlX2NvbmZpZy5jCj4+IEBAIC0yMTAsNiArMjEwLDEw IEBAIHN0YXRpYyBpbnQgZHJtX21vZGVfY3JlYXRlX3N0YW5kYXJkX3Byb3BlcnRpZXMoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKPj4gICAJaWYgKHJldCkKPj4gICAJCXJldHVybiByZXQ7Cj4+ICAg Cj4+ICsJcmV0ID0gZHJtX2Nvbm5lY3Rvcl9jcmVhdGVfaGRtaV9wcm9wZXJ0aWVzKGRldik7Cj4+ ICsJaWYgKHJldCkKPj4gKwkJcmV0dXJuIHJldDsKPiBXZSBzdGlsbCBjcmVhdGUgYWxsIHRoZSBw cm9wZXJ0eSB2YWx1ZXMgaW5zdGVhZCBvZiBqdXN0IHRoZSBvbmVzIHRoYXQgdGhlCj4gc291cmNl IGh3IHN1cHBvcnRzLiBFLmcuIGFzcGVjdCByYXRpbyBwcm9wZXJ0eSBpcyBvbmx5IGNyZWF0ZWQg aWYgbmVlZGVkLAo+IG5vdCB1bmNvbmRpdGlvbmFsbHkgb24gYWxsIGNvbm5lY3RvcnMuCj4KPiBO b3RlIHRoYXQgdXNlcnMgc2VlIHByb3BlcnRpZXMgdGhyb3VnaCB4cmFuZHIgYW5kIHRoZSBndWkg c2NyZWVuCj4gY29uZmlndXJhdGlvbiB0b29scywgYWRkaW5nIHByb3BlcnRpZXMgdGhhdCBuZXZl ciBkbyBhbnl0aGluZyBpcwo+IGNvbmZ1c2luZywgbW9yZSBmb3IgcHJvcGVydGllcyB3aGVyZSB5 b3UgY2FuIHNlbGVjdCBpbnZhbGlkIHZhbHVlcy4KSWYgSSB1bmRlcnN0b29kIHRoaXMgcHJvcGVy bHksIHlvdSB3YW50IG1lIHRvIGNyZWF0ZSB0aGUgcHJvcGVydHkgaW4gCkk5MTUgbGF5ZXIsIGp1 c3QgYmVmb3JlIGF0dGFjaGluZyBpdCB0byBvYmplY3QgKHNpbWlsYXIgdG8gYXNwZWN0IHJhdGlv IAphbmQgb3RoZXJzKQpzb21ldGhpbmcgbGlrZToKaW50ZWxfYXR0YWNoX2hkbWlfb3V0cHV0X3By b3BlcnR5KCkKewogICAgICAgaWYgKCFtb2RlX2NvbmZpZy0+aGRtaV9vdXRwdXRfcHJvcGVydHkp CiAgICAgICAgICAgICAgICAgICAgbW9kZV9jb25maWctPmhkbWlfb3V0cHV0X3Byb3BlcnR5ID0g Y3JlYXRlX3Byb3AoKTsKICAgICAgICAgbm93X2F0dGFjaF9wcm9wZXJ0eSgpOwp9CgpJIHdhcyBh c3N1bWluZyB0aGF0IG9uY2Ugb3RoZXIgZHJpdmVycyBtb3ZlIHRvIEhETUkgMi4wLCB0aGV5IG1p Z2h0IGFsbCAKbmVlZCB0aGlzIGZvciBZQ0JDUjQyMCBvdXRwdXRzLCBzbyBpdCB3b3VsZCBiZSBv ayB0byBjcmVhdGUgaXQgZ2VuZXJpY2FsbHkuCkJ1dCBhdCB0aGUgc2FtZSB0aW1lLCB0aGlzIGFs c28gc2VlbXMgbGlrZSBhIGdvb2QgaWRlYS4KCi0gU2hhc2hhbmsKPj4gKwo+PiAgIAlwcm9wID0g ZHJtX3Byb3BlcnR5X2NyZWF0ZV9lbnVtKGRldiwgRFJNX01PREVfUFJPUF9JTU1VVEFCTEUsCj4+ ICAgCQkJCQkidHlwZSIsIGRybV9wbGFuZV90eXBlX2VudW1fbGlzdCwKPj4gICAJCQkJCUFSUkFZ X1NJWkUoZHJtX3BsYW5lX3R5cGVfZW51bV9saXN0KSk7Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9tb2Rlcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bW9kZXMuYwo+PiBpbmRleCA5NTFlODM0Li5kMDdkZTQ1IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9tb2Rlcy5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX21vZGVzLmMKPj4gQEAgLTEwNCw2ICsxMDQsMTkgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBkcm1fcHJvcF9lbnVtX2xpc3QgYnJvYWRjYXN0X3JnYl9uYW1lc1tdID0gewo+PiAgIAl7IElO VEVMX0JST0FEQ0FTVF9SR0JfTElNSVRFRCwgIkxpbWl0ZWQgMTY6MjM1IiB9LAo+PiAgIH07Cj4+ ICAgCj4+ICsvKioKPj4gKyAqIERPQzogQnJvYWRjYXN0IFJHQiBwcm9wZXJ0eQo+PiArICoKPj4g KyAqIEJyb2FkY2FzdCBSR0I6Cj4+ICsgKglFbnVtIHByb3BlcnR5IHRvIGluZGljYXRlIFJHQiBj b2xvciByYW5nZSBvZiBhIEhETUkgb3V0cHV0Lgo+PiArICoJRm9yIGxpbWl0ZWQgcmFuZ2UgUkdC IG91dHB1dHMsIGEgcmVtYXBwaW5nIG9mIHBpeGVsIHZhbHVlcyBmcm9tIDAtMjU1Cj4+ICsgKglz aG91bGQgYmUgcmVtYXBlZCB0byBhIHJhbmdlIG9mIDE2LTIzNS4gV2hlbiB0aGlzIHByb3BlcnR5 IGlzIHNldCB0bwo+PiArICoJTGltaXRlZCAxNjoyMzUgYW5kIENUTSBpcyBzZXQsIHRoZSBoYXJk d2FyZSB3aWxsIGJlIHByb2dyYW1tZWQgd2l0aCB0aGUKPj4gKyAqCXJlc3VsdCBvZiB0aGUgbXVs dGlwbGljYXRpb24gb2YgQ1RNIGJ5IHRoZSBsaW1pdGVkICByYW5nZSBtYXRyaXgsIHRvCj4+ICsg KgllbnN1cmUgdGhlIHBpeGVscyBub3JtYWx5IGluIHRoZSByYW5nZSAwLi4xLjAgYXJlIHJlbWFw cGVkIHRvIHRoZSByYW5nZQo+PiArICoJMTYvMjU1Li4yMzUvMjU1Lgo+PiArICoKPj4gKyAqLwo+ PiAgIHZvaWQKPj4gICBpbnRlbF9hdHRhY2hfYnJvYWRjYXN0X3JnYl9wcm9wZXJ0eShzdHJ1Y3Qg ZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+PiAgIHsKPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv ZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAo+PiBpbmRl eCA0YmMwODgyLi4zNzczNjAwIDEwMDY0NAo+PiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fY29ubmVj dG9yLmgKPj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4+IEBAIC0zMTksNiAr MzE5LDE3IEBAIHN0cnVjdCBkcm1fdHZfY29ubmVjdG9yX3N0YXRlIHsKPj4gICAJdW5zaWduZWQg aW50IGh1ZTsKPj4gICB9Owo+PiAgIAo+PiArLyogSERNSSBvdXRwdXQgcGl4ZWwgZm9ybWF0ICov Cj4+ICtlbnVtIGRybV9oZG1pX291dHB1dF90eXBlIHsKPj4gKwlEUk1fSERNSV9PVVRQVVRfREVG QVVMVF9SR0IsIC8qIGRlZmF1bHQgUkdCICovCj4+ICsJRFJNX0hETUlfT1VUUFVUX1lDQkNSNDQ0 LCAvKiBZQ0JDUiA0NDQgKi8KPj4gKwlEUk1fSERNSV9PVVRQVVRfWUNCQ1I0MjIsIC8qIFlDQkNS IDQyMiAqLwo+PiArCURSTV9IRE1JX09VVFBVVF9ZQ0JDUjQyMCwgLyogWUNCQ1IgNDIwICovCj4+ ICsJRFJNX0hETUlfT1VUUFVUX1lDQkNSX0hRLCAvKiBIaWdoZXN0IHN1YnNhbXBsZWQgWVVWICov Cj4+ICsJRFJNX0hETUlfT1VUUFVUX1lDQkNSX0xRLCAvKiBMb3dlc3Qgc3Vic2FtcGxlZCBZVVYg Ki8KPj4gKwlEUk1fSERNSV9PVVRQVVRfSU5WQUxJRCwgLyogR3Vlc3Mgd2hhdCA/ICovCj4+ICt9 Owo+PiArCj4+ICAgLyoqCj4+ICAgICogc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgLSBtdXRh YmxlIGNvbm5lY3RvciBzdGF0ZQo+PiAgICAqIEBjb25uZWN0b3I6IGJhY2twb2ludGVyIHRvIHRo ZSBjb25uZWN0b3IKPj4gQEAgLTM2Myw2ICszNzQsMTIgQEAgc3RydWN0IGRybV9jb25uZWN0b3Jf c3RhdGUgewo+PiAgIAkgKiB1cHNjYWxpbmcsIG1vc3RseSB1c2VkIGZvciBidWlsdC1pbiBwYW5l bHMuCj4+ICAgCSAqLwo+PiAgIAl1bnNpZ25lZCBpbnQgc2NhbGluZ19tb2RlOwo+PiArCj4+ICsJ LyoqCj4+ICsJICogQGhkbWlfb3V0cHV0OiBDb25uZWN0b3IgcHJvcGVydHkgdG8gY29udHJvbCB0 aGUKPj4gKwkgKiBIRE1JIG91dHB1dCBtb2RlIChSR0IvWUNCQ1I0NDQvNDIyLzQyMCkuCj4+ICsJ ICovCj4+ICsJZW51bSBkcm1faGRtaV9vdXRwdXRfdHlwZSBoZG1pX291dHB1dDsKPj4gICB9Owo+ PiAgIAo+PiAgIC8qKgo+PiBAQCAtOTkxLDYgKzEwMDgsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQg ZHJtX2Nvbm5lY3Rvcl91bnJlZmVyZW5jZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y KQo+PiAgIAo+PiAgIGNvbnN0IGNoYXIgKmRybV9nZXRfY29ubmVjdG9yX3N0YXR1c19uYW1lKGVu dW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgc3RhdHVzKTsKPj4gICBjb25zdCBjaGFyICpkcm1fZ2V0 X3N1YnBpeGVsX29yZGVyX25hbWUoZW51bSBzdWJwaXhlbF9vcmRlciBvcmRlcik7Cj4+ICtjb25z dCBjaGFyICpkcm1fZ2V0X2hkbWlfb3V0cHV0X25hbWUoZW51bSBkcm1faGRtaV9vdXRwdXRfdHlw ZSB0eXBlKTsKPj4gICBjb25zdCBjaGFyICpkcm1fZ2V0X2RwbXNfbmFtZShpbnQgdmFsKTsKPj4g ICBjb25zdCBjaGFyICpkcm1fZ2V0X2R2aV9pX3N1YmNvbm5lY3Rvcl9uYW1lKGludCB2YWwpOwo+ PiAgIGNvbnN0IGNoYXIgKmRybV9nZXRfZHZpX2lfc2VsZWN0X25hbWUoaW50IHZhbCk7Cj4+IGRp ZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaCBiL2luY2x1ZGUvZHJtL2Ry bV9tb2RlX2NvbmZpZy5oCj4+IGluZGV4IDQyOTgxNzEuLjE4ODcyNjEgMTAwNjQ0Cj4+IC0tLSBh L2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oCj4+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9t b2RlX2NvbmZpZy5oCj4+IEBAIC03NDAsNiArNzQwLDExIEBAIHN0cnVjdCBkcm1fbW9kZV9jb25m aWcgewo+PiAgIAkgKiB0aGUgcG9zaXRpb24gb2YgdGhlIG91dHB1dCBvbiB0aGUgaG9zdCdzIHNj cmVlbi4KPj4gICAJICovCj4+ICAgCXN0cnVjdCBkcm1fcHJvcGVydHkgKnN1Z2dlc3RlZF95X3By b3BlcnR5Owo+PiArCS8qKgo+PiArCSAqIEBoZG1pX291dHB1dF9wcm9wZXJ0eTogb3V0cHV0IHBp eGVsIGZvcm1hdCBmcm9tIEhETUkgZGlzcGxheQo+PiArCSAqIERlZmF1bHQgaXMgc2V0IGZvciBS R0IKPj4gKwkgKi8KPj4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpoZG1pX291dHB1dF9wcm9wZXJ0 eTsKPj4gICAKPj4gICAJLyogZHVtYiBpb2N0bCBwYXJhbWV0ZXJzICovCj4+ICAgCXVpbnQzMl90 IHByZWZlcnJlZF9kZXB0aCwgcHJlZmVyX3NoYWRvdzsKPj4gLS0gCj4+IDIuNy40Cj4+Cj4+IF9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+IGRyaS1kZXZl bCBtYWlsaW5nIGxpc3QKPj4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+PiBodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==