From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zanoni, Paulo R" Subject: Re: [PATCH v4 6/8] drm/i915: Nuke fbc members from intel_crtc->atomic, v2. Date: Thu, 18 Feb 2016 17:17:18 +0000 Message-ID: <1455815836.2576.64.camel@intel.com> References: <1455108583-29227-1-git-send-email-maarten.lankhorst@linux.intel.com> <1455108583-29227-7-git-send-email-maarten.lankhorst@linux.intel.com> <1455285409.2594.81.camel@intel.com> <56C1E135.20406@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 43C016ECBE for ; Thu, 18 Feb 2016 17:17:20 +0000 (UTC) In-Reply-To: <56C1E135.20406@linux.intel.com> Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "intel-gfx@lists.freedesktop.org" , "maarten.lankhorst@linux.intel.com" List-Id: intel-gfx@lists.freedesktop.org RW0gU2VnLCAyMDE2LTAyLTE1IMOgcyAxNTozMSArMDEwMCwgTWFhcnRlbiBMYW5raG9yc3QgZXNj cmV2ZXU6DQo+IE9wIDEyLTAyLTE2IG9tIDE0OjU2IHNjaHJlZWYgWmFub25pLCBQYXVsbyBSOg0K PiA+IEVtIFF1YSwgMjAxNi0wMi0xMCDDoHMgMTM6NDkgKzAxMDAsIE1hYXJ0ZW4gTGFua2hvcnN0 IGVzY3JldmV1Og0KPiA+ID4gRmFjdG9yIG91dCBpbnRlbF9mYmNfc3VwcG9ydHNfcm90YXRpb24N Cj4gPiBeIG5vdCBhbnltb3JlDQo+ID4gDQo+ID4gDQo+ID4gPiDCoGFuZCB1c2UgaXQgaW4NCj4g PiA+IHByZV9wbGFuZV91cGRhdGUgYXMgd2VsbC4gVGhpcyBsZWF2ZXMgaW50ZWxfY3J0Yy0+YXRv bWljDQo+ID4gPiBlbXB0eSwgc28gcmVtb3ZlIGl0IHRvby4NCj4gPiA+IA0KPiA+ID4gQ2hhbmdl cyBzaW5jZSB2MToNCj4gPiA+IC0gQWRkIGEgaW50ZWxfZmJjX3N1cHBvcnRzX3JvdGF0aW9uIGhl bHBlci4NCj4gPiBDaGFuZ2VzIHNpbmNlIHYyOg0KPiA+IC0gTm8gbW9yZSBuZWVkIGZvciByb3Rh dGlvbiBzcGVjaWFsLWNhc2luZy4NCj4gPiANCj4gPiAoSSBzdXBwb3NlIHlvdSBhbHNvIGhhdmUg dG8gZWRpdCB0aGUgY29tbWl0IHRpdGxlIHRvIGJlIHYzKQ0KPiA+IA0KPiA+ID4gU2lnbmVkLW9m Zi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmMN Cj4gPiA+IG9tPg0KPiA+ID4gLS0tDQo+ID4gPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYyB8IDU4ICsrKysrKysrKysrKystLS0tLS0tLS0NCj4gPiA+IC0tLS0NCj4gPiA+ IC0tLS0tLS0tLS0NCj4gPiA+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmjCoMKg wqDCoMKgfCAxNSAtLS0tLS0tLS0tDQo+ID4gPiDCoDIgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0 aW9ucygrKSwgNTMgZGVsZXRpb25zKC0pDQo+ID4gPiANCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMNCj4gPiA+IGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jDQo+ID4gPiBpbmRleCA1NGJlOGEyNTVmMWYuLjAwY2IyNjFj Njc4NyAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYw0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jDQo+ ID4gPiBAQCAtNDc4MiwxMSArNDc4Miw5IEBAIHN0YXRpYyB2b2lkIGludGVsX3Bvc3RfcGxhbmVf dXBkYXRlKHN0cnVjdA0KPiA+ID4gaW50ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUpDQo+ ID4gPiDCoHsNCj4gPiA+IMKgCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0 YyhvbGRfY3J0Y19zdGF0ZS0NCj4gPiA+ID4gYmFzZS5jcnRjKTsNCj4gPiA+IMKgCXN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUgPSBvbGRfY3J0Y19zdGF0ZS0NCj4gPiA+ID4gYmFz ZS5zdGF0ZTsNCj4gPiA+IC0Jc3RydWN0IGludGVsX2NydGNfYXRvbWljX2NvbW1pdCAqYXRvbWlj ID0gJmNydGMtPmF0b21pYzsNCj4gPiA+IMKgCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBl X2NvbmZpZyA9DQo+ID4gPiDCoAkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5iYXNlLnN0YXRl KTsNCj4gPiA+IMKgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNlLmRldjsNCj4g PiA+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0 ZTsNCj4gPiA+IMKgCXN0cnVjdCBkcm1fcGxhbmUgKnByaW1hcnkgPSBjcnRjLT5iYXNlLnByaW1h cnk7DQo+ID4gPiDCoAlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfcHJpX3N0YXRlID0NCj4g PiA+IMKgCQlkcm1fYXRvbWljX2dldF9leGlzdGluZ19wbGFuZV9zdGF0ZShvbGRfc3RhdGUsDQo+ ID4gPiBwcmltYXJ5KTsNCj4gPiA+IEBAIC00Nzk4LDIyICs0Nzk2LDE5IEBAIHN0YXRpYyB2b2lk DQo+ID4gPiBpbnRlbF9wb3N0X3BsYW5lX3VwZGF0ZShzdHJ1Y3QNCj4gPiA+IGludGVsX2NydGNf c3RhdGUgKm9sZF9jcnRjX3N0YXRlKQ0KPiA+ID4gwqAJaWYgKHBpcGVfY29uZmlnLT53bV9jaGFu Z2VkICYmIHBpcGVfY29uZmlnLT5iYXNlLmFjdGl2ZSkNCj4gPiA+IMKgCQlpbnRlbF91cGRhdGVf d2F0ZXJtYXJrcygmY3J0Yy0+YmFzZSk7DQo+ID4gPiDCoA0KPiA+ID4gLQlpZiAoYXRvbWljLT51 cGRhdGVfZmJjKQ0KPiA+ID4gLQkJaW50ZWxfZmJjX3Bvc3RfdXBkYXRlKGNydGMpOw0KPiA+ID4g LQ0KPiA+ID4gwqAJaWYgKG9sZF9wcmlfc3RhdGUpIHsNCj4gPiBGb3IgYSBjb2RlIHJlYWRlciB0 aGF0IGlzIG5vdCB2ZXJ5IGZhbWlsaWFyIHdpdGggYWxsIHRoZSBhdG9taWMNCj4gPiBoaXN0b3J5 DQo+ID4gYW5kIGl0cyBkZXRhaWxzLCBpdCdzIG5vdCB0cml2aWFsIHRvIGNvbmNsdWRlIHRoYXQg ImlmDQo+ID4gKGRybV9hdG9taWNfZ2V0X2V4aXN0aW5nX3BsYW5lX3N0YXRlKHByaW1hcnkpKSIs IHRoZW4gd2UncmUNCj4gPiB1cGRhdGluZw0KPiA+IHRoZSBwcmltYXJ5IHBsYW5lIG9uIHRoaXMg YXRvbWljIGNvbW1pdC4gQW5kIGJlZm9yZSB0aGlzIHBhdGNoLA0KPiA+IGl0J3MNCj4gPiBtdWNo IG11Y2ggZWFzaWVyIHRvIGNvbmNsdWRlIHRoYXQgdXBkYXRlX2ZiYyB3aWxsIGJlIHRydWUgd2hl biBhbg0KPiA+IGF0b21pYyB1cGRhdGUgaXMgdG91Y2hpbmcgdGhlIHByaW1hcnkgcGxhbmUgYmVj YXVzZSB0aGF0J3MNCj4gPiBleHBsaWNpdGx5DQo+ID4gc3RhdGVkIGJ5IHRoZSBjb2QuDQo+ID4g DQo+ID4gU28gYWx0aG91Z2ggImxldCdzIGtpbGwgdGhpcyByZWR1bmRhbnQgc3RydWN0IiBzb3Vu ZHMgZ29vZCwgaXQNCj4gPiBzZWVtcyB0bw0KPiA+IG1lIHRoYXQgY29kZSBjbGFyaXR5IGlzIGdv aW5nIGF3YXkgd2l0aCB0aGlzIHBhdGNoLCBzbyBJIHdvbmRlciBpZg0KPiA+IHRoZQ0KPiA+IGJl bmVmaXRzIG9mIHRoZSBwYXRjaCBvdXR3ZWlnaCB0aGUgZG93bnNpZGVzLiBJc24ndCB0aGVyZSBz b21ldGhpbmcNCj4gPiBlbHNlIHdlIGNvdWxkIGRvIGFib3V0IHRoaXMsIHN1Y2ggYXMgc29tZSBy ZW5hbWluZywgb3IgYWRkaW5nIHNvbWUNCj4gPiBmdW5jdGlvbiBhbGlhc2VzIG9yIGp1c3QgZXh0 cmEgY29tbWVudGluZz8NCj4gPiANCj4gPiA+IMKgCQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUg KnByaW1hcnlfc3RhdGUgPQ0KPiA+ID4gwqAJCQl0b19pbnRlbF9wbGFuZV9zdGF0ZShwcmltYXJ5 LT5zdGF0ZSk7DQo+ID4gPiDCoAkJc3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpvbGRfcHJpbWFy eV9zdGF0ZSA9DQo+ID4gPiDCoAkJCXRvX2ludGVsX3BsYW5lX3N0YXRlKG9sZF9wcmlfc3RhdGUp Ow0KPiA+ID4gwqANCj4gPiA+ICsJCWludGVsX2ZiY19wb3N0X3VwZGF0ZShjcnRjKTsNCj4gPiA+ ICsNCj4gPiA+IMKgCQlpZiAocHJpbWFyeV9zdGF0ZS0+dmlzaWJsZSAmJg0KPiA+ID4gwqAJCcKg wqDCoMKgKG5lZWRzX21vZGVzZXQoJnBpcGVfY29uZmlnLT5iYXNlKSB8fA0KPiA+ID4gwqAJCcKg wqDCoMKgwqAhb2xkX3ByaW1hcnlfc3RhdGUtPnZpc2libGUpKQ0KPiA+ID4gwqAJCQlpbnRlbF9w b3N0X2VuYWJsZV9wcmltYXJ5KCZjcnRjLT5iYXNlKTsNCj4gPiA+IMKgCX0NCj4gPiA+IC0NCj4g PiA+IC0JbWVtc2V0KGF0b21pYywgMCwgc2l6ZW9mKCphdG9taWMpKTsNCj4gPiA+IMKgfQ0KPiA+ ID4gwqANCj4gPiA+IMKgc3RhdGljIHZvaWQgaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZShzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZQ0KPiA+ID4gKm9sZF9jcnRjX3N0YXRlKQ0KPiA+ID4gQEAgLTQ4MjEs NyArNDgxNiw2IEBAIHN0YXRpYyB2b2lkIGludGVsX3ByZV9wbGFuZV91cGRhdGUoc3RydWN0DQo+ ID4gPiBpbnRlbF9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSkNCj4gPiA+IMKgCXN0cnVjdCBp bnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhvbGRfY3J0Y19zdGF0ZS0NCj4gPiA+ID4g YmFzZS5jcnRjKTsNCj4gPiA+IMKgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNl LmRldjsNCj4gPiA+IMKgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ ZGV2X3ByaXZhdGU7DQo+ID4gPiAtCXN0cnVjdCBpbnRlbF9jcnRjX2F0b21pY19jb21taXQgKmF0 b21pYyA9ICZjcnRjLT5hdG9taWM7DQo+ID4gPiDCoAlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq cGlwZV9jb25maWcgPQ0KPiA+ID4gwqAJCXRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+YmFzZS5z dGF0ZSk7DQo+ID4gPiDCoAlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRlID0gb2xk X2NydGNfc3RhdGUtDQo+ID4gPiA+IGJhc2Uuc3RhdGU7DQo+ID4gPiBAQCAtNDgzMCwxNyArNDgy NCwxNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9wcmVfcGxhbmVfdXBkYXRlKHN0cnVjdA0KPiA+ID4g aW50ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUpDQo+ID4gPiDCoAkJZHJtX2F0b21pY19n ZXRfZXhpc3RpbmdfcGxhbmVfc3RhdGUob2xkX3N0YXRlLA0KPiA+ID4gcHJpbWFyeSk7DQo+ID4g PiDCoAlib29sIG1vZGVzZXQgPSBuZWVkc19tb2Rlc2V0KCZwaXBlX2NvbmZpZy0+YmFzZSk7DQo+ ID4gPiDCoA0KPiA+ID4gLQlpZiAoYXRvbWljLT51cGRhdGVfZmJjKQ0KPiA+ID4gLQkJaW50ZWxf ZmJjX3ByZV91cGRhdGUoY3J0Yyk7DQo+ID4gPiAtDQo+ID4gPiDCoAlpZiAob2xkX3ByaV9zdGF0 ZSkgew0KPiA+ID4gwqAJCXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcHJpbWFyeV9zdGF0ZSA9 DQo+ID4gPiDCoAkJCXRvX2ludGVsX3BsYW5lX3N0YXRlKHByaW1hcnktPnN0YXRlKTsNCj4gPiA+ IMKgCQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKm9sZF9wcmltYXJ5X3N0YXRlID0NCj4gPiA+ IMKgCQkJdG9faW50ZWxfcGxhbmVfc3RhdGUob2xkX3ByaV9zdGF0ZSk7DQo+ID4gPiArCQlib29s IHR1cm5fb2ZmID0gb2xkX3ByaW1hcnlfc3RhdGUtPnZpc2libGUgJiYNCj4gPiA+ICsJCcKgwqDC oMKgKG1vZGVzZXQgfHwgIXByaW1hcnlfc3RhdGUtPnZpc2libGUpO8KgDQo+ID4gTm90IHJlYWxs eSByZWxhdGVkIHRvIHRoZSBwYXRjaCwgYnV0IG9rIHRvIGtlZXAgc2luY2UgaXQncw0KPiA+IHRy aXZpYWwuLi4NCj4gPiANCj4gPiA+ICsNCj4gPiA+ICsJCWludGVsX2ZiY19wcmVfdXBkYXRlKGNy dGMpOw0KPiA+ID4gwqANCj4gPiA+IC0JCWlmIChvbGRfcHJpbWFyeV9zdGF0ZS0+dmlzaWJsZSAm Jg0KPiA+ID4gLQkJwqDCoMKgwqAobW9kZXNldCB8fCAhcHJpbWFyeV9zdGF0ZS0+dmlzaWJsZSkp DQo+ID4gPiArCQlpZiAodHVybl9vZmYpDQo+ID4gPiDCoAkJCWludGVsX3ByZV9kaXNhYmxlX3By aW1hcnkoJmNydGMtPmJhc2UpOw0KPiA+ID4gwqAJfQ0KPiA+ID4gwqANCj4gPiA+IEBAIC0xMTgy MiwyNyArMTE4MTYsMTcgQEAgaW50DQo+ID4gPiBpbnRlbF9wbGFuZV9hdG9taWNfY2FsY19jaGFu Z2VzKHN0cnVjdA0KPiA+ID4gZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsDQo+ID4gPiDCoAlp ZiAodmlzaWJsZSB8fCB3YXNfdmlzaWJsZSkNCj4gPiA+IMKgCQlwaXBlX2NvbmZpZy0+ZmJfYml0 cyB8PSB0b19pbnRlbF9wbGFuZShwbGFuZSktDQo+ID4gPiA+IGZyb250YnVmZmVyX2JpdDsNCj4g PiA+IMKgDQo+ID4gPiAtCXN3aXRjaCAocGxhbmUtPnR5cGUpIHsNCj4gPiA+IC0JY2FzZSBEUk1f UExBTkVfVFlQRV9QUklNQVJZOg0KPiA+ID4gLQkJaW50ZWxfY3J0Yy0+YXRvbWljLnVwZGF0ZV9m YmMgPSB0cnVlOw0KPiA+ID4gLQ0KPiA+ID4gLQkJYnJlYWs7DQo+ID4gPiAtCWNhc2UgRFJNX1BM QU5FX1RZUEVfQ1VSU09SOg0KPiA+ID4gLQkJYnJlYWs7DQo+ID4gPiAtCWNhc2UgRFJNX1BMQU5F X1RZUEVfT1ZFUkxBWToNCj4gPiA+IC0JCS8qDQo+ID4gPiAtCQnCoCogV2FDeFNSRGlzYWJsZWRG b3JTcHJpdGVTY2FsaW5nOml2Yg0KPiA+ID4gLQkJwqAqDQo+ID4gPiAtCQnCoCogY3N0YXRlLT51 cGRhdGVfd20gd2FzIGFscmVhZHkgc2V0IGFib3ZlLCBzbw0KPiA+ID4gdGhpcw0KPiA+ID4gZmxh ZyB3aWxsDQo+ID4gPiAtCQnCoCogdGFrZSBlZmZlY3Qgd2hlbiB3ZSBjb21taXQgYW5kIHByb2dy YW0NCj4gPiA+IHdhdGVybWFya3MuDQo+ID4gPiAtCQnCoCovDQo+ID4gPiAtCQlpZiAoSVNfSVZZ QlJJREdFKGRldikgJiYNCj4gPiA+IC0JCcKgwqDCoMKgbmVlZHNfc2NhbGluZyh0b19pbnRlbF9w bGFuZV9zdGF0ZShwbGFuZV9zdGENCj4gPiA+IHRlKSkNCj4gPiA+ICYmDQo+ID4gPiAtCQnCoMKg wqDCoCFuZWVkc19zY2FsaW5nKG9sZF9wbGFuZV9zdGF0ZSkpDQo+ID4gPiAtCQkJcGlwZV9jb25m aWctPmRpc2FibGVfbHBfd20gPSB0cnVlOw0KPiA+ID4gKwkvKg0KPiA+ID4gKwnCoCogV2FDeFNS RGlzYWJsZWRGb3JTcHJpdGVTY2FsaW5nOml2Yg0KPiA+ID4gKwnCoCoNCj4gPiA+ICsJwqAqIGNz dGF0ZS0+dXBkYXRlX3dtIHdhcyBhbHJlYWR5IHNldCBhYm92ZSwgc28gdGhpcyBmbGFnDQo+ID4g PiB3aWxsDQo+ID4gPiArCcKgKiB0YWtlIGVmZmVjdCB3aGVuIHdlIGNvbW1pdCBhbmQgcHJvZ3Jh bSB3YXRlcm1hcmtzLg0KPiA+ID4gKwnCoCovDQo+ID4gPiArCWlmIChwbGFuZS0+dHlwZSA9PSBE Uk1fUExBTkVfVFlQRV9PVkVSTEFZICYmDQo+ID4gPiBJU19JVllCUklER0UoZGV2KSAmJg0KPiA+ ID4gKwnCoMKgwqDCoG5lZWRzX3NjYWxpbmcodG9faW50ZWxfcGxhbmVfc3RhdGUocGxhbmVfc3Rh dGUpKSAmJg0KPiA+ID4gKwnCoMKgwqDCoCFuZWVkc19zY2FsaW5nKG9sZF9wbGFuZV9zdGF0ZSkp DQo+ID4gPiArCQlwaXBlX2NvbmZpZy0+ZGlzYWJsZV9scF93bSA9IHRydWU7DQo+ID4gPiDCoA0K PiA+ID4gLQkJYnJlYWs7DQo+ID4gPiAtCX0NCj4gPiA+IMKgCXJldHVybiAwOw0KPiA+ID4gwqB9 DQo+ID4gPiDCoA0KPiA+ID4gQEAgLTEzMjQxLDkgKzEzMjI1LDYgQEAgc3RhdGljIGludCBpbnRl bF9hdG9taWNfY2hlY2soc3RydWN0DQo+ID4gPiBkcm1fZGV2aWNlICpkZXYsDQo+ID4gPiDCoAkJ c3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnID0NCj4gPiA+IMKgCQkJdG9faW50 ZWxfY3J0Y19zdGF0ZShjcnRjX3N0YXRlKTsNCj4gPiA+IMKgDQo+ID4gPiAtCQltZW1zZXQoJnRv X2ludGVsX2NydGMoY3J0YyktPmF0b21pYywgMCwNCj4gPiA+IC0JCcKgwqDCoMKgwqDCoMKgc2l6 ZW9mKHN0cnVjdCBpbnRlbF9jcnRjX2F0b21pY19jb21taXQpKTsNCj4gPiA+IC0NCj4gPiA+IMKg CQkvKiBDYXRjaCBJOTE1X01PREVfRkxBR19JTkhFUklURUQgKi8NCj4gPiA+IMKgCQlpZiAoY3J0 Y19zdGF0ZS0+bW9kZS5wcml2YXRlX2ZsYWdzICE9IGNydGMtDQo+ID4gPiA+c3RhdGUtDQo+ID4g PiA+IG1vZGUucHJpdmF0ZV9mbGFncykNCj4gPiA+IMKgCQkJY3J0Y19zdGF0ZS0+bW9kZV9jaGFu Z2VkID0gdHJ1ZTsNCj4gPiA+IEBAIC0xMzUyOCwxMiArMTM1MDksMTMgQEAgc3RhdGljIGludCBp bnRlbF9hdG9taWNfY29tbWl0KHN0cnVjdA0KPiA+ID4gZHJtX2RldmljZSAqZGV2LA0KPiA+ID4g wqAJCWlmICghbW9kZXNldCkNCj4gPiA+IMKgCQkJaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZSh0b19p bnRlbF9jcnRjX3N0YQ0KPiA+ID4gdGUoYw0KPiA+ID4gcnRjX3N0YXRlKSk7DQo+ID4gPiDCoA0K PiA+ID4gLQkJaWYgKGNydGMtPnN0YXRlLT5hY3RpdmUgJiYgaW50ZWxfY3J0Yy0NCj4gPiA+ID4g YXRvbWljLnVwZGF0ZV9mYmMpDQo+ID4gPiArCQlpZiAoKG1vZGVzZXQgfHwgdXBkYXRlX3BpcGUp ICYmIGNydGMtPnN0YXRlLQ0KPiA+ID4gPmFjdGl2ZSkNCj4gPiBTYW1lIGhlcmU6IG5vdCBlYXN5 IGZvciBtZSB0byB2ZXJpZnkgdGhpbmdzIGFyZSB0aGUgc2FtZSBub3cuIEV2ZW4NCj4gPiB3b3Jz ZTogdGhlIGNoZWNrIGZvciAiaXMgdGhpcyBhdG9taWMgY29tbWl0IHRvdWNoaW5nIHRoZSBwcmlt YXJ5DQo+ID4gcGxhbmU/IiBpcyBub3cgd3JpdHRlbiBpbiBhIGNvbXBsZXRlbHkgZGlmZmVyZW50 IHdheSB0aGFuIHRoZSBvbmUNCj4gPiBpbnRyb2R1Y2VkIGFib3ZlLiBNYXliZSB0aGVyZSdzIHNv bWV0aGluZyB3ZSBjb3VsZCBkbyB0byBtYWtlIHRoZQ0KPiA+IGNvZGUNCj4gPiBlYXNpZXIgdG8g cmVhZC4NCj4gTm8sIHRoaXMgaXMgY2FsbGVkIG5vdyBldmVyeSB0aW1lIHdoZW4gdGhlIGNydGMg aGFzIGEgbW9kZXNldCBvcg0KPiB1cGRhdGVfcGlwZSwgZXZlbiB3aXRoIG5vIHByaW1hcnkgcGxh bmUuDQo+IFRoaXMgaXMgYmVjYXVzZSBhdG9taWMgbWF5IHNldCBhIG1vZGUgd2l0aG91dCBoYXZp bmcgYSBwcmltYXJ5IHBsYW5lLA0KPiBhbmQgaW4gdGhhdCBjYXNlIGZiY19lbmFibGUgbWF5IG5l dmVyIGJlIGNhbGxlZC4NCj4gU2VlbWVkIGxpa2UgYSBidWcgaW4gdGhlIG9yaWdpbmFsIGNvZGUu Lg0KDQpJIHN1cHBvc2UgdGhhdCBwcm92ZXMgbXkgcG9pbnQgdGhhdCB0aGlzIGNvZGUgd2l0aCBh bGwgdGhvc2Ugc2ltaWxhci0NCmJ1dC1kaWZmZXJlbnQgYm9vbGVhbiBjaGVja3MgaXMgcmVhbGx5 IGhhcmQgdG8gcmVhZCA6KQ0KDQpGQkMgY2FuIG9ubHkgaGFwcGVuIHdoZW4gdGhlcmUncyBhIHBy aW1hcnkgcGxhbmUsIHNvIEFGQUlVIGV2ZW4gaWYgd2UNCmRvbid0IGNhbGwgaW50ZWxfZmJjX2Vu YWJsZSBoZXJlIGJlY2F1c2UgdGhlIHByaW1hcnkgaXMgZGlzYWJsZSwgd2UnbGwNCmVuZCB1cCBj YWxsaW5nIGl0IGxhdGVyIHdoZW4gd2UgZW5hYmxlIHRoZSBwcmltYXJ5IHBsYW5lLg0KDQpBbnl3 YXksIGEgY2hhbmdlIGluIGJlaGF2aW9yIGxpa2UgdGhpcyAod2hpY2ggd2FzIHN1cHBvc2VkIHRv IGJlIGEgYnVnDQpmaXgpIHNob3VsZCBiZSBvbiBpdHMgb3duIHNlcGFyYXRlIHBhdGNoLCBub3Qg aGlkZGVuIGluc2lkZSBhIHJlZmFjdG9yLg0KDQo+IA0KPiB+TWFhcnRlbg0KPiBfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KPiBJbnRlbC1nZnggbWFpbGlu ZyBsaXN0DQo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4gaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==