From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rainer Fiebig Subject: Re: 4.9.62: intermittent flicker after upgrade from 4.9.61 Date: Mon, 20 Nov 2017 13:17:43 +0100 Message-ID: <1b8f45ee-ae18-1d09-c5aa-705c8e8689d5@mailbox.org> References: <20171118125100.GA32744@kroah.com> <20171119100712.GA25266@kroah.com> <20171119120813.GA30337@kroah.com> <20171119132724.GA16227@kroah.com> <87wp2l4a3h.fsf@intel.com> <73745af9-3217-327e-d9bf-5bd50087bb0a@mailbox.org> <1957113f-ad10-179e-6c17-da7f09f63be6@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1957113f-ad10-179e-6c17-da7f09f63be6@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst , Jani Nikula , Greg KH Cc: airlied@linux.ie, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, stable@vger.kernel.org, daniel.vetter@intel.com List-Id: dri-devel@lists.freedesktop.org TWFhcnRlbiBMYW5raG9yc3Qgd3JvdGU6Cj4gT3AgMjAtMTEtMTcgb20gMDk6NTEgc2NocmVlZiBS YWluZXIgRmllYmlnOgo+PiBKYW5pIE5pa3VsYSB3cm90ZToKPj4+IE9uIFN1biwgMTkgTm92IDIw MTcsIEdyZWcgS0ggPGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnPiB3cm90ZToKPj4+PiBPbiBT dW4sIE5vdiAxOSwgMjAxNyBhdCAwMTo0NDowNlBNICswMTAwLCBSYWluZXIgRmllYmlnIHdyb3Rl Ogo+Pj4+PiBHcmVnIEtIIHdyb3RlOgo+Pj4+Pj4gT24gU3VuLCBOb3YgMTksIDIwMTcgYXQgMTI6 NTY6MjZQTSArMDEwMCwgUmFpbmVyIEZpZWJpZyB3cm90ZToKPj4+Pj4+PiBHcmVnIEtIIHdyb3Rl Ogo+Pj4+Pj4+PiBPbiBTYXQsIE5vdiAxOCwgMjAxNyBhdCAwNTowODoyMFBNICswMTAwLCBSYWlu ZXIgRmllYmlnIHdyb3RlOgo+Pj4+Pj4+Pj4gR3JlZyBLSCB3cm90ZToKPj4+Pj4+Pj4+PiBPbiBT YXQsIE5vdiAxOCwgMjAxNyBhdCAwMTo0NzozMlBNICswMTAwLCBSYWluZXIgRmllYmlnIHdyb3Rl Ogo+Pj4+Pj4+Pj4+PiBIaSEKPj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4gSG9wZWZ1bGx5IHRoZSBy aWdodCBhZGRyZXNzZWUuCj4+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+IEVuY291bnRlcmVkIHR3byBi YWQgYmFja3BvcnRzIHdoaWNoIGNhdXNlIHNjcmVlbi1mbGlja2VyLgo+Pj4+Pj4+Pj4+PiBkbWVz ZyBzaG93czoKPj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4gLi4uCj4+Pj4+Pj4+Pj4+IFtkcm06aXJv bmxha2VfaXJxX2hhbmRsZXIgW2k5MTVdXSAqRVJST1IqIENQVSBwaXBlIEEgRklGTyB1bmRlcnJ1 bgo+Pj4+Pj4+Pj4+PiBbZHJtOmlyb25sYWtlX2lycV9oYW5kbGVyIFtpOTE1XV0gKkVSUk9SKiBQ Q0ggdHJhbnNjb2RlciBBIEZJRk8gdW5kZXJydW4KPj4+Pj4+Pj4+Pj4gW2RybTppcm9ubGFrZV9p cnFfaGFuZGxlciBbaTkxNV1dICpFUlJPUiogQ1BVIHBpcGUgQiBGSUZPIHVuZGVycnVuCj4+Pj4+ Pj4+Pj4+IFtkcm06aXJvbmxha2VfaXJxX2hhbmRsZXIgW2k5MTVdXSAqRVJST1IqIFBDSCB0cmFu c2NvZGVyIEIgRklGTyB1bmRlcnJ1bgo+Pj4+Pj4+Pj4+PiAuLi4KPj4+Pj4+Pj4+Pj4KPj4+Pj4+ Pj4+Pj4gQ1BVOiBJbnRlbCBDb3JlIGkzIChDbGFya2RhbGUvSXJvbmxha2UpCj4+Pj4+Pj4+Pj4+ Cj4+Pj4+Pj4+Pj4+IFRoZSBiYWNrcG9ydHMgYXJlOgo+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+PiAt IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCj4+Pj4+Pj4+Pj4+ IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwo+Pj4+Pj4+Pj4+PiAgICAgaW5kZXgg NDlkZTQ3Ni4uMjc3YTgwMiAxMDA2NDQKPj4+Pj4+Pj4+Pj4gLSBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+Pj4+Pj4+Pj4gYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcnYuaAo+Pj4+Pj4+Pj4+PiAgICAgaW5kZXggYTE5ZWMwNi4uM2NlOWJhMyAx MDA2NDQKPj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4gQWZ0ZXIgcmV2ZXJzaW5nIHRoZW0gdGhlIGZs aWNrZXIgaXMgZ29uZSwgbm8gbW9yZSBtZXNzYWdlcyBpbiBkbWVzZy4gQWxsCj4+Pj4+Pj4+Pj4+ IGVsc2UgT0sgc28gZmFyLgo+Pj4+Pj4+Pj4+IFNvIHdoaWNoIGNvbW1pdCB3YXMgdGhlIG9uZSB0 aGF0IGNhdXNlZCB0aGUgcHJvYmxlbT8gIEkgd2lsbCBiZSBnbGFkIHRvCj4+Pj4+Pj4+Pj4gcmV2 ZXJ0IGl0Lgo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4gdGhhbmtzLAo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+ Pj4gZ3JlZyBrLWgKPj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiBJIHN0YXJ0ZWQgYnkg cmV2ZXJ0aW5nIHRoZSBtb3JlIGNvbXBsZXggb25lIGZpcnN0ICgiaW5kZXgKPj4+Pj4+Pj4+IDQ5 ZGU0NzYuLjI3N2E4MDIxMDA2NDQiKS4gQnV0IHRoZSBrZXJuZWwgd291bGRuJ3QgY29tcGlsZSB0 aGVuLgo+Pj4+Pj4+PiBXaGF0IGdpdCBjb21taXQgaWQgaXMgdGhhdD8gIEkgZG9uJ3Qgc2VlIHRo b3NlIGlkcyBpbiB0aGUgNC45LXN0YWJsZQo+Pj4+Pj4+PiB0cmVlLgo+Pj4+Pj4+Pgo+Pj4+Pj4+ Pj4gU28gSSBhbHNvIHJldmVydGVkICJpbmRleCBhMTllYzA2Li4zY2U5YmEzIDEwMDY0NCIuIEFm dGVyIHRoYXQgdGhlCj4+Pj4+Pj4+PiBrZXJuZWwgY29tcGlsZWQganVzdCBmaW5lIGFuZCB0aGUg cHJvYmxlbXMgd2VyZSBnb25lIChzdGlsbCBhcmUpLgo+Pj4+Pj4+PiBTYW1lIGhlcmUsIHdoYXQg Z2l0IGNvbW1pdCBpZCB3YXMgdGhpcz8KPj4+Pj4+Pj4KPj4+Pj4+Pj4gdGhhbmtzLAo+Pj4+Pj4+ Pgo+Pj4+Pj4+PiBncmVnIGstaAo+Pj4+Pj4+Pgo+Pj4+Pj4+IE9LLCBubyBtaXN0YWtlLiBJSVJD LCBJIHRvb2sgdGhlIHBhdGNoZXMgKGFuZCB0aGUgSURzKSBmcm9tIHRoZQo+Pj4+Pj4+IGNoYW5n ZWxvZyBmb3IgcGF0Y2gtNC45LjYyLiBJJ3ZlIGF0dGFjaGVkIGJvdGgsIHNvIHlvdSBjYW4gY2hl Y2sgeW91cnNlbGYuCj4+Pj4+Pj4KPj4+Pj4+PiBJJ3ZlIGFsc28gYXBwbGllZCBhIGZyZXNobHkg ZG93bmxvYWRlZCBwYXRjaC00LjkuNjIgdG8gYSBmcmVzaGx5Cj4+Pj4+Pj4gZXhwYW5kZWQgNC45 IGFuZCByZS1jb21waWxlZC4gVGhlIGZsaWNrZXIgaXMgdGhlcmUuIEkgaGF2ZW4ndCB5ZXQKPj4+ Pj4+PiByZXZlcnRlZCB0aGUgdHdvIHBhdGNoZXMgYnV0IEknbSBjb25maWRlbnQgdGhhdCBhZnRl ciBoYXZpbmcgZG9uZSBzbyB0aGUKPj4+Pj4+PiBmbGlja2VyIHdpbGwgYmUgZ29uZS4gSWYgbm90 IEknbGwgbGV0IHlvdSBrbm93Lgo+Pj4+Pj4+Cj4+Pj4+Pj4gQXMgYSBnb29kIG5ld3M6IDQuMTQg aXMgKm5vdCogYWZmZWN0ZWQuIFNvIHRvIG1lIGl0IHNlZW1zIHRob3NlIHR3bwo+Pj4+Pj4+IHBh dGNoZXMgYXJlIHBhcnQgb2Ygc29ydCBvZiBhIHBhY2thZ2UgYW5kIGNhbiBub3QgYmUgYmFja3Bv cnRlZCBhbG9uZS4KPj4+Pj4+Pgo+Pj4+Pj4+IFNvIGxvbmchCj4+Pj4+Pj4gUmFpbmVyIEZpZWJp Zwo+Pj4+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwo+Pj4+Pj4+IGluZGV4IDQ5ZGU0NzYuLjI3 N2E4MDIgMTAwNjQ0Cj4+Pj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u Ywo+Pj4+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKPj4+Pj4+PiBA QCAtMjcsNiArMjcsNyBAQAo+Pj4+Pj4+ICAKPj4+Pj4+PiAgI2luY2x1ZGUgPGxpbnV4L2NwdWZy ZXEuaD4KPj4+Pj4+PiAgI2luY2x1ZGUgPGRybS9kcm1fcGxhbmVfaGVscGVyLmg+Cj4+Pj4+Pj4g KyNpbmNsdWRlIDxkcm0vZHJtX2F0b21pY19oZWxwZXIuaD4KPj4+Pj4+PiAgI2luY2x1ZGUgImk5 MTVfZHJ2LmgiCj4+Pj4+Pj4gICNpbmNsdWRlICJpbnRlbF9kcnYuaCIKPj4+Pj4+PiAgI2luY2x1 ZGUgIi4uLy4uLy4uL3BsYXRmb3JtL3g4Ni9pbnRlbF9pcHMuaCIKPj4+Pj4+PiBAQCAtMjAxNyw5 ICsyMDE4LDkgQEAgc3RhdGljIHZvaWQgaWxrX2NvbXB1dGVfd21fbGV2ZWwoY29uc3Qgc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4+Pj4+ICAJCQkJIGNvbnN0IHN0cnVjdCBp bnRlbF9jcnRjICppbnRlbF9jcnRjLAo+Pj4+Pj4+ICAJCQkJIGludCBsZXZlbCwKPj4+Pj4+PiAg CQkJCSBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlLAo+Pj4+Pj4+IC0JCQkJIHN0cnVj dCBpbnRlbF9wbGFuZV9zdGF0ZSAqcHJpc3RhdGUsCj4+Pj4+Pj4gLQkJCQkgc3RydWN0IGludGVs X3BsYW5lX3N0YXRlICpzcHJzdGF0ZSwKPj4+Pj4+PiAtCQkJCSBzdHJ1Y3QgaW50ZWxfcGxhbmVf c3RhdGUgKmN1cnN0YXRlLAo+Pj4+Pj4+ICsJCQkJIGNvbnN0IHN0cnVjdCBpbnRlbF9wbGFuZV9z dGF0ZSAqcHJpc3RhdGUsCj4+Pj4+Pj4gKwkJCQkgY29uc3Qgc3RydWN0IGludGVsX3BsYW5lX3N0 YXRlICpzcHJzdGF0ZSwKPj4+Pj4+PiArCQkJCSBjb25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3Rh dGUgKmN1cnN0YXRlLAo+Pj4+Pj4+ICAJCQkJIHN0cnVjdCBpbnRlbF93bV9sZXZlbCAqcmVzdWx0 KQo+Pj4+Pj4+ICB7Cj4+Pj4+Pj4gIAl1aW50MTZfdCBwcmlfbGF0ZW5jeSA9IGRldl9wcml2LT53 bS5wcmlfbGF0ZW5jeVtsZXZlbF07Cj4+Pj4+Pj4gQEAgLTIzNDEsMjggKzIzNDIsMjQgQEAgc3Rh dGljIGludCBpbGtfY29tcHV0ZV9waXBlX3dtKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3Rh dGUpCj4+Pj4+Pj4gIAlzdHJ1Y3QgaW50ZWxfcGlwZV93bSAqcGlwZV93bTsKPj4+Pj4+PiAgCXN0 cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBzdGF0ZS0+ZGV2Owo+Pj4+Pj4+ICAJY29uc3Qgc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+Pj4+Pj4+IC0Jc3Ry dWN0IGludGVsX3BsYW5lICppbnRlbF9wbGFuZTsKPj4+Pj4+PiAtCXN0cnVjdCBpbnRlbF9wbGFu ZV9zdGF0ZSAqcHJpc3RhdGUgPSBOVUxMOwo+Pj4+Pj4+IC0Jc3RydWN0IGludGVsX3BsYW5lX3N0 YXRlICpzcHJzdGF0ZSA9IE5VTEw7Cj4+Pj4+Pj4gLQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUg KmN1cnN0YXRlID0gTlVMTDsKPj4+Pj4+PiArCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lOwo+Pj4+ Pj4+ICsJY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGU7Cj4+Pj4+Pj4g Kwljb25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnByaXN0YXRlID0gTlVMTDsKPj4+Pj4+ PiArCWNvbnN0IHN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqc3Byc3RhdGUgPSBOVUxMOwo+Pj4+ Pj4+ICsJY29uc3Qgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpjdXJzdGF0ZSA9IE5VTEw7Cj4+ Pj4+Pj4gIAlpbnQgbGV2ZWwsIG1heF9sZXZlbCA9IGlsa193bV9tYXhfbGV2ZWwoZGV2KSwgdXNh YmxlX2xldmVsOwo+Pj4+Pj4+ICAJc3RydWN0IGlsa193bV9tYXhpbXVtcyBtYXg7Cj4+Pj4+Pj4g IAo+Pj4+Pj4+ICAJcGlwZV93bSA9ICZjc3RhdGUtPndtLmlsay5vcHRpbWFsOwo+Pj4+Pj4+ICAK Pj4+Pj4+PiAtCWZvcl9lYWNoX2ludGVsX3BsYW5lX29uX2NydGMoZGV2LCBpbnRlbF9jcnRjLCBp bnRlbF9wbGFuZSkgewo+Pj4+Pj4+IC0JCXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcHM7Cj4+ Pj4+Pj4gKwlkcm1fYXRvbWljX2NydGNfc3RhdGVfZm9yX2VhY2hfcGxhbmVfc3RhdGUocGxhbmUs IHBsYW5lX3N0YXRlLCAmY3N0YXRlLT5iYXNlKSB7Cj4+Pj4+Pj4gKwkJY29uc3Qgc3RydWN0IGlu dGVsX3BsYW5lX3N0YXRlICpwcyA9IHRvX2ludGVsX3BsYW5lX3N0YXRlKHBsYW5lX3N0YXRlKTsK Pj4+Pj4+PiAgCj4+Pj4+Pj4gLQkJcHMgPSBpbnRlbF9hdG9taWNfZ2V0X2V4aXN0aW5nX3BsYW5l X3N0YXRlKHN0YXRlLAo+Pj4+Pj4+IC0JCQkJCQkJICAgaW50ZWxfcGxhbmUpOwo+Pj4+Pj4+IC0J CWlmICghcHMpCj4+Pj4+Pj4gLQkJCWNvbnRpbnVlOwo+Pj4+Pj4+IC0KPj4+Pj4+PiAtCQlpZiAo aW50ZWxfcGxhbmUtPmJhc2UudHlwZSA9PSBEUk1fUExBTkVfVFlQRV9QUklNQVJZKQo+Pj4+Pj4+ ICsJCWlmIChwbGFuZS0+dHlwZSA9PSBEUk1fUExBTkVfVFlQRV9QUklNQVJZKQo+Pj4+Pj4+ICAJ CQlwcmlzdGF0ZSA9IHBzOwo+Pj4+Pj4+IC0JCWVsc2UgaWYgKGludGVsX3BsYW5lLT5iYXNlLnR5 cGUgPT0gRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSkKPj4+Pj4+PiArCQllbHNlIGlmIChwbGFuZS0+ dHlwZSA9PSBEUk1fUExBTkVfVFlQRV9PVkVSTEFZKQo+Pj4+Pj4+ICAJCQlzcHJzdGF0ZSA9IHBz Owo+Pj4+Pj4+IC0JCWVsc2UgaWYgKGludGVsX3BsYW5lLT5iYXNlLnR5cGUgPT0gRFJNX1BMQU5F X1RZUEVfQ1VSU09SKQo+Pj4+Pj4+ICsJCWVsc2UgaWYgKHBsYW5lLT50eXBlID09IERSTV9QTEFO RV9UWVBFX0NVUlNPUikKPj4+Pj4+PiAgCQkJY3Vyc3RhdGUgPSBwczsKPj4+Pj4+PiAgCX0KPj4+ Pj4+PiAgCj4+Pj4+Pj4gQEAgLTIzODQsMTEgKzIzODEsOSBAQCBzdGF0aWMgaW50IGlsa19jb21w dXRlX3BpcGVfd20oc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKPj4+Pj4+PiAgCWlm IChwaXBlX3dtLT5zcHJpdGVzX3NjYWxlZCkKPj4+Pj4+PiAgCQl1c2FibGVfbGV2ZWwgPSAwOwo+ Pj4+Pj4+ICAKPj4+Pj4+PiAtCWlsa19jb21wdXRlX3dtX2xldmVsKGRldl9wcml2LCBpbnRlbF9j cnRjLCAwLCBjc3RhdGUsCj4+Pj4+Pj4gLQkJCSAgICAgcHJpc3RhdGUsIHNwcnN0YXRlLCBjdXJz dGF0ZSwgJnBpcGVfd20tPnJhd193bVswXSk7Cj4+Pj4+Pj4gLQo+Pj4+Pj4+ICAJbWVtc2V0KCZw aXBlX3dtLT53bSwgMCwgc2l6ZW9mKHBpcGVfd20tPndtKSk7Cj4+Pj4+Pj4gLQlwaXBlX3dtLT53 bVswXSA9IHBpcGVfd20tPnJhd193bVswXTsKPj4+Pj4+PiArCWlsa19jb21wdXRlX3dtX2xldmVs KGRldl9wcml2LCBpbnRlbF9jcnRjLCAwLCBjc3RhdGUsCj4+Pj4+Pj4gKwkJCSAgICAgcHJpc3Rh dGUsIHNwcnN0YXRlLCBjdXJzdGF0ZSwgJnBpcGVfd20tPndtWzBdKTsKPj4+Pj4+PiAgCj4+Pj4+ Pj4gIAlpZiAoSVNfSEFTV0VMTChkZXYpIHx8IElTX0JST0FEV0VMTChkZXYpKQo+Pj4+Pj4+ICAJ CXBpcGVfd20tPmxpbmV0aW1lID0gaHN3X2NvbXB1dGVfbGluZXRpbWVfd20oY3N0YXRlKTsKPj4+ Pj4+PiBAQCAtMjM5OCw4ICsyMzkzLDggQEAgc3RhdGljIGludCBpbGtfY29tcHV0ZV9waXBlX3dt KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpCj4+Pj4+Pj4gIAo+Pj4+Pj4+ICAJaWxr X2NvbXB1dGVfd21fcmVnX21heGltdW1zKGRldiwgMSwgJm1heCk7Cj4+Pj4+Pj4gIAo+Pj4+Pj4+ IC0JZm9yIChsZXZlbCA9IDE7IGxldmVsIDw9IG1heF9sZXZlbDsgbGV2ZWwrKykgewo+Pj4+Pj4+ IC0JCXN0cnVjdCBpbnRlbF93bV9sZXZlbCAqd20gPSAmcGlwZV93bS0+cmF3X3dtW2xldmVsXTsK Pj4+Pj4+PiArCWZvciAobGV2ZWwgPSAxOyBsZXZlbCA8PSB1c2FibGVfbGV2ZWw7IGxldmVsKysp IHsKPj4+Pj4+PiArCQlzdHJ1Y3QgaW50ZWxfd21fbGV2ZWwgKndtID0gJnBpcGVfd20tPndtW2xl dmVsXTsKPj4+Pj4+PiAgCj4+Pj4+Pj4gIAkJaWxrX2NvbXB1dGVfd21fbGV2ZWwoZGV2X3ByaXYs IGludGVsX2NydGMsIGxldmVsLCBjc3RhdGUsCj4+Pj4+Pj4gIAkJCQkgICAgIHByaXN0YXRlLCBz cHJzdGF0ZSwgY3Vyc3RhdGUsIHdtKTsKPj4+Pj4+PiBAQCAtMjQwOSwxMyArMjQwNCwxMCBAQCBz dGF0aWMgaW50IGlsa19jb21wdXRlX3BpcGVfd20oc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNz dGF0ZSkKPj4+Pj4+PiAgCQkgKiByZWdpc3RlciBtYXhpbXVtcyBzaW5jZSBzdWNoIHdhdGVybWFy a3MgYXJlCj4+Pj4+Pj4gIAkJICogYWx3YXlzIGludmFsaWQuCj4+Pj4+Pj4gIAkJICovCj4+Pj4+ Pj4gLQkJaWYgKGxldmVsID4gdXNhYmxlX2xldmVsKQo+Pj4+Pj4+IC0JCQljb250aW51ZTsKPj4+ Pj4+PiAtCj4+Pj4+Pj4gLQkJaWYgKGlsa192YWxpZGF0ZV93bV9sZXZlbChsZXZlbCwgJm1heCwg d20pKQo+Pj4+Pj4+IC0JCQlwaXBlX3dtLT53bVtsZXZlbF0gPSAqd207Cj4+Pj4+Pj4gLQkJZWxz ZQo+Pj4+Pj4+IC0JCQl1c2FibGVfbGV2ZWwgPSBsZXZlbDsKPj4+Pj4+PiArCQlpZiAoIWlsa192 YWxpZGF0ZV93bV9sZXZlbChsZXZlbCwgJm1heCwgd20pKSB7Cj4+Pj4+Pj4gKwkJCW1lbXNldCh3 bSwgMCwgc2l6ZW9mKCp3bSkpOwo+Pj4+Pj4+ICsJCQlicmVhazsKPj4+Pj4+PiArCQl9Cj4+Pj4+ Pj4gIAl9Cj4+Pj4+Pj4gIAo+Pj4+Pj4+ICAJcmV0dXJuIDA7Cj4+Pj4+Pj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKPj4+Pj4+PiBpbmRleCBhMTllYzA2Li4zY2U5YmEzIDEwMDY0NAo+Pj4+Pj4+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4+Pj4+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+Pj4+PiBAQCAtNDU3LDcgKzQ1Nyw2IEBA IHN0cnVjdCBpbnRlbF9jcnRjX3NjYWxlcl9zdGF0ZSB7Cj4+Pj4+Pj4gIAo+Pj4+Pj4+ICBzdHJ1 Y3QgaW50ZWxfcGlwZV93bSB7Cj4+Pj4+Pj4gIAlzdHJ1Y3QgaW50ZWxfd21fbGV2ZWwgd21bNV07 Cj4+Pj4+Pj4gLQlzdHJ1Y3QgaW50ZWxfd21fbGV2ZWwgcmF3X3dtWzVdOwo+Pj4+Pj4+ICAJdWlu dDMyX3QgbGluZXRpbWU7Cj4+Pj4+Pj4gIAlib29sIGZiY193bV9lbmFibGVkOwo+Pj4+Pj4+ICAJ Ym9vbCBwaXBlX2VuYWJsZWQ7Cj4+Pj4+PiBPaywgc28gdGhpcyBsb29rcyBsaWtlIGNvbW1pdCA4 Nzc3YjkyN2I5MmNmNWI2YzI5ZjlmOWQzYzczN2FkZGVhOWFjOGE3Cj4+Pj4+PiB1cHN0cmVhbSB3 aGljaCBpcyBjb21taXQgN2RlNjk0NzgyY2JlNzg0MGYyYzBkZTZmMWU3MGY0MWZjMWI4YjZlOCBp bgo+Pj4+Pj4gNC45LjYyLgo+Pj4+Pj4KPj4+Pj4+IEkndmUgY2M6ZWQgdGhlIGF1dGhvcnMgb2Yg dGhhdCBwYXRjaCBub3cuCj4+Pj4+Pgo+Pj4+Pj4gTWFhcnRlbiwgYW55IGhpbnRzPyAgU2hvdWxk IEkgcmV2ZXJ0IHRoaXMgZnJvbSA0Ljktc3RhYmxlLCBvciB3YXMgdGhlcmUKPj4+Pj4+IGEgZm9s bG93LW9uIHBhdGNoIHRoYXQgcmVzb2x2ZWQgdGhpcyBpc3N1ZSBpbiBtYWlubGluZT8KPj4+Pj4+ Cj4+Pj4+PiB0aGFua3MsCj4+Pj4+Pgo+Pj4+Pj4gZ3JlZyBrLWgKPj4+Pj4+Cj4+Pj4+IE9LLCBh ZnRlciByZXZlcnRpbmcgdGhlIHBhdGNoZXMsIHRoZSBmbGlja2VyICppcyogZ29uZS4KPj4+PiBU aGFua3MgZm9yIGNvbmZpcm1pbmcgdGhpcy4KPj4+Pgo+Pj4+PiBCVFcgKGZvciB0aGUgZnV0dXJl KTogV2FzIGl0IHRoZSByaWdodCB3YXkgdG8gYWRkcmVzcwo+Pj4+PiBzdGFibGVAdmdlci5rZXJu ZWwub3JnIGluIHRoaXMgbWF0dGVyIG9yIHdvdWxkIHRoZSBidWdyZXBvcnQgYXQKPj4+Pj4gZnJl ZWRlc2t0b3Aub3JnIGhhdmUgYmVlbiBlbm91Z2g/IEknbSBhIGJpdCB1bnN1cmUgYWJvdXQgdGhh dC4KPj4+PiBJIGhhdmUgbm8gaWRlYSB3aGF0IHRoZSBpOTE1IGRldmVsb3BlcnMgd2FudCwgYnV0 IGFzIGZhciBhcyBJJ20KPj4+PiBjb25jZXJuZWQsIHNlbmRpbmcgdGhpcyB0byBzdGFibGVAdmdl ciB3YXMgZmluZSB3aXRoIG1lLCBJIGhhdmUgbm8KPj4+PiBwcm9ibGVtIGRvaW5nIGEgYml0IG9m IHdvcmsgaW4gdHJhY2tpbmcgZG93biB0aGUgc3BlY2lmaWMgcGF0Y2ggYmVmb3JlCj4+Pj4gYnVn Z2luZyB0aGUgZGV2ZWxvcGVycyBpbnZvbHZlZC4KPj4+IFdlbGwsIHRoaXMgb25lIHdlIHdhbnRl ZCB0byBiZSBiYWNrcG9ydGVkLCBhbmQgc28gaW5kaWNhdGVkIHdpdGggY2M6Cj4+PiBzdGFibGUs IGJ1dCBhcHBhcmVudGx5IGl0IHdlbnQgc291dGggYW55d2F5LiA6KAo+Pj4KPj4+IFJhaW5lciwg ZG9lcyB2NC4xNCB3b3JrIGZvciB5b3U/IEkuZS4gaXMgdGhlIGNvbW1pdCBva2F5IG9yIG5vdCBi ZWZvcmUKPj4+IHRoZSBiYWNrcG9ydD8KPj4+Cj4+PiBNYWFydGVuPwo+Pj4KPj4+IEJSLAo+Pj4g SmFuaS4KPj4+Cj4+Pgo+PiA0LjE0IGlzIE9LLCBubyBwcm9ibGVtcy4KPj4KPj4gU28gbG9uZyEK Pj4gUmFpbmVyIEZpZWJpZwo+IAo+IFdoYXQgaGFwcGVucyB3aGVuIHlvdSBhcHBseSBib3RoIG90 aGVyIGJhY2twb3J0ZWQgcGF0Y2hlcyBvbiB0b3A/Cj4gCj4gaHR0cHM6Ly9jZ2l0LmZyZWVkZXNr dG9wLm9yZy9+bWxhbmtob3JzdC9saW51eC9sb2cvP2g9djQuOQo+IAoKU28gSSBhcHBsaWVkIHRo ZSAyIG5ldyBwYXRjaGVzIG9uIHRvcCBvZiB0aGUgb3JpZy4gNC45LjYyLgoKQmV0dGVyIG5vdyBi dXQgbm90IHlldCBjb21wbGV0ZWx5IE9LOgoKLi4uCltkcm06aXJvbmxha2VfaXJxX2hhbmRsZXIg W2k5MTVdXSAqRVJST1IqIENQVSBwaXBlIEEgRklGTyB1bmRlcnJ1bgpbZHJtOmlyb25sYWtlX2ly cV9oYW5kbGVyIFtpOTE1XV0gKkVSUk9SKiBQQ0ggdHJhbnNjb2RlciBBIEZJRk8gdW5kZXJydW4K Li4uCgpObyByYW5kb20gZmxpY2tlciBzbyBmYXIgYnV0IGZsaWNrZXIgd2hlbiBJIGVudGVyIGEg Y2hhcmFjdGVyIGluIGFuCngtdGVybWluYWwuCgpTZWVtcyB5b3VyIHBhdGNoZXMgZml4ZWQgb25s eSBoYWxmIG9mIHRoZSBwaXBlcy4gOykKClNvIGxvbmchClJhaW5lciBGaWViaWcKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==