From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH] drm/i915: Move the renderstate setup under gt/ Date: Thu, 04 Jul 2019 13:29:58 +0300 Message-ID: <87imsi2iu1.fsf@gaia.fi.intel.com> References: <20190704091925.7391-1-chris@chris-wilson.co.uk> 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 ESMTPS id 775986E2F7 for ; Thu, 4 Jul 2019 10:30:07 +0000 (UTC) In-Reply-To: <20190704091925.7391-1-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+IHdyaXRlczoKCj4gVGhlIHJl bmRlciBzdGF0ZSBpcyB1c2VkIHRvIGluaXRpYWxpc2UgdGhlIGRlZmF1bHQgUkNTIGNvbnRleHQs IGFuZCBvbmx5Cj4gdXNlZCBkdXJpbmcgZWFybHkgc2V0dXAgZnJvbSB3aXRoaW4gdGhlIGd0IGNv ZGUuIEFzIHN1Y2gsIGl0IG1ha2VzIGEKPiBnb29kIGNhbmRpZGF0ZSBmb3IgcGxhY2luZyB3aXRo aW4gZ3QvLCBldmVuIGlmIGl0IGlzIG5vdCB5ZXQgZW50aXJlbHkKPiBjbGVhbiBvZiBvdXIgR0VN IGhlcml0YWdlLgo+Cj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13 aWxzb24uY28udWs+Cj4gQ2M6IE1pa2EgS3VvcHBhbGEgPG1pa2Eua3VvcHBhbGFAbGludXguaW50 ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZSAgICAgICAgICAg ICAgICAgfCAxNSArKysrLS0tLS0KPiAgLi4uL2dlbjZfcmVuZGVyc3RhdGUuY30gICAgICAgICAg ICAgICAgICAgICAgIHwgIDAKPiAgLi4uL2dlbjdfcmVuZGVyc3RhdGUuY30gICAgICAgICAgICAg ICAgICAgICAgIHwgIDAKCk1pc3Rha2VzIHdlcmUgbWFkZSBpbiBwYXN0LiBQYWluZnVsIHJlbWlu ZGVyLgoKCj4gIC4uLi9nZW44X3JlbmRlcnN0YXRlLmN9ICAgICAgICAgICAgICAgICAgICAgICB8 ICAwCj4gIC4uLi9nZW45X3JlbmRlcnN0YXRlLmN9ICAgICAgICAgICAgICAgICAgICAgICB8ICAw CgpJIHNlZWsgYXRvbmVtZW50IG9uIHBsYXlpbmcgbXkgcGFydCB0aGF0IGdlbjEwCmRpZCBub3Qg bWF0ZXJpYWxpemUuCgpQYXRjaCBpcywKUmV2aWV3ZWQtYnk6IE1pa2EgS3VvcHBhbGEgPG1pa2Eu a3VvcHBhbGFAbGludXguaW50ZWwuY29tPgoKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50 ZWxfbHJjLmMgICAgICAgICAgIHwgIDYgKystLQo+ICAuLi4vaW50ZWxfcmVuZGVyc3RhdGUuY30g ICAgICAgICAgICAgICAgICAgICAgfCAgOSArKystLS0KPiAgLi4uL2dwdS9kcm0vaTkxNS97ID0+ IGd0fS9pbnRlbF9yZW5kZXJzdGF0ZS5oIHwgMTAgKysrKy0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2d0L2ludGVsX3JpbmdidWZmZXIuYyAgICB8ICA3ICsrLS0tCj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5oICB8IDMxIC0tLS0tLS0tLS0tLS0tLS0tLS0K PiAgMTAgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgNTMgZGVsZXRpb25zKC0pCj4g IHJlbmFtZSBkcml2ZXJzL2dwdS9kcm0vaTkxNS97aW50ZWxfcmVuZGVyc3RhdGVfZ2VuNi5jID0+ IGd0L2dlbjZfcmVuZGVyc3RhdGUuY30gKDEwMCUpCj4gIHJlbmFtZSBkcml2ZXJzL2dwdS9kcm0v aTkxNS97aW50ZWxfcmVuZGVyc3RhdGVfZ2VuNy5jID0+IGd0L2dlbjdfcmVuZGVyc3RhdGUuY30g KDEwMCUpCj4gIHJlbmFtZSBkcml2ZXJzL2dwdS9kcm0vaTkxNS97aW50ZWxfcmVuZGVyc3RhdGVf Z2VuOC5jID0+IGd0L2dlbjhfcmVuZGVyc3RhdGUuY30gKDEwMCUpCj4gIHJlbmFtZSBkcml2ZXJz L2dwdS9kcm0vaTkxNS97aW50ZWxfcmVuZGVyc3RhdGVfZ2VuOS5jID0+IGd0L2dlbjlfcmVuZGVy c3RhdGUuY30gKDEwMCUpCj4gIHJlbmFtZSBkcml2ZXJzL2dwdS9kcm0vaTkxNS97aTkxNV9nZW1f cmVuZGVyX3N0YXRlLmMgPT4gZ3QvaW50ZWxfcmVuZGVyc3RhdGUuY30gKDk2JSkKPiAgcmVuYW1l IGRyaXZlcnMvZ3B1L2RybS9pOTE1L3sgPT4gZ3R9L2ludGVsX3JlbmRlcnN0YXRlLmggKDkxJSkK PiAgZGVsZXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRl cl9zdGF0ZS5oCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZQo+IGluZGV4IDgyYzQ5YWQxNjM2MS4uZDNh ZGEzMTM0MzI4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUKPiBAQCAtNzgsMTQgKzc4LDIyIEBA IGd0LXkgKz0gXAo+ICAJZ3QvaW50ZWxfZ3RfcG0ubyBcCj4gIAlndC9pbnRlbF9oYW5nY2hlY2su byBcCj4gIAlndC9pbnRlbF9scmMubyBcCj4gKwlndC9pbnRlbF9yZW5kZXJzdGF0ZS5vIFwKPiAg CWd0L2ludGVsX3Jlc2V0Lm8gXAo+ICAJZ3QvaW50ZWxfcmluZ2J1ZmZlci5vIFwKPiAgCWd0L2lu dGVsX21vY3MubyBcCj4gIAlndC9pbnRlbF9zc2V1Lm8gXAo+ICAJZ3QvaW50ZWxfdGltZWxpbmUu byBcCj4gIAlndC9pbnRlbF93b3JrYXJvdW5kcy5vCj4gKyMgYXV0b2dlbmVyYXRlZCBudWxsIHJl bmRlciBzdGF0ZQo+ICtndC15ICs9IFwKPiArCWd0L2dlbjZfcmVuZGVyc3RhdGUubyBcCj4gKwln dC9nZW43X3JlbmRlcnN0YXRlLm8gXAo+ICsJZ3QvZ2VuOF9yZW5kZXJzdGF0ZS5vIFwKPiArCWd0 L2dlbjlfcmVuZGVyc3RhdGUubwo+ICBndC0kKENPTkZJR19EUk1fSTkxNV9TRUxGVEVTVCkgKz0g XAo+ICAJZ3QvbW9ja19lbmdpbmUubwo+ICsKPiAgaTkxNS15ICs9ICQoZ3QteSkKPiAgCj4gICMg R0VNIChHcmFwaGljcyBFeGVjdXRpb24gTWFuYWdlbWVudCkgY29kZQo+IEBAIC0xMjMsNyArMTMx LDYgQEAgaTkxNS15ICs9IFwKPiAgCSAgaTkxNV9nZW1fZmVuY2VfcmVnLm8gXAo+ICAJICBpOTE1 X2dlbV9ndHQubyBcCj4gIAkgIGk5MTVfZ2VtLm8gXAo+IC0JICBpOTE1X2dlbV9yZW5kZXJfc3Rh dGUubyBcCj4gIAkgIGk5MTVfZ2xvYmFscy5vIFwKPiAgCSAgaTkxNV9xdWVyeS5vIFwKPiAgCSAg aTkxNV9yZXF1ZXN0Lm8gXAo+IEBAIC0xNDQsMTIgKzE1MSw2IEBAIGk5MTUteSArPSBpbnRlbF91 Yy5vIFwKPiAgCSAgaW50ZWxfaHVjLm8gXAo+ICAJICBpbnRlbF9odWNfZncubwo+ICAKPiAtIyBh dXRvZ2VuZXJhdGVkIG51bGwgcmVuZGVyIHN0YXRlCj4gLWk5MTUteSArPSBpbnRlbF9yZW5kZXJz dGF0ZV9nZW42Lm8gXAo+IC0JICBpbnRlbF9yZW5kZXJzdGF0ZV9nZW43Lm8gXAo+IC0JICBpbnRl bF9yZW5kZXJzdGF0ZV9nZW44Lm8gXAo+IC0JICBpbnRlbF9yZW5kZXJzdGF0ZV9nZW45Lm8KPiAt Cj4gICMgbW9kZXNldHRpbmcgY29yZSBjb2RlCj4gIG9iai15ICs9IGRpc3BsYXkvCj4gIGk5MTUt eSArPSBcCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JlbmRlcnN0 YXRlX2dlbjYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2dlbjZfcmVuZGVyc3RhdGUuYwo+ IHNpbWlsYXJpdHkgaW5kZXggMTAwJQo+IHJlbmFtZSBmcm9tIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JlbmRlcnN0YXRlX2dlbjYuYwo+IHJlbmFtZSB0byBkcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9nZW42X3JlbmRlcnN0YXRlLmMKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmVuZGVyc3RhdGVfZ2VuNy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvZ2Vu N19yZW5kZXJzdGF0ZS5jCj4gc2ltaWxhcml0eSBpbmRleCAxMDAlCj4gcmVuYW1lIGZyb20gZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmVuZGVyc3RhdGVfZ2VuNy5jCj4gcmVuYW1lIHRvIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2dlbjdfcmVuZGVyc3RhdGUuYwo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yZW5kZXJzdGF0ZV9nZW44LmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9ndC9nZW44X3JlbmRlcnN0YXRlLmMKPiBzaW1pbGFyaXR5IGluZGV4IDEwMCUK PiByZW5hbWUgZnJvbSBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yZW5kZXJzdGF0ZV9nZW44 LmMKPiByZW5hbWUgdG8gZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvZ2VuOF9yZW5kZXJzdGF0ZS5j Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JlbmRlcnN0YXRlX2dl bjkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2dlbjlfcmVuZGVyc3RhdGUuYwo+IHNpbWls YXJpdHkgaW5kZXggMTAwJQo+IHJlbmFtZSBmcm9tIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3JlbmRlcnN0YXRlX2dlbjkuYwo+IHJlbmFtZSB0byBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9n ZW45X3JlbmRlcnN0YXRlLmMKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qv aW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuYwo+IGluZGV4 IDFlODVlMDRjNThjNC4uZjViMDliMjlmNTBlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d0L2ludGVsX2xyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50 ZWxfbHJjLmMKPiBAQCAtMTM1LDEzICsxMzUsMTMgQEAKPiAgCj4gICNpbmNsdWRlICJnZW0vaTkx NV9nZW1fY29udGV4dC5oIgo+ICAKPiAtI2luY2x1ZGUgImd0L2ludGVsX2d0LmgiCj4gICNpbmNs dWRlICJpOTE1X2Rydi5oIgo+IC0jaW5jbHVkZSAiaTkxNV9nZW1fcmVuZGVyX3N0YXRlLmgiCj4g ICNpbmNsdWRlICJpOTE1X3ZncHUuaCIKPiAgI2luY2x1ZGUgImludGVsX2VuZ2luZV9wbS5oIgo+ ICsjaW5jbHVkZSAiaW50ZWxfZ3QuaCIKPiAgI2luY2x1ZGUgImludGVsX2xyY19yZWcuaCIKPiAg I2luY2x1ZGUgImludGVsX21vY3MuaCIKPiArI2luY2x1ZGUgImludGVsX3JlbmRlcnN0YXRlLmgi Cj4gICNpbmNsdWRlICJpbnRlbF9yZXNldC5oIgo+ICAjaW5jbHVkZSAiaW50ZWxfd29ya2Fyb3Vu ZHMuaCIKPiAgCj4gQEAgLTI2NzcsNyArMjY3Nyw3IEBAIHN0YXRpYyBpbnQgZ2VuOF9pbml0X3Jj c19jb250ZXh0KHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxKQo+ICAJaWYgKHJldCkKPiAgCQlEUk1f RVJST1IoIk1PQ1MgZmFpbGVkIHRvIHByb2dyYW06IGV4cGVjdCBwZXJmb3JtYW5jZSBpc3N1ZXMu XG4iKTsKPiAgCj4gLQlyZXR1cm4gaTkxNV9nZW1fcmVuZGVyX3N0YXRlX2VtaXQocnEpOwo+ICsJ cmV0dXJuIGludGVsX3JlbmRlcnN0YXRlX2VtaXQocnEpOwo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9p ZCBleGVjbGlzdHNfcGFyayhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVuZGVyc3RhdGUuYwo+IHNpbWlsYXJpdHkgaW5k ZXggOTYlCj4gcmVuYW1lIGZyb20gZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVy X3N0YXRlLmMKPiByZW5hbWUgdG8gZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVuZGVy c3RhdGUuYwo+IGluZGV4IDZiZGEwOGMxZThkNy4uMDZhOGRjNDBiMTlmIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVuZGVyc3RhdGUuYwo+IEBAIC0yNiwxMCArMjYs OSBAQAo+ICAgKi8KPiAgCj4gICNpbmNsdWRlICJpOTE1X2Rydi5oIgo+IC0jaW5jbHVkZSAiaTkx NV9nZW1fcmVuZGVyX3N0YXRlLmgiCj4gICNpbmNsdWRlICJpbnRlbF9yZW5kZXJzdGF0ZS5oIgo+ ICAKPiAtc3RydWN0IGludGVsX3JlbmRlcl9zdGF0ZSB7Cj4gK3N0cnVjdCBpbnRlbF9yZW5kZXJz dGF0ZSB7Cj4gIAljb25zdCBzdHJ1Y3QgaW50ZWxfcmVuZGVyc3RhdGVfcm9kYXRhICpyb2RhdGE7 Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwo+ICAJc3RydWN0IGk5MTVfdm1h ICp2bWE7Cj4gQEAgLTc1LDcgKzc0LDcgQEAgcmVuZGVyX3N0YXRlX2dldF9yb2RhdGEoY29uc3Qg c3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ICAJCShiYXRjaClbKGkpKytdID0gKHZh bCk7CQkJCVwKPiAgCX0gd2hpbGUoMCkKPiAgCj4gLXN0YXRpYyBpbnQgcmVuZGVyX3N0YXRlX3Nl dHVwKHN0cnVjdCBpbnRlbF9yZW5kZXJfc3RhdGUgKnNvLAo+ICtzdGF0aWMgaW50IHJlbmRlcl9z dGF0ZV9zZXR1cChzdHJ1Y3QgaW50ZWxfcmVuZGVyc3RhdGUgKnNvLAo+ICAJCQkgICAgICBzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKPiAgewo+ICAJY29uc3Qgc3RydWN0IGludGVsX3Jl bmRlcnN0YXRlX3JvZGF0YSAqcm9kYXRhID0gc28tPnJvZGF0YTsKPiBAQCAtMTc3LDEwICsxNzYs MTAgQEAgc3RhdGljIGludCByZW5kZXJfc3RhdGVfc2V0dXAoc3RydWN0IGludGVsX3JlbmRlcl9z dGF0ZSAqc28sCj4gIAo+ICAjdW5kZWYgT1VUX0JBVENICj4gIAo+IC1pbnQgaTkxNV9nZW1fcmVu ZGVyX3N0YXRlX2VtaXQoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEpCj4gK2ludCBpbnRlbF9yZW5k ZXJzdGF0ZV9lbWl0KHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxKQo+ICB7Cj4gIAlzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICplbmdpbmUgPSBycS0+ZW5naW5lOwo+IC0Jc3RydWN0IGludGVsX3JlbmRl cl9zdGF0ZSBzbyA9IHt9OyAvKiBrZWVwIHRoZSBjb21waWxlciBoYXBweSAqLwo+ICsJc3RydWN0 IGludGVsX3JlbmRlcnN0YXRlIHNvID0ge307IC8qIGtlZXAgdGhlIGNvbXBpbGVyIGhhcHB5ICov Cj4gIAlpbnQgZXJyOwo+ICAKPiAgCXNvLnJvZGF0YSA9IHJlbmRlcl9zdGF0ZV9nZXRfcm9kYXRh KGVuZ2luZSk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JlbmRl cnN0YXRlLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yZW5kZXJzdGF0ZS5oCj4g c2ltaWxhcml0eSBpbmRleCA5MSUKPiByZW5hbWUgZnJvbSBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yZW5kZXJzdGF0ZS5oCj4gcmVuYW1lIHRvIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX3JlbmRlcnN0YXRlLmgKPiBpbmRleCAwOGY2ZmVhMDVhMmMuLjhkNTA3OTE0NTA1NCAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yZW5kZXJzdGF0ZS5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmVuZGVyc3RhdGUuaAo+IEBAIC0yMSwx MSArMjEsMTMgQEAKPiAgICogREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLgo+ICAgKi8KPiAgCj4g LSNpZm5kZWYgX0lOVEVMX1JFTkRFUlNUQVRFX0gKPiAtI2RlZmluZSBfSU5URUxfUkVOREVSU1RB VEVfSAo+ICsjaWZuZGVmIF9JTlRFTF9SRU5ERVJTVEFURV9IXwo+ICsjZGVmaW5lIF9JTlRFTF9S RU5ERVJTVEFURV9IXwo+ICAKPiAgI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Cj4gIAo+ICtzdHJ1 Y3QgaTkxNV9yZXF1ZXN0Owo+ICsKPiAgc3RydWN0IGludGVsX3JlbmRlcnN0YXRlX3JvZGF0YSB7 Cj4gIAljb25zdCB1MzIgKnJlbG9jOwo+ICAJY29uc3QgdTMyICpiYXRjaDsKPiBAQCAtNDQsNCAr NDYsNiBAQCBleHRlcm4gY29uc3Qgc3RydWN0IGludGVsX3JlbmRlcnN0YXRlX3JvZGF0YSBnZW43 X251bGxfc3RhdGU7Cj4gIGV4dGVybiBjb25zdCBzdHJ1Y3QgaW50ZWxfcmVuZGVyc3RhdGVfcm9k YXRhIGdlbjhfbnVsbF9zdGF0ZTsKPiAgZXh0ZXJuIGNvbnN0IHN0cnVjdCBpbnRlbF9yZW5kZXJz dGF0ZV9yb2RhdGEgZ2VuOV9udWxsX3N0YXRlOwo+ICAKPiAtI2VuZGlmIC8qIElOVEVMX1JFTkRF UlNUQVRFX0ggKi8KPiAraW50IGludGVsX3JlbmRlcnN0YXRlX2VtaXQoc3RydWN0IGk5MTVfcmVx dWVzdCAqcnEpOwo+ICsKPiArI2VuZGlmIC8qIF9JTlRFTF9SRU5ERVJTVEFURV9IXyAqLwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5nYnVmZmVyLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5nYnVmZmVyLmMKPiBpbmRleCA4MWY5YjA0 MjJlNmEuLmY4MDRlYzM1MDM3ZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9n dC9pbnRlbF9yaW5nYnVmZmVyLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRl bF9yaW5nYnVmZmVyLmMKPiBAQCAtMzMsMTIgKzMzLDExIEBACj4gIAo+ICAjaW5jbHVkZSAiZ2Vt L2k5MTVfZ2VtX2NvbnRleHQuaCIKPiAgCj4gLSNpbmNsdWRlICJndC9pbnRlbF9ndC5oIgo+IC0K PiAgI2luY2x1ZGUgImk5MTVfZHJ2LmgiCj4gLSNpbmNsdWRlICJpOTE1X2dlbV9yZW5kZXJfc3Rh dGUuaCIKPiAgI2luY2x1ZGUgImk5MTVfdHJhY2UuaCIKPiAgI2luY2x1ZGUgImludGVsX2NvbnRl eHQuaCIKPiArI2luY2x1ZGUgImludGVsX2d0LmgiCj4gKyNpbmNsdWRlICJpbnRlbF9yZW5kZXJz dGF0ZS5oIgo+ICAjaW5jbHVkZSAiaW50ZWxfcmVzZXQuaCIKPiAgI2luY2x1ZGUgImludGVsX3dv cmthcm91bmRzLmgiCj4gIAo+IEBAIC04MTMsNyArODEyLDcgQEAgc3RhdGljIGludCBpbnRlbF9y Y3NfY3R4X2luaXQoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEpCj4gIAlpZiAocmV0ICE9IDApCj4g IAkJcmV0dXJuIHJldDsKPiAgCj4gLQlyZXQgPSBpOTE1X2dlbV9yZW5kZXJfc3RhdGVfZW1pdChy cSk7Cj4gKwlyZXQgPSBpbnRlbF9yZW5kZXJzdGF0ZV9lbWl0KHJxKTsKPiAgCWlmIChyZXQpCj4g IAkJcmV0dXJuIHJldDsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX3JlbmRlcl9zdGF0ZS5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVu ZGVyX3N0YXRlLmgKPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAxMTJjZGE4ZmEx YTguLjAwMDAwMDAwMDAwMAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3Jl bmRlcl9zdGF0ZS5oCj4gKysrIC9kZXYvbnVsbAo+IEBAIC0xLDMxICswLDAgQEAKPiAtLyoKPiAt ICogQ29weXJpZ2h0IMKpIDIwMTQgSW50ZWwgQ29ycG9yYXRpb24KPiAtICoKPiAtICogUGVybWlz c2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0 YWluaW5nIGEKPiAtICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3Vt ZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwKPiAtICogdG8gZGVhbCBpbiB0aGUgU29m dHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbgo+ IC0gKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlz dHJpYnV0ZSwgc3VibGljZW5zZSwKPiAtICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0 d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlCj4gLSAqIFNvZnR3YXJlIGlz IGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6 Cj4gLSAqCj4gLSAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Np b24gbm90aWNlIChpbmNsdWRpbmcgdGhlIG5leHQKPiAtICogcGFyYWdyYXBoKSBzaGFsbCBiZSBp bmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZQo+IC0g KiBTb2Z0d2FyZS4KPiAtICoKPiAtICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIs IFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKPiAtICogSU1QTElFRCwg SU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC SUxJVFksCj4gLSAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZS SU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAo+IC0gKiBUSEUgQVVUSE9SUyBPUiBDT1BZUklH SFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUgo+IC0g KiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9U SEVSV0lTRSwgQVJJU0lORwo+IC0gKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRI IFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCj4gLSAqIERFQUxJTkdTIElOIFRIRSBT T0ZUV0FSRS4KPiAtICovCj4gLQo+IC0jaWZuZGVmIF9JOTE1X0dFTV9SRU5ERVJfU1RBVEVfSF8K PiAtI2RlZmluZSBfSTkxNV9HRU1fUkVOREVSX1NUQVRFX0hfCj4gLQo+IC1zdHJ1Y3QgaTkxNV9y ZXF1ZXN0Owo+IC0KPiAtaW50IGk5MTVfZ2VtX3JlbmRlcl9zdGF0ZV9lbWl0KHN0cnVjdCBpOTE1 X3JlcXVlc3QgKnJxKTsKPiAtCj4gLSNlbmRpZiAvKiBfSTkxNV9HRU1fUkVOREVSX1NUQVRFX0hf ICovCj4gLS0gCj4gMi4yMC4xCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeA==