From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: Re: [DMC_REDESIGN_V2 05/14] drm/i915/gen9: Remove csr.state, csr_lock and related code. Date: Thu, 22 Oct 2015 18:39:28 +0300 Message-ID: <1445528368.482.38.camel@intel.com> References: <1440588497-13954-1-git-send-email-animesh.manna@intel.com> <1440588497-13954-6-git-send-email-animesh.manna@intel.com> Reply-To: imre.deak@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 50CEA6E2E1 for ; Thu, 22 Oct 2015 08:39:32 -0700 (PDT) In-Reply-To: <1440588497-13954-6-git-send-email-animesh.manna@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Animesh Manna Cc: Daniel Vetter , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24ga2UsIDIwMTUtMDgtMjYgYXQgMTY6NTggKzA1MzAsIEFuaW1lc2ggTWFubmEgd3JvdGU6Cj4g RnJvbTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Cj4gCj4gVGhpcyBy ZW1vdmVzIHR3byBhbnRpLXBhdHRlcm5zOgo+IC0gTG9ja2luZyBzaG91bGRuJ3QgYmUgdXNlZCB0 byBzeW5jaHJvbml6ZSB3aXRoIGFzeW5jIHdvcmsgKG9mIGFueQo+ICAgZm9ybSwgd2hldGhlciBj YWxsYmFja3MsIHdvcmtlcnMgb3Igb3RoZXIgdGhyZWFkcykuIFRoaXMgaXMgd2hhdCB0aGUKPiAg IG11dGV4X2xvY2svdW5sb2NrIHNlZW1zIHRvIGhhdmUgYmVlbiBmb3IgaW4gaW50ZWxfY3NyX2xv YWRfcHJvZ3JhbS4KPiAgIEluc3RlYWQgb3JkZXJpbmcgc2hvdWxkIGJlIGVuc3VyZWQgd2l0aCB0 aGUgZ2VuZXJpYwo+ICAgd2FpdF9mb3JfY29tcGxldGlvbigpL2NvbXBsZXRlKCkuIE9yIG1vcmUg c3BlY2lmaWMgZnVuY3Rpb25zCj4gICBwcm92aWRlZCBieSB0aGUgY29yZSBrZXJuZWwgbGlrZSBl LmcuCj4gICBmbHVzaF93b3JrKCkvY2FuY2VsX3dvcmtfc3luYygpIGluIHRoZSBjYXNlIG9mIHN5 bmNocm9uaXppbmcgd2l0aCBhCj4gICB3b3JrIGl0ZW0uCj4gCj4gLSBEb24ndCBpbnZlbnQgb3du IGNvbXBsZXRpb24gbGlrZSB0aGUgZm9sbG93aW5nIGNvZGUgZGlkIHdpdGggdGhlCj4gICAoYWxy ZWFkeSByZW1vdmVkKSB3YWl0X2Zvcihjc3JfbG9hZF9zdGF0dXNfZ2V0KCkpIHBhdHRlcm4gLSBp dCdzCj4gICByZWFsbHkgaGFyZCB0byBnZXQgdGhlc2UgcmlnaHQgd2hlbiB5b3Ugd2FudCB0aGVt IHRvIGJlIF9yZWFsbHlfCj4gICBjb3JyZWN0IChhbmQgYmUgZmFzdCkgaW4gYWxsIGNhc2VzLiBG dXJ0aGVybW9yZSBpdCdzIGVhc2llciB0byByZWFkCj4gICBjb2RlIHVzaW5nIHRoZSB3ZWxsLWtu b3duIHByaW1pdGl2ZXMgdGhhbiBuZXcgb25lcyB1c2luZwo+ICAgbm9uLXN0YW5kYXJkIG5hbWVz Lgo+IAo+IENjOiBEYW1pZW4gTGVzcGlhdSA8ZGFtaWVuLmxlc3BpYXVAaW50ZWwuY29tPgo+IENj OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4gQ2M6IFN1bmlsIEthbWF0aCA8c3Vu aWwua2FtYXRoQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5p ZWwudmV0dGVyQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBBbmltZXNoIE1hbm5hIDxhbmlt ZXNoLm1hbm5hQGludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k bWEuYyAgICAgICAgIHwgIDEgLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jICAg ICAgICAgfCAxMyArKy0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg ICAgICAgICB8IDEwIC0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY3NyLmMg ICAgICAgIHwgNDYgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICAgICB8ICAzIC0tLQo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMgfCAxNyArKy0tLS0tLS0tLS0KPiAgNiBmaWxlcyBj aGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDg1IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kbWEuYwo+IGluZGV4IDQ4Yjk3OTIuLmFhM2NkY2YgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZG1hLmMKPiBAQCAtODM5LDcgKzgzOSw2IEBAIGludCBpOTE1X2RyaXZlcl9sb2FkKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVkIGxvbmcgZmxhZ3MpCj4gIAlzcGluX2xvY2tfaW5p dCgmZGV2X3ByaXYtPm1taW9fZmxpcF9sb2NrKTsKPiAgCW11dGV4X2luaXQoJmRldl9wcml2LT5z Yl9sb2NrKTsKPiAgCW11dGV4X2luaXQoJmRldl9wcml2LT5tb2Rlc2V0X3Jlc3RvcmVfbG9jayk7 Cj4gLQltdXRleF9pbml0KCZkZXZfcHJpdi0+Y3NyX2xvY2spOwo+ICAKPiAgCWludGVsX3BtX3Nl dHVwKGRldik7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+IGluZGV4IGZhNjYxNjIuLjFk ZGYzYTkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiBAQCAtMTAxMywxOSArMTAxMywx MSBAQCBzdGF0aWMgaW50IGk5MTVfcG1fcmVzdW1lKHN0cnVjdCBkZXZpY2UgKmRldikKPiAgCj4g IHN0YXRpYyBpbnQgc2tsX3N1c3BlbmRfY29tcGxldGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQo+ICB7Cj4gLQllbnVtIGNzcl9zdGF0ZSBzdGF0ZTsKPiAgCS8qIEVuYWJsaW5n IERDNiBpcyBub3QgYSBoYXJkIHJlcXVpcmVtZW50IHRvIGVudGVyIHJ1bnRpbWUgRDMgKi8KPiAg Cj4gIAlza2xfdW5pbml0X2NkY2xrKGRldl9wcml2KTsKPiAgCj4gLQkvKiBUT0RPOiB3YWl0IGZv ciBhIGNvbXBsZXRpb24gZXZlbnQgb3IKPiAtCSAqIHNpbWlsYXIgaGVyZSBpbnN0ZWFkIG9mIGJ1 c3kKPiAtCSAqIHdhaXRpbmcgdXNpbmcgd2FpdF9mb3IgZnVuY3Rpb24uCj4gLQkgKi8KPiAtCXdh aXRfZm9yKChzdGF0ZSA9IGludGVsX2Nzcl9sb2FkX3N0YXR1c19nZXQoZGV2X3ByaXYpKSAhPQo+ IC0JCQlGV19VTklOSVRJQUxJWkVELCAxMDAwKTsKPiAtCWlmIChzdGF0ZSA9PSBGV19MT0FERUQp Cj4gLQkJc2tsX2VuYWJsZV9kYzYoZGV2X3ByaXYpOwo+ICsJc2tsX2VuYWJsZV9kYzYoZGV2X3By aXYpOwoKSGVyZSB0aGUgZmlybXdhcmUgbWF5IG5vdCBiZSBsb2FkZWQgeWV0IGR1cmluZyBzeXN0 ZW0gc3VzcGVuZC4gU2luY2UKcGF0Y2ggMTEvMTQgbW92ZXMgdGhlIGZpcm13YXJlIGxvYWRpbmcg dG8gYSB3b3JrIGl0ZW0sIHdlIGNvdWxkIGZsdXNoCnRoYXQgd29yayBpbiBpOTE1X2RybV9zdXNw ZW5kKCkgYW5kIGNoZWNrIGhlcmUgaWYgY3NyLT5kbWNfcGF5bG9hZCBpcwpzZXQgYmVmb3JlIGVu YWJsaW5nIERDNi4gKGFuZCByZW9yZGVyIHRoaXMgcGF0Y2ggYWZ0ZXIgcGF0Y2ggMTEpLgoKPiAg Cj4gIAlyZXR1cm4gMDsKPiAgfQo+IEBAIC0xMDczLDggKzEwNjUsNyBAQCBzdGF0aWMgaW50IHNr bF9yZXN1bWVfcHJlcGFyZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIHsK PiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBkZXZfcHJpdi0+ZGV2Owo+ICAKPiAtCWlmIChp bnRlbF9jc3JfbG9hZF9zdGF0dXNfZ2V0KGRldl9wcml2KSA9PSBGV19MT0FERUQpCj4gLQkJc2ts X2Rpc2FibGVfZGM2KGRldl9wcml2KTsKPiArCXNrbF9kaXNhYmxlX2RjNihkZXZfcHJpdik7CgpB cyBhYm92ZSB3ZSBzaG91bGQgY2hlY2sgaGVyZSBmb3IgY3NyLT5kbWNfcGF5bG9hZC4KCj4gIAlz a2xfaW5pdF9jZGNsayhkZXZfcHJpdik7Cj4gIAlpbnRlbF9jc3JfbG9hZF9wcm9ncmFtKGRldik7 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gaW5kZXggZTBmM2YwNS4uOWYwMWM3MiAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC03MzYsMTIgKzczNiw2IEBAIHN0cnVjdCBpbnRl bF91bmNvcmUgewo+ICAjZGVmaW5lIGZvcl9lYWNoX2Z3X2RvbWFpbihkb21haW5fXywgZGV2X3By aXZfXywgaV9fKSBcCj4gIAlmb3JfZWFjaF9md19kb21haW5fbWFzayhkb21haW5fXywgRk9SQ0VX QUtFX0FMTCwgZGV2X3ByaXZfXywgaV9fKQo+ICAKPiAtZW51bSBjc3Jfc3RhdGUgewo+IC0JRldf VU5JTklUSUFMSVpFRCA9IDAsCj4gLQlGV19MT0FERUQsCj4gLQlGV19GQUlMRUQKPiAtfTsKPiAt Cj4gIHN0cnVjdCBpbnRlbF9jc3Igewo+ICAJY29uc3QgY2hhciAqZndfcGF0aDsKPiAgCXVpbnQz Ml90ICpkbWNfcGF5bG9hZDsKPiBAQCAtNzQ5LDcgKzc0Myw2IEBAIHN0cnVjdCBpbnRlbF9jc3Ig ewo+ICAJdWludDMyX3QgbW1pb19jb3VudDsKPiAgCXVpbnQzMl90IG1taW9hZGRyWzhdOwo+ICAJ dWludDMyX3QgbW1pb2RhdGFbOF07Cj4gLQllbnVtIGNzcl9zdGF0ZSBzdGF0ZTsKPiAgfTsKPiAg Cj4gICNkZWZpbmUgREVWX0lORk9fRk9SX0VBQ0hfRkxBRyhmdW5jLCBzZXApIFwKPiBAQCAtMTcx NCw5ICsxNzA3LDYgQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewo+ICAKPiAgCXN0cnVjdCBp bnRlbF9jc3IgY3NyOwo+ICAKPiAtCS8qIERpc3BsYXkgQ1NSLXJlbGF0ZWQgcHJvdGVjdGlvbiAq Lwo+IC0Jc3RydWN0IG11dGV4IGNzcl9sb2NrOwo+IC0KPiAgCXN0cnVjdCBpbnRlbF9nbWJ1cyBn bWJ1c1tHTUJVU19OVU1fUElOU107Cj4gIAo+ICAJLyoqIGdtYnVzX211dGV4IHByb3RlY3RzIGFn YWluc3QgY29uY3VycmVudCB1c2FnZSBvZiB0aGUgc2luZ2xlIGh3IGdtYnVzCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Nzci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfY3NyLmMKPiBpbmRleCA5MTUzNzY0Li5lZTIwNzliIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Nzci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfY3NyLmMKPiBAQCAtMTg0LDQwICsxODQsNiBAQCBzdGF0aWMgY2hhciBpbnRlbF9n ZXRfc3Vic3RlcHBpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgfQo+ICAKPiAgLyoqCj4g LSAqIGludGVsX2Nzcl9sb2FkX3N0YXR1c19nZXQoKSAtIHRvIGdldCBmaXJtd2FyZSBsb2FkaW5n IHN0YXR1cy4KPiAtICogQGRldl9wcml2OiBpOTE1IGRldmljZS4KPiAtICoKPiAtICogVGhpcyBm dW5jdGlvbiBoZWxwcyB0byBnZXQgdGhlIGZpcm13YXJlIGxvYWRpbmcgc3RhdHVzLgo+IC0gKgo+ IC0gKiBSZXR1cm46IEZpcm13YXJlIGxvYWRpbmcgc3RhdHVzLgo+IC0gKi8KPiAtZW51bSBjc3Jf c3RhdGUgaW50ZWxfY3NyX2xvYWRfc3RhdHVzX2dldChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpCj4gLXsKPiAtCWVudW0gY3NyX3N0YXRlIHN0YXRlOwo+IC0KPiAtCW11dGV4X2xv Y2soJmRldl9wcml2LT5jc3JfbG9jayk7Cj4gLQlzdGF0ZSA9IGRldl9wcml2LT5jc3Iuc3RhdGU7 Cj4gLQltdXRleF91bmxvY2soJmRldl9wcml2LT5jc3JfbG9jayk7Cj4gLQo+IC0JcmV0dXJuIHN0 YXRlOwo+IC19Cj4gLQo+IC0vKioKPiAtICogaW50ZWxfY3NyX2xvYWRfc3RhdHVzX3NldCgpIC0g aGVscCB0byBzZXQgZmlybXdhcmUgbG9hZGluZyBzdGF0dXMuCj4gLSAqIEBkZXZfcHJpdjogaTkx NSBkZXZpY2UuCj4gLSAqIEBzdGF0ZTogZW51bWVyYXRpb24gb2YgZmlybXdhcmUgbG9hZGluZyBz dGF0dXMuCj4gLSAqCj4gLSAqIFNldCB0aGUgZmlybXdhcmUgbG9hZGluZyBzdGF0dXMuCj4gLSAq Lwo+IC12b2lkIGludGVsX2Nzcl9sb2FkX3N0YXR1c19zZXQoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2LAo+IC0JCQllbnVtIGNzcl9zdGF0ZSBzdGF0ZSkKPiAtewo+IC0JbXV0ZXhf bG9jaygmZGV2X3ByaXYtPmNzcl9sb2NrKTsKPiAtCWRldl9wcml2LT5jc3Iuc3RhdGUgPSBzdGF0 ZTsKPiAtCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmNzcl9sb2NrKTsKPiAtfQo+IC0KPiAtLyoq Cj4gICAqIGludGVsX2Nzcl9sb2FkX3Byb2dyYW0oKSAtIHdyaXRlIHRoZSBmaXJtd2FyZSBmcm9t IG1lbW9yeSB0byByZWdpc3Rlci4KPiAgICogQGRldjogZHJtIGRldmljZS4KPiAgICoKPiBAQCAt MjQ1LDcgKzIxMSw2IEBAIHZvaWQgaW50ZWxfY3NyX2xvYWRfcHJvZ3JhbShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQo+ICAJaWYgKEk5MTVfUkVBRChDU1JfUFJPR1JBTV9CQVNFKSkKPiAgCQlyZXR1 cm47Cj4gIAo+IC0JbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmNzcl9sb2NrKTsKPiAgCWZ3X3NpemUg PSBkZXZfcHJpdi0+Y3NyLmRtY19md19zaXplOwo+ICAJZm9yIChpID0gMDsgaSA8IGZ3X3NpemU7 IGkrKykKPiAgCQlJOTE1X1dSSVRFKENTUl9QUk9HUkFNX0JBU0UgKyBpICogNCwKPiBAQCAtMjU1 LDkgKzIyMCw2IEBAIHZvaWQgaW50ZWxfY3NyX2xvYWRfcHJvZ3JhbShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQo+ICAJCUk5MTVfV1JJVEUoZGV2X3ByaXYtPmNzci5tbWlvYWRkcltpXSwKPiAgCQkJ ZGV2X3ByaXYtPmNzci5tbWlvZGF0YVtpXSk7Cj4gIAl9Cj4gLQo+IC0JZGV2X3ByaXYtPmNzci5z dGF0ZSA9IEZXX0xPQURFRDsKPiAtCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmNzcl9sb2NrKTsK PiAgfQo+ICAKPiAgc3RhdGljIHZvaWQgZmluaXNoX2Nzcl9sb2FkKGNvbnN0IHN0cnVjdCBmaXJt d2FyZSAqZncsIHZvaWQgKmNvbnRleHQpCj4gQEAgLTM3OCw4ICszNDAsNiBAQCBzdGF0aWMgdm9p ZCBmaW5pc2hfY3NyX2xvYWQoY29uc3Qgc3RydWN0IGZpcm13YXJlICpmdywgdm9pZCAqY29udGV4 dCkKPiAgb3V0Ogo+ICAJaWYgKGZ3X2xvYWRlZCB8fCBJU19CUk9YVE9OKGRldikpCj4gIAkJaW50 ZWxfZGlzcGxheV9wb3dlcl9wdXQoZGV2X3ByaXYsIFBPV0VSX0RPTUFJTl9JTklUKTsKPiAtCWVs c2UKPiAtCQlpbnRlbF9jc3JfbG9hZF9zdGF0dXNfc2V0KGRldl9wcml2LCBGV19GQUlMRUQpOwo+ ICAKPiAgCXJlbGVhc2VfZmlybXdhcmUoZncpOwo+ICB9Cj4gQEAgLTQwNCw3ICszNjQsNiBAQCB2 b2lkIGludGVsX2Nzcl91Y29kZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkJY3Ny LT5md19wYXRoID0gSTkxNV9DU1JfU0tMOwo+ICAJZWxzZSB7Cj4gIAkJRFJNX0VSUk9SKCJVbmV4 cGVjdGVkOiBubyBrbm93biBDU1IgZmlybXdhcmUgZm9yIHBsYXRmb3JtXG4iKTsKPiAtCQlpbnRl bF9jc3JfbG9hZF9zdGF0dXNfc2V0KGRldl9wcml2LCBGV19GQUlMRUQpOwo+ICAJCXJldHVybjsK PiAgCX0KPiAgCj4gQEAgLTQyMSwxMCArMzgwLDggQEAgdm9pZCBpbnRlbF9jc3JfdWNvZGVfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCQkJJmRldl9wcml2LT5kZXYtPnBkZXYtPmRl diwKPiAgCQkJCUdGUF9LRVJORUwsIGRldl9wcml2LAo+ICAJCQkJZmluaXNoX2Nzcl9sb2FkKTsK PiAtCWlmIChyZXQpIHsKPiArCWlmIChyZXQpCj4gIAkJaTkxNV9maXJtd2FyZV9sb2FkX2Vycm9y X3ByaW50KGNzci0+ZndfcGF0aCwgcmV0KTsKPiAtCQlpbnRlbF9jc3JfbG9hZF9zdGF0dXNfc2V0 KGRldl9wcml2LCBGV19GQUlMRUQpOwo+IC0JfQo+ICB9Cj4gIAo+ICAvKioKPiBAQCAtNDQxLDcg KzM5OCw2IEBAIHZvaWQgaW50ZWxfY3NyX3Vjb2RlX2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKPiAgCWlmICghSEFTX0NTUihkZXYpKQo+ICAJCXJldHVybjsKPiAgCj4gLQlpbnRlbF9jc3Jf bG9hZF9zdGF0dXNfc2V0KGRldl9wcml2LCBGV19GQUlMRUQpOwo+ICAJa2ZyZWUoZGV2X3ByaXYt PmNzci5kbWNfcGF5bG9hZCk7Cj4gIH0KPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBp bmRleCBjMTc4YWU4Li5hNWU0YjA4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBA QCAtMTE1Miw5ICsxMTUyLDYgQEAgdTMyIHNrbF9wbGFuZV9jdGxfcm90YXRpb24odW5zaWduZWQg aW50IHJvdGF0aW9uKTsKPiAgCj4gIC8qIGludGVsX2Nzci5jICovCj4gIHZvaWQgaW50ZWxfY3Ny X3Vjb2RlX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gLWVudW0gY3NyX3N0YXRlIGlu dGVsX2Nzcl9sb2FkX3N0YXR1c19nZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KTsKPiAtdm9pZCBpbnRlbF9jc3JfbG9hZF9zdGF0dXNfc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKPiAtCQkJCQllbnVtIGNzcl9zdGF0ZSBzdGF0ZSk7Cj4gIHZvaWQgaW50 ZWxfY3NyX2xvYWRfcHJvZ3JhbShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgdm9pZCBpbnRl bF9jc3JfdWNvZGVfZmluaShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3J1bnRpbWVfcG0uYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3J1bnRpbWVfcG0uYwo+IGluZGV4IDcxODMyZGMuLjNmZmViYjcgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGltZV9wbS5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGltZV9wbS5jCj4gQEAgLTY2MSw4ICs2 NjEsNyBAQCBzdGF0aWMgdm9pZCBza2xfc2V0X3Bvd2VyX3dlbGwoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+ICAJfSBlbHNlIHsKPiAgCQlpZiAoZW5hYmxlX3JlcXVlc3RlZCkg ewo+ICAJCQlpZiAoSVNfU0tZTEFLRShkZXYpICYmCj4gLQkJCQkocG93ZXJfd2VsbC0+ZGF0YSA9 PSBTS0xfRElTUF9QV18xKSAmJgo+IC0JCQkJKGludGVsX2Nzcl9sb2FkX3N0YXR1c19nZXQoZGV2 X3ByaXYpID09IEZXX0xPQURFRCkpCj4gKwkJCQkocG93ZXJfd2VsbC0+ZGF0YSA9PSBTS0xfRElT UF9QV18xKSkKPiAgCQkJCURSTV9ERUJVR19LTVMoIk5vdCBEaXNhYmxpbmcgUFcxLCBkbWMgd2ls bCBoYW5kbGVcbiIpOwo+ICAJCQllbHNlIHsKPiAgCQkJCUk5MTVfV1JJVEUoSFNXX1BXUl9XRUxM X0RSSVZFUiwJdG1wICYgfnJlcV9tYXNrKTsKPiBAQCAtNjcxLDIwICs2NzAsOCBAQCBzdGF0aWMg dm9pZCBza2xfc2V0X3Bvd2VyX3dlbGwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAo+ICAJCQl9Cj4gIAo+ICAJCQlpZiAoR0VOOV9FTkFCTEVfREM1KGRldikgJiYKPiAtCQkJCXBv d2VyX3dlbGwtPmRhdGEgPT0gU0tMX0RJU1BfUFdfMikgewo+IC0JCQkJZW51bSBjc3Jfc3RhdGUg c3RhdGU7Cj4gLQkJCQkvKiBUT0RPOiB3YWl0IGZvciBhIGNvbXBsZXRpb24gZXZlbnQgb3IKPiAt CQkJCSAqIHNpbWlsYXIgaGVyZSBpbnN0ZWFkIG9mIGJ1c3kKPiAtCQkJCSAqIHdhaXRpbmcgdXNp bmcgd2FpdF9mb3IgZnVuY3Rpb24uCj4gLQkJCQkgKi8KPiAtCQkJCXdhaXRfZm9yKChzdGF0ZSA9 IGludGVsX2Nzcl9sb2FkX3N0YXR1c19nZXQoZGV2X3ByaXYpKSAhPQo+IC0JCQkJCQlGV19VTklO SVRJQUxJWkVELCAxMDAwKTsKPiAtCQkJCWlmIChzdGF0ZSAhPSBGV19MT0FERUQpCj4gLQkJCQkJ RFJNX0VSUk9SKCJDU1IgZmlybXdhcmUgbm90IHJlYWR5ICglZClcbiIsCj4gLQkJCQkJCQlzdGF0 ZSk7Cj4gLQkJCQllbHNlCj4gKwkJCQlwb3dlcl93ZWxsLT5kYXRhID09IFNLTF9ESVNQX1BXXzIp Cj4gIAkJCQkJZ2VuOV9lbmFibGVfZGM1KGRldl9wcml2KTsKPiAtCQkJfQo+ICAJCX0KPiAgCX0K PiAgCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK