From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrzej Hajda Subject: Re: [PATCH 2/2] drm/hdmi: Allow HDMI infoframe without VIC or S3D Date: Tue, 04 Jul 2017 15:58:02 +0200 Message-ID: <0ba30df5-9e78-2949-b0a6-d87227ef48b9@samsung.com> References: <20170703191938.21448-1-ville.syrjala@linux.intel.com> <20170703191938.21448-2-ville.syrjala@linux.intel.com> <20170704124402.GK12629@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-reply-to: <20170704124402.GK12629@intel.com> Content-language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: Archit Taneja , Joonyoung Shim , Benjamin Gaignard , Shawn Guo , intel-gfx@lists.freedesktop.org, Seung-Woo Kim , dri-devel@lists.freedesktop.org, Inki Dae , Kyungmin Park , Laurent Pinchart , Philipp Zabel , CK Hu , Mark Yao , Vincent Abriou , Ben Skeggs List-Id: dri-devel@lists.freedesktop.org T24gMDQuMDcuMjAxNyAxNDo0NCwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+IE9uIFR1ZSwgSnVs IDA0LCAyMDE3IGF0IDAxOjU2OjA3UE0gKzAyMDAsIEFuZHJ6ZWogSGFqZGEgd3JvdGU6Cj4+IE9u IDAzLjA3LjIwMTcgMjE6MTksIHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tIHdyb3RlOgo+ Pj4gRnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4K Pj4+Cj4+PiBBcHBlZGl4IEYgb2YgSERNSSAyLjAgc2F5cyB0aGF0IHNvbWUgSERNSSBzaW5rIG1h eSBmYWlsIHRvIHN3aXRjaCBmcm9tCj4+PiAzRCB0byAyRCBtb2RlIGluIGEgdGltZWx5IGZhc2hp b24gaWYgdGhlIHNvdXJjZSBzaW1wbHkgc3RvcHMgc2VuZGluZyB0aGUKPj4+IEhETUkgaW5mb2Zy YW1lLiBUaGUgc3VnZ2VzdGVkIHdvcmthcm91bmQgaXMgdG8ga2VlcCBzZW5kaW5nIHRoZQo+Pj4g aW5mb2ZyYW1lIGV2ZW4gd2hlbiBzdHJpY3RseSBub3QgbmVjZXNzYXJ5IChpZS4gbm8gVklDIGFu ZCBubyBTM0QpLgo+Pj4gSERNSSAxLjQgZG9lcyBhbGxvdyBmb3IgdGhpcyBiZWhhdmlvdXIsIHN0 YXRpbmcgdGhhdCBzZW5kaW5nIHRoZQo+Pj4gaW5mb2ZyYW1lIGlzIG9wdGlvbmFsIGluIHRoaXMg Y2FzZS4KPj4gTXkgaW1wcmVzc2lvbiBmcm9tIHRoZSBzcGVjcyBpcyB0aGF0IGl0IHNob3VsZCBi ZSBkb25lIG9ubHkgYWZ0ZXIKPj4gc3dpdGNoaW5nIGZyb20gM2QgdG8gMmQgbW9kZS4KPj4gSW4g c3VjaCBjYXNlIHdlIGp1c3QgbmVlZCB0byByZW1lbWJlciBwcmV2aW91cyBtb2RlLCBpZiBpdCB3 YXMgM2QsIGVtcHR5Cj4+IFZTSUYgaW5mb2ZyYW1lIHNob3VsZCBiZSBzdGlsbCBnZW5lcmF0ZWQg Zm9yIDJzZWNvbmRzLgo+PiBObyBuZWVkIHRvIGRvIGd1ZXNzZXMgZnJvbSBFRElELgo+PiBBbSBJ IHJpZ2h0LCBvciBqdXN0IG1pc3Npbmcgc29tZXRoaW5nPwo+IFRoaXMgY29kZSBoYXMgbm8gaWRl YSBhYm91dCBhbnkgM0QtPjJEIHRyYW5zaXRpb25zLCB0cnlpbmcgdG8gbWFrZSBpdAo+IGRvIHRo YXQgd291bGQganVzdCByZXN1bHQgaW4gYSBsb3Qgb2YgY29tcGxleGl0eS4gTXVjaCBlYXNpZXIg dG8ganVzdAo+IGFsd2F5cyBzZW5kIHRoZSBpbmZvZnJhbWUuCgpXaXRoIHN1Y2ggYXBwcm9hY2gg SSBzZWUgZm9sbG93aW5nICdpc3N1ZXMnOgowLiBJdCBkb2VzIG5vdCBmb2xsb3cgYWR2aWNlcyBm cm9tIHNwZWNzLgoxLiBJdCBjaGFuZ2VzIGJlaGF2aW9yIG9mIG9sZCBkcml2ZXJzLCBwcm9iYWJs eSBpbiBoYXJtbGVzcyB3YXkgYnV0CnN0aWxsIHRoZXJlIGNhbiBiZSBzb21lIHNpbmtzIHdoaWNo IHdpbGwgc3RvcCB3b3JraW5nLgoyLiBXaGF0IGlmIEVESUQgZG9lcyBub3QgYWR2ZXJ0aXNlcyAz ZC80ayBtb2RlcyBidXQgdGhlIHNpbmsgc3VwcG9ydHMKaXQsIGluIHN1Y2ggY2FzZSB1c2Vyc3Bh Y2UgY2FuIHNldCAzZCBtb2RlLCBidXQgYWZ0ZXIgc3dpdGNoIDNkLT4yZAplbXB0eSBpbmZvZnJh bWUgd2lsbCBub3QgYmUgc2VudC4KMy4gV2l0aCB0aGlzIHBhdGNoIGNvbm5lY3RvciBpcyByZXF1 aXJlZCB0byBnZW5lcmF0ZSBpbmZvZnJhbWUsIGJ1dAp0aGVyZSBhcmUgcGlwZWxpbmVzIHdoZXJl IGluZm9mcmFtZSBjYW4gYmUgZ2VuZXJhdGVkIGluIG5vbi1jb25uZWN0b3IKZHJpdmVyLCBmb3Ig ZXhhbXBsZToKICAgIGNydGMgLT4gaGRtaV9lbmNvZGVyIC0+IG1obF9lbmNvZGVyIC0+IGNvbm5l Y3RvcgpJbiBzdWNoIGNhc2UgZW5jb2RlciBoYXMgbm8gYWNjZXNzIHRvIHRoZSBjb25uZWN0b3Is IG9mIGNvdXJzZSBpdCBjYW4KdmlvbGF0ZSBhYnN0cmFjdGlvbiBsYXllcnMgYW5kIGxvY2FsaXpl IG9uZSwgYnV0IGl0IHNob3dzIHRoYXQgc29tZXRoaW5nCmhlcmUgaXMgcHJvYmFibHkgd3Jvbmcu Ck1heWJlIGFub3RoZXIgaGVscGVyIGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJvbV9jb25u ZWN0b3Igd2lsbCBiZQplbm91Z2ggdG8gc29sdmUgaXQuCjQuIFZpZGVvIG1vZGUgcHJvdmlkZWQg YnkgdXNlciBoYXMgbm90aGluZyB0byBkbyB3aXRoIEVESUQsIHdoeQppbmZvZnJhbWUgZ2VuZXJh dGVkIGZvciB0aGF0IG1vZGUgc2hvdWxkIGRlcGVuZCBvbiBFRElELgoKQWxsIGFib3ZlICdpc3N1 ZXMnIGFyZSBub3Qgc2VyaW91cyBvbmVzIGJ1dCBzdWdnZXN0cyB0aGF0IHRoZSBzb2x1dGlvbgpp cyBub3QgdGhlIGlkZWFsIG9uZS4KCk9uIHRoZSBvdGhlciBzaWRlIEkgZG8gbm90IHNlZSBtdWNo IGNvbXBsaWNhdGlvbiBpbiAzRC0+MkQgdHJhbnNpdGlvbiwKaXQgcmVxdWlyZXMganVzdCByZWNv cmRpbmcgaWYgM2QgbW9kZSB3YXMgc2V0IGJlZm9yZSBhbmQgYWdhaW4KZHJtX2hkbWlfdmVuZG9y X2luZm9mcmFtZV9mcm9tX2Nvbm5lY3RvciBjYW4gcGVyZm9ybSB0aGlzIGNoZWNrLgoKUmVnYXJk cwpBbmRyemVqCgo+Cj4+PiBUaGUgaW5mb2ZyYW1lIHdhcyBmaXJzdCBzcGVjaWZpZWQgaW4gSERN SSAxLjQsIHNvIGluIHRoZW9yeSBzaW5rcwo+Pj4gcHJlZGF0aW5nIHRoYXQgbWF5IG5vdCBhcHBy ZWNpYXRlIHVzIHNlbmRpbmcgYW4gdWtub3duIGluZm9mcmFtZQo+Pj4gdGhlaXIgd2F5LiBUbyBh dm9pZCByZWdyZXNzaW9ucyBsZXQncyB0cnkgdG8gZGV0ZXJtaW5lIGlmIHRoZSBzaW5rCj4+PiBz dXBwb3J0cyB0aGUgaW5mb2ZyYW1lIG9yIG5vdC4gVW5mb3J0dW5hdGVseSB0aGVyZSdzIG5vIGRp cmVjdCB3YXkKPj4+IHRvIGRvIHRoYXQsIHNvIGluc3RlYWQgd2UnbGwganVzdCBjaGVjayBpZiB3 ZSBtYW5hZ2VkIHRvIHBhcnNlIGFueQo+Pj4gSERNSSAxLjQgNGsgb3Igc3RlcmVvIG1vZGVzIGZy b20gdGhlIEVESUQsIGFuZCBpZiBzbyB3ZSBhc3N1bWUgdGhlCj4+PiBzaW5rIHdpbGwgYWNjZXB0 IHRoZSBpbmZvZnJhbWUuIEFsc28gaWYgdGhlIEVESUQgY29udGFpbnMgdGhlIEhETUkKPj4+IDIu MCBIRE1JIEZvcnVtIFZTREIgd2UgY2FuIGFzc3VtZSB0aGUgc2luayBpcyBwcmVwYXJlZCB0byBy ZWNlaXZlCj4+PiB0aGUgaW5mb2ZyYW1lLgo+Pj4gQ2M6IEFyY2hpdCBUYW5lamEgPGFyY2hpdHRA Y29kZWF1cm9yYS5vcmc+Cj4+PiBDYzogQW5kcnplaiBIYWpkYSA8YS5oYWpkYUBzYW1zdW5nLmNv bT4KPj4+IENjOiBMYXVyZW50IFBpbmNoYXJ0IDxMYXVyZW50LnBpbmNoYXJ0QGlkZWFzb25ib2Fy ZC5jb20+Cj4+PiBDYzogSW5raSBEYWUgPGlua2kuZGFlQHNhbXN1bmcuY29tPgo+Pj4gQ2M6IEpv b255b3VuZyBTaGltIDxqeTA5MjIuc2hpbUBzYW1zdW5nLmNvbT4KPj4+IENjOiBTZXVuZy1Xb28g S2ltIDxzdzAzMTIua2ltQHNhbXN1bmcuY29tPgo+Pj4gQ2M6IEt5dW5nbWluIFBhcmsgPGt5dW5n bWluLnBhcmtAc2Ftc3VuZy5jb20+Cj4+PiBDYzogQ0sgSHUgPGNrLmh1QG1lZGlhdGVrLmNvbT4K Pj4+IENjOiBQaGlsaXBwIFphYmVsIDxwLnphYmVsQHBlbmd1dHJvbml4LmRlPgo+Pj4gQ2M6IEJl biBTa2VnZ3MgPGJza2VnZ3NAcmVkaGF0LmNvbT4KPj4+IENjOiBNYXJrIFlhbyA8bWFyay55YW9A cm9jay1jaGlwcy5jb20+Cj4+PiBDYzogQmVuamFtaW4gR2FpZ25hcmQgPGJlbmphbWluLmdhaWdu YXJkQGxpbmFyby5vcmc+Cj4+PiBDYzogVmluY2VudCBBYnJpb3UgPHZpbmNlbnQuYWJyaW91QHN0 LmNvbT4KPj4+IENjOiBTaGF3biBHdW8gPHNoYXduZ3VvQGtlcm5lbC5vcmc+Cj4+PiBDYzogU2hh c2hhbmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+Pj4gU2lnbmVkLW9mZi1i eTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPj4+IC0t LQo+Pj4gIGRyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc2lsLXNpaTg2MjAuYyAgICAgIHwgIDMgKyst Cj4+PiAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5vcHN5cy9kdy1oZG1pLmMgfCAgNCArKyst Cj4+PiAgZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgICAgICAgICAgICAgICAgfCAzMiArKysr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tCj4+PiAgZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9l eHlub3NfaGRtaS5jICAgICAgfCAgMiArLQo+Pj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2hkbWkuYyAgICAgICAgIHwgMTQgKysrKysrKystLS0tLS0KPj4+ICBkcml2ZXJzL2dwdS9kcm0v bWVkaWF0ZWsvbXRrX2hkbWkuYyAgICAgICB8ICAzICsrLQo+Pj4gIGRyaXZlcnMvZ3B1L2RybS9u b3V2ZWF1L252NTBfZGlzcGxheS5jICAgIHwgIDMgKystCj4+PiAgZHJpdmVycy9ncHUvZHJtL3Jv Y2tjaGlwL2lubm9faGRtaS5jICAgICAgfCAgMSArCj4+PiAgZHJpdmVycy9ncHUvZHJtL3N0aS9z dGlfaGRtaS5jICAgICAgICAgICAgfCAgNCArKystCj4+PiAgZHJpdmVycy9ncHUvZHJtL3p0ZS96 eF9oZG1pLmMgICAgICAgICAgICAgfCAgMSArCj4+PiAgaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rv ci5oICAgICAgICAgICAgICAgfCAgNSArKysrKwo+Pj4gIGluY2x1ZGUvZHJtL2RybV9lZGlkLmgg ICAgICAgICAgICAgICAgICAgIHwgIDEgKwo+Pj4gIDEyIGZpbGVzIGNoYW5nZWQsIDU1IGluc2Vy dGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQo+Pj4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vYnJpZGdlL3NpbC1zaWk4NjIwLmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3NpbC1z aWk4NjIwLmMKPj4+IGluZGV4IDJkNTFhMjI2OWZjNi4uNzU4YjVhNDU0NmYxIDEwMDY0NAo+Pj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zaWwtc2lpODYyMC5jCj4+PiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vYnJpZGdlL3NpbC1zaWk4NjIwLmMKPj4+IEBAIC0yMTM2LDggKzIxMzYsOSBA QCBzdGF0aWMgYm9vbCBzaWk4NjIwX21vZGVfZml4dXAoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRn ZSwKPj4+ICAJCQl1bmlvbiBoZG1pX2luZm9mcmFtZSBmcm07Cj4+PiAgCQkJdTggbWhsX3ZpY1td ID0geyAwLCA5NSwgOTQsIDkzLCA5OCB9Owo+Pj4gIAo+Pj4gKwkJCS8qIEZJWE1FOiBXZSBuZWVk IHRoZSBjb25uZWN0b3IgaGVyZSAqLwo+Pj4gIAkJCWRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVf ZnJvbV9kaXNwbGF5X21vZGUoCj4+PiAtCQkJCSZmcm0udmVuZG9yLmhkbWksIGFkanVzdGVkX21v ZGUpOwo+Pj4gKwkJCQkmZnJtLnZlbmRvci5oZG1pLCBOVUxMLCBhZGp1c3RlZF9tb2RlKTsKPj4+ ICAJCQl2aWMgPSBmcm0udmVuZG9yLmhkbWkudmljOwo+PiBVc2FnZSBvZiBkcm1faGRtaV92ZW5k b3JfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlIGlzIGp1c3QgZGlydHkKPj4gd29ya2Fyb3Vu ZCB0byBnZXQgaGRtaSB2aWMgZnJvbSBtb2RlIChkcm1fbWF0Y2hfaGRtaV9tb2RlIGlzIHN0YXRp YywKPj4gb3Bwb3NpdGUgdG8gZHJtX21hdGNoX2NlYV9tb2RlKS4KPiBBaC4gSSBndWVzcyBJIHNo b3VsZCBoYXZlIHJlYWQgbW9yZSB0aGFuIHRoZSBzaW5nbGUgbGluZSBvZiBjb2RlIDopCj4KPj4g SSBndWVzcyBiZXR0ZXIgc29sdXRpb24gaXMgdG8gZXhwb3J0IGRybV9tYXRjaF9oZG1pX21vZGUs IG9yIHdhaXQgZm9yCj4+IGV4dGVuZGluZyBjZWEgdGFibGUgd2l0aCBIRE1JMi4wIG1vZGVzLCBJ IHBsYW4gdG8gZml4IGl0IGFmdGVyIG1lcmdpbmcKPj4gSERNSTIuMCBwYXRjaGVzLgo+IE9LLiBD b29sLiBUaGF0IG1lYW5zIHdlIGNhbiBudWtlIHRoZSBOVUxMIGNvbm5lY3RvciBoYW5kbGluZyBm cm9tCj4gZHJtX2hkbWlfdmVuZG9yX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgpIGF0IHRo YXQgcG9pbnQuCj4KPj4gU28gYmVzaWRlIHRoZSBjb21tZW50LCB0aGUgY2hhbmdlIGxvb2tzIE9L Lgo+Pgo+Pj4gIAkJCWlmICh2aWMgPj0gQVJSQVlfU0laRShtaGxfdmljKSkKPj4+ICAJCQkJdmlj ID0gMDsKPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3 LWhkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRtaS5jCj4+PiBp bmRleCBlYWQxMTI0MmM0YjkuLmM0MzM4OTc3NDY5MSAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRtaS5jCj4+PiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhkbWkuYwo+Pj4gQEAgLTE0MjYsNyArMTQyNiw5IEBAIHN0 YXRpYyB2b2lkIGhkbWlfY29uZmlnX3ZlbmRvcl9zcGVjaWZpY19pbmZvZnJhbWUoc3RydWN0IGR3 X2hkbWkgKmhkbWksCj4+PiAgCXU4IGJ1ZmZlclsxMF07Cj4+PiAgCXNzaXplX3QgZXJyOwo+Pj4g IAo+Pj4gLQllcnIgPSBkcm1faGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2Rl KCZmcmFtZSwgbW9kZSk7Cj4+PiArCWVyciA9IGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJv bV9kaXNwbGF5X21vZGUoJmZyYW1lLAo+Pj4gKwkJCQkJCQkgICZoZG1pLT5jb25uZWN0b3IsCj4+ PiArCQkJCQkJCSAgbW9kZSk7Cj4+PiAgCWlmIChlcnIgPCAwKQo+Pj4gIAkJLyoKPj4+ICAJCSAq IEdvaW5nIGludG8gdGhhdCBzdGF0ZW1lbnQgZG9lcyBub3QgbWVhbnMgdmVuZG9yIGluZm9mcmFt ZQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jIGIvZHJpdmVycy9n cHUvZHJtL2RybV9lZGlkLmMKPj4+IGluZGV4IDJlNTU1OTk4MTZhYS4uYzA2MWRkNWQyNWMwIDEw MDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKPj4+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4+PiBAQCAtMzA4MSw2ICszMDgxLDcgQEAgc3RhdGljIGlu dAo+Pj4gIGRvX2hkbWlfdnNkYl9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y LCBjb25zdCB1OCAqZGIsIHU4IGxlbiwKPj4+ICAJCSAgIGNvbnN0IHU4ICp2aWRlb19kYiwgdTgg dmlkZW9fbGVuKQo+Pj4gIHsKPj4+ICsJc3RydWN0IGRybV9kaXNwbGF5X2luZm8gKmluZm8gPSAm Y29ubmVjdG9yLT5kaXNwbGF5X2luZm87Cj4+PiAgCWludCBtb2RlcyA9IDAsIG9mZnNldCA9IDAs IGksIG11bHRpX3ByZXNlbnQgPSAwLCBtdWx0aV9sZW47Cj4+PiAgCXU4IHZpY19sZW4sIGhkbWlf M2RfbGVuID0gMDsKPj4+ICAJdTE2IG1hc2s7Cj4+PiBAQCAtMzIwOCw2ICszMjA5LDggQEAgZG9f aGRtaV92c2RiX21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGNvbnN0IHU4 ICpkYiwgdTggbGVuLAo+Pj4gIAl9Cj4+PiAgCj4+PiAgb3V0Ogo+Pj4gKwlpZiAobW9kZXMgPiAw KQo+Pj4gKwkJaW5mby0+aGFzX2hkbWlfaW5mb2ZyYW1lID0gdHJ1ZTsKPj4+ICAJcmV0dXJuIG1v ZGVzOwo+Pj4gIH0KPj4+ICAKPj4+IEBAIC0zODI5LDYgKzM4MzIsOCBAQCBzdGF0aWMgdm9pZCBk cm1fcGFyc2VfaGRtaV9mb3J1bV92c2RiKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is Cj4+PiAgCXN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICpkaXNwbGF5ID0gJmNvbm5lY3Rvci0+ZGlz cGxheV9pbmZvOwo+Pj4gIAlzdHJ1Y3QgZHJtX2hkbWlfaW5mbyAqaGRtaSA9ICZkaXNwbGF5LT5o ZG1pOwo+Pj4gIAo+Pj4gKwlkaXNwbGF5LT5oYXNfaGRtaV9pbmZvZnJhbWUgPSB0cnVlOwo+Pj4g Kwo+Pj4gIAlpZiAoaGZfdnNkYls2XSAmIDB4ODApIHsKPj4+ICAJCWhkbWktPnNjZGMuc3VwcG9y dGVkID0gdHJ1ZTsKPj4+ICAJCWlmIChoZl92c2RiWzZdICYgMHg0MCkKPj4+IEBAIC0zOTk4LDYg KzQwMDMsNyBAQCBzdGF0aWMgdm9pZCBkcm1fYWRkX2Rpc3BsYXlfaW5mbyhzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLAo+Pj4gIAlpbmZvLT5jZWFfcmV2ID0gMDsKPj4+ICAJaW5mby0+ bWF4X3RtZHNfY2xvY2sgPSAwOwo+Pj4gIAlpbmZvLT5kdmlfZHVhbCA9IGZhbHNlOwo+Pj4gKwlp bmZvLT5oYXNfaGRtaV9pbmZvZnJhbWUgPSBmYWxzZTsKPj4+ICAKPj4+ICAJaWYgKGVkaWQtPnJl dmlzaW9uIDwgMykKPj4+ICAJCXJldHVybjsKPj4+IEBAIC00NDUyLDYgKzQ0NTgsNyBAQCBzM2Rf c3RydWN0dXJlX2Zyb21fZGlzcGxheV9tb2RlKGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2Rl ICptb2RlKQo+Pj4gICAqIGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21v ZGUoKSAtIGZpbGwgYW4gSERNSSBpbmZvZnJhbWUgd2l0aAo+Pj4gICAqIGRhdGEgZnJvbSBhIERS TSBkaXNwbGF5IG1vZGUKPj4+ICAgKiBAZnJhbWU6IEhETUkgdmVuZG9yIGluZm9mcmFtZQo+Pj4g KyAqIEBjb25uZWN0b3I6IHRoZSBjb25uZWN0b3IKPj4+ICAgKiBAbW9kZTogRFJNIGRpc3BsYXkg bW9kZQo+Pj4gICAqCj4+PiAgICogTm90ZSB0aGF0IHRoZXJlJ3MgaXMgYSBuZWVkIHRvIHNlbmQg SERNSSB2ZW5kb3IgaW5mb2ZyYW1lcyBvbmx5IHdoZW4gdXNpbmcgYQo+Pj4gQEAgLTQ0NjIsOCAr NDQ2OSwxNSBAQCBzM2Rfc3RydWN0dXJlX2Zyb21fZGlzcGxheV9tb2RlKGNvbnN0IHN0cnVjdCBk cm1fZGlzcGxheV9tb2RlICptb2RlKQo+Pj4gICAqLwo+Pj4gIGludAo+Pj4gIGRybV9oZG1pX3Zl bmRvcl9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoc3RydWN0IGhkbWlfdmVuZG9yX2luZm9m cmFtZSAqZnJhbWUsCj4+PiArCQkJCQkgICAgc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKPj4+ICAJCQkJCSAgICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkKPj4+ ICB7Cj4+PiArCS8qCj4+PiArCSAqIEZJWE1FOiBzaWwtc2lpODYyMCBkb2Vzbid0IGhhdmUgYSBj b25uZWN0b3IgYXJvdW5kIHdoZW4KPj4+ICsJICogd2UgbmVlZCBvbmUsIHNvIHdlIGhhdmUgdG8g YmUgcHJlcGFyZWQgZm9yIGEgTlVMTCBjb25uZWN0b3IuCj4+PiArCSAqLwo+Pj4gKwlib29sIGhh c19oZG1pX2luZm9mcmFtZSA9IGNvbm5lY3RvciA/Cj4+PiArCQkmY29ubmVjdG9yLT5kaXNwbGF5 X2luZm8uaGFzX2hkbWlfaW5mb2ZyYW1lIDogTlVMTDsKPj4gSSB3b25kZXIgaWYgcmVxdWlyaW5n IGNvbm5lY3RvciBpcyBhIGdvb2QgaWRlYSwgSSBjYW4gaW1hZ2luZSB0aGF0IHRoaXMKPj4gZnVu Y3Rpb24gY2FuIGJlIG5lY2Vzc2FyeSBpbiBwdXJlIGRybV9lbmNvZGVyIG9yIG5vbi10ZXJtaW5h bCBkcm1fYnJpZGdlLgo+IE5vIGRlY2VudCB3YXkgYXJvdW5kIGl0LCB1bmxlc3Mgd2Ugd2FudCB0 byByaXNrIHNlbmRpbmcgdGhlIGluZm9mcmFtZSB0bwo+IHByZSBIRE1JIDEuNCBzaW5rcy4gU291 bmRzIGxpa2UgeW91IGhhdmUgc29tZSBraW5kIG9mIGxheWVyaW5nIHByb2JsZW0KPiBpZiB5b3Ug Y2FuJ3QgZ2V0IGF0IHRoZSBjb25uZWN0b3Igd2hlbiB5b3UgY2FsbCB0aGlzLgo+Cj4+IFJlZ2Fy ZHMKPj4gQW5kcnplago+Pgo+Pj4gIAlpbnQgZXJyOwo+Pj4gIAl1MzIgczNkX2ZsYWdzOwo+Pj4g IAl1OCB2aWM7Cj4+PiBAQCAtNDQ3NCwyMCArNDQ4OCwyNiBAQCBkcm1faGRtaV92ZW5kb3JfaW5m b2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKHN0cnVjdCBoZG1pX3ZlbmRvcl9pbmZvZnJhbWUgKmZy YW1lLAo+Pj4gIAl2aWMgPSBkcm1fbWF0Y2hfaGRtaV9tb2RlKG1vZGUpOwo+Pj4gIAlzM2RfZmxh Z3MgPSBtb2RlLT5mbGFncyAmIERSTV9NT0RFX0ZMQUdfM0RfTUFTSzsKPj4+ICAKPj4+IC0JaWYg KCF2aWMgJiYgIXMzZF9mbGFncykKPj4+ICsJaWYgKHZpYyAmJiBzM2RfZmxhZ3MpCj4+PiAgCQly ZXR1cm4gLUVJTlZBTDsKPj4+ICAKPj4+IC0JaWYgKHZpYyAmJiBzM2RfZmxhZ3MpCj4+PiArCS8q Cj4+PiArCSAqIEV2ZW4gaWYgaXQncyBub3QgYWJzb2x1dGVseSBuZWNlc3NhcnkgdG8gc2VuZCB0 aGUgaW5mb2ZyYW1lCj4+PiArCSAqIHdlIHdpbGwgc3RpbGwgc2VuZCBpdCBpZiB3ZSBrbm93IHRo YXQgdGhlIHNpbmsgY2FuIGhhbmRsZQo+Pj4gKwkgKiBpdC4gVGhpcyBpcyBiYXNlZCBvbiBhIHN1 Z2dlc3Rpb24gaW4gSERNSSAyLjAgQXBwZW5kaXggRi4KPj4+ICsJICogQXBwYXJlbnRseSBzb21l IHNpbmtzIGhhdmUgdHJvdWJsZSByZWFsaXppbmcgdGhhdCB0aGV5IHNodWxkCj4+PiArCSAqIHN3 aXRjaCBmcm9tIDNEIHRvIDJEIG1vZGUgaWYgdGhlIHNvdXJjZSBzaW1wbHkgc3RvcHMgc2VuZGlu Zwo+Pj4gKwkgKiB0aGUgaW5mb2ZyYW1lIHdoZW4gaXQgd2FudHMgdG8gc3dpdGNoIGZyb20gM0Qg dG8gMkQuCj4+PiArCSAqLwo+Pj4gKwlpZiAoIXZpYyAmJiAhczNkX2ZsYWdzICYmICFoYXNfaGRt aV9pbmZvZnJhbWUpCj4+PiAgCQlyZXR1cm4gLUVJTlZBTDsKPj4+ICAKPj4+ICAJZXJyID0gaGRt aV92ZW5kb3JfaW5mb2ZyYW1lX2luaXQoZnJhbWUpOwo+Pj4gIAlpZiAoZXJyIDwgMCkKPj4+ICAJ CXJldHVybiBlcnI7Cj4+PiAgCj4+PiAtCWlmICh2aWMpCj4+PiAtCQlmcmFtZS0+dmljID0gdmlj Owo+Pj4gLQllbHNlCj4+PiAtCQlmcmFtZS0+czNkX3N0cnVjdCA9IHMzZF9zdHJ1Y3R1cmVfZnJv bV9kaXNwbGF5X21vZGUobW9kZSk7Cj4+PiArCWZyYW1lLT52aWMgPSB2aWM7Cj4+PiArCWZyYW1l LT5zM2Rfc3RydWN0ID0gczNkX3N0cnVjdHVyZV9mcm9tX2Rpc3BsYXlfbW9kZShtb2RlKTsKPj4+ ICAKPj4+ICAJcmV0dXJuIDA7Cj4+PiAgfQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9leHlub3MvZXh5bm9zX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2hk bWkuYwo+Pj4gaW5kZXggMDZiZmJlNDAwY2YxLi4yODc1NDc0NGE3Y2YgMTAwNjQ0Cj4+PiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19oZG1pLmMKPj4+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9leHlub3MvZXh5bm9zX2hkbWkuYwo+Pj4gQEAgLTc5NSw3ICs3OTUsNyBAQCBzdGF0 aWMgdm9pZCBoZG1pX3JlZ19pbmZvZnJhbWVzKHN0cnVjdCBoZG1pX2NvbnRleHQgKmhkYXRhKQo+ Pj4gIAl9Cj4+PiAgCj4+PiAgCXJldCA9IGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJvbV9k aXNwbGF5X21vZGUoJmZybS52ZW5kb3IuaGRtaSwKPj4+IC0JCQkmaGRhdGEtPmN1cnJlbnRfbW9k ZSk7Cj4+PiArCQkJJmhkYXRhLT5jb25uZWN0b3IsICZoZGF0YS0+Y3VycmVudF9tb2RlKTsKPj4+ ICAJaWYgKCFyZXQpCj4+PiAgCQlyZXQgPSBoZG1pX3ZlbmRvcl9pbmZvZnJhbWVfcGFjaygmZnJt LnZlbmRvci5oZG1pLCBidWYsCj4+PiAgCQkJCXNpemVvZihidWYpKTsKPj4+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9oZG1pLmMKPj4+IGluZGV4IGVjMDc3OWE1MmQ1My4uYTBmMDAxNDE4MjQ4IDEwMDY0 NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCj4+PiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPj4+IEBAIC00OTcsMTIgKzQ5NywxNCBA QCBzdGF0aWMgdm9pZCBpbnRlbF9oZG1pX3NldF9zcGRfaW5mb2ZyYW1lKHN0cnVjdCBkcm1fZW5j b2RlciAqZW5jb2RlciwKPj4+ICAKPj4+ICBzdGF0aWMgdm9pZAo+Pj4gIGludGVsX2hkbWlfc2V0 X2hkbWlfaW5mb2ZyYW1lKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKPj4+IC0JCQkgICAg ICBjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPj4+ICsJCQkgICAg ICBjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPj4+ICsJCQkgICAg ICBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSkKPj4+ICB7Cj4+ PiAgCXVuaW9uIGhkbWlfaW5mb2ZyYW1lIGZyYW1lOwo+Pj4gIAlpbnQgcmV0Owo+Pj4gIAo+Pj4g IAlyZXQgPSBkcm1faGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFt ZS52ZW5kb3IuaGRtaSwKPj4+ICsJCQkJCQkJICBjb25uX3N0YXRlLT5jb25uZWN0b3IsCj4+PiAg CQkJCQkJCSAgJmNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZSk7Cj4+PiAgCWlmIChyZXQg PCAwKQo+Pj4gIAkJcmV0dXJuOwo+Pj4gQEAgLTU2OSw3ICs1NzEsNyBAQCBzdGF0aWMgdm9pZCBn NHhfc2V0X2luZm9mcmFtZXMoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+Pj4gIAo+Pj4g IAlpbnRlbF9oZG1pX3NldF9hdmlfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+Pj4g IAlpbnRlbF9oZG1pX3NldF9zcGRfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+Pj4g LQlpbnRlbF9oZG1pX3NldF9oZG1pX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlKTsKPj4+ ICsJaW50ZWxfaGRtaV9zZXRfaGRtaV9pbmZvZnJhbWUoZW5jb2RlciwgY3J0Y19zdGF0ZSwgY29u bl9zdGF0ZSk7Cj4+PiAgfQo+Pj4gIAo+Pj4gIHN0YXRpYyBib29sIGhkbWlfc2lua19pc19kZWVw X2NvbG9yKGNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpjb25uX3N0YXRlKQo+Pj4g QEAgLTcxMCw3ICs3MTIsNyBAQCBzdGF0aWMgdm9pZCBpYnhfc2V0X2luZm9mcmFtZXMoc3RydWN0 IGRybV9lbmNvZGVyICplbmNvZGVyLAo+Pj4gIAo+Pj4gIAlpbnRlbF9oZG1pX3NldF9hdmlfaW5m b2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+Pj4gIAlpbnRlbF9oZG1pX3NldF9zcGRfaW5m b2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+Pj4gLQlpbnRlbF9oZG1pX3NldF9oZG1pX2lu Zm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlKTsKPj4+ICsJaW50ZWxfaGRtaV9zZXRfaGRtaV9p bmZvZnJhbWUoZW5jb2RlciwgY3J0Y19zdGF0ZSwgY29ubl9zdGF0ZSk7Cj4+PiAgfQo+Pj4gIAo+ Pj4gIHN0YXRpYyB2b2lkIGNwdF9zZXRfaW5mb2ZyYW1lcyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVu Y29kZXIsCj4+PiBAQCAtNzUzLDcgKzc1NSw3IEBAIHN0YXRpYyB2b2lkIGNwdF9zZXRfaW5mb2Zy YW1lcyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4+PiAgCj4+PiAgCWludGVsX2hkbWlf c2V0X2F2aV9pbmZvZnJhbWUoZW5jb2RlciwgY3J0Y19zdGF0ZSk7Cj4+PiAgCWludGVsX2hkbWlf c2V0X3NwZF9pbmZvZnJhbWUoZW5jb2RlciwgY3J0Y19zdGF0ZSk7Cj4+PiAtCWludGVsX2hkbWlf c2V0X2hkbWlfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+Pj4gKwlpbnRlbF9oZG1p X3NldF9oZG1pX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlLCBjb25uX3N0YXRlKTsKPj4+ ICB9Cj4+PiAgCj4+PiAgc3RhdGljIHZvaWQgdmx2X3NldF9pbmZvZnJhbWVzKHN0cnVjdCBkcm1f ZW5jb2RlciAqZW5jb2RlciwKPj4+IEBAIC04MDYsNyArODA4LDcgQEAgc3RhdGljIHZvaWQgdmx2 X3NldF9pbmZvZnJhbWVzKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKPj4+ICAKPj4+ICAJ aW50ZWxfaGRtaV9zZXRfYXZpX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlKTsKPj4+ICAJ aW50ZWxfaGRtaV9zZXRfc3BkX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlKTsKPj4+IC0J aW50ZWxfaGRtaV9zZXRfaGRtaV9pbmZvZnJhbWUoZW5jb2RlciwgY3J0Y19zdGF0ZSk7Cj4+PiAr CWludGVsX2hkbWlfc2V0X2hkbWlfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUsIGNvbm5f c3RhdGUpOwo+Pj4gIH0KPj4+ICAKPj4+ICBzdGF0aWMgdm9pZCBoc3dfc2V0X2luZm9mcmFtZXMo c3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+Pj4gQEAgLTgzOSw3ICs4NDEsNyBAQCBzdGF0 aWMgdm9pZCBoc3dfc2V0X2luZm9mcmFtZXMoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+ Pj4gIAo+Pj4gIAlpbnRlbF9oZG1pX3NldF9hdmlfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3Rh dGUpOwo+Pj4gIAlpbnRlbF9oZG1pX3NldF9zcGRfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3Rh dGUpOwo+Pj4gLQlpbnRlbF9oZG1pX3NldF9oZG1pX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0 YXRlKTsKPj4+ICsJaW50ZWxfaGRtaV9zZXRfaGRtaV9pbmZvZnJhbWUoZW5jb2RlciwgY3J0Y19z dGF0ZSwgY29ubl9zdGF0ZSk7Cj4+PiAgfQo+Pj4gIAo+Pj4gIHZvaWQgaW50ZWxfZHBfZHVhbF9t b2RlX3NldF90bWRzX291dHB1dChzdHJ1Y3QgaW50ZWxfaGRtaSAqaGRtaSwgYm9vbCBlbmFibGUp Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19oZG1pLmMgYi9k cml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2hkbWkuYwo+Pj4gaW5kZXggMGE0ZmZkNzI0MTQ2 Li4wN2U2MTg5ODFhNWMgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2hkbWkuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19oZG1pLmMK Pj4+IEBAIC0xMDU0LDcgKzEwNTQsOCBAQCBzdGF0aWMgaW50IG10a19oZG1pX3NldHVwX3ZlbmRv cl9zcGVjaWZpY19pbmZvZnJhbWUoc3RydWN0IG10a19oZG1pICpoZG1pLAo+Pj4gIAl1OCBidWZm ZXJbMTBdOwo+Pj4gIAlzc2l6ZV90IGVycjsKPj4+ICAKPj4+IC0JZXJyID0gZHJtX2hkbWlfdmVu ZG9yX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUpOwo+Pj4gKwllcnIg PSBkcm1faGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZSwKPj4+ ICsJCQkJCQkJICAmaGRtaS0+Y29ubiwgbW9kZSk7Cj4+PiAgCWlmIChlcnIpIHsKPj4+ICAJCWRl dl9lcnIoaGRtaS0+ZGV2LAo+Pj4gIAkJCSJGYWlsZWQgdG8gZ2V0IHZlbmRvciBpbmZvZnJhbWUg ZnJvbSBtb2RlOiAlemRcbiIsIGVycik7Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L25vdXZlYXUvbnY1MF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rp c3BsYXkuYwo+Pj4gaW5kZXggNDJhODVjMTRhZWEwLi4xYjVmYzgzN2UzNWUgMTAwNjQ0Cj4+PiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYwo+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL25vdXZlYXUvbnY1MF9kaXNwbGF5LmMKPj4+IEBAIC0yNzY5LDcgKzI3Njks OCBAQCBudjUwX2hkbWlfZW5hYmxlKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2Rlciwgc3RydWN0 IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCj4+PiAgCQkJPSBoZG1pX2luZm9mcmFtZV9wYWNrKCZh dmlfZnJhbWUsIGFyZ3MuaW5mb2ZyYW1lcywgMTcpOwo+Pj4gIAl9Cj4+PiAgCj4+PiAtCXJldCA9 IGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJnZlbmRvcl9mcmFt ZS52ZW5kb3IuaGRtaSwgbW9kZSk7Cj4+PiArCXJldCA9IGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJh bWVfZnJvbV9kaXNwbGF5X21vZGUoJnZlbmRvcl9mcmFtZS52ZW5kb3IuaGRtaSwKPj4+ICsJCQkJ CQkJICAmbnZfY29ubmVjdG9yLT5iYXNlLCBtb2RlKTsKPj4+ICAJaWYgKCFyZXQpIHsKPj4+ICAJ CS8qIFdlIGhhdmUgYSBWZW5kb3IgSW5mb0ZyYW1lLCBwb3B1bGF0ZSBpdCB0byB0aGUgZGlzcGxh eSAqLwo+Pj4gIAkJYXJncy5wd3IudmVuZG9yX2luZm9mcmFtZV9sZW5ndGgKPj4+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvaW5ub19oZG1pLmMgYi9kcml2ZXJzL2dwdS9k cm0vcm9ja2NoaXAvaW5ub19oZG1pLmMKPj4+IGluZGV4IDdkOWI3NWViNmM0NC4uMDEyNmM1YmRj ZWFiIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL2lubm9faGRtaS5j Cj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvaW5ub19oZG1pLmMKPj4+IEBAIC0y ODIsNiArMjgyLDcgQEAgc3RhdGljIGludCBpbm5vX2hkbWlfY29uZmlnX3ZpZGVvX3ZzaShzdHJ1 Y3QgaW5ub19oZG1pICpoZG1pLAo+Pj4gIAlpbnQgcmM7Cj4+PiAgCj4+PiAgCXJjID0gZHJtX2hk bWlfdmVuZG9yX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUudmVuZG9yLmhkbWks Cj4+PiArCQkJCQkJCSAmaGRtaS0+Y29ubmVjdG9yLAo+Pj4gIAkJCQkJCQkgbW9kZSk7Cj4+PiAg Cj4+PiAgCXJldHVybiBpbm5vX2hkbWlfdXBsb2FkX2ZyYW1lKGhkbWksIHJjLCAmZnJhbWUsIElO Rk9GUkFNRV9WU0ksCj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRt aS5jIGIvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5jCj4+PiBpbmRleCBhNTljOTVhODA4 MWIuLmZhNmU5YjM3YjEzNiAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3Rp X2hkbWkuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5jCj4+PiBAQCAt NTE1LDcgKzUxNSw5IEBAIHN0YXRpYyBpbnQgaGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2NvbmZpZyhz dHJ1Y3Qgc3RpX2hkbWkgKmhkbWkpCj4+PiAgCj4+PiAgCURSTV9ERUJVR19EUklWRVIoIlxuIik7 Cj4+PiAgCj4+PiAtCXJldCA9IGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5 X21vZGUoJmluZm9mcmFtZSwgbW9kZSk7Cj4+PiArCXJldCA9IGRybV9oZG1pX3ZlbmRvcl9pbmZv ZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmluZm9mcmFtZSwKPj4+ICsJCQkJCQkJICBoZG1pLT5k cm1fY29ubmVjdG9yLAo+Pj4gKwkJCQkJCQkgIG1vZGUpOwo+Pj4gIAlpZiAocmV0IDwgMCkgewo+ Pj4gIAkJLyoKPj4+ICAJCSAqIEdvaW5nIGludG8gdGhhdCBzdGF0ZW1lbnQgZG9lcyBub3QgbWVh bnMgdmVuZG9yIGluZm9mcmFtZQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS96dGUv enhfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9oZG1pLmMKPj4+IGluZGV4IDBkZjcz NjZlNTk0Yi4uODQ0ODczMzJlNWM2IDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3p0 ZS96eF9oZG1pLmMKPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfaGRtaS5jCj4+PiBA QCAtMTA4LDYgKzEwOCw3IEBAIHN0YXRpYyBpbnQgenhfaGRtaV9jb25maWdfdmlkZW9fdnNpKHN0 cnVjdCB6eF9oZG1pICpoZG1pLAo+Pj4gIAlpbnQgcmV0Owo+Pj4gIAo+Pj4gIAlyZXQgPSBkcm1f aGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZS52ZW5kb3IuaGRt aSwKPj4+ICsJCQkJCQkJICAmaGRtaS0+Y29ubmVjdG9yLAo+Pj4gIAkJCQkJCQkgIG1vZGUpOwo+ Pj4gIAlpZiAocmV0KSB7Cj4+PiAgCQlEUk1fREVWX0VSUk9SKGhkbWktPmRldiwgImZhaWxlZCB0 byBnZXQgdmVuZG9yIGluZm9mcmFtZTogJWRcbiIsCj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9k cm0vZHJtX2Nvbm5lY3Rvci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4+PiBpbmRl eCBhZTViN2RjMzE2YzguLmIxODkzOTI4MDYxNiAxMDA2NDQKPj4+IC0tLSBhL2luY2x1ZGUvZHJt L2RybV9jb25uZWN0b3IuaAo+Pj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCj4+ PiBAQCAtMjQ3LDYgKzI0NywxMSBAQCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfaW5mbyB7Cj4+PiAgCWJv b2wgZHZpX2R1YWw7Cj4+PiAgCj4+PiAgCS8qKgo+Pj4gKwkgKiBAaGFzX2hkbWlfaW5mb2ZyYW1l OiBEb2VzIHRoZSBzaW5rIHN1cHBvcnQgdGhlIEhETUkgaW5mb2ZyYW1lPwo+Pj4gKwkgKi8KPj4+ ICsJYm9vbCBoYXNfaGRtaV9pbmZvZnJhbWU7Cj4+PiArCj4+PiArCS8qKgo+Pj4gIAkgKiBAZWRp ZF9oZG1pX2RjX21vZGVzOiBNYXNrIG9mIHN1cHBvcnRlZCBoZG1pIGRlZXAgY29sb3IgbW9kZXMu IEV2ZW4KPj4+ICAJICogbW9yZSBzdHVmZiByZWR1bmRhbnQgd2l0aCBAYnVzX2Zvcm1hdHMuCj4+ PiAgCSAqLwo+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9lZGlkLmggYi9pbmNsdWRl L2RybS9kcm1fZWRpZC5oCj4+PiBpbmRleCA3YjlmNDhiNjJlMDcuLmIwZjM3NzA4YjVhYiAxMDA2 NDQKPj4+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9lZGlkLmgKPj4+ICsrKyBiL2luY2x1ZGUvZHJt L2RybV9lZGlkLmgKPj4+IEBAIC0zNDYsNiArMzQ2LDcgQEAgZHJtX2hkbWlfYXZpX2luZm9mcmFt ZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKPj4+ ICAJCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSk7Cj4+PiAgaW50Cj4+ PiAgZHJtX2hkbWlfdmVuZG9yX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3QgaGRt aV92ZW5kb3JfaW5mb2ZyYW1lICpmcmFtZSwKPj4+ICsJCQkJCSAgICBzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAo+Pj4gIAkJCQkJICAgIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICptb2RlKTsKPj4+ICB2b2lkCj4+PiAgZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9xdWFudF9y YW5nZShzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK