From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: Re: [PATCH v3 03/23] drm/i915/psr: Only handle interruptions of the transcoder in use Date: Mon, 26 Aug 2019 20:28:33 +0300 Message-ID: <20190826172833.GC27192@ideak-desk.fi.intel.com> References: <20190823082055.5992-1-lucas.demarchi@intel.com> <20190823082055.5992-4-lucas.demarchi@intel.com> Reply-To: imre.deak@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 119A089C1C for ; Mon, 26 Aug 2019 17:29:39 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190823082055.5992-4-lucas.demarchi@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Lucas De Marchi , Jose Souza Cc: intel-gfx@lists.freedesktop.org, Dhinakaran Pandiyan List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBBdWcgMjMsIDIwMTkgYXQgMDE6MjA6MzVBTSAtMDcwMCwgTHVjYXMgRGUgTWFyY2hp IHdyb3RlOgo+IEZyb206IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFAaW50ZWwu Y29tPgo+IAo+IEl0IHdhcyBlbmFibGluZyBhbmQgY2hlY2tpbmcgUFNSIGludGVycnVwdGlvbnMg aW4gZXZlcnkgdHJhbnNjb2Rlcgo+IHdoaWxlIGl0IHNob3VsZCBrZWVwIHRoZSBpbnRlcnJ1cHRp b25zIG9uIHRoZSBub24tdXNlZCB0cmFuc2NvZGVycwo+IG1hc2tlZC4KPiAKPiBUaGlzIGFsc28g YWxyZWFkeSBwcmVwYXJlcyBmb3IgZnV0dXJlIHdoZW4gbW9yZSB0aGFuIG9uZSBQU1IgaW5zdGFu Y2UKPiB3aWxsIGJlIGFsbG93ZWQuCj4gCj4gQ2M6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5h a2FyYW4ucGFuZGl5YW5AaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8g ZGUgU291emEgPGpvc2Uuc291emFAaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IEx1Y2FzIERl IE1hcmNoaSA8bHVjYXMuZGVtYXJjaGlAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jIHwgMTQwICsrKysrKysrKy0tLS0tLS0tLS0tLS0t Cj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAgICAgICAgfCAgMTMgKy0tCj4g IDIgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgOTQgZGVsZXRpb25zKC0pCj4gCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jCj4gaW5kZXggMjhiNjJlNTg3 MjA0Li44MWUzNjE5Y2Q5MDUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9wc3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfcHNyLmMKPiBAQCAtODgsNDggKzg4LDIzIEBAIHN0YXRpYyBib29sIGludGVsX3BzcjJfZW5h YmxlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAl9Cj4gIH0KPiAgCj4g LXN0YXRpYyBpbnQgZWRwX3Bzcl9zaGlmdChlbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIp Cj4gK3N0YXRpYyB2b2lkIHBzcl9pcnFfY29udHJvbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpCj4gIHsKPiAtCXN3aXRjaCAoY3B1X3RyYW5zY29kZXIpIHsKPiAtCWNhc2UgVFJB TlNDT0RFUl9BOgo+IC0JCXJldHVybiBFRFBfUFNSX1RSQU5TQ09ERVJfQV9TSElGVDsKPiAtCWNh c2UgVFJBTlNDT0RFUl9COgo+IC0JCXJldHVybiBFRFBfUFNSX1RSQU5TQ09ERVJfQl9TSElGVDsK PiAtCWNhc2UgVFJBTlNDT0RFUl9DOgo+IC0JCXJldHVybiBFRFBfUFNSX1RSQU5TQ09ERVJfQ19T SElGVDsKPiAtCWRlZmF1bHQ6Cj4gLQkJTUlTU0lOR19DQVNFKGNwdV90cmFuc2NvZGVyKTsKPiAt CQkvKiBmYWxsdGhyb3VnaCAqLwo+IC0JY2FzZSBUUkFOU0NPREVSX0VEUDoKPiAtCQlyZXR1cm4g RURQX1BTUl9UUkFOU0NPREVSX0VEUF9TSElGVDsKPiAtCX0KPiAtfQo+ICsJZW51bSB0cmFuc2Nv ZGVyIHRyYW5zID0gZGV2X3ByaXYtPnBzci50cmFuc2NvZGVyOwoKVGhpcyBpcyBjYWxsZWQgZnJv bSBpbnRlbF9wc3JfZGVidWdfc2V0KCkgd2hlcmUgcHNyLnRyYW5zY29kZXIgbWF5IGJlCnVuaW5p dGVkLgoKPiArCXUzMiB2YWwsIG1hc2s7Cj4gIAo+IC1zdGF0aWMgdm9pZCBwc3JfaXJxX2NvbnRy b2woc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIgZGVidWcpCj4gLXsKPiAt CXUzMiBkZWJ1Z19tYXNrLCBtYXNrOwo+IC0JZW51bSB0cmFuc2NvZGVyIGNwdV90cmFuc2NvZGVy Owo+IC0JdTMyIHRyYW5zY29kZXJzID0gQklUKFRSQU5TQ09ERVJfRURQKTsKPiAtCj4gLQlpZiAo SU5URUxfR0VOKGRldl9wcml2KSA+PSA4KQo+IC0JCXRyYW5zY29kZXJzIHw9IEJJVChUUkFOU0NP REVSX0EpIHwKPiAtCQkJICAgICAgIEJJVChUUkFOU0NPREVSX0IpIHwKPiAtCQkJICAgICAgIEJJ VChUUkFOU0NPREVSX0MpOwo+IC0KPiAtCWRlYnVnX21hc2sgPSAwOwo+IC0JbWFzayA9IDA7Cj4g LQlmb3JfZWFjaF9jcHVfdHJhbnNjb2Rlcl9tYXNrZWQoZGV2X3ByaXYsIGNwdV90cmFuc2NvZGVy LCB0cmFuc2NvZGVycykgewo+IC0JCWludCBzaGlmdCA9IGVkcF9wc3Jfc2hpZnQoY3B1X3RyYW5z Y29kZXIpOwo+IC0KPiAtCQltYXNrIHw9IEVEUF9QU1JfRVJST1Ioc2hpZnQpOwo+IC0JCWRlYnVn X21hc2sgfD0gRURQX1BTUl9QT1NUX0VYSVQoc2hpZnQpIHwKPiAtCQkJICAgICAgRURQX1BTUl9Q UkVfRU5UUlkoc2hpZnQpOwo+IC0JfQo+ICsJbWFzayA9IEVEUF9QU1JfRVJST1IodHJhbnMpOwo+ ICsJaWYgKGRldl9wcml2LT5wc3IuZGVidWcgJiBJOTE1X1BTUl9ERUJVR19JUlEpCj4gKwkJbWFz ayB8PSBFRFBfUFNSX1BPU1RfRVhJVCh0cmFucykgfCBFRFBfUFNSX1BSRV9FTlRSWSh0cmFucyk7 Cj4gIAo+IC0JaWYgKGRlYnVnICYgSTkxNV9QU1JfREVCVUdfSVJRKQo+IC0JCW1hc2sgfD0gZGVi dWdfbWFzazsKPiAtCj4gLQlJOTE1X1dSSVRFKEVEUF9QU1JfSU1SLCB+bWFzayk7Cj4gKwkvKgo+ ICsJICogVE9ETzogd2hlbiBoYW5kbGluZyBtdWx0aXBsZSBQU1IgaW5zdGFuY2VzIGEgZ2xvYmFs IHNwaW5sb2NrIHdpbGwgYmUKPiArCSAqIG5lZWRlZCB0byBzeW5jaHJvbml6ZSB0aGUgdmFsdWUg b2Ygc2hhcmVkIHJlZ2lzdGVyCj4gKwkgKi8KPiArCXZhbCA9IEk5MTVfUkVBRChFRFBfUFNSX0lN Uik7Cj4gKwl2YWwgJj0gfkVEUF9QU1JfVFJBTlNfTUFTSyh0cmFucyk7Cj4gKwl2YWwgfD0gfm1h c2s7Cj4gKwlJOTE1X1dSSVRFKEVEUF9QU1JfSU1SLCB2YWwpOwo+ICB9Cj4gIAo+ICBzdGF0aWMg dm9pZCBwc3JfZXZlbnRfcHJpbnQodTMyIHZhbCwgYm9vbCBwc3IyX2VuYWJsZWQpCj4gQEAgLTE3 MSw2MyArMTQ2LDU0IEBAIHN0YXRpYyB2b2lkIHBzcl9ldmVudF9wcmludCh1MzIgdmFsLCBib29s IHBzcjJfZW5hYmxlZCkKPiAgCj4gIHZvaWQgaW50ZWxfcHNyX2lycV9oYW5kbGVyKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyIHBzcl9paXIpCj4gIHsKPiAtCXUzMiB0cmFu c2NvZGVycyA9IEJJVChUUkFOU0NPREVSX0VEUCk7Cj4gLQllbnVtIHRyYW5zY29kZXIgY3B1X3Ry YW5zY29kZXI7Cj4gKwllbnVtIHRyYW5zY29kZXIgY3B1X3RyYW5zY29kZXIgPSBkZXZfcHJpdi0+ cHNyLnRyYW5zY29kZXI7Cj4gIAlrdGltZV90IHRpbWVfbnMgPSAga3RpbWVfZ2V0KCk7Cj4gLQl1 MzIgbWFzayA9IDA7Cj4gIAo+IC0JaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gOCkKPiAtCQl0 cmFuc2NvZGVycyB8PSBCSVQoVFJBTlNDT0RFUl9BKSB8Cj4gLQkJCSAgICAgICBCSVQoVFJBTlND T0RFUl9CKSB8Cj4gLQkJCSAgICAgICBCSVQoVFJBTlNDT0RFUl9DKTsKPiArCWlmIChwc3JfaWly ICYgRURQX1BTUl9FUlJPUihjcHVfdHJhbnNjb2RlcikpIHsKPiArCQl1MzIgdmFsOwo+ICAKPiAt CWZvcl9lYWNoX2NwdV90cmFuc2NvZGVyX21hc2tlZChkZXZfcHJpdiwgY3B1X3RyYW5zY29kZXIs IHRyYW5zY29kZXJzKSB7CgpJIHRoaW5rIHdlIHNob3VsZCBzdGlsbCBjYXRjaCBhbGwgaW50ZXJy dXB0cywgbG9nIHRoZSB1bmV4cGVjdGVkIG9uZXMKYW5kIHJlYWN0IG9ubHkgb24gdGhlIGV4cGVj dGVkIG9uZSBpbiBpbnRlbF9wc3Jfd29yaygpLgoKPiAtCQlpbnQgc2hpZnQgPSBlZHBfcHNyX3No aWZ0KGNwdV90cmFuc2NvZGVyKTsKPiArCQlEUk1fV0FSTigiW3RyYW5zY29kZXIgJXNdIFBTUiBh dXggZXJyb3JcbiIsCj4gKwkJCSB0cmFuc2NvZGVyX25hbWUoY3B1X3RyYW5zY29kZXIpKTsKPiAg Cj4gLQkJaWYgKHBzcl9paXIgJiBFRFBfUFNSX0VSUk9SKHNoaWZ0KSkgewo+IC0JCQlEUk1fV0FS TigiW3RyYW5zY29kZXIgJXNdIFBTUiBhdXggZXJyb3JcbiIsCj4gLQkJCQkgdHJhbnNjb2Rlcl9u YW1lKGNwdV90cmFuc2NvZGVyKSk7Cj4gKwkJZGV2X3ByaXYtPnBzci5pcnFfYXV4X2Vycm9yID0g dHJ1ZTsKPiAgCj4gLQkJCWRldl9wcml2LT5wc3IuaXJxX2F1eF9lcnJvciA9IHRydWU7Cj4gKwkJ LyoKPiArCQkgKiBJZiB0aGlzIGludGVycnVwdGlvbiBpcyBub3QgbWFza2VkIGl0IHdpbGwga2Vl cAo+ICsJCSAqIGludGVycnVwdGluZyBzbyBmYXN0IHRoYXQgaXQgcHJldmVudHMgdGhlIHNjaGVk dWxlZAo+ICsJCSAqIHdvcmsgdG8gcnVuLgo+ICsJCSAqIEFsc28gYWZ0ZXIgYSBQU1IgZXJyb3Is IHdlIGRvbid0IHdhbnQgdG8gYXJtIFBTUgo+ICsJCSAqIGFnYWluIHNvIHdlIGRvbid0IGNhcmUg YWJvdXQgdW5tYXNrIHRoZSBpbnRlcnJ1cHRpb24KPiArCQkgKiBvciB1bnNldCBpcnFfYXV4X2Vy cm9yLgo+ICsJCSAqCj4gKwkJICogVE9ETzogd2hlbiBoYW5kbGluZyBtdWx0aXBsZSBQU1IgaW5z dGFuY2VzIGEgZ2xvYmFsIHNwaW5sb2NrCj4gKwkJICogd2lsbCBiZSBuZWVkZWQgdG8gc3luY2hy b25pemUgdGhlIHZhbHVlIG9mIHNoYXJlZCByZWdpc3Rlcgo+ICsJCSAqLwo+ICsJCXZhbCA9IEk5 MTVfUkVBRChFRFBfUFNSX0lNUik7Cj4gKwkJdmFsIHw9IEVEUF9QU1JfRVJST1IoY3B1X3RyYW5z Y29kZXIpOwo+ICsJCUk5MTVfV1JJVEUoRURQX1BTUl9JTVIsIHZhbCk7Cj4gIAo+IC0JCQkvKgo+ IC0JCQkgKiBJZiB0aGlzIGludGVycnVwdGlvbiBpcyBub3QgbWFza2VkIGl0IHdpbGwga2VlcAo+ IC0JCQkgKiBpbnRlcnJ1cHRpbmcgc28gZmFzdCB0aGF0IGl0IHByZXZlbnRzIHRoZSBzY2hlZHVs ZWQKPiAtCQkJICogd29yayB0byBydW4uCj4gLQkJCSAqIEFsc28gYWZ0ZXIgYSBQU1IgZXJyb3Is IHdlIGRvbid0IHdhbnQgdG8gYXJtIFBTUgo+IC0JCQkgKiBhZ2FpbiBzbyB3ZSBkb24ndCBjYXJl IGFib3V0IHVubWFzayB0aGUgaW50ZXJydXB0aW9uCj4gLQkJCSAqIG9yIHVuc2V0IGlycV9hdXhf ZXJyb3IuCj4gLQkJCSAqLwo+IC0JCQltYXNrIHw9IEVEUF9QU1JfRVJST1Ioc2hpZnQpOwo+IC0J CX0KPiArCQlzY2hlZHVsZV93b3JrKCZkZXZfcHJpdi0+cHNyLndvcmspOwoKV291bGQgYmUgYmV0 dGVyIG5vdCB0byByZW9yZGVyIGludGVsX3Bzcl93b3JrKCkgYW5kIHByaW50aW5nIHRoZSBldmVu dHMKYmVsb3cuCgo+ICsJfQo+ICAKPiAtCQlpZiAocHNyX2lpciAmIEVEUF9QU1JfUFJFX0VOVFJZ KHNoaWZ0KSkgewo+IC0JCQlkZXZfcHJpdi0+cHNyLmxhc3RfZW50cnlfYXR0ZW1wdCA9IHRpbWVf bnM7Cj4gLQkJCURSTV9ERUJVR19LTVMoIlt0cmFuc2NvZGVyICVzXSBQU1IgZW50cnkgYXR0ZW1w dCBpbiAyIHZibGFua3NcbiIsCj4gLQkJCQkgICAgICB0cmFuc2NvZGVyX25hbWUoY3B1X3RyYW5z Y29kZXIpKTsKPiAtCQl9Cj4gKwlpZiAocHNyX2lpciAmIEVEUF9QU1JfUFJFX0VOVFJZKGNwdV90 cmFuc2NvZGVyKSkgewo+ICsJCWRldl9wcml2LT5wc3IubGFzdF9lbnRyeV9hdHRlbXB0ID0gdGlt ZV9uczsKPiArCQlEUk1fREVCVUdfS01TKCJbdHJhbnNjb2RlciAlc10gUFNSIGVudHJ5IGF0dGVt cHQgaW4gMiB2YmxhbmtzXG4iLAo+ICsJCQkgICAgICB0cmFuc2NvZGVyX25hbWUoY3B1X3RyYW5z Y29kZXIpKTsKPiArCX0KPiAgCj4gLQkJaWYgKHBzcl9paXIgJiBFRFBfUFNSX1BPU1RfRVhJVChz aGlmdCkpIHsKPiAtCQkJZGV2X3ByaXYtPnBzci5sYXN0X2V4aXQgPSB0aW1lX25zOwo+IC0JCQlE Uk1fREVCVUdfS01TKCJbdHJhbnNjb2RlciAlc10gUFNSIGV4aXQgY29tcGxldGVkXG4iLAo+IC0J CQkJICAgICAgdHJhbnNjb2Rlcl9uYW1lKGNwdV90cmFuc2NvZGVyKSk7Cj4gKwlpZiAocHNyX2lp ciAmIEVEUF9QU1JfUE9TVF9FWElUKGNwdV90cmFuc2NvZGVyKSkgewo+ICsJCWRldl9wcml2LT5w c3IubGFzdF9leGl0ID0gdGltZV9uczsKPiArCQlEUk1fREVCVUdfS01TKCJbdHJhbnNjb2RlciAl c10gUFNSIGV4aXQgY29tcGxldGVkXG4iLAo+ICsJCQkgICAgICB0cmFuc2NvZGVyX25hbWUoY3B1 X3RyYW5zY29kZXIpKTsKPiAgCj4gLQkJCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpIHsK PiAtCQkJCXUzMiB2YWwgPSBJOTE1X1JFQUQoUFNSX0VWRU5UKGNwdV90cmFuc2NvZGVyKSk7Cj4g LQkJCQlib29sIHBzcjJfZW5hYmxlZCA9IGRldl9wcml2LT5wc3IucHNyMl9lbmFibGVkOwo+ICsJ CWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpIHsKPiArCQkJdTMyIHZhbCA9IEk5MTVfUkVB RChQU1JfRVZFTlQoY3B1X3RyYW5zY29kZXIpKTsKPiArCQkJYm9vbCBwc3IyX2VuYWJsZWQgPSBk ZXZfcHJpdi0+cHNyLnBzcjJfZW5hYmxlZDsKPiAgCj4gLQkJCQlJOTE1X1dSSVRFKFBTUl9FVkVO VChjcHVfdHJhbnNjb2RlciksIHZhbCk7Cj4gLQkJCQlwc3JfZXZlbnRfcHJpbnQodmFsLCBwc3Iy X2VuYWJsZWQpOwo+IC0JCQl9Cj4gKwkJCUk5MTVfV1JJVEUoUFNSX0VWRU5UKGNwdV90cmFuc2Nv ZGVyKSwgdmFsKTsKPiArCQkJcHNyX2V2ZW50X3ByaW50KHZhbCwgcHNyMl9lbmFibGVkKTsKPiAg CQl9Cj4gIAl9Cj4gLQo+IC0JaWYgKG1hc2spIHsKPiAtCQltYXNrIHw9IEk5MTVfUkVBRChFRFBf UFNSX0lNUik7Cj4gLQkJSTkxNV9XUklURShFRFBfUFNSX0lNUiwgbWFzayk7Cj4gLQo+IC0JCXNj aGVkdWxlX3dvcmsoJmRldl9wcml2LT5wc3Iud29yayk7Cj4gLQl9Cj4gIH0KPiAgCj4gIHN0YXRp YyBib29sIGludGVsX2RwX2dldF9hbHBtX3N0YXR1cyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2Rw KQo+IEBAIC03MzcsNyArNzAzLDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfcHNyX2VuYWJsZV9zb3Vy Y2Uoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKPiAgCj4gIAlJOTE1X1dSSVRFKEVEUF9QU1Jf REVCVUcoZGV2X3ByaXYtPnBzci50cmFuc2NvZGVyKSwgbWFzayk7Cj4gIAo+IC0JcHNyX2lycV9j b250cm9sKGRldl9wcml2LCBkZXZfcHJpdi0+cHNyLmRlYnVnKTsKPiArCXBzcl9pcnFfY29udHJv bChkZXZfcHJpdik7Cj4gIH0KPiAgCj4gIHN0YXRpYyB2b2lkIGludGVsX3Bzcl9lbmFibGVfbG9j a2VkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiBAQCAtNzYyLDcgKzcyOCw3 IEBAIHN0YXRpYyB2b2lkIGludGVsX3Bzcl9lbmFibGVfbG9ja2VkKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwKPiAgCSAqIHRvIGF2b2lkIGFueSByZW5kZXJpbmcgcHJvYmxlbXMu Cj4gIAkgKi8KPiAgCXZhbCA9IEk5MTVfUkVBRChFRFBfUFNSX0lJUik7Cj4gLQl2YWwgJj0gRURQ X1BTUl9FUlJPUihlZHBfcHNyX3NoaWZ0KGRldl9wcml2LT5wc3IudHJhbnNjb2RlcikpOwo+ICsJ dmFsICY9IEVEUF9QU1JfRVJST1IoZGV2X3ByaXYtPnBzci50cmFuc2NvZGVyKTsKPiAgCWlmICh2 YWwpIHsKPiAgCQlkZXZfcHJpdi0+cHNyLnNpbmtfbm90X3JlbGlhYmxlID0gdHJ1ZTsKPiAgCQlE Uk1fREVCVUdfS01TKCJQU1IgaW50ZXJydXB0aW9uIGVycm9yIHNldCwgbm90IGVuYWJsaW5nIFBT UlxuIik7Cj4gQEAgLTExMTAsNyArMTA3Niw3IEBAIGludCBpbnRlbF9wc3JfZGVidWdfc2V0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTY0IHZhbCkKPiAgCj4gIAlvbGRfbW9k ZSA9IGRldl9wcml2LT5wc3IuZGVidWcgJiBJOTE1X1BTUl9ERUJVR19NT0RFX01BU0s7Cj4gIAlk ZXZfcHJpdi0+cHNyLmRlYnVnID0gdmFsOwo+IC0JcHNyX2lycV9jb250cm9sKGRldl9wcml2LCBk ZXZfcHJpdi0+cHNyLmRlYnVnKTsKPiArCXBzcl9pcnFfY29udHJvbChkZXZfcHJpdik7Cj4gIAo+ ICAJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+cHNyLmxvY2spOwo+ICAKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcmVnLmgKPiBpbmRleCAwMmUxZWYxMGM0N2UuLjFjNmQ5OTk0NDYzMCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaAo+IEBAIC00MjI1LDEzICs0MjI1LDEyIEBAIGVudW0gewo+ICAvKiBC c3BlYyBjbGFpbXMgdGhvc2UgYXJlbid0IHNoaWZ0ZWQgYnV0IHN0YXkgYXQgMHg2NDgwMCAqLwo+ ICAjZGVmaW5lIEVEUF9QU1JfSU1SCQkJCV9NTUlPKDB4NjQ4MzQpCj4gICNkZWZpbmUgRURQX1BT Ul9JSVIJCQkJX01NSU8oMHg2NDgzOCkKPiAtI2RlZmluZSAgIEVEUF9QU1JfRVJST1Ioc2hpZnQp CQkJKDEgPDwgKChzaGlmdCkgKyAyKSkKPiAtI2RlZmluZSAgIEVEUF9QU1JfUE9TVF9FWElUKHNo aWZ0KQkJKDEgPDwgKChzaGlmdCkgKyAxKSkKPiAtI2RlZmluZSAgIEVEUF9QU1JfUFJFX0VOVFJZ KHNoaWZ0KQkJKDEgPDwgKHNoaWZ0KSkKPiAtI2RlZmluZSAgIEVEUF9QU1JfVFJBTlNDT0RFUl9D X1NISUZUCQkyNAo+IC0jZGVmaW5lICAgRURQX1BTUl9UUkFOU0NPREVSX0JfU0hJRlQJCTE2Cj4g LSNkZWZpbmUgICBFRFBfUFNSX1RSQU5TQ09ERVJfQV9TSElGVAkJOAo+IC0jZGVmaW5lICAgRURQ X1BTUl9UUkFOU0NPREVSX0VEUF9TSElGVAkJMAo+ICsjZGVmaW5lICAgX0VEUF9QU1JfVFJBTlNf U0hJRlQodHJhbnMpCQkoKHRyYW5zKSA9PSBUUkFOU0NPREVSX0VEUCA/IFwKPiArCQkJCQkJIDAg OiAoKHRyYW5zKSArIDEpICogOCkKCih0cmFucyAtIFRSQU5TQ09ERVJfQSkgKyAxCgp0byBub3Qg ZGVwZW5kIG9uIHRoZSBlbnVtIHZhbHVlIG9mIFRSQU5TQ09ERVJfQS4KCj4gKyNkZWZpbmUgICBF RFBfUFNSX1RSQU5TX01BU0sodHJhbnMpCQkoMHg3IDw8IF9FRFBfUFNSX1RSQU5TX1NISUZUKHRy YW5zKSkKPiArI2RlZmluZSAgIEVEUF9QU1JfRVJST1IodHJhbnMpCQkJKDB4NCA8PCBfRURQX1BT Ul9UUkFOU19TSElGVCh0cmFucykpCj4gKyNkZWZpbmUgICBFRFBfUFNSX1BPU1RfRVhJVCh0cmFu cykJCSgweDIgPDwgX0VEUF9QU1JfVFJBTlNfU0hJRlQodHJhbnMpKQo+ICsjZGVmaW5lICAgRURQ X1BTUl9QUkVfRU5UUlkodHJhbnMpCQkoMHgxIDw8IF9FRFBfUFNSX1RSQU5TX1NISUZUKHRyYW5z KSkKPiAgCj4gICNkZWZpbmUgX1NSRF9BVVhfQ1RMX0EJCQkJMHg2MDgxMAo+ICAjZGVmaW5lIF9T UkRfQVVYX0NUTF9FRFAJCQkweDZmODEwCj4gLS0gCj4gMi4yMy4wCj4gCj4gX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBs aXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==