From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jindal, Sonika" Subject: Re: [PATCH] drm/i915: Check live status before reading edid Date: Mon, 14 Sep 2015 14:44:01 +0530 Message-ID: <55F68FD9.1010601@intel.com> References: <1441970796-5850-1-git-send-email-sonika.jindal@intel.com> <20150914084214.GK3383@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id E61E76E570 for ; Mon, 14 Sep 2015 02:14:07 -0700 (PDT) In-Reply-To: <20150914084214.GK3383@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter , Rodrigo Vivi Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org CgpPbiA5LzE0LzIwMTUgMjoxMiBQTSwgRGFuaWVsIFZldHRlciB3cm90ZToKPiBPbiBGcmksIFNl cCAxMSwgMjAxNSBhdCAwNTo1Njo0N1BNICswMDAwLCBSb2RyaWdvIFZpdmkgd3JvdGU6Cj4+IFRo YW5rcwo+Pgo+PiBSZXZpZXdlZC1ieTogUm9kcmlnbyBWaXZpIDxyb2RyaWdvLnZpdmlAaW50ZWwu Y29tPgo+Pgo+Pgo+PiBPbiBGcmksIFNlcCAxMSwgMjAxNSBhdCA0OjM4IEFNIFNvbmlrYSBKaW5k YWwgPHNvbmlrYS5qaW5kYWxAaW50ZWwuY29tPgo+PiB3cm90ZToKPj4KPj4+IFRoZSBCc3BlYyBp cyB2ZXJ5IGNsZWFyIHRoYXQgTGl2ZSBzdGF0dXMgbXVzdCBiZSBjaGVja2VkIGFib3V0IGJlZm9y ZQo+Pj4gdHJ5aW5nIHRvIHJlYWQgRURJRCBvdmVyIEREQyBjaGFubmVsLiBUaGlzIHBhdGNoIG1h a2VzIHN1cmUgdGhhdCBIRE1JCj4+PiBFRElEIGlzIHJlYWQgb25seSB3aGVuIGxpdmUgc3RhdHVz IGlzIHVwLgo+Pj4KPj4+IFRoZSBsaXZlIHN0YXR1cyBkb2Vzbid0IHNlZW0gdG8gcGVyZm9ybSB2 ZXJ5IGNvbnNpc3RlbnQgYWNyb3NzIHZhcmlvdXMKPj4+IHBsYXRmb3JtcyB3aGVuIHRlc3RlZCB3 aXRoIGRpZmZlcmVudCBtb25pdG9ycy4gVGhlIHJlYXNvbiBiZWhpbmQgdGhhdCBpcwo+Pj4gc29t ZSBtb25pdG9ycyBhcmUgbGF0ZSB0byBwcm92aWRlIHJpZ2h0IHZvbHRhZ2UgdG8gc2V0IGxpdmVf c3RhdHVzIHVwLgo+Pj4gU28sIGFmdGVyIGdldHRpbmcgdGhlIGludGVycnVwdCwgZm9yIGEgc21h bGwgZHVyYXRpb24sIGxpdmUgc3RhdHVzIHJlZwo+Pj4gZmx1Y3R1YXRlcywgYW5kIHRoZW4gc2V0 dGxlcyBkb3duIHNob3dpbmcgdGhlIGNvcnJlY3Qgc3RhdXMuCj4+Pgo+Pj4gVGhpcyBpcyBleHBs YWluZWQgaGVyZSBpbiwgaW4gYSByb3VnaCB3YXk6Cj4+PiBIUEQgbGluZSAgX19fX19fX19fX19f X19fXwo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgICB8XCBUMSA9IE1vbml0b3IgSG90cGx1 ZyBjYXVzaW5nIElSUQo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgICB8IFxfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAg ICB8IHwKPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB8Cj4+PiAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgfCAgIFQyID0gTGl2ZSBzdGF0dXMgaXMgc3RhYmxlCj4+PiAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgfCAgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgICB8IHwgL3wKPj4+IExpdmUgc3RhdHVz IF9fX19fX19fX19fX198X3wvIHwKPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB8ICB8 Cj4+PiAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgfCAgfAo+Pj4gICAgICAgICAgICAgICAg ICAgICAgICAgICB8IHwgIHwKPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICBUMCBUMSAgVDIK Pj4+Cj4+PiAoQmV0d2VlbiBUMSBhbmQgVDIgTGl2ZSBzdGF0dXMgZmx1Y3R1YXRlcyBvciBjYW4g YmUgZXZlbiBsb3csIGRlcGVuZGluZyBvbgo+Pj4gICB0aGUgbW9uaXRvcikKPj4+Cj4+PiBBZnRl ciBzZXZlcmFsIGV4cGVyaW1lbnRzLCB3ZSBoYXZlIGNvbmNsdWRlZCB0aGF0IGEgbWF4IGRlbGF5 Cj4+PiBvZiAzMG1zIGlzIGVub3VnaCB0byBhbGxvdyB0aGUgbGl2ZSBzdGF0dXMgdG8gc2V0dGxl IGRvd24gd2l0aAo+Pj4gbW9zdCBvZiB0aGUgbW9uaXRvcnMuIFRoaXMgdG90YWwgZGVsYXkgb2Yg MzBtcyBoYXMgYmVlbiBzcGxpdCBpbnRvCj4+PiBhIHJlc29sdXRpb24gb2YgMyByZXRyaWVzIG9m IDEwbXMgZWFjaCwgZm9yIHRoZSBiZXR0ZXIgY2FzZXMuCj4+Pgo+Pj4gVGhpcyBkZWxheSBpcyBr ZXB0IGF0IDMwbXMsIGtlZXBpbmcgaW4gY29uc2lkZXJhdGlvbiB0aGF0LCBIRENQIGNvbXBsaWFu Y2UKPj4+IGV4cGVjdCB0aGUgSFBEIGhhbmRsZXIgdG8gcmVzcG9uZCBhIHBsdWcgb3V0IGluIDEw MG1zLCBieSBkaXNhYmxpbmcgcG9ydC4KPj4+Cj4+PiB2MjogQWRkaW5nIGNoZWNrcyBmb3IgVkxW L0NIViBhcyB3ZWxsLiBSZXVzaW5nIG9sZCBpYnggYW5kIGc0eCBmdW5jdGlvbnMKPj4+IHRvIGNo ZWNrIGRpZ2l0YWwgcG9ydCBzdGF0dXMuIEFkZGluZyBhIHNlcGFyYXRlIGZ1bmN0aW9uIHRvIGdl dCBieHQgbGl2ZQo+Pj4gc3RhdHVzIChEYW5pZWwpCj4+PiB2MzogVXNpbmcgaW50ZWxfZW5jb2Rl ci0+aHBkX3BpbiB0byBjaGVjayB0aGUgbGl2ZSBzdGF0dXMgKFNpdmEpCj4+PiBNb3ZpbmcgdGhl IGxpdmUgc3RhdHVzIHJlYWQgdG8gaW50ZWxfaGRtaV9wcm9iZSBhbmQgcGFzc2luZyBwYXJhbWV0 ZXIKPj4+IHRvIHJlYWQvbm90IHRvIHJlYWQgdGhlIGVkaWQuIChtZSkKPj4+IHY0Ogo+Pj4gKiBB ZGRlZCBsaXZlIHN0YXR1cyBjaGVjayBmb3IgYWxsIHBsYXRmb3JtcyB1c2luZwo+Pj4gaW50ZWxf ZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZC4KPj4+ICogUmViYXNlZCBvbiB0b3Agb2YgSmFuaSdzIERQ IGNsZWFudXAgc2VyaWVzCj4+PiAqIFNvbWUgbW9uaXRvcnMgdGFrZSB0aW1lIGluIHNldHRpbmcg dGhlIGxpdmUgc3RhdHVzLiBTbyByZXRyeSBmb3IgZmV3Cj4+PiB0aW1lcyBpZiB0aGlzIGlzIGEg Y29ubmVjdCBIUEQKPj4+IHY1OiBSZW1vdmVkIGV4dHJhICJkcm0vaTkxNSIgZnJvbSBjb21taXQg bWVzc2FnZS4gQWRkaW5nIFNoYXNoYW5rJ3Mgc29iCj4+PiAgICAgIHdoaWNoIHdhcyBtaXNzZWQu Cj4+PiB2NjogRHJvcCB0aGUgKCFkZXRlY3RfZWRpZCAmJiAhbGl2ZV9zdGF0dXMgY2hlY2spIGNo ZWNrIGJlY2F1c2UgZm9yIERESQo+Pj4gcG9ydHMgd2hpY2ggYXJlIGVudW1lcmF0ZWQgYXMgaGRt aSBhcyB3ZWxsIGFzIERQLCB3ZSBkb24ndCBoYXZlIGEKPj4+IG1lY2hhbmlzbSB0byBkaWZmZXJl bnRpYXRlIGJldHdlZW4gRFAgYW5kIGhkbWkgaW5zaWRlIHRoZSBlbmNvZGVyJ3MKPj4+IGhvdF9w bHVnLiBUaGlzIGxlYWRzIHRvIGNhbGwgdG8gdGhlIGhkbWkncyBob3RfcGx1ZyBob29rIGZvciBE UCBhcyB3ZWxsCj4+PiBhcyBoZG1pIHdoaWNoIGxlYWRzIHRvIGlzc3VlcyBkdXJpbmcgdW5wbHVn IGJlY2F1c2Ugb2YgdGhlIGFib3ZlIGNoZWNrLgo+Pj4gdjc6IE1ha2UgaW50ZWxfZGlnaXRhbF9w b3J0X2Nvbm5lY3RlZCBnbG9iYWwgaW4gdGhpcyBwYXRjaCwgc29tZQo+Pj4gcmVmb3JtYXR0aW5n IG9mIHdoaWxlIGxvb3AsIGFkZGluZyBhIHByaW50IHdoZW4gbGl2ZSBzdGF0dXMgaXMgbm90Cj4+ PiB1cC4gKFJvZHJpZ28pCj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1hIDxz aGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+Pj4gU2lnbmVkLW9mZi1ieTogU29uaWthIEppbmRh bCA8c29uaWthLmppbmRhbEBpbnRlbC5jb20+Cj4KPiBTaW5jZSB0aGlzIGlzIHRyaWNreSBzdHVm ZiBhbmQgb3RoZXIgcGF0Y2hlcyBpbiB0aGlzIHNlcmllcyBhcmUgYmxvY2tlZAo+IHVudGlsIHdl IGhhdmUgYSBjbGVhcmVyIHBpY3R1cmUgY2FuIHlvdSBwbGVhc2UgcmViYXNlIHRoaXMgdG8gYmUg dGhlIGZpcnN0Cj4gcGF0Y2ggb24gdG9wIG9mIC1uaWdodGx5IHNvIHRoYXQgSSBjYW4gcHVsbCBp dCBpbiBkaXJlY3RseT8KPgo+IEkgdHJpZWQgdG8gZG8gdGhhdCBidXQgcHJvdmVkIGEgYml0IHRv byBtZXNzeS4KPiAtRGFuaWVsCj4KSG1tLCBzaW5jZSByZWJhc2luZyB0aGlzIHdpbGwgcmVxdWly ZSB0aGVzZSBjaGFuZ2VzIChjaGVjayBmb3IgbGl2ZSAKc3RhdHVzKSB0byBnbyBpbiBkZXRlY3Qg YW5kIHRoZW4gbGF0ZXIgd2hlbiB3ZSByZWFjaCBhIGNvbmNsdXNpb24gb24KaG90X3BsdWcgaG9v aywgd2Ugd291bGQgbmVlZCB0byBtb3ZlIGl0IHRvIHRoYXQgZnVuY3Rpb24uCkkgdGhpbmsgbGV0 cyB3YWl0IGZvciB0aGUgY29uY2x1c2lvbiBvbiB0aGUgcGxhY2VtZW50IG9mIHRoYXQgZnVuY3Rp b24uCldoYXQgZG8geW91IHN1Z2dlc3Q/CgpSZWdhcmRzLApTb25pa2EKPj4+IC0tLQo+Pj4gICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgfCAgICAyICstCj4+PiAgIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICB8ICAgIDIgKysKPj4+ICAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfaGRtaS5jIHwgICAyNiArKysrKysrKysrKysrKysrKysrLS0tLS0tLQo+Pj4g ICAzIGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCj4+Pgo+ Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPj4+IGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+Pj4gaW5kZXggYmYxNzAzMC4uZmVkZjZkMSAx MDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPj4+IEBAIC00Njk1LDcgKzQ2OTUsNyBA QCBzdGF0aWMgYm9vbCBieHRfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChzdHJ1Y3QKPj4+IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4gICAgKgo+Pj4gICAgKiBSZXR1cm4gJXRydWUgaWYg QHBvcnQgaXMgY29ubmVjdGVkLCAlZmFsc2Ugb3RoZXJ3aXNlLgo+Pj4gICAgKi8KPj4+IC1zdGF0 aWMgYm9vbCBpbnRlbF9kaWdpdGFsX3BvcnRfY29ubmVjdGVkKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlCj4+PiAqZGV2X3ByaXYsCj4+PiArYm9vbCBpbnRlbF9kaWdpdGFsX3BvcnRfY29ubmVjdGVk KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPj4+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKnBvcnQp Cj4+PiAgIHsKPj4+ICAgICAgICAgIGlmIChIQVNfUENIX0lCWChkZXZfcHJpdikpCj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+IGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+IGluZGV4IGI2YzJjMjAuLmFjNmQ3NDggMTAwNjQ0 Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPj4+IEBAIC0xMjEwLDYgKzEyMTAsOCBAQCB2 b2lkIGludGVsX2VkcF9kcnJzX2Rpc2FibGUoc3RydWN0IGludGVsX2RwCj4+PiAqaW50ZWxfZHAp Owo+Pj4gICB2b2lkIGludGVsX2VkcF9kcnJzX2ludmFsaWRhdGUoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKPj4+ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgZnJvbnRidWZmZXJfYml0cyk7Cj4+ PiAgIHZvaWQgaW50ZWxfZWRwX2RycnNfZmx1c2goc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdW5z aWduZWQKPj4+IGZyb250YnVmZmVyX2JpdHMpOwo+Pj4gK2Jvb2wgaW50ZWxfZGlnaXRhbF9wb3J0 X2Nvbm5lY3RlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4+PiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBpbnRlbF9kaWdpdGFsX3Bv cnQgKnBvcnQpOwo+PiBnPgo+Pj4gICAvKiBpbnRlbF9kcF9tc3QuYyAqLwo+Pj4gICBpbnQgaW50 ZWxfZHBfbXN0X2VuY29kZXJfaW5pdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9k aWdfcG9ydCwKPj4+IGludCBjb25uX2lkKTsKPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9oZG1pLmMKPj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRt aS5jCj4+PiBpbmRleCAxZWRhNzFhLi5kMzY2Y2E1IDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oZG1pLmMKPj4+IEBAIC0xMzI5LDIyICsxMzI5LDIzIEBAIGludGVsX2hkbWlfdW5zZXRf ZWRpZChzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcgo+Pj4gKmNvbm5lY3RvcikKPj4+ICAgfQo+Pj4KPj4+ ICAgc3RhdGljIGJvb2wKPj4+IC1pbnRlbF9oZG1pX3NldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IpCj4+PiAraW50ZWxfaGRtaV9zZXRfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQo+Pj4gICB7Cj4+PiAgICAgICAgICBzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsKPj4+ ICAgICAgICAgIHN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9oZG1pID0gaW50ZWxfYXR0YWNoZWRf aGRtaShjb25uZWN0b3IpOwo+Pj4gICAgICAgICAgc3RydWN0IGludGVsX2VuY29kZXIgKmludGVs X2VuY29kZXIgPQo+Pj4gICAgICAgICAgICAgICAgICAmaGRtaV90b19kaWdfcG9ydChpbnRlbF9o ZG1pKS0+YmFzZTsKPj4+ICAgICAgICAgIGVudW0gaW50ZWxfZGlzcGxheV9wb3dlcl9kb21haW4g cG93ZXJfZG9tYWluOwo+Pj4gLSAgICAgICBzdHJ1Y3QgZWRpZCAqZWRpZDsKPj4+ICsgICAgICAg c3RydWN0IGVkaWQgKmVkaWQgPSBOVUxMOwo+Pj4gICAgICAgICAgYm9vbCBjb25uZWN0ZWQgPSBm YWxzZTsKPj4+Cj4+PiAgICAgICAgICBwb3dlcl9kb21haW4gPSBpbnRlbF9kaXNwbGF5X3BvcnRf cG93ZXJfZG9tYWluKGludGVsX2VuY29kZXIpOwo+Pj4gICAgICAgICAgaW50ZWxfZGlzcGxheV9w b3dlcl9nZXQoZGV2X3ByaXYsIHBvd2VyX2RvbWFpbik7Cj4+Pgo+Pj4gLSAgICAgICBlZGlkID0g ZHJtX2dldF9lZGlkKGNvbm5lY3RvciwKPj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICBp bnRlbF9nbWJ1c19nZXRfYWRhcHRlcihkZXZfcHJpdiwKPj4+IC0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlbF9oZG1pLT5kZGNfYnVzKSk7Cj4+ PiArICAgICAgIGlmIChmb3JjZSkKPj4+ICsgICAgICAgICAgICAgICBlZGlkID0gZHJtX2dldF9l ZGlkKGNvbm5lY3RvciwKPj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dGVsX2dtYnVzX2dldF9hZGFwdGVyKGRldl9wcml2LAo+Pj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaW50ZWxfaGRtaS0+ZGRjX2J1cykpOwo+Pj4KPj4+ICAgICAgICAgIGlu dGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBwb3dlcl9kb21haW4pOwo+Pj4KPj4+IEBA IC0xMzc0LDE0ICsxMzc1LDI1IEBAIHZvaWQgaW50ZWxfaGRtaV9wcm9iZShzdHJ1Y3QgaW50ZWxf ZW5jb2Rlcgo+Pj4gKmludGVsX2VuY29kZXIpCj4+PiAgICAgICAgICAgICAgICAgICAgICAgICAg ZW5jX3RvX2ludGVsX2hkbWkoJmludGVsX2VuY29kZXItPmJhc2UpOwo+Pj4gICAgICAgICAgc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yID0KPj4+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGludGVsX2hkbWktPmF0dGFjaGVkX2Nvbm5lY3RvcjsKPj4+ICsg ICAgICAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0KPj4+IHRvX2k5MTUoaW50 ZWxfZW5jb2Rlci0+YmFzZS5kZXYpOwo+Pj4gKyAgICAgICBib29sIGxpdmVfc3RhdHVzID0gZmFs c2U7Cj4+PiArICAgICAgIHVuc2lnbmVkIGludCByZXRyeSA9IDM7Cj4+PiArCj4+PiArICAgICAg IHdoaWxlICghbGl2ZV9zdGF0dXMgJiYgLS1yZXRyeSkgewo+Pj4gKyAgICAgICAgICAgICAgIGxp dmVfc3RhdHVzID0gaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChkZXZfcHJpdiwKPj4+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGRtaV90b19kaWdfcG9ydChpbnRlbF9oZG1p KSk7Cj4+PiArICAgICAgICAgICAgICAgbWRlbGF5KDEwKTsKPj4+ICsgICAgICAgfQo+Pj4KPj4+ ICsgICAgICAgaWYgKCFsaXZlX3N0YXR1cykKPj4+ICsgICAgICAgICAgICAgICBEUk1fREVCVUdf S01TKCJMaXZlIHN0YXR1cyBub3QgdXAhIik7Cj4+PiAgICAgICAgICAvKgo+Pj4gICAgICAgICAg ICogV2UgYXJlIGhlcmUsIG1lYW5zIHRoZXJlIGlzIGEgaG90cGx1ZyBvciBhIGZvcmNlCj4+PiAg ICAgICAgICAgKiBkZXRlY3Rpb24uIENsZWFyIHRoZSBjYWNoZWQgRURJRCBhbmQgcHJvYmUgdGhl Cj4+PiAgICAgICAgICAgKiBEREMgYnVzIHRvIGNoZWNrIHRoZSBjdXJyZW50IHN0YXR1cyBvZiBI RE1JLgo+Pj4gICAgICAgICAgICovCj4+PiAgICAgICAgICBpbnRlbF9oZG1pX3Vuc2V0X2VkaWQo JmludGVsX2Nvbm5lY3Rvci0+YmFzZSk7Cj4+PiAtICAgICAgIGlmIChpbnRlbF9oZG1pX3NldF9l ZGlkKCZpbnRlbF9jb25uZWN0b3ItPmJhc2UpKQo+Pj4gKyAgICAgICBpZiAoaW50ZWxfaGRtaV9z ZXRfZWRpZCgmaW50ZWxfY29ubmVjdG9yLT5iYXNlLCBsaXZlX3N0YXR1cykpCj4+PiAgICAgICAg ICAgICAgICAgIERSTV9ERUJVR19EUklWRVIoIkREQyBwcm9iZTogZ290IEVESURcbiIpOwo+Pj4g ICAgICAgICAgZWxzZQo+Pj4gICAgICAgICAgICAgICAgICBEUk1fREVCVUdfRFJJVkVSKCJEREMg cHJvYmU6IG5vIEVESURcbiIpOwo+Pj4gQEAgLTE0MzIsNyArMTQ0NCw3IEBAIGludGVsX2hkbWlf Zm9yY2Uoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4+ICAgICAgICAgIGlmIChj b25uZWN0b3ItPnN0YXR1cyAhPSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZCkKPj4+ICAgICAg ICAgICAgICAgICAgcmV0dXJuOwo+Pj4KPj4+IC0gICAgICAgaW50ZWxfaGRtaV9zZXRfZWRpZChj b25uZWN0b3IpOwo+Pj4gKyAgICAgICBpbnRlbF9oZG1pX3NldF9lZGlkKGNvbm5lY3RvciwgdHJ1 ZSk7Cj4+PiAgICAgICAgICBoZG1pX3RvX2RpZ19wb3J0KGludGVsX2hkbWkpLT5iYXNlLnR5cGUg PSBJTlRFTF9PVVRQVVRfSERNSTsKPj4+ICAgfQo+Pj4KPj4+IC0tCj4+PiAxLjcuMTAuNAo+Pj4K Pj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+PiBJ bnRlbC1nZnggbWFpbGluZyBsaXN0Cj4+PiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cj4+PiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4Cj4+Pgo+Cj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCj4+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QKPj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwo+PiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cj4KPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo=