From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH 06/39] drm/i915: Always try to reset the GPU on takeover Date: Wed, 02 Jan 2019 15:19:52 +0200 Message-ID: <87muoj42o7.fsf@gaia.fi.intel.com> References: <20190102094139.24014-1-chris@chris-wilson.co.uk> <20190102094139.24014-6-chris@chris-wilson.co.uk> 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 BAF9C6E78B for ; Wed, 2 Jan 2019 13:21:27 +0000 (UTC) In-Reply-To: <20190102094139.24014-6-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyaXRlczoKCj4gV2hlbiB3 ZSBmaXJzdCBpbnRyb2R1Y2VkIHRoZSByZXNldCB0byBzYW5pdGl6ZSB0aGUgR1BVIG9uIHRha2lu ZyBvdmVyCj4gZnJvbSB0aGUgQklPUyBhbmQgYmVmb3JlIHJldHVybmluZyBjb250cm9sIHRvIHRo aXJkIHBhcnRpZXMgKHRoZSBCSU9TISksCj4gd2UgcmVzdHJpY3RlZCBpdCB0byBvbmx5IHN5c3Rl bXMgdXRpbGl6aW5nIEhXIGNvbnRleHRzIGFzIHdlIHdlcmUKPiB1bmNlcnRhaW4gb2YgaG93IHN0 YWJsZSBvdXIgcmVzZXQgbWVjaGFuaXNtIHRydWx5IHdhcy4gV2Ugbm93IGhhdmUKPiByZWFzb25h YmxlIGNvdmVyYWdlIGFjcm9zcyBhbGwgbWFjaGluZXMgdGhhdCBleHBvc2UgYSBHUFUgcmVzZXQg bWV0aG9kLAo+IGFuZCBzbyB3ZSBzaG91bGQgYmUgc2FmZSB0byBzYW5pdGl6ZSB0aGUgR1BVIHN0 YXRlIGV2ZXJ5d2hlcmUuCj4KPiB2MjogV2UgX2hhdmVfIHRvIHNraXAgdGhlIHJlc2V0IGlmIGl0 IHdvdWxkIGNsb2JiZXIgdGhlIGRpc3BsYXkuCj4KPiBTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxz b24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuYyAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jICAgICAgICAgICB8IDExICsrLS0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcGNpLmMgICAgICAgICAgIHwgIDUgKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGV2aWNlX2luZm8uaCAgfCAgMSArCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYyAgICAgIHwgIDQgKystLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9lbmdpbmVfY3MuYyAgICB8IDE0ICsrKysrKysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuaCAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUv c2VsZnRlc3RzL2k5MTVfZ2VtLmMgfCAgMiArLQo+ICA4IGZpbGVzIGNoYW5nZWQsIDI2IGluc2Vy dGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4gaW5k ZXggZGNiOTM1MzM4YzYzLi5hOTYxNjlhY2RiMDcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmMKPiBAQCAtMjE3NCw3ICsyMTc0LDcgQEAgc3RhdGljIGludCBpOTE1X2RybV9yZXN1bWVfZWFy bHkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCj4gIAlpbnRlbF9wb3dlcl9kb21haW5zX3Jl c3VtZShkZXZfcHJpdik7Cj4gIAo+IC0JaW50ZWxfZW5naW5lc19zYW5pdGl6ZShkZXZfcHJpdik7 Cj4gKwlpbnRlbF9lbmdpbmVzX3Nhbml0aXplKGRldl9wcml2LCB0cnVlKTsKPiAgCj4gIAllbmFi bGVfcnBtX3dha2VyZWZfYXNzZXJ0cyhkZXZfcHJpdik7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW0uYwo+IGluZGV4IGU0NmEyNTc0N2FiNy4uMGViZGUxMzYyMGNiIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jCj4gQEAgLTM0MzIsOCArMzQzMiw3IEBAIGJvb2wgaTkxNV9nZW1fdW5zZXRf d2VkZ2VkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQo+ICAJaTkxNV9yZXRpcmVfcmVx dWVzdHMoaTkxNSk7Cj4gIAlHRU1fQlVHX09OKGk5MTUtPmd0LmFjdGl2ZV9yZXF1ZXN0cyk7Cj4g IAo+IC0JaWYgKCFpbnRlbF9ncHVfcmVzZXQoaTkxNSwgQUxMX0VOR0lORVMpKQo+IC0JCWludGVs X2VuZ2luZXNfc2FuaXRpemUoaTkxNSk7Cj4gKwlpbnRlbF9lbmdpbmVzX3Nhbml0aXplKGk5MTUs IGZhbHNlKTsKPiAgCj4gIAkvKgo+ICAJICogVW5kbyBub3Bfc3VibWl0X3JlcXVlc3QuIFdlIHBy ZXZlbnQgYWxsIG5ldyBpOTE1IHJlcXVlc3RzIGZyb20KPiBAQCAtNTAzNyw4ICs1MDM2LDYgQEAg dm9pZCBfX2k5MTVfZ2VtX29iamVjdF9yZWxlYXNlX3VubGVzc19hY3RpdmUoc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaikKPiAgCj4gIHZvaWQgaTkxNV9nZW1fc2FuaXRpemUoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCj4gIHsKPiAtCWludCBlcnI7Cj4gLQo+ICAJR0VNX1RS QUNFKCJcbiIpOwo+ICAKPiAgCW11dGV4X2xvY2soJmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOwo+ IEBAIC01MDYzLDExICs1MDYwLDcgQEAgdm9pZCBpOTE1X2dlbV9zYW5pdGl6ZShzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqaTkxNSkKPiAgCSAqIGl0IG1heSBpbXBhY3QgdGhlIGRpc3BsYXkgYW5k IHdlIGFyZSB1bmNlcnRhaW4gYWJvdXQgdGhlIHN0YWJpbGl0eQo+ICAJICogb2YgdGhlIHJlc2V0 LCBzbyB0aGlzIGNvdWxkIGJlIGFwcGxpZWQgdG8gZXZlbiBlYXJsaWVyIGdlbi4KPiAgCSAqLwo+ IC0JZXJyID0gLUVOT0RFVjsKPiAtCWlmIChJTlRFTF9HRU4oaTkxNSkgPj0gNSAmJiBpbnRlbF9o YXNfZ3B1X3Jlc2V0KGk5MTUpKQo+IC0JCWVyciA9IFdBUk5fT04oaW50ZWxfZ3B1X3Jlc2V0KGk5 MTUsIEFMTF9FTkdJTkVTKSk7Cj4gLQlpZiAoIWVycikKPiAtCQlpbnRlbF9lbmdpbmVzX3Nhbml0 aXplKGk5MTUpOwo+ICsJaW50ZWxfZW5naW5lc19zYW5pdGl6ZShpOTE1LCBmYWxzZSk7Cj4gIAo+ ICAJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9wdXQoaTkxNSwgRk9SQ0VXQUtFX0FMTCk7Cj4gIAlp bnRlbF9ydW50aW1lX3BtX3B1dChpOTE1KTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9wY2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMKPiBpbmRl eCAwZDM0MmYyYjQ0YTUuLmRkNGFmZjJiMjU2ZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3BjaS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2ku Ywo+IEBAIC04Miw2ICs4Miw3IEBACj4gIAkuZGlzcGxheS5oYXNfb3ZlcmxheSA9IDEsIFwKPiAg CS5kaXNwbGF5Lm92ZXJsYXlfbmVlZHNfcGh5c2ljYWwgPSAxLCBcCj4gIAkuZGlzcGxheS5oYXNf Z21jaF9kaXNwbGF5ID0gMSwgXAo+ICsJLmdwdV9yZXNldF9jbG9iYmVyc19kaXNwbGF5ID0gdHJ1 ZSwgXAo+ICAJLmh3c19uZWVkc19waHlzaWNhbCA9IDEsIFwKPiAgCS51bmZlbmNlZF9uZWVkc19h bGlnbm1lbnQgPSAxLCBcCj4gIAkucmluZ19tYXNrID0gUkVOREVSX1JJTkcsIFwKPiBAQCAtMTIy LDYgKzEyMyw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxf aTg2NWdfaW5mbyA9IHsKPiAgCUdFTigzKSwgXAo+ICAJLm51bV9waXBlcyA9IDIsIFwKPiAgCS5k aXNwbGF5Lmhhc19nbWNoX2Rpc3BsYXkgPSAxLCBcCj4gKwkuZ3B1X3Jlc2V0X2Nsb2JiZXJzX2Rp c3BsYXkgPSB0cnVlLCBcCj4gIAkucmluZ19tYXNrID0gUkVOREVSX1JJTkcsIFwKPiAgCS5oYXNf c25vb3AgPSB0cnVlLCBcCj4gIAkuaGFzX2NvaGVyZW50X2dndHQgPSB0cnVlLCBcCj4gQEAgLTE5 OCw2ICsyMDAsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGludGVs X3BpbmV2aWV3X2luZm8gPSB7Cj4gIAkubnVtX3BpcGVzID0gMiwgXAo+ICAJLmRpc3BsYXkuaGFz X2hvdHBsdWcgPSAxLCBcCj4gIAkuZGlzcGxheS5oYXNfZ21jaF9kaXNwbGF5ID0gMSwgXAo+ICsJ LmdwdV9yZXNldF9jbG9iYmVyc19kaXNwbGF5ID0gdHJ1ZSwgXAo+ICAJLnJpbmdfbWFzayA9IFJF TkRFUl9SSU5HLCBcCj4gIAkuaGFzX3Nub29wID0gdHJ1ZSwgXAo+ICAJLmhhc19jb2hlcmVudF9n Z3R0ID0gdHJ1ZSwgXAo+IEBAIC0yMjgsNiArMjMxLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBp bnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9nNDVfaW5mbyA9IHsKPiAgCUdFTjRfRkVBVFVSRVMsCj4g IAlQTEFURk9STShJTlRFTF9HNDUpLAo+ICAJLnJpbmdfbWFzayA9IFJFTkRFUl9SSU5HIHwgQlNE X1JJTkcsCj4gKwkuZ3B1X3Jlc2V0X2Nsb2JiZXJzX2Rpc3BsYXkgPSBmYWxzZSwKPiAgfTsKPiAg Cj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfZ200NV9pbmZv ID0gewo+IEBAIC0yMzcsNiArMjQxLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZp Y2VfaW5mbyBpbnRlbF9nbTQ1X2luZm8gPSB7Cj4gIAkuZGlzcGxheS5oYXNfZmJjID0gMSwKPiAg CS5kaXNwbGF5LnN1cHBvcnRzX3R2ID0gMSwKPiAgCS5yaW5nX21hc2sgPSBSRU5ERVJfUklORyB8 IEJTRF9SSU5HLAo+ICsJLmdwdV9yZXNldF9jbG9iYmVyc19kaXNwbGF5ID0gZmFsc2UsCgpXaHkg bm90IGV4cGxpY2l0bHkgc2V0IHRoaXMgb24gcmVzdCBvZiBnZW4gPj0gNT8KLU1pa2EKCgo+ICB9 Owo+ICAKPiAgI2RlZmluZSBHRU41X0ZFQVRVUkVTIFwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RldmljZV9pbmZvLmgKPiBpbmRleCBkZDM0Zjk3NGE4NTcuLjhmZDY4MzQ5Nzk1NiAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5mby5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaAo+IEBAIC04OSw2ICs4 OSw3IEBAIGVudW0gaW50ZWxfcHBndHQgewo+ICAJZnVuYyhpc19hbHBoYV9zdXBwb3J0KTsgXAo+ ICAJLyogS2VlcCBoYXNfKiBpbiBhbHBoYWJldGljYWwgb3JkZXIgKi8gXAo+ICAJZnVuYyhoYXNf NjRiaXRfcmVsb2MpOyBcCj4gKwlmdW5jKGdwdV9yZXNldF9jbG9iYmVyc19kaXNwbGF5KTsgXAo+ ICAJZnVuYyhoYXNfcmVzZXRfZW5naW5lKTsgXAo+ICAJZnVuYyhoYXNfZnBnYV9kYmcpOyBcCj4g IAlmdW5jKGhhc19ndWMpOyBcCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IGlu ZGV4IGFiM2I0ZDAyZDQ5OS4uMTY3OWMwNDI4MGViIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwo+IEBAIC0zNzQ2LDggKzM3NDYsOCBAQCBfX2ludGVsX2Rpc3BsYXlfcmVz dW1lKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAo+ICBzdGF0aWMgYm9vbCBncHVfcmVzZXRf Y2xvYmJlcnNfZGlzcGxheShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIHsK PiAtCXJldHVybiBpbnRlbF9oYXNfZ3B1X3Jlc2V0KGRldl9wcml2KSAmJgo+IC0JCUlOVEVMX0dF TihkZXZfcHJpdikgPCA1ICYmICFJU19HNFgoZGV2X3ByaXYpOwo+ICsJcmV0dXJuIChJTlRFTF9J TkZPKGRldl9wcml2KS0+Z3B1X3Jlc2V0X2Nsb2JiZXJzX2Rpc3BsYXkgJiYKPiArCQlpbnRlbF9o YXNfZ3B1X3Jlc2V0KGRldl9wcml2KSk7Cj4gIH0KPiAgCj4gIHZvaWQgaW50ZWxfcHJlcGFyZV9y ZXNldChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZW5naW5lX2NzLmMKPiBpbmRleCAxODlhOTM0YTYzZTkuLmVlZmE1NTAwMDgxOCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCj4gQEAgLTEwNDMsMjIg KzEwNDMsMzQgQEAgdm9pZCBpbnRlbF9lbmdpbmVzX3Jlc2V0X2RlZmF1bHRfc3VibWlzc2lvbihz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKPiAgCQllbmdpbmUtPnNldF9kZWZhdWx0X3N1 Ym1pc3Npb24oZW5naW5lKTsKPiAgfQo+ICAKPiArc3RhdGljIGJvb2wgcmVzZXRfZW5naW5lcyhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKPiArewo+ICsJaWYgKElOVEVMX0lORk8oaTkx NSktPmdwdV9yZXNldF9jbG9iYmVyc19kaXNwbGF5KQo+ICsJCXJldHVybiBmYWxzZTsKPiArCj4g KwlyZXR1cm4gaW50ZWxfZ3B1X3Jlc2V0KGk5MTUsIEFMTF9FTkdJTkVTKSA9PSAwOwo+ICt9Cj4g Kwo+ICAvKioKPiAgICogaW50ZWxfZW5naW5lc19zYW5pdGl6ZTogY2FsbGVkIGFmdGVyIHRoZSBH UFUgaGFzIGxvc3QgcG93ZXIKPiAgICogQGk5MTU6IHRoZSBpOTE1IGRldmljZQo+ICsgKiBAZm9y Y2U6IGlnbm9yZSBhIGZhaWxlZCByZXNldCBhbmQgc2FuaXRpemUgZW5naW5lIHN0YXRlIGFueXdh eQo+ICAgKgo+ICAgKiBBbnl0aW1lIHdlIHJlc2V0IHRoZSBHUFUsIGVpdGhlciB3aXRoIGFuIGV4 cGxpY2l0IEdQVSByZXNldCBvciB0aHJvdWdoIGEKPiAgICogUENJIHBvd2VyIGN5Y2xlLCB0aGUg R1BVIGxvc2VzIHN0YXRlIGFuZCB3ZSBtdXN0IHJlc2V0IG91ciBzdGF0ZSB0cmFja2luZwo+ICAg KiB0byBtYXRjaC4gTm90ZSB0aGF0IGNhbGxpbmcgaW50ZWxfZW5naW5lc19zYW5pdGl6ZSgpIGlm IHRoZSBHUFUgaGFzIG5vdAo+ICAgKiBiZWVuIHJlc2V0IHJlc3VsdHMgaW4gbXVjaCBjb25mdXNp b24hCj4gICAqLwo+IC12b2lkIGludGVsX2VuZ2luZXNfc2FuaXRpemUoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmk5MTUpCj4gK3ZvaWQgaW50ZWxfZW5naW5lc19zYW5pdGl6ZShzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqaTkxNSwgYm9vbCBmb3JjZSkKPiAgewo+ICAJc3RydWN0IGludGVsX2Vu Z2luZV9jcyAqZW5naW5lOwo+ICAJZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQ7Cj4gIAo+ICAJR0VN X1RSQUNFKCJcbiIpOwo+ICAKPiArCWlmICghcmVzZXRfZW5naW5lcyhpOTE1KSAmJiAhZm9yY2Up Cj4gKwkJcmV0dXJuOwo+ICsKPiAgCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGk5MTUsIGlkKSB7 Cj4gIAkJaWYgKGVuZ2luZS0+cmVzZXQucmVzZXQpCj4gIAkJCWVuZ2luZS0+cmVzZXQucmVzZXQo ZW5naW5lLCBOVUxMKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4g aW5kZXggOTFlZjAwZDM0ZTkxLi5hNjJmMDlmZmNmYzkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5oCj4gQEAgLTEwMTksNyArMTAxOSw3IEBAIGdlbjhfZW1pdF9n Z3R0X3dyaXRlKHUzMiAqY3MsIHUzMiB2YWx1ZSwgdTMyIGd0dF9vZmZzZXQpCj4gIAlyZXR1cm4g Y3M7Cj4gIH0KPiAgCj4gLXZvaWQgaW50ZWxfZW5naW5lc19zYW5pdGl6ZShzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqaTkxNSk7Cj4gK3ZvaWQgaW50ZWxfZW5naW5lc19zYW5pdGl6ZShzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgYm9vbCBmb3JjZSk7Cj4gIAo+ICBib29sIGludGVsX2Vu Z2luZV9pc19pZGxlKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7Cj4gIGJvb2wgaW50 ZWxfZW5naW5lc19hcmVfaWRsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW0uYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbS5jCj4gaW5kZXggZDBhYTE5 ZDE3NjUzLi5iZGNjNTNlMTVlNzUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv c2VsZnRlc3RzL2k5MTVfZ2VtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVz dHMvaTkxNV9nZW0uYwo+IEBAIC0xMjEsNyArMTIxLDcgQEAgc3RhdGljIHZvaWQgcG1fcmVzdW1l KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQo+ICAJICovCj4gIAlpbnRlbF9ydW50aW1l X3BtX2dldChpOTE1KTsKPiAgCj4gLQlpbnRlbF9lbmdpbmVzX3Nhbml0aXplKGk5MTUpOwo+ICsJ aW50ZWxfZW5naW5lc19zYW5pdGl6ZShpOTE1LCBmYWxzZSk7Cj4gIAlpOTE1X2dlbV9zYW5pdGl6 ZShpOTE1KTsKPiAgCWk5MTVfZ2VtX3Jlc3VtZShpOTE1KTsKPiAgCj4gLS0gCj4gMi4yMC4xCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=