From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/2] drm/i915: Remove delayed FBC activation. Date: Wed, 27 Jun 2018 17:14:59 +0300 Message-ID: <20180627141459.GD20518@intel.com> References: <20180625163758.10871-1-maarten.lankhorst@linux.intel.com> <20180625163758.10871-2-maarten.lankhorst@linux.intel.com> <20180626175949.GB20518@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id E19DE6E982 for ; Wed, 27 Jun 2018 14:15:17 +0000 (UTC) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBKdW4gMjcsIDIwMTggYXQgMDE6NDU6MDRQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gT3AgMjYtMDYtMTggb20gMTk6NTkgc2NocmVlZiBWaWxsZSBTeXJqw6Rsw6Q6 Cj4gPiBPbiBNb24sIEp1biAyNSwgMjAxOCBhdCAwNjozNzo1OFBNICswMjAwLCBNYWFydGVuIExh bmtob3JzdCB3cm90ZToKPiA+PiBUaGUgb25seSB0aW1lIHdlIHNob3VsZCBzdGFydCBGQkMgaXMg d2hlbiB3ZSBoYXZlIHdhaXRlZCBhIHZibGFuawo+ID4+IGFmdGVyIHRoZSBhdG9taWMgdXBkYXRl Lgo+ID4gV2hhdCBhYm91dCBmcm9udCBidWZmZXIgdHJhY2tpbmc/IElzIHRoaXMgZ29pbmcgdG8g bGVhdmUgRkJDIHBlcm1hbmVudGx5Cj4gPiBkaXNhYmxlZCB1bmxlc3MgdGhlcmUgYXJlIGZsaXBz L3BsYW5lIHVwZGF0ZXM/Cj4gTm8sIHNlZSBpbnRlbF9mYmNfZmx1c2guIElmIHRoZXJlJ3MgYSBy YWNlIHdpdGggZnJvbnRidWZmZXIgdHJhY2tpbmcgYW5kIHBhZ2UgZmxpcCwKPiB3ZSB3aWxsIG5v dCBlbmFibGUgRkJDIGluIGludGVsX2ZiY19mbHVzaCgpLCBidXQgaW4gdGhhdCBjYXNlIHdlIHdv dWxkIGVuYWJsZSBpdCBmcm9tCj4gaW50ZWxfZmJjX3Bvc3RfdXBkYXRlKCkuCgpJIGd1ZXNzIHdo YXQgSSBoYXZlbid0IHF1aXRlIGZpZ3VyZWQgb3V0IGlzIHdoeSB0aGUgcHJlX3BsYW5lX3VwZGF0 ZSgpCmV2ZW4gbGVhdmVzIGZiYyBsb2dpY2FsbHkgZW5hYmxlZC4gSSB3b3VsZCB0aGluayB3ZSBz aG91bGQganVzdCBkaXNhYmxlCmZiYyB0aGVyZSBpZiBhbnl0aGluZyBpbXBvcnRhbnQgaXMgZ29p bmcgdG8gY2hhbmdlLCBhbmQgdGhlbiByZS1lbmFibGUKYXQgcG9zdF9wbGFuZV91cGRhdGUoKSBh ZnRlciByZWFsbG9jYXRpbmcgdGhlIGNmYi4KCj4gCj4gT3IgdGhlIG90aGVyIHdheSBhcm91bmQs IGludGVsX2ZiY19wb3N0X3VwZGF0ZSB3b24ndCBlbmFibGUgRkJDIGlmIHRoZSBmYiBpcyBkaXJ0 eSwgYnV0Cj4gaW50ZWxfZmJjX2ZsdXNoKCkgYWZ0ZXJ3YXJkcyB3aWxsLgo+ID4gSSB0aGluayB0 aGVyZSBhcmUgYSBmZXcgY2FzZXMgd2UgbmVlZCB0byBjb25zaWRlcjoKPiA+IDEuIHBsYW5lIHVw ZGF0ZSB3aGljaCBkb2Vzbid0IG5lZWQgZmJjIGRpc2FibGUKPiA+IDIuIHBsYW5lIHVwZGF0ZSB3 aGljaCBuZWVkcyB0byBkaXNhYmxlIGZiYyBidXQgY2FuIHJlLWVuYWJsZSBpdCBhZnRlciB0aGUg ZmxpcAo+ID4gICAgaGFzIGhhcHBlbmRlZCAoZWcuIG5lZWQgdG8gcmVhbGxvY2F0ZSB0aGUgY2Zi IGR1ZSB0byBwbGFuZSBzaXplL2Zvcm1hdCBjaGFuZ2UpCj4gPiAzLiBwbGFuZSB1cGRhdGUgd2hp Y2ggbmVlZHMgdG8gZGlzYWJsZSBmYmMgYW5kIGNhbid0IHJlLWVuYWJsZSBpdCAoZWcuIHRoZSBu ZXcKPiA+ICAgIHBsYW5lIHN0YXRlIG5vIGxvbmdlciBmYmMgY29tcGF0aWJsZSkKPiA+IDQuIGZy b250IGJ1ZmZlciBpbnZhbGlkYXRlICsgZmx1c2gKPiA+Cj4gPiBIVyBudWtlIHdpbGwgaGFuZGxl IGNhc2UgMS4gQ2FzZSAyIGNvdWxkIGRvIHRoZSBmYmMgcmUtZW5hYmxlIGFmdGVyIHRoZQo+ID4g cG9zdC1mbGlwIHZibGFuayB3YWl0LiBDYXNlIDMgd291bGQgaWRlYWxseSBsZXQgdXMgbW92ZSBG QkMgdG8gYW5vdGhlcgo+ID4gcGxhbmUgKHRoaW5raW5nIG9mIHByZS1IU1cgaGFyZHdhcmUgaGVy ZSkuIEFuZCBjYXNlIDQgbXVzdCByZS1lbmFibGUgZmJjCj4gPiBhZnRlciB0aGUgZmx1c2ggaGFz IGhhcHBlbmVkLgo+IEkgZG9uJ3Qgc2VlIGhvdyB0aGlzIGNvZGUgd2lsbCBicmVhayBhbnkgY2Fz ZS4gOikKCk9LLCBzbyBJIGd1ZXNzIHlvdSBqdXN0IHJlbW92ZSB0aGUgZGVsYXllZCBhY3RpdmF0 aW9uIGF0CmZsdXNoL3Bvc3RfcGxhbmVfdXBkYXRlLiBTbyBub3cgaXQnbGwgZW5hYmxlIGl0IGlt bWVkaWF0ZWx5LgoKSG1tLCBhbmQgaWYgd2UganVzdCBnZXQgYSBmbHVzaCB3aXRob3V0IHRoZSBp bnZhbGlkYXRlIHRoZW4gd2UncmUgZ29pbmcKdG8ganVzdCB1c2UgdGhlIG51a2UgbXNnIHJlZ2lz dGVyIGFueXdheS4gU28gSSBzdXBwb3NlIHRoaXMgc2hvdWxkbid0CmNhdXNlIG11Y2ggYWRkaXRp b25hbCBmYmMgb248LT5vZmYgcGluZyBwb25nLgoKQWN0dWFsbHksIGFyZSB3ZSBub3cgZWZmZWNp dGl2ZWx5IGZvcmNpbmcgYSBzeW5jaHJvbm91cyB2Ymxhbmsgd2FpdAppbiBwcmVfcGxhbmVfdXBk YXRlIGZvciBldmVyeSBmcmFtZSB2aWEgdGhlIGh3X2RlYWN0aXZhdGUoKSBwb2xsaW5nCmZvciBm YmMgdG8gc3RvcD8gQUZBSUNTIHdpdGggdGhlIHJlLWVuYWJsZSBub3cgYmVpbmcgaW1tZWRpYXRl IHdlJ3JlCmdvaW5nIHRvIGhhdmUgdG8gZGlzYWJsZSBmYmMgZXZlcnkgc2luZ2xlIHRpbWUuIEkg dGhpbmsgdGhlIGNvcnJlY3QKZml4IGZvciB0aGF0IHdvdWxkIGludm9sdmUgYSkgbm90IGRpc2Fi bGluZyBmYmMgYXJvdW5kIGZsaXBzIHdoZW4gdGhlCmh3IGZsaXAgbnVrZSB3aWxsIHN1ZmZpY2Us IGFuZCBiKSBjb252ZXJ0IHRoZSAid2FpdCBmb3IgZmJjIHRvIGRpc2FibGUiCnRoaW5nIGludG8g YSBwb3N0X3BsYW5lX3VwZGF0ZSB0aW1lIGFzc2VydCAoYW5kIHZlcmlmeSB3aGV0aGVyIHRoZSBo dwppcyBhY3R1YWxseSBoYXBweSB3aXRoIGRpc2FibGluZyBib3RoIGZiYyBhbmQgdGhlIHBsYW5l IGF0IHRoZSBzYW1lCnRpbWUpLgoKPiAKPiB+TWFhcnRlbgo+IAo+ID4+IFdlJ3ZlIGFscmVhZHkg Zm9yY2VkIGEgdmJsYW5rIHdhaXQgYnkgZG9pbmcKPiA+PiB3YWl0X2Zvcl9mbGlwX2RvbmUgYmVm b3JlIGludGVsX3Bvc3RfcGxhbmVfdXBkYXRlKCksIHNvIHdlIGRvbid0IG5lZWQKPiA+PiB0byB3 YWl0IGEgc2Vjb25kIHRpbWUgYmVmb3JlIGVuYWJsaW5nLgo+ID4+Cj4gPj4gUmVtb3ZpbmcgdGhl IHdvcmtlciBzaW1wbGlmaWVzIHRoZSBjb2RlIGFuZCByZW1vdmVzIHBvc3NpYmxlIHJhY2UKPiA+ PiBjb25kaXRpb25zLCBsaWtlIGhhcHBlbmluZyBpbiAxMDMxNjcuCj4gPj4KPiA+PiBDYzogUGF1 bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+Cj4gPj4gQ2M6IFJvZHJpZ28gVml2 aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KPiA+PiBCdWd6aWxsYTogaHR0cHM6Ly9idWdzLmZy ZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMTY3Cj4gPj4gU2lnbmVkLW9mZi1ieTog TWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KPiA+ PiAtLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgfCAgNSAtLQo+ ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICB8ICA2IC0tCj4gPj4gIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiYy5jICAgIHwgOTYgKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KPiA+PiAgMyBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMTA2IGRl bGV0aW9ucygtKQo+ID4+Cj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiA+PiBp bmRleCBjNDAwZjQyYTU0ZWMuLjQ4YTU3YzA2MzZiZiAxMDA2NDQKPiA+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZGVidWdmcy5jCj4gPj4gQEAgLTE2NTksMTEgKzE2NTksNiBAQCBzdGF0aWMgaW50 IGk5MTVfZmJjX3N0YXR1cyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKnVudXNlZCkKPiA+PiAg CWVsc2UKPiA+PiAgCQlzZXFfcHJpbnRmKG0sICJGQkMgZGlzYWJsZWQ6ICVzXG4iLCBmYmMtPm5v X2ZiY19yZWFzb24pOwo+ID4+ICAKPiA+PiAtCWlmIChmYmMtPndvcmsuc2NoZWR1bGVkKQo+ID4+ IC0JCXNlcV9wcmludGYobSwgIkZCQyB3b3JrZXIgc2NoZWR1bGVkIG9uIHZibGFuayAlbGx1LCBu b3cgJWxsdVxuIiwKPiA+PiAtCQkJICAgZmJjLT53b3JrLnNjaGVkdWxlZF92YmxhbmssCj4gPj4g LQkJCSAgIGRybV9jcnRjX3ZibGFua19jb3VudCgmZmJjLT5jcnRjLT5iYXNlKSk7Cj4gPj4gLQo+ ID4+ICAJaWYgKGludGVsX2ZiY19pc19hY3RpdmUoZGV2X3ByaXYpKSB7Cj4gPj4gIAkJdTMyIG1h c2s7Cj4gPj4gIAo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ID4+IGluZGV4IDMyOGQ0MzEy YzQzOC4uOTY0NWRjYjMwNDU0IDEwMDY0NAo+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmgKPiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4g Pj4gQEAgLTU4MCwxMiArNTgwLDYgQEAgc3RydWN0IGludGVsX2ZiYyB7Cj4gPj4gIAkJdW5zaWdu ZWQgaW50IGdlbjlfd2FfY2ZiX3N0cmlkZTsKPiA+PiAgCX0gcGFyYW1zOwo+ID4+ICAKPiA+PiAt CXN0cnVjdCBpbnRlbF9mYmNfd29yayB7Cj4gPj4gLQkJYm9vbCBzY2hlZHVsZWQ7Cj4gPj4gLQkJ dTY0IHNjaGVkdWxlZF92Ymxhbms7Cj4gPj4gLQkJc3RydWN0IHdvcmtfc3RydWN0IHdvcms7Cj4g Pj4gLQl9IHdvcms7Cj4gPj4gLQo+ID4+ICAJY29uc3QgY2hhciAqbm9fZmJjX3JlYXNvbjsKPiA+ PiAgfTsKPiA+PiAgCj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2ZiYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJjLmMKPiA+PiBpbmRleCA5Zjll YTBiNTQ1MmYuLjAxZDFkMjA4OGYwNCAxMDA2NDQKPiA+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9mYmMuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Zi Yy5jCj4gPj4gQEAgLTM5OSw4OSArMzk5LDYgQEAgYm9vbCBpbnRlbF9mYmNfaXNfYWN0aXZlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+PiAgCXJldHVybiBkZXZfcHJpdi0+ ZmJjLmFjdGl2ZTsKPiA+PiAgfQo+ID4+ICAKPiA+PiAtc3RhdGljIHZvaWQgaW50ZWxfZmJjX3dv cmtfZm4oc3RydWN0IHdvcmtfc3RydWN0ICpfX3dvcmspCj4gPj4gLXsKPiA+PiAtCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9Cj4gPj4gLQkJY29udGFpbmVyX29mKF9fd29yaywg c3RydWN0IGRybV9pOTE1X3ByaXZhdGUsIGZiYy53b3JrLndvcmspOwo+ID4+IC0Jc3RydWN0IGlu dGVsX2ZiYyAqZmJjID0gJmRldl9wcml2LT5mYmM7Cj4gPj4gLQlzdHJ1Y3QgaW50ZWxfZmJjX3dv cmsgKndvcmsgPSAmZmJjLT53b3JrOwo+ID4+IC0Jc3RydWN0IGludGVsX2NydGMgKmNydGMgPSBm YmMtPmNydGM7Cj4gPj4gLQlzdHJ1Y3QgZHJtX3ZibGFua19jcnRjICp2YmxhbmsgPSAmZGV2X3By aXYtPmRybS52YmxhbmtbY3J0Yy0+cGlwZV07Cj4gPj4gLQo+ID4+IC0JaWYgKGRybV9jcnRjX3Zi bGFua19nZXQoJmNydGMtPmJhc2UpKSB7Cj4gPj4gLQkJLyogQ1JUQyBpcyBub3cgb2ZmLCBsZWF2 ZSBGQkMgZGVhY3RpdmF0ZWQgKi8KPiA+PiAtCQltdXRleF9sb2NrKCZmYmMtPmxvY2spOwo+ID4+ IC0JCXdvcmstPnNjaGVkdWxlZCA9IGZhbHNlOwo+ID4+IC0JCW11dGV4X3VubG9jaygmZmJjLT5s b2NrKTsKPiA+PiAtCQlyZXR1cm47Cj4gPj4gLQl9Cj4gPj4gLQo+ID4+IC1yZXRyeToKPiA+PiAt CS8qIERlbGF5IHRoZSBhY3R1YWwgZW5hYmxpbmcgdG8gbGV0IHBhZ2VmbGlwcGluZyBjZWFzZSBh bmQgdGhlCj4gPj4gLQkgKiBkaXNwbGF5IHRvIHNldHRsZSBiZWZvcmUgc3RhcnRpbmcgdGhlIGNv bXByZXNzaW9uLiBOb3RlIHRoYXQKPiA+PiAtCSAqIHRoaXMgZGVsYXkgYWxzbyBzZXJ2ZXMgYSBz ZWNvbmQgcHVycG9zZTogaXQgYWxsb3dzIGZvciBhCj4gPj4gLQkgKiB2YmxhbmsgdG8gcGFzcyBh ZnRlciBkaXNhYmxpbmcgdGhlIEZCQyBiZWZvcmUgd2UgYXR0ZW1wdAo+ID4+IC0JICogdG8gbW9k aWZ5IHRoZSBjb250cm9sIHJlZ2lzdGVycy4KPiA+PiAtCSAqCj4gPj4gLQkgKiBXYUZiY1dhaXRG b3JWQmxhbmtCZWZvcmVFbmFibGU6aWxrLHNuYgo+ID4+IC0JICoKPiA+PiAtCSAqIEl0IGlzIGFs c28gd29ydGggbWVudGlvbmluZyB0aGF0IHNpbmNlIHdvcmstPnNjaGVkdWxlZF92YmxhbmsgY2Fu IGJlCj4gPj4gLQkgKiB1cGRhdGVkIG11bHRpcGxlIHRpbWVzIGJ5IHRoZSBvdGhlciB0aHJlYWRz LCBoaXR0aW5nIHRoZSB0aW1lb3V0IGlzCj4gPj4gLQkgKiBub3QgYW4gZXJyb3IgY29uZGl0aW9u LiBXZSdsbCBqdXN0IGVuZCB1cCBoaXR0aW5nIHRoZSAiZ290byByZXRyeSIKPiA+PiAtCSAqIGNh c2UgYmVsb3cuCj4gPj4gLQkgKi8KPiA+PiAtCXdhaXRfZXZlbnRfdGltZW91dCh2YmxhbmstPnF1 ZXVlLAo+ID4+IC0JCWRybV9jcnRjX3ZibGFua19jb3VudCgmY3J0Yy0+YmFzZSkgIT0gd29yay0+ c2NoZWR1bGVkX3ZibGFuaywKPiA+PiAtCQltc2Vjc190b19qaWZmaWVzKDUwKSk7Cj4gPj4gLQo+ ID4+IC0JbXV0ZXhfbG9jaygmZmJjLT5sb2NrKTsKPiA+PiAtCj4gPj4gLQkvKiBXZXJlIHdlIGNh bmNlbGxlZD8gKi8KPiA+PiAtCWlmICghd29yay0+c2NoZWR1bGVkKQo+ID4+IC0JCWdvdG8gb3V0 Owo+ID4+IC0KPiA+PiAtCS8qIFdlcmUgd2UgZGVsYXllZCBhZ2FpbiB3aGlsZSB0aGlzIGZ1bmN0 aW9uIHdhcyBzbGVlcGluZz8gKi8KPiA+PiAtCWlmIChkcm1fY3J0Y192YmxhbmtfY291bnQoJmNy dGMtPmJhc2UpID09IHdvcmstPnNjaGVkdWxlZF92YmxhbmspIHsKPiA+PiAtCQltdXRleF91bmxv Y2soJmZiYy0+bG9jayk7Cj4gPj4gLQkJZ290byByZXRyeTsKPiA+PiAtCX0KPiA+PiAtCj4gPj4g LQlpbnRlbF9mYmNfaHdfYWN0aXZhdGUoZGV2X3ByaXYpOwo+ID4+IC0KPiA+PiAtCXdvcmstPnNj aGVkdWxlZCA9IGZhbHNlOwo+ID4+IC0KPiA+PiAtb3V0Ogo+ID4+IC0JbXV0ZXhfdW5sb2NrKCZm YmMtPmxvY2spOwo+ID4+IC0JZHJtX2NydGNfdmJsYW5rX3B1dCgmY3J0Yy0+YmFzZSk7Cj4gPj4g LX0KPiA+PiAtCj4gPj4gLXN0YXRpYyB2b2lkIGludGVsX2ZiY19zY2hlZHVsZV9hY3RpdmF0aW9u KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+ID4+IC17Cj4gPj4gLQlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKPiA+PiAtCXN0cnVj dCBpbnRlbF9mYmMgKmZiYyA9ICZkZXZfcHJpdi0+ZmJjOwo+ID4+IC0Jc3RydWN0IGludGVsX2Zi Y193b3JrICp3b3JrID0gJmZiYy0+d29yazsKPiA+PiAtCj4gPj4gLQlXQVJOX09OKCFtdXRleF9p c19sb2NrZWQoJmZiYy0+bG9jaykpOwo+ID4+IC0JaWYgKFdBUk5fT04oIWZiYy0+ZW5hYmxlZCkp Cj4gPj4gLQkJcmV0dXJuOwo+ID4+IC0KPiA+PiAtCWlmIChkcm1fY3J0Y192YmxhbmtfZ2V0KCZj cnRjLT5iYXNlKSkgewo+ID4+IC0JCURSTV9FUlJPUigidmJsYW5rIG5vdCBhdmFpbGFibGUgZm9y IEZCQyBvbiBwaXBlICVjXG4iLAo+ID4+IC0JCQkgIHBpcGVfbmFtZShjcnRjLT5waXBlKSk7Cj4g Pj4gLQkJcmV0dXJuOwo+ID4+IC0JfQo+ID4+IC0KPiA+PiAtCS8qIEl0IGlzIHVzZWxlc3MgdG8g Y2FsbCBpbnRlbF9mYmNfY2FuY2VsX3dvcmsoKSBvciBjYW5jZWxfd29yaygpIGluCj4gPj4gLQkg KiB0aGlzIGZ1bmN0aW9uIHNpbmNlIHdlJ3JlIG5vdCByZWxlYXNpbmcgZmJjLmxvY2ssIHNvIGl0 IHdvbid0IGhhdmUgYW4KPiA+PiAtCSAqIG9wcG9ydHVuaXR5IHRvIGdyYWIgaXQgdG8gZGlzY292 ZXIgdGhhdCBpdCB3YXMgY2FuY2VsbGVkLiBTbyB3ZSBqdXN0Cj4gPj4gLQkgKiB1cGRhdGUgdGhl IGV4cGVjdGVkIGppZmZ5IGNvdW50LiAqLwo+ID4+IC0Jd29yay0+c2NoZWR1bGVkID0gdHJ1ZTsK PiA+PiAtCXdvcmstPnNjaGVkdWxlZF92YmxhbmsgPSBkcm1fY3J0Y192YmxhbmtfY291bnQoJmNy dGMtPmJhc2UpOwo+ID4+IC0JZHJtX2NydGNfdmJsYW5rX3B1dCgmY3J0Yy0+YmFzZSk7Cj4gPj4g LQo+ID4+IC0Jc2NoZWR1bGVfd29yaygmd29yay0+d29yayk7Cj4gPj4gLX0KPiA+PiAtCj4gPj4g IHN0YXRpYyB2b2lkIGludGVsX2ZiY19kZWFjdGl2YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwKPiA+PiAgCQkJCSBjb25zdCBjaGFyICpyZWFzb24pCj4gPj4gIHsKPiA+PiBA QCAtNDg5LDExICs0MDYsNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9mYmNfZGVhY3RpdmF0ZShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPj4gIAo+ID4+ICAJV0FSTl9PTighbXV0 ZXhfaXNfbG9ja2VkKCZmYmMtPmxvY2spKTsKPiA+PiAgCj4gPj4gLQkvKiBDYWxsaW5nIGNhbmNl bF93b3JrKCkgaGVyZSB3b24ndCBoZWxwIGR1ZSB0byB0aGUgZmFjdCB0aGF0IHRoZSB3b3JrCj4g Pj4gLQkgKiBmdW5jdGlvbiBncmFicyBmYmMtPmxvY2suIEp1c3Qgc2V0IHNjaGVkdWxlZCB0byBm YWxzZSBzbyB0aGUgd29yawo+ID4+IC0JICogZnVuY3Rpb24gY2FuIGtub3cgaXQgd2FzIGNhbmNl bGxlZC4gKi8KPiA+PiAtCWZiYy0+d29yay5zY2hlZHVsZWQgPSBmYWxzZTsKPiA+PiAtCj4gPj4g IAlpZiAoZmJjLT5hY3RpdmUpCj4gPj4gIAkJaW50ZWxfZmJjX2h3X2RlYWN0aXZhdGUoZGV2X3By aXYpOwo+ID4+ICAKPiA+PiBAQCAtMTAwNSw3ICs5MTcsNyBAQCBzdGF0aWMgdm9pZCBfX2ludGVs X2ZiY19wb3N0X3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKPiA+PiAgCj4gPj4gIAlp ZiAoIWZiYy0+YnVzeV9iaXRzKSB7Cj4gPj4gIAkJaW50ZWxfZmJjX2RlYWN0aXZhdGUoZGV2X3By aXYsICJGQkMgZW5hYmxlZCAoYWN0aXZlIG9yIHNjaGVkdWxlZCkiKTsKPiA+PiAtCQlpbnRlbF9m YmNfc2NoZWR1bGVfYWN0aXZhdGlvbihjcnRjKTsKPiA+PiArCQlpbnRlbF9mYmNfaHdfYWN0aXZh dGUoZGV2X3ByaXYpOwo+ID4+ICAJfSBlbHNlCj4gPj4gIAkJaW50ZWxfZmJjX2RlYWN0aXZhdGUo ZGV2X3ByaXYsICJmcm9udGJ1ZmZlciB3cml0ZSIpOwo+ID4+ICB9Cj4gPj4gQEAgLTEyMTIsOCAr MTEyNCw2IEBAIHZvaWQgaW50ZWxfZmJjX2Rpc2FibGUoc3RydWN0IGludGVsX2NydGMgKmNydGMp Cj4gPj4gIAlpZiAoZmJjLT5jcnRjID09IGNydGMpCj4gPj4gIAkJX19pbnRlbF9mYmNfZGlzYWJs ZShkZXZfcHJpdik7Cj4gPj4gIAltdXRleF91bmxvY2soJmZiYy0+bG9jayk7Cj4gPj4gLQo+ID4+ IC0JY2FuY2VsX3dvcmtfc3luYygmZmJjLT53b3JrLndvcmspOwo+ID4+ICB9Cj4gPj4gIAo+ID4+ ICAvKioKPiA+PiBAQCAtMTIzNSw4ICsxMTQ1LDYgQEAgdm9pZCBpbnRlbF9mYmNfZ2xvYmFsX2Rp c2FibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4+ICAJCV9faW50ZWxf ZmJjX2Rpc2FibGUoZGV2X3ByaXYpOwo+ID4+ICAJfQo+ID4+ICAJbXV0ZXhfdW5sb2NrKCZmYmMt PmxvY2spOwo+ID4+IC0KPiA+PiAtCWNhbmNlbF93b3JrX3N5bmMoJmZiYy0+d29yay53b3JrKTsK PiA+PiAgfQo+ID4+ICAKPiA+PiAgc3RhdGljIHZvaWQgaW50ZWxfZmJjX3VuZGVycnVuX3dvcmtf Zm4oc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQo+ID4+IEBAIC0xMzg3LDEyICsxMjk1LDEwIEBA IHZvaWQgaW50ZWxfZmJjX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ ID4+ICB7Cj4gPj4gIAlzdHJ1Y3QgaW50ZWxfZmJjICpmYmMgPSAmZGV2X3ByaXYtPmZiYzsKPiA+ PiAgCj4gPj4gLQlJTklUX1dPUksoJmZiYy0+d29yay53b3JrLCBpbnRlbF9mYmNfd29ya19mbik7 Cj4gPj4gIAlJTklUX1dPUksoJmZiYy0+dW5kZXJydW5fd29yaywgaW50ZWxfZmJjX3VuZGVycnVu X3dvcmtfZm4pOwo+ID4+ICAJbXV0ZXhfaW5pdCgmZmJjLT5sb2NrKTsKPiA+PiAgCWZiYy0+ZW5h YmxlZCA9IGZhbHNlOwo+ID4+ICAJZmJjLT5hY3RpdmUgPSBmYWxzZTsKPiA+PiAtCWZiYy0+d29y ay5zY2hlZHVsZWQgPSBmYWxzZTsKPiA+PiAgCj4gPj4gIAlpZiAobmVlZF9mYmNfdnRkX3dhKGRl dl9wcml2KSkKPiA+PiAgCQlta3dyaXRlX2RldmljZV9pbmZvKGRldl9wcml2KS0+aGFzX2ZiYyA9 IGZhbHNlOwo+ID4+IC0tIAo+ID4+IDIuMTguMAo+ID4+Cj4gPj4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+PiBJbnRlbC1nZnggbWFpbGluZyBsaXN0 Cj4gPj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4+IGh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cj4gCgotLSAKVmlsbGUg U3lyasOkbMOkCkludGVsCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=