From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 1/3] drm/i915: Convert intel_hpd_irq_event() into an encoder hotplug hook Date: Tue, 16 Jan 2018 12:40:52 +0200 Message-ID: <87a7xe2iiz.fsf@intel.com> References: <20180112210450.17350-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id C0B4C6E1E2 for ; Tue, 16 Jan 2018 10:36:03 +0000 (UTC) In-Reply-To: <20180112210450.17350-1-ville.syrjala@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: Ville Syrjala , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAxMiBKYW4gMjAxOCwgVmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+IHdyb3RlOgo+IEZyb206IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBs aW51eC5pbnRlbC5jb20+Cj4KPiBBbGxvdyBlbmNvZGVycyB0byBjdXN0b21pemUgdGhlaXIgaG90 cGx1ZyBwcm9jZXNzaW5nIGJ5IG1vdmluZyB0aGUKPiBpbnRlbF9ocGRfaXJxX2V2ZW50KCkgY29k ZSBpbnRvIGFuIGVuY29kZXIgaG90cGx1ZyB2ZnVuYy4gQ3VycmVudGx5Cj4gb25seSBTRFZPIG5l ZWRzIHRoaXMgdG8gcmUtZW5hYmxlIGhvdHBsdWcgc2lnbmFsbGluZyBpbiB0aGUgU0RWTwo+IGNo aXAuIFdlJ2xsIHVzZSB0aGlzIHNhbWUgaG9vayBmb3IgRFAvSERNSSBsaW5rIG1hbmFnZW1lbnQg bGF0ZXIuCj4KPiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgoKTmljZSEKClJldmlld2VkLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5u aWt1bGFAaW50ZWwuY29tPgoKCj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ny dC5jICAgICB8ICA0ICsrKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgICAg IHwgIDEgKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAgICAgfCAgMSArCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICB8ICA2ICsrKystLQo+ICBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgICAgfCAgMSArCj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2hvdHBsdWcuYyB8IDI0ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMgICAgfCAxMiArKysrKysrKysrLS0KPiAg NyBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKPgo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2NydC5jCj4gaW5kZXggOWYzMWFlYTUxZGZmLi45YmM0N2NmZjU0MDkg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY3J0LmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYwo+IEBAIC05NjYsOCArOTY2LDEwIEBAIHZv aWQgaW50ZWxfY3J0X2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJ Y3J0LT5iYXNlLnBvd2VyX2RvbWFpbiA9IFBPV0VSX0RPTUFJTl9QT1JUX0NSVDsKPiAgCj4gIAlp ZiAoSTkxNV9IQVNfSE9UUExVRyhkZXZfcHJpdikgJiYKPiAtCSAgICAhZG1pX2NoZWNrX3N5c3Rl bShpbnRlbF9zcHVyaW91c19jcnRfZGV0ZWN0KSkKPiArCSAgICAhZG1pX2NoZWNrX3N5c3RlbShp bnRlbF9zcHVyaW91c19jcnRfZGV0ZWN0KSkgewo+ICAJCWNydC0+YmFzZS5ocGRfcGluID0gSFBE X0NSVDsKPiArCQljcnQtPmJhc2UuaG90cGx1ZyA9IGludGVsX2VuY29kZXJfaG90cGx1ZzsKPiAr CX0KPiAgCj4gIAlpZiAoSEFTX0RESShkZXZfcHJpdikpIHsKPiAgCQljcnQtPmJhc2UucG9ydCA9 IFBPUlRfRTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+IGluZGV4IDYyNjBhODgyZmJlNC4u MWFlYWUzZTk3MDEzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rk aS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiBAQCAtMjg2Niw2 ICsyODY2LDcgQEAgdm9pZCBpbnRlbF9kZGlfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsIGVudW0gcG9ydCBwb3J0KQo+ICAJZHJtX2VuY29kZXJfaW5pdCgmZGV2X3ByaXYt PmRybSwgZW5jb2RlciwgJmludGVsX2RkaV9mdW5jcywKPiAgCQkJIERSTV9NT0RFX0VOQ09ERVJf VE1EUywgIkRESSAlYyIsIHBvcnRfbmFtZShwb3J0KSk7Cj4gIAo+ICsJaW50ZWxfZW5jb2Rlci0+ aG90cGx1ZyA9IGludGVsX2VuY29kZXJfaG90cGx1ZzsKPiAgCWludGVsX2VuY29kZXItPmNvbXB1 dGVfb3V0cHV0X3R5cGUgPSBpbnRlbF9kZGlfY29tcHV0ZV9vdXRwdXRfdHlwZTsKPiAgCWludGVs X2VuY29kZXItPmNvbXB1dGVfY29uZmlnID0gaW50ZWxfZGRpX2NvbXB1dGVfY29uZmlnOwo+ICAJ aW50ZWxfZW5jb2Rlci0+ZW5hYmxlID0gaW50ZWxfZW5hYmxlX2RkaTsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RwLmMKPiBpbmRleCA2ODIyOWY1M2Q1YjguLjZiYmYxNDQxMGMyYSAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHAuYwo+IEBAIC02NDAwLDYgKzY0MDAsNyBAQCBib29sIGludGVsX2RwX2lu aXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCQkgICAgICJEUCAlYyIs IHBvcnRfbmFtZShwb3J0KSkpCj4gIAkJZ290byBlcnJfZW5jb2Rlcl9pbml0Owo+ICAKPiArCWlu dGVsX2VuY29kZXItPmhvdHBsdWcgPSBpbnRlbF9lbmNvZGVyX2hvdHBsdWc7Cj4gIAlpbnRlbF9l bmNvZGVyLT5jb21wdXRlX2NvbmZpZyA9IGludGVsX2RwX2NvbXB1dGVfY29uZmlnOwo+ICAJaW50 ZWxfZW5jb2Rlci0+Z2V0X2h3X3N0YXRlID0gaW50ZWxfZHBfZ2V0X2h3X3N0YXRlOwo+ICAJaW50 ZWxfZW5jb2Rlci0+Z2V0X2NvbmZpZyA9IGludGVsX2RwX2dldF9jb25maWc7Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPiBpbmRleCA3MzFkYzM2ZDcxMjkuLjc1MzdiMmQ1NDJmZCAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTIxNCw3ICsyMTQsOCBAQCBzdHJ1Y3QgaW50 ZWxfZW5jb2RlciB7Cj4gIAllbnVtIGludGVsX291dHB1dF90eXBlIHR5cGU7Cj4gIAllbnVtIHBv cnQgcG9ydDsKPiAgCXVuc2lnbmVkIGludCBjbG9uZWFibGU7Cj4gLQl2b2lkICgqaG90X3BsdWcp KHN0cnVjdCBpbnRlbF9lbmNvZGVyICopOwo+ICsJYm9vbCAoKmhvdHBsdWcpKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAo+ICsJCQlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0 b3IpOwo+ICAJZW51bSBpbnRlbF9vdXRwdXRfdHlwZSAoKmNvbXB1dGVfb3V0cHV0X3R5cGUpKHN0 cnVjdCBpbnRlbF9lbmNvZGVyICosCj4gIAkJCQkJCSAgICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICosCj4gIAkJCQkJCSAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICopOwo+IEBA IC0xNjkwLDcgKzE2OTEsOCBAQCBpbnQgaW50ZWxfZHNpX2Rjc19pbml0X2JhY2tsaWdodF9mdW5j cyhzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IpOwo+ICB2b2lkIGludGVs X2R2b19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gIC8qIGludGVs X2hvdHBsdWcuYyAqLwo+ICB2b2lkIGludGVsX2hwZF9wb2xsX2luaXQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKPiAtCj4gK2Jvb2wgaW50ZWxfZW5jb2Rlcl9ob3RwbHVnKHN0 cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICsJCQkgICBzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICpjb25uZWN0b3IpOwo+ICAKPiAgLyogbGVnYWN5IGZiZGV2IGVtdWxhdGlvbiBpbiBpbnRl bF9mYmRldi5jICovCj4gICNpZmRlZiBDT05GSUdfRFJNX0ZCREVWX0VNVUxBVElPTgo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9oZG1pLmMKPiBpbmRleCA2OTFmMTViNTkxMjQuLjRhOTNjZmQ3YTI4ZSAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiBAQCAtMjM0OCw2ICsyMzQ4LDcgQEAg dm9pZCBpbnRlbF9oZG1pX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ ICAJCQkgJmludGVsX2hkbWlfZW5jX2Z1bmNzLCBEUk1fTU9ERV9FTkNPREVSX1RNRFMsCj4gIAkJ CSAiSERNSSAlYyIsIHBvcnRfbmFtZShwb3J0KSk7Cj4gIAo+ICsJaW50ZWxfZW5jb2Rlci0+aG90 cGx1ZyA9IGludGVsX2VuY29kZXJfaG90cGx1ZzsKPiAgCWludGVsX2VuY29kZXItPmNvbXB1dGVf Y29uZmlnID0gaW50ZWxfaGRtaV9jb21wdXRlX2NvbmZpZzsKPiAgCWlmIChIQVNfUENIX1NQTElU KGRldl9wcml2KSkgewo+ICAJCWludGVsX2VuY29kZXItPmRpc2FibGUgPSBwY2hfZGlzYWJsZV9o ZG1pOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMKPiBpbmRleCA4NzVkNWQyMThk NWMuLjAxOTFjNzgzMWEwNiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9ob3RwbHVnLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ob3RwbHVnLmMK PiBAQCAtMjYzLDI0ICsyNjMsMjUgQEAgc3RhdGljIHZvaWQgaW50ZWxfaHBkX2lycV9zdG9ybV9y ZWVuYWJsZV93b3JrKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKPiAgCWludGVsX3J1bnRpbWVf cG1fcHV0KGRldl9wcml2KTsKPiAgfQo+ICAKPiAtc3RhdGljIGJvb2wgaW50ZWxfaHBkX2lycV9l dmVudChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+IC0JCQkJc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvcikKPiArYm9vbCBpbnRlbF9lbmNvZGVyX2hvdHBsdWcoc3RydWN0IGludGVsX2Vu Y29kZXIgKmVuY29kZXIsCj4gKwkJCSAgIHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rv cikKPiAgewo+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNvbm5lY3Rvci0+YmFzZS5kZXY7 Cj4gIAllbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzIG9sZF9zdGF0dXM7Cj4gIAo+ICAJV0FSTl9P TighbXV0ZXhfaXNfbG9ja2VkKCZkZXYtPm1vZGVfY29uZmlnLm11dGV4KSk7Cj4gLQlvbGRfc3Rh dHVzID0gY29ubmVjdG9yLT5zdGF0dXM7Cj4gKwlvbGRfc3RhdHVzID0gY29ubmVjdG9yLT5iYXNl LnN0YXR1czsKPiAgCj4gLQljb25uZWN0b3ItPnN0YXR1cyA9IGRybV9oZWxwZXJfcHJvYmVfZGV0 ZWN0KGNvbm5lY3RvciwgTlVMTCwgZmFsc2UpOwo+ICsJY29ubmVjdG9yLT5iYXNlLnN0YXR1cyA9 IGRybV9oZWxwZXJfcHJvYmVfZGV0ZWN0KCZjb25uZWN0b3ItPmJhc2UsIE5VTEwsIGZhbHNlKTsK PiAgCj4gLQlpZiAob2xkX3N0YXR1cyA9PSBjb25uZWN0b3ItPnN0YXR1cykKPiArCWlmIChvbGRf c3RhdHVzID09IGNvbm5lY3Rvci0+YmFzZS5zdGF0dXMpCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAK PiAgCURSTV9ERUJVR19LTVMoIltDT05ORUNUT1I6JWQ6JXNdIHN0YXR1cyB1cGRhdGVkIGZyb20g JXMgdG8gJXNcbiIsCj4gLQkJICAgICAgY29ubmVjdG9yLT5iYXNlLmlkLAo+IC0JCSAgICAgIGNv bm5lY3Rvci0+bmFtZSwKPiArCQkgICAgICBjb25uZWN0b3ItPmJhc2UuYmFzZS5pZCwKPiArCQkg ICAgICBjb25uZWN0b3ItPmJhc2UubmFtZSwKPiAgCQkgICAgICBkcm1fZ2V0X2Nvbm5lY3Rvcl9z dGF0dXNfbmFtZShvbGRfc3RhdHVzKSwKPiAtCQkgICAgICBkcm1fZ2V0X2Nvbm5lY3Rvcl9zdGF0 dXNfbmFtZShjb25uZWN0b3ItPnN0YXR1cykpOwo+ICsJCSAgICAgIGRybV9nZXRfY29ubmVjdG9y X3N0YXR1c19uYW1lKGNvbm5lY3Rvci0+YmFzZS5zdGF0dXMpKTsKPiAgCj4gIAlyZXR1cm4gdHJ1 ZTsKPiAgfQo+IEBAIC0zNzAsMTAgKzM3MSw5IEBAIHN0YXRpYyB2b2lkIGk5MTVfaG90cGx1Z193 b3JrX2Z1bmMoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQo+ICAJCWlmIChocGRfZXZlbnRfYml0 cyAmICgxIDw8IGludGVsX2VuY29kZXItPmhwZF9waW4pKSB7Cj4gIAkJCURSTV9ERUJVR19LTVMo IkNvbm5lY3RvciAlcyAocGluICVpKSByZWNlaXZlZCBob3RwbHVnIGV2ZW50LlxuIiwKPiAgCQkJ CSAgICAgIGNvbm5lY3Rvci0+bmFtZSwgaW50ZWxfZW5jb2Rlci0+aHBkX3Bpbik7Cj4gLQkJCWlm IChpbnRlbF9lbmNvZGVyLT5ob3RfcGx1ZykKPiAtCQkJCWludGVsX2VuY29kZXItPmhvdF9wbHVn KGludGVsX2VuY29kZXIpOwo+IC0JCQlpZiAoaW50ZWxfaHBkX2lycV9ldmVudChkZXYsIGNvbm5l Y3RvcikpCj4gLQkJCQljaGFuZ2VkID0gdHJ1ZTsKPiArCj4gKwkJCWNoYW5nZWQgfD0gaW50ZWxf ZW5jb2Rlci0+aG90cGx1ZyhpbnRlbF9lbmNvZGVyLAo+ICsJCQkJCQkJICBpbnRlbF9jb25uZWN0 b3IpOwo+ICAJCX0KPiAgCX0KPiAgCWRybV9jb25uZWN0b3JfbGlzdF9pdGVyX2VuZCgmY29ubl9p dGVyKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jCj4gaW5kZXggMmI4NzY0ODk3ZDY4Li41 YjFhZDQyZWM0NDYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2 by5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jCj4gQEAgLTE2OTIs NyArMTY5MiwxNSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX2VuYWJsZV9ob3RwbHVnKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ICAJc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nk dm8gPSB0b19zZHZvKGVuY29kZXIpOwo+ICAKPiAgCWludGVsX3Nkdm9fd3JpdGVfY21kKGludGVs X3Nkdm8sIFNEVk9fQ01EX1NFVF9BQ1RJVkVfSE9UX1BMVUcsCj4gLQkJCSZpbnRlbF9zZHZvLT5o b3RwbHVnX2FjdGl2ZSwgMik7Cj4gKwkJCSAgICAgJmludGVsX3Nkdm8tPmhvdHBsdWdfYWN0aXZl LCAyKTsKPiArfQo+ICsKPiArc3RhdGljIGJvb2wgaW50ZWxfc2R2b19ob3RwbHVnKHN0cnVjdCBp bnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICsJCQkgICAgICAgc3RydWN0IGludGVsX2Nvbm5lY3Rv ciAqY29ubmVjdG9yKQo+ICt7Cj4gKwlpbnRlbF9zZHZvX2VuYWJsZV9ob3RwbHVnKGVuY29kZXIp Owo+ICsKPiArCXJldHVybiBpbnRlbF9lbmNvZGVyX2hvdHBsdWcoZW5jb2RlciwgY29ubmVjdG9y KTsKPiAgfQo+ICAKPiAgc3RhdGljIGJvb2wKPiBAQCAtMjQ5Niw3ICsyNTA0LDcgQEAgaW50ZWxf c2R2b19kdmlfaW5pdChzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywgaW50IGRldmljZSkK PiAgCQkvKiBTb21lIFNEVk8gZGV2aWNlcyBoYXZlIG9uZS1zaG90IGhvdHBsdWcgaW50ZXJydXB0 cy4KPiAgCQkgKiBFbnN1cmUgdGhhdCB0aGV5IGdldCByZS1lbmFibGVkIHdoZW4gYW4gaW50ZXJy dXB0IGhhcHBlbnMuCj4gIAkJICovCj4gLQkJaW50ZWxfZW5jb2Rlci0+aG90X3BsdWcgPSBpbnRl bF9zZHZvX2VuYWJsZV9ob3RwbHVnOwo+ICsJCWludGVsX2VuY29kZXItPmhvdHBsdWcgPSBpbnRl bF9zZHZvX2hvdHBsdWc7Cj4gIAkJaW50ZWxfc2R2b19lbmFibGVfaG90cGx1ZyhpbnRlbF9lbmNv ZGVyKTsKPiAgCX0gZWxzZSB7Cj4gIAkJaW50ZWxfY29ubmVjdG9yLT5wb2xsZWQgPSBEUk1fQ09O TkVDVE9SX1BPTExfQ09OTkVDVCB8IERSTV9DT05ORUNUT1JfUE9MTF9ESVNDT05ORUNUOwoKLS0g CkphbmkgTmlrdWxhLCBJbnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK