From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: 4.9.62: intermittent flicker after upgrade from 4.9.61 Date: Mon, 20 Nov 2017 13:07:15 +0100 Message-ID: <2ebbda96-8b63-1080-240c-72322f718d2f@linux.intel.com> 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: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Rainer Fiebig , 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: intel-gfx@lists.freedesktop.org T3AgMjAtMTEtMTcgb20gMTI6Mzggc2NocmVlZiBSYWluZXIgRmllYmlnOgo+IE1hYXJ0ZW4gTGFu a2hvcnN0IHdyb3RlOgo+PiBPcCAyMC0xMS0xNyBvbSAwOTo1MSBzY2hyZWVmIFJhaW5lciBGaWVi aWc6Cj4+PiBKYW5pIE5pa3VsYSB3cm90ZToKPj4+PiBPbiBTdW4sIDE5IE5vdiAyMDE3LCBHcmVn IEtIIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZz4gd3JvdGU6Cj4+Pj4+IE9uIFN1biwgTm92 IDE5LCAyMDE3IGF0IDAxOjQ0OjA2UE0gKzAxMDAsIFJhaW5lciBGaWViaWcgd3JvdGU6Cj4+Pj4+ PiBHcmVnIEtIIHdyb3RlOgo+Pj4+Pj4+IE9uIFN1biwgTm92IDE5LCAyMDE3IGF0IDEyOjU2OjI2 UE0gKzAxMDAsIFJhaW5lciBGaWViaWcgd3JvdGU6Cj4+Pj4+Pj4+IEdyZWcgS0ggd3JvdGU6Cj4+ Pj4+Pj4+PiBPbiBTYXQsIE5vdiAxOCwgMjAxNyBhdCAwNTowODoyMFBNICswMTAwLCBSYWluZXIg RmllYmlnIHdyb3RlOgo+Pj4+Pj4+Pj4+IEdyZWcgS0ggd3JvdGU6Cj4+Pj4+Pj4+Pj4+IE9uIFNh dCwgTm92IDE4LCAyMDE3IGF0IDAxOjQ3OjMyUE0gKzAxMDAsIFJhaW5lciBGaWViaWcgd3JvdGU6 Cj4+Pj4+Pj4+Pj4+PiBIaSEKPj4+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+PiBIb3BlZnVsbHkgdGhl IHJpZ2h0IGFkZHJlc3NlZS4KPj4+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+PiBFbmNvdW50ZXJlZCB0 d28gYmFkIGJhY2twb3J0cyB3aGljaCBjYXVzZSBzY3JlZW4tZmxpY2tlci4KPj4+Pj4+Pj4+Pj4+ IGRtZXNnIHNob3dzOgo+Pj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4+IC4uLgo+Pj4+Pj4+Pj4+Pj4g W2RybTppcm9ubGFrZV9pcnFfaGFuZGxlciBbaTkxNV1dICpFUlJPUiogQ1BVIHBpcGUgQSBGSUZP IHVuZGVycnVuCj4+Pj4+Pj4+Pj4+PiBbZHJtOmlyb25sYWtlX2lycV9oYW5kbGVyIFtpOTE1XV0g KkVSUk9SKiBQQ0ggdHJhbnNjb2RlciBBIEZJRk8gdW5kZXJydW4KPj4+Pj4+Pj4+Pj4+IFtkcm06 aXJvbmxha2VfaXJxX2hhbmRsZXIgW2k5MTVdXSAqRVJST1IqIENQVSBwaXBlIEIgRklGTyB1bmRl cnJ1bgo+Pj4+Pj4+Pj4+Pj4gW2RybTppcm9ubGFrZV9pcnFfaGFuZGxlciBbaTkxNV1dICpFUlJP UiogUENIIHRyYW5zY29kZXIgQiBGSUZPIHVuZGVycnVuCj4+Pj4+Pj4+Pj4+PiAuLi4KPj4+Pj4+ Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+PiBDUFU6IEludGVsIENvcmUgaTMgKENsYXJrZGFsZS9Jcm9ubGFr ZSkKPj4+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+PiBUaGUgYmFja3BvcnRzIGFyZToKPj4+Pj4+Pj4+ Pj4+Cj4+Pj4+Pj4+Pj4+PiAtIGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jCj4+Pj4+Pj4+Pj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKPj4+ Pj4+Pj4+Pj4+ICAgICBpbmRleCA0OWRlNDc2Li4yNzdhODAyIDEwMDY0NAo+Pj4+Pj4+Pj4+Pj4g LSBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+Pj4+Pj4+ Pj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+Pj4+Pj4+Pj4+ICAgICBp bmRleCBhMTllYzA2Li4zY2U5YmEzIDEwMDY0NAo+Pj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4+IEFm dGVyIHJldmVyc2luZyB0aGVtIHRoZSBmbGlja2VyIGlzIGdvbmUsIG5vIG1vcmUgbWVzc2FnZXMg aW4gZG1lc2cuIEFsbAo+Pj4+Pj4+Pj4+Pj4gZWxzZSBPSyBzbyBmYXIuCj4+Pj4+Pj4+Pj4+IFNv IHdoaWNoIGNvbW1pdCB3YXMgdGhlIG9uZSB0aGF0IGNhdXNlZCB0aGUgcHJvYmxlbT8gIEkgd2ls bCBiZSBnbGFkIHRvCj4+Pj4+Pj4+Pj4+IHJldmVydCBpdC4KPj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+ Pj4gdGhhbmtzLAo+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+PiBncmVnIGstaAo+Pj4+Pj4+Pj4+Pgo+ Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IEkgc3RhcnRlZCBieSByZXZlcnRpbmcgdGhlIG1vcmUgY29t cGxleCBvbmUgZmlyc3QgKCJpbmRleAo+Pj4+Pj4+Pj4+IDQ5ZGU0NzYuLjI3N2E4MDIxMDA2NDQi KS4gQnV0IHRoZSBrZXJuZWwgd291bGRuJ3QgY29tcGlsZSB0aGVuLgo+Pj4+Pj4+Pj4gV2hhdCBn aXQgY29tbWl0IGlkIGlzIHRoYXQ/ICBJIGRvbid0IHNlZSB0aG9zZSBpZHMgaW4gdGhlIDQuOS1z dGFibGUKPj4+Pj4+Pj4+IHRyZWUuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IFNvIEkgYWxzbyByZXZl cnRlZCAiaW5kZXggYTE5ZWMwNi4uM2NlOWJhMyAxMDA2NDQiLiBBZnRlciB0aGF0IHRoZQo+Pj4+ Pj4+Pj4+IGtlcm5lbCBjb21waWxlZCBqdXN0IGZpbmUgYW5kIHRoZSBwcm9ibGVtcyB3ZXJlIGdv bmUgKHN0aWxsIGFyZSkuCj4+Pj4+Pj4+PiBTYW1lIGhlcmUsIHdoYXQgZ2l0IGNvbW1pdCBpZCB3 YXMgdGhpcz8KPj4+Pj4+Pj4+Cj4+Pj4+Pj4+PiB0aGFua3MsCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4g Z3JlZyBrLWgKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+IE9LLCBubyBtaXN0YWtlLiBJSVJDLCBJIHRvb2sg dGhlIHBhdGNoZXMgKGFuZCB0aGUgSURzKSBmcm9tIHRoZQo+Pj4+Pj4+PiBjaGFuZ2Vsb2cgZm9y IHBhdGNoLTQuOS42Mi4gSSd2ZSBhdHRhY2hlZCBib3RoLCBzbyB5b3UgY2FuIGNoZWNrIHlvdXJz ZWxmLgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBJJ3ZlIGFsc28gYXBwbGllZCBhIGZyZXNobHkgZG93bmxv YWRlZCBwYXRjaC00LjkuNjIgdG8gYSBmcmVzaGx5Cj4+Pj4+Pj4+IGV4cGFuZGVkIDQuOSBhbmQg cmUtY29tcGlsZWQuIFRoZSBmbGlja2VyIGlzIHRoZXJlLiBJIGhhdmVuJ3QgeWV0Cj4+Pj4+Pj4+ IHJldmVydGVkIHRoZSB0d28gcGF0Y2hlcyBidXQgSSdtIGNvbmZpZGVudCB0aGF0IGFmdGVyIGhh dmluZyBkb25lIHNvIHRoZQo+Pj4+Pj4+PiBmbGlja2VyIHdpbGwgYmUgZ29uZS4gSWYgbm90IEkn bGwgbGV0IHlvdSBrbm93Lgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBBcyBhIGdvb2QgbmV3czogNC4xNCBp cyAqbm90KiBhZmZlY3RlZC4gU28gdG8gbWUgaXQgc2VlbXMgdGhvc2UgdHdvCj4+Pj4+Pj4+IHBh dGNoZXMgYXJlIHBhcnQgb2Ygc29ydCBvZiBhIHBhY2thZ2UgYW5kIGNhbiBub3QgYmUgYmFja3Bv cnRlZCBhbG9uZS4KPj4+Pj4+Pj4KPj4+Pj4+Pj4gU28gbG9uZyEKPj4+Pj4+Pj4gUmFpbmVyIEZp ZWJpZwo+Pj4+Pj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKPj4+Pj4+Pj4gaW5kZXggNDlkZTQ3 Ni4uMjc3YTgwMiAxMDA2NDQKPj4+Pj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcG0uYwo+Pj4+Pj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCj4+ Pj4+Pj4+IEBAIC0yNyw2ICsyNyw3IEBACj4+Pj4+Pj4+ICAKPj4+Pj4+Pj4gICNpbmNsdWRlIDxs aW51eC9jcHVmcmVxLmg+Cj4+Pj4+Pj4+ICAjaW5jbHVkZSA8ZHJtL2RybV9wbGFuZV9oZWxwZXIu aD4KPj4+Pj4+Pj4gKyNpbmNsdWRlIDxkcm0vZHJtX2F0b21pY19oZWxwZXIuaD4KPj4+Pj4+Pj4g ICNpbmNsdWRlICJpOTE1X2Rydi5oIgo+Pj4+Pj4+PiAgI2luY2x1ZGUgImludGVsX2Rydi5oIgo+ Pj4+Pj4+PiAgI2luY2x1ZGUgIi4uLy4uLy4uL3BsYXRmb3JtL3g4Ni9pbnRlbF9pcHMuaCIKPj4+ Pj4+Pj4gQEAgLTIwMTcsOSArMjAxOCw5IEBAIHN0YXRpYyB2b2lkIGlsa19jb21wdXRlX3dtX2xl dmVsKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPj4+Pj4+Pj4gIAkJ CQkgY29uc3Qgc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMsCj4+Pj4+Pj4+ICAJCQkJIGlu dCBsZXZlbCwKPj4+Pj4+Pj4gIAkJCQkgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSwK Pj4+Pj4+Pj4gLQkJCQkgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpwcmlzdGF0ZSwKPj4+Pj4+ Pj4gLQkJCQkgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzcHJzdGF0ZSwKPj4+Pj4+Pj4gLQkJ CQkgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpjdXJzdGF0ZSwKPj4+Pj4+Pj4gKwkJCQkgY29u c3Qgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpwcmlzdGF0ZSwKPj4+Pj4+Pj4gKwkJCQkgY29u c3Qgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzcHJzdGF0ZSwKPj4+Pj4+Pj4gKwkJCQkgY29u c3Qgc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpjdXJzdGF0ZSwKPj4+Pj4+Pj4gIAkJCQkgc3Ry dWN0IGludGVsX3dtX2xldmVsICpyZXN1bHQpCj4+Pj4+Pj4+ICB7Cj4+Pj4+Pj4+ICAJdWludDE2 X3QgcHJpX2xhdGVuY3kgPSBkZXZfcHJpdi0+d20ucHJpX2xhdGVuY3lbbGV2ZWxdOwo+Pj4+Pj4+ PiBAQCAtMjM0MSwyOCArMjM0MiwyNCBAQCBzdGF0aWMgaW50IGlsa19jb21wdXRlX3BpcGVfd20o c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKPj4+Pj4+Pj4gIAlzdHJ1Y3QgaW50ZWxf cGlwZV93bSAqcGlwZV93bTsKPj4+Pj4+Pj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gc3Rh dGUtPmRldjsKPj4+Pj4+Pj4gIAljb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSB0b19pOTE1KGRldik7Cj4+Pj4+Pj4+IC0Jc3RydWN0IGludGVsX3BsYW5lICppbnRlbF9w bGFuZTsKPj4+Pj4+Pj4gLQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnByaXN0YXRlID0gTlVM TDsKPj4+Pj4+Pj4gLQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnNwcnN0YXRlID0gTlVMTDsK Pj4+Pj4+Pj4gLQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKmN1cnN0YXRlID0gTlVMTDsKPj4+ Pj4+Pj4gKwlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKPj4+Pj4+Pj4gKwljb25zdCBzdHJ1Y3Qg ZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKPj4+Pj4+Pj4gKwljb25zdCBzdHJ1Y3QgaW50 ZWxfcGxhbmVfc3RhdGUgKnByaXN0YXRlID0gTlVMTDsKPj4+Pj4+Pj4gKwljb25zdCBzdHJ1Y3Qg aW50ZWxfcGxhbmVfc3RhdGUgKnNwcnN0YXRlID0gTlVMTDsKPj4+Pj4+Pj4gKwljb25zdCBzdHJ1 Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKmN1cnN0YXRlID0gTlVMTDsKPj4+Pj4+Pj4gIAlpbnQgbGV2 ZWwsIG1heF9sZXZlbCA9IGlsa193bV9tYXhfbGV2ZWwoZGV2KSwgdXNhYmxlX2xldmVsOwo+Pj4+ Pj4+PiAgCXN0cnVjdCBpbGtfd21fbWF4aW11bXMgbWF4Owo+Pj4+Pj4+PiAgCj4+Pj4+Pj4+ICAJ cGlwZV93bSA9ICZjc3RhdGUtPndtLmlsay5vcHRpbWFsOwo+Pj4+Pj4+PiAgCj4+Pj4+Pj4+IC0J Zm9yX2VhY2hfaW50ZWxfcGxhbmVfb25fY3J0YyhkZXYsIGludGVsX2NydGMsIGludGVsX3BsYW5l KSB7Cj4+Pj4+Pj4+IC0JCXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcHM7Cj4+Pj4+Pj4+ICsJ ZHJtX2F0b21pY19jcnRjX3N0YXRlX2Zvcl9lYWNoX3BsYW5lX3N0YXRlKHBsYW5lLCBwbGFuZV9z dGF0ZSwgJmNzdGF0ZS0+YmFzZSkgewo+Pj4+Pj4+PiArCQljb25zdCBzdHJ1Y3QgaW50ZWxfcGxh bmVfc3RhdGUgKnBzID0gdG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmVfc3RhdGUpOwo+Pj4+Pj4+ PiAgCj4+Pj4+Pj4+IC0JCXBzID0gaW50ZWxfYXRvbWljX2dldF9leGlzdGluZ19wbGFuZV9zdGF0 ZShzdGF0ZSwKPj4+Pj4+Pj4gLQkJCQkJCQkgICBpbnRlbF9wbGFuZSk7Cj4+Pj4+Pj4+IC0JCWlm ICghcHMpCj4+Pj4+Pj4+IC0JCQljb250aW51ZTsKPj4+Pj4+Pj4gLQo+Pj4+Pj4+PiAtCQlpZiAo aW50ZWxfcGxhbmUtPmJhc2UudHlwZSA9PSBEUk1fUExBTkVfVFlQRV9QUklNQVJZKQo+Pj4+Pj4+ PiArCQlpZiAocGxhbmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSkKPj4+Pj4+Pj4g IAkJCXByaXN0YXRlID0gcHM7Cj4+Pj4+Pj4+IC0JCWVsc2UgaWYgKGludGVsX3BsYW5lLT5iYXNl LnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSkKPj4+Pj4+Pj4gKwkJZWxzZSBpZiAocGxh bmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSkKPj4+Pj4+Pj4gIAkJCXNwcnN0YXRl ID0gcHM7Cj4+Pj4+Pj4+IC0JCWVsc2UgaWYgKGludGVsX3BsYW5lLT5iYXNlLnR5cGUgPT0gRFJN X1BMQU5FX1RZUEVfQ1VSU09SKQo+Pj4+Pj4+PiArCQllbHNlIGlmIChwbGFuZS0+dHlwZSA9PSBE Uk1fUExBTkVfVFlQRV9DVVJTT1IpCj4+Pj4+Pj4+ICAJCQljdXJzdGF0ZSA9IHBzOwo+Pj4+Pj4+ PiAgCX0KPj4+Pj4+Pj4gIAo+Pj4+Pj4+PiBAQCAtMjM4NCwxMSArMjM4MSw5IEBAIHN0YXRpYyBp bnQgaWxrX2NvbXB1dGVfcGlwZV93bShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKQo+ Pj4+Pj4+PiAgCWlmIChwaXBlX3dtLT5zcHJpdGVzX3NjYWxlZCkKPj4+Pj4+Pj4gIAkJdXNhYmxl X2xldmVsID0gMDsKPj4+Pj4+Pj4gIAo+Pj4+Pj4+PiAtCWlsa19jb21wdXRlX3dtX2xldmVsKGRl dl9wcml2LCBpbnRlbF9jcnRjLCAwLCBjc3RhdGUsCj4+Pj4+Pj4+IC0JCQkgICAgIHByaXN0YXRl LCBzcHJzdGF0ZSwgY3Vyc3RhdGUsICZwaXBlX3dtLT5yYXdfd21bMF0pOwo+Pj4+Pj4+PiAtCj4+ Pj4+Pj4+ICAJbWVtc2V0KCZwaXBlX3dtLT53bSwgMCwgc2l6ZW9mKHBpcGVfd20tPndtKSk7Cj4+ Pj4+Pj4+IC0JcGlwZV93bS0+d21bMF0gPSBwaXBlX3dtLT5yYXdfd21bMF07Cj4+Pj4+Pj4+ICsJ aWxrX2NvbXB1dGVfd21fbGV2ZWwoZGV2X3ByaXYsIGludGVsX2NydGMsIDAsIGNzdGF0ZSwKPj4+ Pj4+Pj4gKwkJCSAgICAgcHJpc3RhdGUsIHNwcnN0YXRlLCBjdXJzdGF0ZSwgJnBpcGVfd20tPndt WzBdKTsKPj4+Pj4+Pj4gIAo+Pj4+Pj4+PiAgCWlmIChJU19IQVNXRUxMKGRldikgfHwgSVNfQlJP QURXRUxMKGRldikpCj4+Pj4+Pj4+ICAJCXBpcGVfd20tPmxpbmV0aW1lID0gaHN3X2NvbXB1dGVf bGluZXRpbWVfd20oY3N0YXRlKTsKPj4+Pj4+Pj4gQEAgLTIzOTgsOCArMjM5Myw4IEBAIHN0YXRp YyBpbnQgaWxrX2NvbXB1dGVfcGlwZV93bShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRl KQo+Pj4+Pj4+PiAgCj4+Pj4+Pj4+ICAJaWxrX2NvbXB1dGVfd21fcmVnX21heGltdW1zKGRldiwg MSwgJm1heCk7Cj4+Pj4+Pj4+ICAKPj4+Pj4+Pj4gLQlmb3IgKGxldmVsID0gMTsgbGV2ZWwgPD0g bWF4X2xldmVsOyBsZXZlbCsrKSB7Cj4+Pj4+Pj4+IC0JCXN0cnVjdCBpbnRlbF93bV9sZXZlbCAq d20gPSAmcGlwZV93bS0+cmF3X3dtW2xldmVsXTsKPj4+Pj4+Pj4gKwlmb3IgKGxldmVsID0gMTsg bGV2ZWwgPD0gdXNhYmxlX2xldmVsOyBsZXZlbCsrKSB7Cj4+Pj4+Pj4+ICsJCXN0cnVjdCBpbnRl bF93bV9sZXZlbCAqd20gPSAmcGlwZV93bS0+d21bbGV2ZWxdOwo+Pj4+Pj4+PiAgCj4+Pj4+Pj4+ ICAJCWlsa19jb21wdXRlX3dtX2xldmVsKGRldl9wcml2LCBpbnRlbF9jcnRjLCBsZXZlbCwgY3N0 YXRlLAo+Pj4+Pj4+PiAgCQkJCSAgICAgcHJpc3RhdGUsIHNwcnN0YXRlLCBjdXJzdGF0ZSwgd20p Owo+Pj4+Pj4+PiBAQCAtMjQwOSwxMyArMjQwNCwxMCBAQCBzdGF0aWMgaW50IGlsa19jb21wdXRl X3BpcGVfd20oc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKPj4+Pj4+Pj4gIAkJICog cmVnaXN0ZXIgbWF4aW11bXMgc2luY2Ugc3VjaCB3YXRlcm1hcmtzIGFyZQo+Pj4+Pj4+PiAgCQkg KiBhbHdheXMgaW52YWxpZC4KPj4+Pj4+Pj4gIAkJICovCj4+Pj4+Pj4+IC0JCWlmIChsZXZlbCA+ IHVzYWJsZV9sZXZlbCkKPj4+Pj4+Pj4gLQkJCWNvbnRpbnVlOwo+Pj4+Pj4+PiAtCj4+Pj4+Pj4+ IC0JCWlmIChpbGtfdmFsaWRhdGVfd21fbGV2ZWwobGV2ZWwsICZtYXgsIHdtKSkKPj4+Pj4+Pj4g LQkJCXBpcGVfd20tPndtW2xldmVsXSA9ICp3bTsKPj4+Pj4+Pj4gLQkJZWxzZQo+Pj4+Pj4+PiAt CQkJdXNhYmxlX2xldmVsID0gbGV2ZWw7Cj4+Pj4+Pj4+ICsJCWlmICghaWxrX3ZhbGlkYXRlX3dt X2xldmVsKGxldmVsLCAmbWF4LCB3bSkpIHsKPj4+Pj4+Pj4gKwkJCW1lbXNldCh3bSwgMCwgc2l6 ZW9mKCp3bSkpOwo+Pj4+Pj4+PiArCQkJYnJlYWs7Cj4+Pj4+Pj4+ICsJCX0KPj4+Pj4+Pj4gIAl9 Cj4+Pj4+Pj4+ICAKPj4+Pj4+Pj4gIAlyZXR1cm4gMDsKPj4+Pj4+Pj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHJ2LmgKPj4+Pj4+Pj4gaW5kZXggYTE5ZWMwNi4uM2NlOWJhMyAxMDA2NDQKPj4+Pj4+Pj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+Pj4+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+Pj4+Pj4gQEAgLTQ1Nyw3ICs0NTcsNiBA QCBzdHJ1Y3QgaW50ZWxfY3J0Y19zY2FsZXJfc3RhdGUgewo+Pj4+Pj4+PiAgCj4+Pj4+Pj4+ICBz dHJ1Y3QgaW50ZWxfcGlwZV93bSB7Cj4+Pj4+Pj4+ICAJc3RydWN0IGludGVsX3dtX2xldmVsIHdt WzVdOwo+Pj4+Pj4+PiAtCXN0cnVjdCBpbnRlbF93bV9sZXZlbCByYXdfd21bNV07Cj4+Pj4+Pj4+ ICAJdWludDMyX3QgbGluZXRpbWU7Cj4+Pj4+Pj4+ICAJYm9vbCBmYmNfd21fZW5hYmxlZDsKPj4+ Pj4+Pj4gIAlib29sIHBpcGVfZW5hYmxlZDsKPj4+Pj4+PiBPaywgc28gdGhpcyBsb29rcyBsaWtl IGNvbW1pdCA4Nzc3YjkyN2I5MmNmNWI2YzI5ZjlmOWQzYzczN2FkZGVhOWFjOGE3Cj4+Pj4+Pj4g dXBzdHJlYW0gd2hpY2ggaXMgY29tbWl0IDdkZTY5NDc4MmNiZTc4NDBmMmMwZGU2ZjFlNzBmNDFm YzFiOGI2ZTggaW4KPj4+Pj4+PiA0LjkuNjIuCj4+Pj4+Pj4KPj4+Pj4+PiBJJ3ZlIGNjOmVkIHRo ZSBhdXRob3JzIG9mIHRoYXQgcGF0Y2ggbm93Lgo+Pj4+Pj4+Cj4+Pj4+Pj4gTWFhcnRlbiwgYW55 IGhpbnRzPyAgU2hvdWxkIEkgcmV2ZXJ0IHRoaXMgZnJvbSA0Ljktc3RhYmxlLCBvciB3YXMgdGhl cmUKPj4+Pj4+PiBhIGZvbGxvdy1vbiBwYXRjaCB0aGF0IHJlc29sdmVkIHRoaXMgaXNzdWUgaW4g bWFpbmxpbmU/Cj4+Pj4+Pj4KPj4+Pj4+PiB0aGFua3MsCj4+Pj4+Pj4KPj4+Pj4+PiBncmVnIGst aAo+Pj4+Pj4+Cj4+Pj4+PiBPSywgYWZ0ZXIgcmV2ZXJ0aW5nIHRoZSBwYXRjaGVzLCB0aGUgZmxp Y2tlciAqaXMqIGdvbmUuCj4+Pj4+IFRoYW5rcyBmb3IgY29uZmlybWluZyB0aGlzLgo+Pj4+Pgo+ Pj4+Pj4gQlRXIChmb3IgdGhlIGZ1dHVyZSk6IFdhcyBpdCB0aGUgcmlnaHQgd2F5IHRvIGFkZHJl c3MKPj4+Pj4+IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcgaW4gdGhpcyBtYXR0ZXIgb3Igd291bGQg dGhlIGJ1Z3JlcG9ydCBhdAo+Pj4+Pj4gZnJlZWRlc2t0b3Aub3JnIGhhdmUgYmVlbiBlbm91Z2g/ IEknbSBhIGJpdCB1bnN1cmUgYWJvdXQgdGhhdC4KPj4+Pj4gSSBoYXZlIG5vIGlkZWEgd2hhdCB0 aGUgaTkxNSBkZXZlbG9wZXJzIHdhbnQsIGJ1dCBhcyBmYXIgYXMgSSdtCj4+Pj4+IGNvbmNlcm5l ZCwgc2VuZGluZyB0aGlzIHRvIHN0YWJsZUB2Z2VyIHdhcyBmaW5lIHdpdGggbWUsIEkgaGF2ZSBu bwo+Pj4+PiBwcm9ibGVtIGRvaW5nIGEgYml0IG9mIHdvcmsgaW4gdHJhY2tpbmcgZG93biB0aGUg c3BlY2lmaWMgcGF0Y2ggYmVmb3JlCj4+Pj4+IGJ1Z2dpbmcgdGhlIGRldmVsb3BlcnMgaW52b2x2 ZWQuCj4+Pj4gV2VsbCwgdGhpcyBvbmUgd2Ugd2FudGVkIHRvIGJlIGJhY2twb3J0ZWQsIGFuZCBz byBpbmRpY2F0ZWQgd2l0aCBjYzoKPj4+PiBzdGFibGUsIGJ1dCBhcHBhcmVudGx5IGl0IHdlbnQg c291dGggYW55d2F5LiA6KAo+Pj4+Cj4+Pj4gUmFpbmVyLCBkb2VzIHY0LjE0IHdvcmsgZm9yIHlv dT8gSS5lLiBpcyB0aGUgY29tbWl0IG9rYXkgb3Igbm90IGJlZm9yZQo+Pj4+IHRoZSBiYWNrcG9y dD8KPj4+Pgo+Pj4+IE1hYXJ0ZW4/Cj4+Pj4KPj4+PiBCUiwKPj4+PiBKYW5pLgo+Pj4+Cj4+Pj4K Pj4+IDQuMTQgaXMgT0ssIG5vIHByb2JsZW1zLgo+Pj4KPj4+IFNvIGxvbmchCj4+PiBSYWluZXIg RmllYmlnCj4+IFdoYXQgaGFwcGVucyB3aGVuIHlvdSBhcHBseSBib3RoIG90aGVyIGJhY2twb3J0 ZWQgcGF0Y2hlcyBvbiB0b3A/Cj4+Cj4+IGh0dHBzOi8vY2dpdC5mcmVlZGVza3RvcC5vcmcvfm1s YW5raG9yc3QvbGludXgvbG9nLz9oPXY0LjkKPj4KPiBPbiB0b3Agb2YgNC4xND8KCk5vLCBvbiB0 b3Agb2YgdjQuOSA6LSkKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1k ZXZlbAo=