From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [RESEND-CI v4 01/15] drm: add HDMI 2.0 VIC support for AVI info-frames Date: Fri, 30 Jun 2017 14:54:32 +0300 Message-ID: <20170630115432.GS12629@intel.com> References: <1498041253-16426-1-git-send-email-shashank.sharma@intel.com> <1498041253-16426-2-git-send-email-shashank.sharma@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: <1498041253-16426-2-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Shashank Sharma Cc: Jose Abreu , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Alex Deucher , Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBKdW4gMjEsIDIwMTcgYXQgMDQ6MDM6NTlQTSArMDUzMCwgU2hhc2hhbmsgU2hhcm1h IHdyb3RlOgo+IEhETUkgMS40YiBzdXBwb3J0IHRoZSBDRUEgdmlkZW8gbW9kZXMgYXMgcGVyIHJh bmdlIG9mIENFQS04NjEtRCAoVklDIDEtNjQpLgo+IEZvciBhbnkgb3RoZXIgbW9kZSwgdGhlIFZJ QyBmaWxlZCBpbiBBVkkgaW5mb2ZyYW1lcyBzaG91bGQgYmUgMC4KPiBIRE1JIDIuMCBzaW5rcywg c3VwcG9ydCB2aWRlbyBtb2RlcyByYW5nZSBhcyBwZXIgQ0VBLTg2MS1GIHNwZWMsIHdoaWNoIGlz Cj4gZXh0ZW5kZWQgdG8gKFZJQyAxLTEwNykuCj4gCj4gVGhpcyBwYXRjaCBhZGRzIGEgYm9vbCBp bnB1dCB2YXJpYWJsZSwgd2hpY2ggaW5kaWNhdGVzIGlmIHRoZSBjb25uZWN0ZWQKPiBzaW5rIGlz IGEgSERNSSAyLjAgc2luayBvciBub3QuIFRoaXMgd2lsbCBtYWtlIHN1cmUgdGhhdCB3ZSBkb24n dCBwYXNzIGEKPiBIRE1JIDIuMCBWSUMgdG8gYSBIRE1JIDEuNCBzaW5rLgo+IAo+IFRoaXMgcGF0 Y2ggdG91Y2hlcyBhbGwgZHJtIGRyaXZlcnMsIHdobyBhcmUgY2FsbGVycyBvZiB0aGlzIGZ1bmN0 aW9uCj4gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSBidXQgdG8gbWFr ZSBzdXJlIHRoZXJlIGlzCj4gbm8gY2hhbmdlIGluIGN1cnJlbnQgYmVoYXZpb3IsIGlzX2hkbWky IGlzIGtlcHQgYXMgZmFsc2UuCj4gCj4gSW4gY2FzZSBvZiBJOTE1IGRyaXZlciwgdGhpcyBwYXRj aDoKPiAtIGNoZWNrcyBpZiB0aGUgY29ubmVjdGVkIGRpc3BsYXkgaXMgSERNSSAyLjAuCj4gLSBI RE1JIGluZm9mcmFtZXMgY2Fycnkgb25lIG9mIHRoaXMgdHdvIHR5cGUgb2YgaW5mb3JtYXRpb246 Cj4gCS0gVklDIGZvciA0SyBtb2RlcyBmb3IgSERNSSAxLjQgc2lua3MKPiAJLSBTM0QgaW5mb3Jt YXRpb24gZm9yIFMzRCBtb2Rlcwo+ICAgQXMgQ0VBLTg2MS1GIGhhcyBhbHJlYWR5IGRlZmluZWQg VklDcyBmb3IgNEsgdmlkZW9tb2RlcywgdGhpcwo+ICAgcGF0Y2ggZG9lc24ndCBhbGxvdyBzZW5k aW5nIEhETUkgaW5mb2ZyYW1lcyBmb3IgSERNSSAyLjAgc2lua3MsCj4gICB1bnRpbCB0aGUgbW9k ZSBpcyAzRC4KPiAKPiBDYzogVmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRl bC5jb20+Cj4gQ2M6IEpvc2UgQWJyZXUgPGpvc2UuYWJyZXVAc3lub3BzeXMuY29tPgo+IENjOiBB bmRyemVqIEhhamRhIDxhLmhhamRhQHNhbXN1bmcuY29tPgo+IENjOiBBbGV4IERldWNoZXIgPGFs ZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+Cj4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0 ZXJAaW50ZWwuY29tPgo+IAo+IFBTOiBUaGlzIHBhdGNoIHRvdWNoZXMgYSBmZXcgbGluZXMgaW4g ZmV3IGZpbGVzLCB3aGljaCB3ZXJlCj4gYWxyZWFkeSBhYm92ZSA4MCBjaGFyLCBzbyBjaGVja3Bh dGNoIGdpdmVzIDgwIGNoYXIgd2FybmluZyBhZ2Fpbi4KPiAtIGdwdS9kcm0vb21hcGRybS9vbWFw X2VuY29kZXIuYwo+IC0gZ3B1L2RybS9pOTE1L2ludGVsX3Nkdm8uYwo+IAo+IFYyOiBSZWJhc2Us IEFkZGVkIHItYiBmcm9tIEFuZHJ6ZWoKPiBWMzogQWRkcmVzc2VkIHJldmlldyBjb21tZW50IGZy b20gVmlsbGU6Cj4gCS0gRG8gbm90IHNlbmQgVklDcyBpbiBib3RoIEFWSS1JRiBhbmQgSERNSS1J Rgo+IAkgIHNlbmQgb25seSBvbmUgb2YgaXQuCj4gCj4gUmV2aWV3ZWQtYnk6IEFuZHJ6ZWogSGFq ZGEgPGEuaGFqZGFAc2Ftc3VuZy5jb20+Cj4gU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1h IDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9kY2VfdjEwXzAuYyAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2RjZV92MTFfMC5jICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv ZGNlX3Y4XzAuYyAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4 LWFueDc4eHguYyB8ICAzICsrLQo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3NpaTkwMnguYyAg ICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRt aS5jIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgICAgICAgICAgICAgICAg fCAxMiArKysrKysrKysrKy0KPiAgZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5j ICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTJjL3RkYTk5OHhfZHJ2LmMgICAgICAg ICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyAgICAgICAgIHwg MTcgKysrKysrKysrKysrKysrKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5j ICAgICAgICAgfCAgMyArKy0KPiAgZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19oZG1pLmMg ICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2VuY29kZXIuYyAg ICB8ICAzICsrLQo+ICBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jICAgICB8 ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hkbWkuYyAgICAgIHwgIDIg Ky0KPiAgZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5jICAgICAgICAgICAgfCAgMiArLQo+ ICBkcml2ZXJzL2dwdS9kcm0vdGVncmEvaGRtaS5jICAgICAgICAgICAgICB8ICAyICstCj4gIGRy aXZlcnMvZ3B1L2RybS90ZWdyYS9zb3IuYyAgICAgICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVy cy9ncHUvZHJtL3ZjNC92YzRfaGRtaS5jICAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dw dS9kcm0venRlL3p4X2hkbWkuYyAgICAgICAgICAgICB8ICAyICstCj4gIGluY2x1ZGUvZHJtL2Ry bV9lZGlkLmggICAgICAgICAgICAgICAgICAgIHwgIDMgKystCj4gIDIxIGZpbGVzIGNoYW5nZWQs IDUwIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjEwXzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2RjZV92MTBfMC5jCj4gaW5kZXggM2M2MmM0NS4uNDkyM2RkYyAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjEwXzAuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92MTBfMC5jCj4gQEAgLTE4NjQsNyArMTg2NCw3IEBAIHN0 YXRpYyB2b2lkIGRjZV92MTBfMF9hZm10X3NldG1vZGUoc3RydWN0IGRybV9lbmNvZGVyICplbmNv ZGVyLAo+ICAJZGNlX3YxMF8wX2F1ZGlvX3dyaXRlX3NhZF9yZWdzKGVuY29kZXIpOwo+ICAJZGNl X3YxMF8wX2F1ZGlvX3dyaXRlX2xhdGVuY3lfZmllbGRzKGVuY29kZXIsIG1vZGUpOwo+ICAKPiAt CWVyciA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBt b2RlKTsKPiArCWVyciA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUo JmZyYW1lLCBtb2RlLCBmYWxzZSk7Cj4gIAlpZiAoZXJyIDwgMCkgewo+ICAJCURSTV9FUlJPUigi ZmFpbGVkIHRvIHNldHVwIEFWSSBpbmZvZnJhbWU6ICV6ZFxuIiwgZXJyKTsKPiAgCQlyZXR1cm47 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92MTFfMC5jIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMV8wLmMKPiBpbmRleCBjOGVkMGZhLi40 MTAxNjg0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92MTFf MC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMV8wLmMKPiBAQCAt MTg0OCw3ICsxODQ4LDcgQEAgc3RhdGljIHZvaWQgZGNlX3YxMV8wX2FmbXRfc2V0bW9kZShzdHJ1 Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gIAlkY2VfdjExXzBfYXVkaW9fd3JpdGVfc2FkX3Jl Z3MoZW5jb2Rlcik7Cj4gIAlkY2VfdjExXzBfYXVkaW9fd3JpdGVfbGF0ZW5jeV9maWVsZHMoZW5j b2RlciwgbW9kZSk7Cj4gIAo+IC0JZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rp c3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUpOwo+ICsJZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFt ZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUsIGZhbHNlKTsKPiAgCWlmIChlcnIgPCAw KSB7Cj4gIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gc2V0dXAgQVZJIGluZm9mcmFtZTogJXpkXG4i LCBlcnIpOwo+ICAJCXJldHVybjsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvZGNlX3Y4XzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92OF8wLmMK PiBpbmRleCAzZTkwYzE5Li5hN2Y2YjMyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2RjZV92OF8wLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9k Y2VfdjhfMC5jCj4gQEAgLTE3NDcsNyArMTc0Nyw3IEBAIHN0YXRpYyB2b2lkIGRjZV92OF8wX2Fm bXRfc2V0bW9kZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gIAlkY2VfdjhfMF9hdWRp b193cml0ZV9zYWRfcmVncyhlbmNvZGVyKTsKPiAgCWRjZV92OF8wX2F1ZGlvX3dyaXRlX2xhdGVu Y3lfZmllbGRzKGVuY29kZXIsIG1vZGUpOwo+ICAKPiAtCWVyciA9IGRybV9oZG1pX2F2aV9pbmZv ZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlKTsKPiArCWVyciA9IGRybV9oZG1p X2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlLCBmYWxzZSk7Cj4g IAlpZiAoZXJyIDwgMCkgewo+ICAJCURSTV9FUlJPUigiZmFpbGVkIHRvIHNldHVwIEFWSSBpbmZv ZnJhbWU6ICV6ZFxuIiwgZXJyKTsKPiAgCQlyZXR1cm47Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9icmlkZ2UvYW5hbG9naXgtYW54Nzh4eC5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRn ZS9hbmFsb2dpeC1hbng3OHh4LmMKPiBpbmRleCA5MDA2NTc4Li5hMDgzMjExIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgtYW54Nzh4eC5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC1hbng3OHh4LmMKPiBAQCAtMTA5Nyw3ICsxMDk3 LDggQEAgc3RhdGljIHZvaWQgYW54Nzh4eF9icmlkZ2VfbW9kZV9zZXQoc3RydWN0IGRybV9icmlk Z2UgKmJyaWRnZSwKPiAgCj4gIAltdXRleF9sb2NrKCZhbng3OHh4LT5sb2NrKTsKPiAgCj4gLQll cnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZSwgYWRq dXN0ZWRfbW9kZSk7Cj4gKwllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxh eV9tb2RlKCZmcmFtZSwgYWRqdXN0ZWRfbW9kZSwKPiArCQkJCQkJICAgICAgIGZhbHNlKTsKPiAg CWlmIChlcnIpIHsKPiAgCQlEUk1fRVJST1IoIkZhaWxlZCB0byBzZXR1cCBBVkkgaW5mb2ZyYW1l OiAlZFxuIiwgZXJyKTsKPiAgCQlnb3RvIHVubG9jazsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2JyaWRnZS9zaWk5MDJ4LmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3NpaTkwMngu Ywo+IGluZGV4IDliODcwNjcuLjNkYzQwZjYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2JyaWRnZS9zaWk5MDJ4LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3NpaTkwMngu Ywo+IEBAIC0yNjksNyArMjY5LDcgQEAgc3RhdGljIHZvaWQgc2lpOTAyeF9icmlkZ2VfbW9kZV9z ZXQoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSwKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJuOwo+ ICAKPiAtCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZy YW1lLCBhZGopOwo+ICsJcmV0ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlf bW9kZSgmZnJhbWUsIGFkaiwgZmFsc2UpOwo+ICAJaWYgKHJldCA8IDApIHsKPiAgCQlEUk1fRVJS T1IoImNvdWxkbid0IGZpbGwgQVZJIGluZm9mcmFtZVxuIik7Cj4gIAkJcmV0dXJuOwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhkbWkuYyBiL2RyaXZl cnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRtaS5jCj4gaW5kZXggZWFkMTEyNC4uMGIw YzlkZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhk bWkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRtaS5jCj4g QEAgLTEzMTcsNyArMTMxNyw3IEBAIHN0YXRpYyB2b2lkIGhkbWlfY29uZmlnX0FWSShzdHJ1Y3Qg ZHdfaGRtaSAqaGRtaSwgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCj4gIAl1OCB2YWw7 Cj4gIAo+ICAJLyogSW5pdGlhbGlzZSBpbmZvIGZyYW1lIGZyb20gRFJNIG1vZGUgKi8KPiAtCWRy bV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlKTsKPiAr CWRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlLCBm YWxzZSk7Cj4gIAo+ICAJaWYgKGhkbWlfYnVzX2ZtdF9pc195dXY0NDQoaGRtaS0+aGRtaV9kYXRh LmVuY19vdXRfYnVzX2Zvcm1hdCkpCj4gIAkJZnJhbWUuY29sb3JzcGFjZSA9IEhETUlfQ09MT1JT UEFDRV9ZVVY0NDQ7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKPiBpbmRleCAyZTU1NTk5Li5kMzEyZmUxIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9lZGlkLmMKPiBAQCAtNDMzNCwxMiArNDMzNCwxNCBAQCBFWFBPUlRfU1lNQk9MKGRy bV9zZXRfcHJlZmVycmVkX21vZGUpOwo+ICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBkYXRhIGZyb20gYSBEUk0gZGlzcGxheSBtb2RlCj4gICAqIEBmcmFt ZTogSERNSSBBVkkgaW5mb2ZyYW1lCj4gICAqIEBtb2RlOiBEUk0gZGlzcGxheSBtb2RlCj4gKyAq IEBpc19oZG1pMl9zaW5rOiBTaW5rIGlzIEhETUkgMi4wIGNvbXBsaWFudAo+ICAgKgo+ICAgKiBS ZXR1cm46IDAgb24gc3VjY2VzcyBvciBhIG5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZmFpbHVyZS4K PiAgICovCj4gIGludAo+ICBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2Rl KHN0cnVjdCBoZG1pX2F2aV9pbmZvZnJhbWUgKmZyYW1lLAo+IC0JCQkJCSBjb25zdCBzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkKPiArCQkJCQkgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5 X21vZGUgKm1vZGUsCj4gKwkJCQkJIGJvb2wgaXNfaGRtaTJfc2luaykKPiAgewo+ICAJaW50IGVy cjsKPiAgCj4gQEAgLTQzNTUsNiArNDM1NywxNCBAQCBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zy b21fZGlzcGxheV9tb2RlKHN0cnVjdCBoZG1pX2F2aV9pbmZvZnJhbWUgKmZyYW1lLAo+ICAKPiAg CWZyYW1lLT52aWRlb19jb2RlID0gZHJtX21hdGNoX2NlYV9tb2RlKG1vZGUpOwo+ICAKPiArCS8q Cj4gKwkgKiBIRE1JIDEuNCBWSUMgcmFuZ2U6IDEgPD0gVklDIDw9IDY0IChDRUEtODYxLUQpIGJ1 dAo+ICsJICogSERNSSAyLjAgVklDIHJhbmdlOiAxIDw9IFZJQyA8PSAxMDcgKENFQS04NjEtRiku IFNvIHdlCj4gKwkgKiBoYXZlIHRvIG1ha2Ugc3VyZSB3ZSBkb250IGJyZWFrIEhETUkgMS40IHNp bmtzLgo+ICsJICovCj4gKwlpZiAoIWlzX2hkbWkyX3NpbmsgJiYgZnJhbWUtPnZpZGVvX2NvZGUg PiA2NCkKPiArCQlmcmFtZS0+dmlkZW9fY29kZSA9IDA7Cj4gKwo+ICAJZnJhbWUtPnBpY3R1cmVf YXNwZWN0ID0gSERNSV9QSUNUVVJFX0FTUEVDVF9OT05FOwo+ICAKPiAgCS8qCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9leHlub3MvZXh5bm9zX2hkbWkuYwo+IGluZGV4IDA2YmZiZTQuLmM5NTM5MjcgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jCj4gQEAgLTc4NCw3ICs3ODQsNyBAQCBzdGF0 aWMgdm9pZCBoZG1pX3JlZ19pbmZvZnJhbWVzKHN0cnVjdCBoZG1pX2NvbnRleHQgKmhkYXRhKQo+ ICAJfQo+ICAKPiAgCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21v ZGUoJmZybS5hdmksCj4gLQkJCSZoZGF0YS0+Y3VycmVudF9tb2RlKTsKPiArCQkJJmhkYXRhLT5j dXJyZW50X21vZGUsIGZhbHNlKTsKPiAgCWlmICghcmV0KQo+ICAJCXJldCA9IGhkbWlfYXZpX2lu Zm9mcmFtZV9wYWNrKCZmcm0uYXZpLCBidWYsIHNpemVvZihidWYpKTsKPiAgCWlmIChyZXQgPiAw KSB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pMmMvdGRhOTk4eF9kcnYuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pMmMvdGRhOTk4eF9kcnYuYwo+IGluZGV4IDg2ZjQ3ZTEuLmQxZTdhYzUg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5jCj4gQEAgLTcxMiw3ICs3MTIsNyBAQCB0 ZGE5OTh4X3dyaXRlX2F2aShzdHJ1Y3QgdGRhOTk4eF9wcml2ICpwcml2LCBzdHJ1Y3QgZHJtX2Rp c3BsYXlfbW9kZSAqbW9kZSkKPiAgewo+ICAJdW5pb24gaGRtaV9pbmZvZnJhbWUgZnJhbWU7Cj4g IAo+IC0JZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUuYXZp LCBtb2RlKTsKPiArCWRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZy YW1lLmF2aSwgbW9kZSwgZmFsc2UpOwo+ICAJZnJhbWUuYXZpLnF1YW50aXphdGlvbl9yYW5nZSA9 IEhETUlfUVVBTlRJWkFUSU9OX1JBTkdFX0ZVTEw7Cj4gIAo+ICAJdGRhOTk4eF93cml0ZV9pZihw cml2LCBESVBfSUZfRkxBR1NfSUYyLCBSRUdfSUYyX0hCMCwgJmZyYW1lKTsKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfaGRtaS5jCj4gaW5kZXggZWMwNzc5YS4uMTcwYWJjNCAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9oZG1pLmMKPiBAQCAtNDU5LDExICs0NTksMTQgQEAgc3RhdGljIHZvaWQgaW50 ZWxfaGRtaV9zZXRfYXZpX2luZm9mcmFtZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4g IAlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGVuY190b19pbnRlbF9oZG1pKGVuY29k ZXIpOwo+ICAJY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUgPQo+ ICAJCSZjcnRjX3N0YXRlLT5iYXNlLmFkanVzdGVkX21vZGU7Cj4gKwlzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yID0gJmludGVsX2hkbWktPmF0dGFjaGVkX2Nvbm5lY3Rvci0+YmFzZTsK PiArCWJvb2wgaXNfaGRtaTJfc2luayA9IGNvbm5lY3Rvci0+ZGlzcGxheV9pbmZvLmhkbWkuc2Nk Yy5zdXBwb3J0ZWQ7Cj4gIAl1bmlvbiBoZG1pX2luZm9mcmFtZSBmcmFtZTsKPiAgCWludCByZXQ7 Cj4gIAo+ICAJcmV0ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgm ZnJhbWUuYXZpLAo+IC0JCQkJCQkgICAgICAgYWRqdXN0ZWRfbW9kZSk7Cj4gKwkJCQkJCSAgICAg ICBhZGp1c3RlZF9tb2RlLAo+ICsJCQkJCQkgICAgICAgaXNfaGRtaTJfc2luayk7Cj4gIAlpZiAo cmV0IDwgMCkgewo+ICAJCURSTV9FUlJPUigiY291bGRuJ3QgZmlsbCBBVkkgaW5mb2ZyYW1lXG4i KTsKPiAgCQlyZXR1cm47Cj4gQEAgLTgxNiw2ICs4MTksOCBAQCBzdGF0aWMgdm9pZCBoc3dfc2V0 X2luZm9mcmFtZXMoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+ICB7Cj4gIAlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmRldik7Cj4gIAlz dHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGVuY190b19pbnRlbF9oZG1pKGVuY29kZXIp Owo+ICsJc3RydWN0IGRybV9oZG1pX2luZm8gKmhkbWkgPSAmY29ubl9zdGF0ZS0+Y29ubmVjdG9y LT5kaXNwbGF5X2luZm8uaGRtaTsKPiArCWNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpt b2RlID0gJmNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZTsKPiAgCWk5MTVfcmVnX3QgcmVn ID0gSFNXX1RWSURFT19ESVBfQ1RMKGNydGNfc3RhdGUtPmNwdV90cmFuc2NvZGVyKTsKPiAgCXUz MiB2YWwgPSBJOTE1X1JFQUQocmVnKTsKPiAgCj4gQEAgLTgzOSw2ICs4NDQsMTYgQEAgc3RhdGlj IHZvaWQgaHN3X3NldF9pbmZvZnJhbWVzKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKPiAg Cj4gIAlpbnRlbF9oZG1pX3NldF9hdmlfaW5mb2ZyYW1lKGVuY29kZXIsIGNydGNfc3RhdGUpOwo+ ICAJaW50ZWxfaGRtaV9zZXRfc3BkX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlKTsKPiAr Cj4gKwkvKgo+ICsJICogQ0VBLTg2MS1GIGFkZGVkIG5ldyBWSUNzIGZvciA0ayB2aWRlbyBtb2Rl cywgZHVlIHRvIHdoaWNoCj4gKwkgKiBIRE1JIDIuMCBzaW5rcyBuZWVkIEhETUkgSUYgb25seSBm b3IgUzNEIGluZm9ybWF0aW9uIChOb3QgZm9yCj4gKwkgKiA0ayBWSUNzKS4gU28gZm9yIGEgSERN SSAyLjAgc2luaywgaWYgdGhlIHZpZGVvIG1vZGUgaXMgbm90IDNELAo+ICsJICogZG9uJ3QgYm90 aGVyIHNlbmRpbmcgSERNSSBJRi4KPiArCSAqLwo+ICsJaWYgKGhkbWktPnNjZGMuc3VwcG9ydGVk ICYmICEobW9kZS0+ZmxhZ3MgJiBEUk1fTU9ERV9GTEFHXzNEX01BU0spKQo+ICsJCXJldHVybjsK ClRoYXQgZG9lc24ndCBsb29rIGxpa2UgdGhlIHJpZ3RoIHBsYWNlIGZvciB0aGlzIGNoZWNrLgoK QWxzbyBJIHRoaW5rIHdlIHN0aWxsIHdhbnQgdG8gc2VuZCB0aGUgdmVuZG9yIHNwZWNpZmljIGlu Zm9mcmFtZSBhbHdheXMsCmlmIGZvciBubyBvdGhlciByZWFzb24gdGhhdCB0byBnZXQgZXh0cmEg dGVzdGluZyBmb3IgdGhlIGNvZGUuIFdlIGp1c3QKbmVlZCB0byBzZWxlY3Qgd2hldGhlciB3ZSBz aG91bGQgYmUgc2VuZGluZyB0aGUgb2xkIG9yIHRoZSBuZXcgb25lLgoKPiArCj4gIAlpbnRlbF9o ZG1pX3NldF9oZG1pX2luZm9mcmFtZShlbmNvZGVyLCBjcnRjX3N0YXRlKTsKPiAgfQo+ICAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jCj4gaW5kZXggZjQzMjlkMi4uNzM3MDc2ZSAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMKPiBAQCAtOTk2LDcgKzk5Niw4IEBAIHN0YXRpYyBi b29sIGludGVsX3Nkdm9fc2V0X2F2aV9pbmZvZnJhbWUoc3RydWN0IGludGVsX3Nkdm8gKmludGVs X3Nkdm8sCj4gIAlzc2l6ZV90IGxlbjsKPiAgCj4gIAlyZXQgPSBkcm1faGRtaV9hdmlfaW5mb2Zy YW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZS5hdmksCj4gLQkJCQkJCSAgICAgICAmcGlwZV9j b25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZSk7Cj4gKwkJCQkJCSAgICAgICAmcGlwZV9jb25maWct PmJhc2UuYWRqdXN0ZWRfbW9kZSwKPiArCQkJCQkJICAgICAgIGZhbHNlKTsKPiAgCWlmIChyZXQg PCAwKSB7Cj4gIAkJRFJNX0VSUk9SKCJjb3VsZG4ndCBmaWxsIEFWSSBpbmZvZnJhbWVcbiIpOwo+ ICAJCXJldHVybiBmYWxzZTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2hkbWkuYwo+IGluZGV4 IDBhNGZmZDcuLjVjMGQwMjQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19oZG1pLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2hkbWkuYwo+ IEBAIC05NzUsNyArOTc1LDcgQEAgc3RhdGljIGludCBtdGtfaGRtaV9zZXR1cF9hdmlfaW5mb2Zy YW1lKHN0cnVjdCBtdGtfaGRtaSAqaGRtaSwKPiAgCXU4IGJ1ZmZlclsxN107Cj4gIAlzc2l6ZV90 IGVycjsKPiAgCj4gLQllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9t b2RlKCZmcmFtZSwgbW9kZSk7Cj4gKwllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21f ZGlzcGxheV9tb2RlKCZmcmFtZSwgbW9kZSwgZmFsc2UpOwo+ICAJaWYgKGVyciA8IDApIHsKPiAg CQlkZXZfZXJyKGhkbWktPmRldiwKPiAgCQkJIkZhaWxlZCB0byBnZXQgQVZJIGluZm9mcmFtZSBm cm9tIG1vZGU6ICV6ZFxuIiwgZXJyKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL29t YXBkcm0vb21hcF9lbmNvZGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2VuY29k ZXIuYwo+IGluZGV4IDg2Yzk3N2IuLjYyNGY1YjUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL29tYXBkcm0vb21hcF9lbmNvZGVyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRy bS9vbWFwX2VuY29kZXIuYwo+IEBAIC04NSw3ICs4NSw4IEBAIHN0YXRpYyB2b2lkIG9tYXBfZW5j b2Rlcl9tb2RlX3NldChzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gIAlpZiAoaGRtaV9t b2RlICYmIGRzc2Rldi0+ZHJpdmVyLT5zZXRfaGRtaV9pbmZvZnJhbWUpIHsKPiAgCQlzdHJ1Y3Qg aGRtaV9hdmlfaW5mb2ZyYW1lIGF2aTsKPiAgCj4gLQkJciA9IGRybV9oZG1pX2F2aV9pbmZvZnJh bWVfZnJvbV9kaXNwbGF5X21vZGUoJmF2aSwgYWRqdXN0ZWRfbW9kZSk7Cj4gKwkJciA9IGRybV9o ZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmF2aSwgYWRqdXN0ZWRfbW9kZSwK PiArCQkJCQkJCSAgICAgZmFsc2UpOwo+ICAJCWlmIChyID09IDApCj4gIAkJCWRzc2Rldi0+ZHJp dmVyLT5zZXRfaGRtaV9pbmZvZnJhbWUoZHNzZGV2LCAmYXZpKTsKPiAgCX0KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYyBiL2RyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMKPiBpbmRleCBhYWFjYWMxLi43NzBlMzFmIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jCj4gQEAgLTUxNiw3ICs1MTYsNyBAQCBz dGF0aWMgaW50IHJhZGVvbl9hdWRpb19zZXRfYXZpX3BhY2tldChzdHJ1Y3QgZHJtX2VuY29kZXIg KmVuY29kZXIsCj4gIAlpZiAoIWNvbm5lY3RvcikKPiAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgCj4g LQllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZSwg bW9kZSk7Cj4gKwllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2Rl KCZmcmFtZSwgbW9kZSwgZmFsc2UpOwo+ICAJaWYgKGVyciA8IDApIHsKPiAgCQlEUk1fRVJST1Io ImZhaWxlZCB0byBzZXR1cCBBVkkgaW5mb2ZyYW1lOiAlZFxuIiwgZXJyKTsKPiAgCQlyZXR1cm4g ZXJyOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvaW5ub19oZG1pLmMg Yi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvaW5ub19oZG1pLmMKPiBpbmRleCA3ZDliNzVlLi43 MTQ5OTY4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hkbWku Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9pbm5vX2hkbWkuYwo+IEBAIC0yOTQs NyArMjk0LDcgQEAgc3RhdGljIGludCBpbm5vX2hkbWlfY29uZmlnX3ZpZGVvX2F2aShzdHJ1Y3Qg aW5ub19oZG1pICpoZG1pLAo+ICAJdW5pb24gaGRtaV9pbmZvZnJhbWUgZnJhbWU7Cj4gIAlpbnQg cmM7Cj4gIAo+IC0JcmMgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2Rl KCZmcmFtZS5hdmksIG1vZGUpOwo+ICsJcmMgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21f ZGlzcGxheV9tb2RlKCZmcmFtZS5hdmksIG1vZGUsIGZhbHNlKTsKPiAgCj4gIAlpZiAoaGRtaS0+ aGRtaV9kYXRhLmVuY19vdXRfZm9ybWF0ID09IEhETUlfQ09MT1JTUEFDRV9ZVVY0NDQpCj4gIAkJ ZnJhbWUuYXZpLmNvbG9yc3BhY2UgPSBIRE1JX0NPTE9SU1BBQ0VfWVVWNDQ0Owo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vc3Rp L3N0aV9oZG1pLmMKPiBpbmRleCBhNTljOTVhLi5kYmM2YTE5IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9zdGkvc3RpX2hkbWkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3Rp X2hkbWkuYwo+IEBAIC00MzQsNyArNDM0LDcgQEAgc3RhdGljIGludCBoZG1pX2F2aV9pbmZvZnJh bWVfY29uZmlnKHN0cnVjdCBzdGlfaGRtaSAqaGRtaSkKPiAgCj4gIAlEUk1fREVCVUdfRFJJVkVS KCJcbiIpOwo+ICAKPiAtCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5 X21vZGUoJmluZm9mcmFtZSwgbW9kZSk7Cj4gKwlyZXQgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1l X2Zyb21fZGlzcGxheV9tb2RlKCZpbmZvZnJhbWUsIG1vZGUsIGZhbHNlKTsKPiAgCWlmIChyZXQg PCAwKSB7Cj4gIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gc2V0dXAgQVZJIGluZm9mcmFtZTogJWRc biIsIHJldCk7Cj4gIAkJcmV0dXJuIHJldDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L3RlZ3JhL2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9oZG1pLmMKPiBpbmRleCBjZGEw NDkxLi43MThkOGRiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9oZG1pLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvaGRtaS5jCj4gQEAgLTczNCw3ICs3MzQsNyBA QCBzdGF0aWMgdm9pZCB0ZWdyYV9oZG1pX3NldHVwX2F2aV9pbmZvZnJhbWUoc3RydWN0IHRlZ3Jh X2hkbWkgKmhkbWksCj4gIAl1OCBidWZmZXJbMTddOwo+ICAJc3NpemVfdCBlcnI7Cj4gIAo+IC0J ZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1v ZGUpOwo+ICsJZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgm ZnJhbWUsIG1vZGUsIGZhbHNlKTsKPiAgCWlmIChlcnIgPCAwKSB7Cj4gIAkJZGV2X2VycihoZG1p LT5kZXYsICJmYWlsZWQgdG8gc2V0dXAgQVZJIGluZm9mcmFtZTogJXpkXG4iLCBlcnIpOwo+ICAJ CXJldHVybjsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL3Nvci5jIGIvZHJp dmVycy9ncHUvZHJtL3RlZ3JhL3Nvci5jCj4gaW5kZXggYThmNTI4OS4uZmIyNzA5YyAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vdGVncmEvc29yLmMKPiBAQCAtMTkwNCw3ICsxOTA0LDcgQEAgdGVncmFfc29yX2hkbWlfc2V0 dXBfYXZpX2luZm9mcmFtZShzdHJ1Y3QgdGVncmFfc29yICpzb3IsCj4gIAl2YWx1ZSAmPSB+SU5G T0ZSQU1FX0NUUkxfRU5BQkxFOwo+ICAJdGVncmFfc29yX3dyaXRlbChzb3IsIHZhbHVlLCBTT1Jf SERNSV9BVklfSU5GT0ZSQU1FX0NUUkwpOwo+ICAKPiAtCWVyciA9IGRybV9oZG1pX2F2aV9pbmZv ZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlKTsKPiArCWVyciA9IGRybV9oZG1p X2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlLCBmYWxzZSk7Cj4g IAlpZiAoZXJyIDwgMCkgewo+ICAJCWRldl9lcnIoc29yLT5kZXYsICJmYWlsZWQgdG8gc2V0dXAg QVZJIGluZm9mcmFtZTogJWRcbiIsIGVycik7Cj4gIAkJcmV0dXJuIGVycjsKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92 YzRfaGRtaS5jCj4gaW5kZXggZWQ2M2Q0ZS4uNDA2ZDZkOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vdmM0L3ZjNF9oZG1pLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9o ZG1pLmMKPiBAQCAtMzk1LDcgKzM5NSw3IEBAIHN0YXRpYyB2b2lkIHZjNF9oZG1pX3NldF9hdmlf aW5mb2ZyYW1lKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKPiAgCXVuaW9uIGhkbWlfaW5m b2ZyYW1lIGZyYW1lOwo+ICAJaW50IHJldDsKPiAgCj4gLQlyZXQgPSBkcm1faGRtaV9hdmlfaW5m b2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZS5hdmksIG1vZGUpOwo+ICsJcmV0ID0gZHJt X2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUuYXZpLCBtb2RlLCBm YWxzZSk7Cj4gIAlpZiAocmV0IDwgMCkgewo+ICAJCURSTV9FUlJPUigiY291bGRuJ3QgZmlsbCBB VkkgaW5mb2ZyYW1lXG4iKTsKPiAgCQlyZXR1cm47Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS96dGUvenhfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9oZG1pLmMKPiBpbmRl eCAwZGY3MzY2Li43ZTgzNGUzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS96dGUvenhf aGRtaS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9oZG1pLmMKPiBAQCAtMTI0LDcg KzEyNCw3IEBAIHN0YXRpYyBpbnQgenhfaGRtaV9jb25maWdfdmlkZW9fYXZpKHN0cnVjdCB6eF9o ZG1pICpoZG1pLAo+ICAJdW5pb24gaGRtaV9pbmZvZnJhbWUgZnJhbWU7Cj4gIAlpbnQgcmV0Owo+ ICAKPiAtCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZy YW1lLmF2aSwgbW9kZSk7Cj4gKwlyZXQgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlz cGxheV9tb2RlKCZmcmFtZS5hdmksIG1vZGUsIGZhbHNlKTsKPiAgCWlmIChyZXQpIHsKPiAgCQlE Uk1fREVWX0VSUk9SKGhkbWktPmRldiwgImZhaWxlZCB0byBnZXQgYXZpIGluZm9mcmFtZTogJWRc biIsCj4gIAkJCSAgICAgIHJldCk7Cj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9lZGlk LmggYi9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCj4gaW5kZXggN2I5ZjQ4Yi4uODljMDA2MiAxMDA2 NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJt X2VkaWQuaAo+IEBAIC0zNDMsNyArMzQzLDggQEAgZHJtX2xvYWRfZWRpZF9maXJtd2FyZShzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ICAKPiAgaW50Cj4gIGRybV9oZG1pX2F2aV9p bmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoc3RydWN0IGhkbWlfYXZpX2luZm9mcmFtZSAqZnJh bWUsCj4gLQkJCQkJIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKTsKPiArCQkJ CQkgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsCj4gKwkJCQkJIGJvb2wgaXNf aGRtaTJfc2luayk7Cj4gIGludAo+ICBkcm1faGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2Zyb21fZGlz cGxheV9tb2RlKHN0cnVjdCBoZG1pX3ZlbmRvcl9pbmZvZnJhbWUgKmZyYW1lLAo+ICAJCQkJCSAg ICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSk7Cj4gLS0gCj4gMi43LjQKCi0t IApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbAo=