From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915: Make CHICKEN_TRANS reg not depend on enum value Date: Mon, 26 Nov 2018 09:33:13 +0200 Message-ID: <877eh0xphi.fsf@intel.com> References: <20181119163326.23743-1-imre.deak@intel.com> <87h8g8c86x.fsf@intel.com> <20181123160357.GB6775@ideak-desk.fi.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4A2366E2AB for ; Mon, 26 Nov 2018 07:33:17 +0000 (UTC) In-Reply-To: <20181123160357.GB6775@ideak-desk.fi.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: imre.deak@intel.com Cc: intel-gfx@lists.freedesktop.org, Lucas De Marchi List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCAyMyBOb3YgMjAxOCwgSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPiB3cm90 ZToKPiBPbiBGcmksIE5vdiAyMywgMjAxOCBhdCAwMjowMzoxOFBNICswMjAwLCBKYW5pIE5pa3Vs YSB3cm90ZToKPj4gT24gTW9uLCAxOSBOb3YgMjAxOCwgSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50 ZWwuY29tPiB3cm90ZToKPj4gPiBEZXBlbmRpbmcgb24gdGhlIHRyYW5zY29kZXIgZW51bSB2YWx1 ZXMgdG8gdHJhbnNsYXRlIGZyb20gdHJhbnNjb2RlciB0byB0aGUKPj4gPiBjb3JyZXNwb25kaW5n IENISUNLRU5fVFJBTlMgcmVnaXN0ZXIgY2FuIGVhc2lseSBicmVhayBpZiB3ZSBhZGQgYSBuZXcK Pj4gPiB0cmFuc2NvZGVyLiBBZGQgYW4gZXhwbGljaXQgbWFwcGluZyBpbnN0ZWFkLCBieSB1c2lu ZyBoZWxwZXJzIHRvIGxvb2sgdXAgdGhlCj4+ID4gcmVnaXN0ZXIgaW5zdGFuY2UgZWl0aGVyIGJ5 IHRyYW5zY29kZXIgb3IgcG9ydCAoc2luY2UgdW5jb252ZW5pZW50bHkgdGhlCj4+ID4gcmVnaXN0 ZXJzIGhhdmUgYm90aCBwb3J0IGFuZCB0cmFuc2NvZGVyIHNwZWNpZmljIGJpdHMpLgo+PiA+Cj4+ ID4gV2hpbGUgYXQgaXQgYWxzbyBjaGVjayBmb3IgdGhlIGNvcnJlY3RuZXNzIG9mIEdFTiwgcG9y dCwgdHJhbnNjb2Rlci4gSSB3YXNuJ3QKPj4gPiBzdXJlIGlmIHBzcjJfZW5hYmxlZCBjYW4gb25s eSBiZSBzZXQgZm9yIEdFTjkrLCBidXQgdGhhdCBzZWVtcyB0byBiZSB0aGUgY2FzZQo+PiA+IGlu ZGVlZCAoc2VlIHNldHRpbmcgb2Ygc2lua19wc3IyX3N1cHBvcnQgaW4gaW50ZWxfcHNyX2luaXRf ZHBjZCgpKS4KPj4gPgo+PiA+IENjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGlu dXguaW50ZWwuY29tPgo+PiA+IENjOiBMdWNhcyBEZSBNYXJjaGkgPGx1Y2FzLmRlbWFyY2hpQGlu dGVsLmNvbT4KPj4gPiBDYzogTWlrYSBLYWhvbGEgPG1pa2Eua2Fob2xhQGludGVsLmNvbT4KPj4g PiBTaWduZWQtb2ZmLWJ5OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4+ID4gLS0t Cj4+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggIHwgIDcgKysrLS0tCj4+ID4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jIHwgNTMgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLQo+PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaCB8ICAyICsrCj4+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Bzci5jIHwgIDYg KysrLS0KPj4gPiAgNCBmaWxlcyBjaGFuZ2VkLCA1MSBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlv bnMoLSkKPj4gPgo+PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Jl Zy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+PiA+IGluZGV4IDI1YjA2OTE3 NWMyYS4uMWJlZWQzOWRlMzAzIDEwMDY0NAo+PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmgKPj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4+ ID4gQEAgLTczOTksOSArNzM5OSwxMCBAQCBlbnVtIHsKPj4gPiAgI2RlZmluZSAgQkRXX0RQUlNf TUFTS19WQkxBTktfU1JECSgxIDw8IDApCj4+ID4gICNkZWZpbmUgQ0hJQ0tFTl9QSVBFU0xfMShw aXBlKSBfTU1JT19QSVBFKHBpcGUsIF9DSElDS0VOX1BJUEVTTF8xX0EsIF9DSElDS0VOX1BJUEVT TF8xX0IpCj4+ID4gIAo+PiA+IC0jZGVmaW5lIENISUNLRU5fVFJBTlNfQSAgICAgICAgIDB4NDIw YzAKPj4gPiAtI2RlZmluZSBDSElDS0VOX1RSQU5TX0IgICAgICAgICAweDQyMGM0Cj4+ID4gLSNk ZWZpbmUgQ0hJQ0tFTl9UUkFOUyh0cmFucykgX01NSU9fVFJBTlModHJhbnMsIENISUNLRU5fVFJB TlNfQSwgQ0hJQ0tFTl9UUkFOU19CKQo+PiA+ICsjZGVmaW5lIENISUNLRU5fVFJBTlNfQQkJX01N SU8oMHg0MjBjMCkKPj4gPiArI2RlZmluZSBDSElDS0VOX1RSQU5TX0IJCV9NTUlPKDB4NDIwYzQp Cj4+ID4gKyNkZWZpbmUgQ0hJQ0tFTl9UUkFOU19DCQlfTU1JTygweDQyMGM4KQo+PiA+ICsjZGVm aW5lIENISUNLRU5fVFJBTlNfRURQCV9NTUlPKDB4NDIwY2MpCj4+ID4gICNkZWZpbmUgIFZTQ19E QVRBX1NFTF9TT0ZUV0FSRV9DT05UUk9MCSgxIDw8IDI1KSAvKiBHTEsgYW5kIENOTCsgKi8KPj4g PiAgI2RlZmluZSAgRERJX1RSQUlOSU5HX09WRVJSSURFX0VOQUJMRQkoMSA8PCAxOSkKPj4gPiAg I2RlZmluZSAgRERJX1RSQUlOSU5HX09WRVJSSURFX1ZBTFVFCSgxIDw8IDE4KQo+PiA+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RkaS5jCj4+ID4gaW5kZXggMDQwNDgzYzk2MDI5Li4xMjZlNmFhYzMzNWQg MTAwNjQ0Cj4+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPj4gPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+PiA+IEBAIC0zMzgwLDYgKzMz ODAsNDIgQEAgc3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX2RkaV9kcChzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqZW5jb2RlciwKPj4gPiAgCQlpbnRlbF9hdWRpb19jb2RlY19lbmFibGUoZW5jb2Rlciwg Y3J0Y19zdGF0ZSwgY29ubl9zdGF0ZSk7Cj4+ID4gIH0KPj4gPiAgCj4+ID4gK2k5MTVfcmVnX3Qg Z2VuOV9jaGlja2VuX3RyYW5zX3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs Cj4+ID4gKwkJCQkgIGVudW0gdHJhbnNjb2RlciB0cmFucykKPj4gPiArewo+PiA+ICsJc3RhdGlj IGNvbnN0IGk5MTVfcmVnX3QgcmVnc1tdID0gewo+PiA+ICsJCVtUUkFOU0NPREVSX0FdID0gQ0hJ Q0tFTl9UUkFOU19BLAo+PiA+ICsJCVtUUkFOU0NPREVSX0JdID0gQ0hJQ0tFTl9UUkFOU19CLAo+ PiA+ICsJCVtUUkFOU0NPREVSX0NdID0gQ0hJQ0tFTl9UUkFOU19DLAo+PiA+ICsJCVtUUkFOU0NP REVSX0VEUF0gPSBDSElDS0VOX1RSQU5TX0VEUCwKPj4gPiArCX07Cj4+ID4gKwo+PiA+ICsJV0FS Tl9PTihJTlRFTF9HRU4oZGV2X3ByaXYpIDwgOSk7Cj4+ID4gKwo+PiA+ICsJaWYgKFdBUk5fT04o dHJhbnMgPj0gQVJSQVlfU0laRShyZWdzKSB8fCAhcmVnc1t0cmFuc10ucmVnKSkKPj4gPiArCQl0 cmFucyA9IFRSQU5TQ09ERVJfQTsKPj4gPiArCj4+ID4gKwlyZXR1cm4gcmVnc1t0cmFuc107Cj4+ ID4gK30KPj4gCj4+IEknbSBsYXRlIHRvIHRoZSBwYXJ0eSwgYnV0IGl0IGtpbmQgb2YgbWFrZXMg bWUgc2FkIHRoYXQgd2UncmUgbm93Cj4+IGludHJvZHVjaW5nIHlldCBhbm90aGVyIHdheSB0byBj aG9vc2UgcmVnaXN0ZXJzIGJhc2VkIG9uIHRyYW5zY29kZXIgKG9yCj4+IHNvbWUgb3RoZXIgaW5k ZXgpLiBBbmQgdGhpcyBvbmUgaXMgaGFuZC1yb2xsZWQsIHdpdGggbG9jYWwgZnVuY3Rpb25zCj4+ IGluc3RlYWQgb2YgcHV0dGluZyBpdCB0byBpOTE1X3JlZy5oLgo+Cj4gRGlkbid0IG9jY3VyIHRv IG1lIHRoYXQgX1BJQ0sgY291bGQgYmUgdXNlZCB3aXRoIG5hbWVkIGluaXRpYWxpemVycy4uIFdl Cj4gd291bGQgc3RpbGwgbWlzcyB0aGUgY2hlY2tzIHdoaWNoIEkgYWRkZWQgaGVyZSBmb3IgaW5j b3JyZWN0IGluZGljZXMsCj4gYnV0IHRoYXQncyBhIHNlcGFyYXRlIGlzc3VlIGZyb20gd2hhdCBJ IHdhbnRlZCB0byBzb2x2ZSBpbiB0aGlzIHBhdGNoLgo+IFNvIHRoZSBmb2xsb3dpbmcgd291bGQg d29yayB0b286CgpIYSEgSXQgZGlkbid0IG9jY3VyIHRvIG1lIGVpdGhlciB5b3UgY291bGQgdXNl IGRlc2lnbmF0ZWQgaW5pdGlhbGl6ZXJzCndpdGggX1BJQ0suIEl0J3Mga2luZCBvZiBuZWF0Li4u IGluIGEgc2Nhcnkgd2F5LiA6KQoKV2UgZG8gbWlzcyB0aGUgY2hlY2tzIGZvciBpbmNvcnJlY3Qg aW5kaWNlcyB0aHJvdWdob3V0IHRoZSBjb2RlIGJhc2UuIFNvCkknbSBub3QgdGhhdCB3b3JyaWVk IGFib3V0IGl0IGluIHRoaXMgcGFydGljdWxhciBjYXNlLiBBcyB5b3Ugc2F5LCBhCnNlcGFyYXRl IGlzc3VlLgoKSSdkIGdvIHdpdGggdGhpcyBjaGFuZ2UuCgpCUiwKSmFuaS4KCgo+Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPmIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaCBpbmRleCA0N2JhZjJmZThmNzEuLmRmYTU0NzgzMmRhZQo+MTAwNjQ0 IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggKysrCj5iL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcmVnLmggQEAgLTczOTksMTAgKzczOTksMzEgQEAgZW51bSB7Cj4jZGVm aW5lIEJEV19EUFJTX01BU0tfVkJMQU5LX1NSRCAoMSA8PCAwKSAjZGVmaW5lCj5DSElDS0VOX1BJ UEVTTF8xKHBpcGUpIF9NTUlPX1BJUEUocGlwZSwgX0NISUNLRU5fUElQRVNMXzFfQSwKPl9DSElD S0VOX1BJUEVTTF8xX0IpCj4gIAo+IC0jZGVmaW5lIENISUNLRU5fVFJBTlNfQQkJX01NSU8oMHg0 MjBjMCkKPiAtI2RlZmluZSBDSElDS0VOX1RSQU5TX0IJCV9NTUlPKDB4NDIwYzQpCj4gLSNkZWZp bmUgQ0hJQ0tFTl9UUkFOU19DCQlfTU1JTygweDQyMGM4KQo+IC0jZGVmaW5lIENISUNLRU5fVFJB TlNfRURQCV9NTUlPKDB4NDIwY2MpCj4gKyNkZWZpbmUgX0NISUNLRU5fVFJBTlNfQQkJMHg0MjBj MAo+ICsjZGVmaW5lIF9DSElDS0VOX1RSQU5TX0IJCTB4NDIwYzQKPiArI2RlZmluZSBfQ0hJQ0tF Tl9UUkFOU19DCQkweDQyMGM4Cj4gKyNkZWZpbmUgX0NISUNLRU5fVFJBTlNfRURQCQkweDQyMGNj Cj4gKyNkZWZpbmUgQ0hJQ0tFTl9UUkFOUyh0cmFucykJCV9NTUlPKF9QSUNLKHRyYW5zLCBcCj4g KwkJCQkJCSAgICBbVFJBTlNDT0RFUl9BXSA9IFwKPiArCQkJCQkJCV9DSElDS0VOX1RSQU5TX0Es IFwKPiArCQkJCQkJICAgIFtUUkFOU0NPREVSX0JdID0gXAo+ICsJCQkJCQkJX0NISUNLRU5fVFJB TlNfQiwgXAo+ICsJCQkJCQkgICAgW1RSQU5TQ09ERVJfQ10gPSBcCj4gKwkJCQkJCQlfQ0hJQ0tF Tl9UUkFOU19DLCBcCj4gKwkJCQkJCSAgICBbVFJBTlNDT0RFUl9FRFBdID0gXAo+ICsJCQkJCQkJ X0NISUNLRU5fVFJBTlNfRURQKSkKPiArCj4gKyNkZWZpbmUgQ0hJQ0tFTl9UUkFOU19CWVBPUlQo cG9ydCkJX01NSU8oX1BJQ0socG9ydCwgXAo+ICsJCQkJCQkgICAgW1BPUlRfQV0gPSBcCj4gKwkJ CQkJCQlfQ0hJQ0tFTl9UUkFOU19FRFAsIFwKPiArCQkJCQkJICAgIFtQT1JUX0JdID0gXAo+ICsJ CQkJCQkJX0NISUNLRU5fVFJBTlNfQSwgXAo+ICsJCQkJCQkgICAgW1BPUlRfQ10gPSBcCj4gKwkJ CQkJCQlfQ0hJQ0tFTl9UUkFOU19CLCBcCj4gKwkJCQkJCSAgICBbUE9SVF9EXSA9IFwKPiArCQkJ CQkJCV9DSElDS0VOX1RSQU5TX0MsIFwKPiArCQkJCQkJICAgIFtQT1JUX0VdID0gXAo+ICsJCQkJ CQkJX0NISUNLRU5fVFJBTlNfQSkpCj4gICNkZWZpbmUgIFZTQ19EQVRBX1NFTF9TT0ZUV0FSRV9D T05UUk9MCSgxIDw8IDI1KSAvKiBHTEsgYW5kIENOTCsgKi8KPiAgI2RlZmluZSAgRERJX1RSQUlO SU5HX09WRVJSSURFX0VOQUJMRQkoMSA8PCAxOSkKPiAgI2RlZmluZSAgRERJX1RSQUlOSU5HX09W RVJSSURFX1ZBTFVFCSgxIDw8IDE4KQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gaW5kZXgg YWQxMTU0MGFjNDM2Li5jMjYxMzIwMzMwYjYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGRpLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGku Ywo+IEBAIC0zMzgwLDI2ICszMzgwLDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX2RkaV9k cChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQlpbnRlbF9hdWRpb19jb2RlY19l bmFibGUoZW5jb2RlciwgY3J0Y19zdGF0ZSwgY29ubl9zdGF0ZSk7Cj4gIH0KPiAgCj4gLXN0YXRp YyBpOTE1X3JlZ190Cj4gLWdlbjlfY2hpY2tlbl90cmFuc19yZWdfYnlfcG9ydChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gLQkJCSAgICAgICBlbnVtIHBvcnQgcG9ydCkKPiAt ewo+IC0Jc3RhdGljIGNvbnN0IGk5MTVfcmVnX3QgcmVnc1tdID0gewo+IC0JCVtQT1JUX0FdID0g Q0hJQ0tFTl9UUkFOU19FRFAsCj4gLQkJW1BPUlRfQl0gPSBDSElDS0VOX1RSQU5TX0EsCj4gLQkJ W1BPUlRfQ10gPSBDSElDS0VOX1RSQU5TX0IsCj4gLQkJW1BPUlRfRF0gPSBDSElDS0VOX1RSQU5T X0MsCj4gLQkJW1BPUlRfRV0gPSBDSElDS0VOX1RSQU5TX0EsCj4gLQl9Owo+IC0KPiAtCVdBUk5f T04oSU5URUxfR0VOKGRldl9wcml2KSA8IDkpOwo+IC0KPiAtCWlmIChXQVJOX09OKHBvcnQgPCBQ T1JUX0EgfHwgcG9ydCA+IFBPUlRfRSkpCj4gLQkJcG9ydCA9IFBPUlRfQTsKPiAtCj4gLQlyZXR1 cm4gcmVnc1twb3J0XTsKPiAtfQo+IC0KPiAgc3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX2RkaV9o ZG1pKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkJICBjb25zdCBzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAgCQkJCSAgY29uc3Qgc3RydWN0IGRybV9j b25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpCj4gQEAgLTM0MjMsMTAgKzM0MDMsNyBAQCBzdGF0 aWMgdm9pZCBpbnRlbF9lbmFibGVfZGRpX2hkbWkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4gIAkJICogdGhlIGJpdHMgYWZmZWN0IGEgc3BlY2lmaWMgRERJIHBvcnQgcmF0aGVyIHRo YW4KPiAgCQkgKiBhIHNwZWNpZmljIHRyYW5zY29kZXIuCj4gIAkJICovCj4gLQkJaTkxNV9yZWdf dCByZWcgPSBnZW45X2NoaWNrZW5fdHJhbnNfcmVnX2J5X3BvcnQoZGV2X3ByaXYsIHBvcnQpOwo+ IC0JCXUzMiB2YWw7Cj4gLQo+IC0JCXZhbCA9IEk5MTVfUkVBRChyZWcpOwo+ICsJCXUzMiB2YWwg PSBJOTE1X1JFQUQoQ0hJQ0tFTl9UUkFOU19CWVBPUlQocG9ydCkpOwo+ICAKPiAgCQlpZiAocG9y dCA9PSBQT1JUX0UpCj4gIAkJCXZhbCB8PSBERElFX1RSQUlOSU5HX09WRVJSSURFX0VOQUJMRSB8 Cj4gQEAgLTM0MzUsOCArMzQxMiw4IEBAIHN0YXRpYyB2b2lkIGludGVsX2VuYWJsZV9kZGlfaGRt aShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJdmFsIHw9IERESV9UUkFJTklO R19PVkVSUklERV9FTkFCTEUgfAo+ICAJCQkJRERJX1RSQUlOSU5HX09WRVJSSURFX1ZBTFVFOwo+ ICAKPiAtCQlJOTE1X1dSSVRFKHJlZywgdmFsKTsKPiAtCQlQT1NUSU5HX1JFQUQocmVnKTsKPiAr CQlJOTE1X1dSSVRFKENISUNLRU5fVFJBTlNfQllQT1JUKHBvcnQpLCB2YWwpOwo+ICsJCVBPU1RJ TkdfUkVBRChDSElDS0VOX1RSQU5TX0JZUE9SVChwb3J0KSk7Cj4gIAo+ICAJCXVkZWxheSgxKTsK PiAgCj4gQEAgLTM0NDcsNyArMzQyNCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2VuYWJsZV9kZGlf aGRtaShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJdmFsICY9IH4oRERJX1RS QUlOSU5HX09WRVJSSURFX0VOQUJMRSB8Cj4gIAkJCQkgRERJX1RSQUlOSU5HX09WRVJSSURFX1ZB TFVFKTsKPiAgCj4gLQkJSTkxNV9XUklURShyZWcsIHZhbCk7Cj4gKwkJSTkxNV9XUklURShDSElD S0VOX1RSQU5TX0JZUE9SVChwb3J0KSwgdmFsKTsKPiAgCX0KPiAgCj4gIAkvKiBJbiBIRE1JL0RW SSBtb2RlLCB0aGUgcG9ydCB3aWR0aCwgYW5kIHN3aW5nL2VtcGhhc2lzIHZhbHVlcwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wc3IuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3Bzci5jCj4gaW5kZXggNTRmYTE3YTU1OTZhLi43NjY2N2M1ZDc4MDAgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wc3IuYwo+IEBAIC01NzcsMjUgKzU3Nyw2IEBAIHN0YXRp YyB2b2lkIGludGVsX3Bzcl9hY3RpdmF0ZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICAJ ZGV2X3ByaXYtPnBzci5hY3RpdmUgPSB0cnVlOwo+ICB9Cj4gIAo+IC1zdGF0aWMgaTkxNV9yZWdf dCBnZW45X2NoaWNrZW5fdHJhbnNfcmVnKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwKPiAtCQkJCQkgZW51bSB0cmFuc2NvZGVyIGNwdV90cmFuc2NvZGVyKQo+IC17Cj4gLQlzdGF0 aWMgY29uc3QgaTkxNV9yZWdfdCByZWdzW10gPSB7Cj4gLQkJW1RSQU5TQ09ERVJfQV0gPSBDSElD S0VOX1RSQU5TX0EsCj4gLQkJW1RSQU5TQ09ERVJfQl0gPSBDSElDS0VOX1RSQU5TX0IsCj4gLQkJ W1RSQU5TQ09ERVJfQ10gPSBDSElDS0VOX1RSQU5TX0MsCj4gLQkJW1RSQU5TQ09ERVJfRURQXSA9 IENISUNLRU5fVFJBTlNfRURQLAo+IC0JfTsKPiAtCj4gLQlXQVJOX09OKElOVEVMX0dFTihkZXZf cHJpdikgPCA5KTsKPiAtCj4gLQlpZiAoV0FSTl9PTihjcHVfdHJhbnNjb2RlciA+PSBBUlJBWV9T SVpFKHJlZ3MpIHx8Cj4gLQkJICAgICFyZWdzW2NwdV90cmFuc2NvZGVyXS5yZWcpKQo+IC0JCWNw dV90cmFuc2NvZGVyID0gVFJBTlNDT0RFUl9BOwo+IC0KPiAtCXJldHVybiByZWdzW2NwdV90cmFu c2NvZGVyXTsKPiAtfQo+IC0KPiAgc3RhdGljIHZvaWQgaW50ZWxfcHNyX2VuYWJsZV9zb3VyY2Uo c3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKPiAgCQkJCSAgICBjb25zdCBzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAgewo+IEBAIC02MTAsOSArNTkxLDEwIEBAIHN0YXRp YyB2b2lkIGludGVsX3Bzcl9lbmFibGVfc291cmNlKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAs Cj4gIAkJaHN3X3Bzcl9zZXR1cF9hdXgoaW50ZWxfZHApOwo+ICAKPiAgCWlmIChkZXZfcHJpdi0+ cHNyLnBzcjJfZW5hYmxlZCkgewo+IC0JCWk5MTVfcmVnX3QgcmVnID0gZ2VuOV9jaGlja2VuX3Ry YW5zX3JlZyhkZXZfcHJpdiwKPiAtCQkJCQkJCWNwdV90cmFuc2NvZGVyKTsKPiAtCQl1MzIgY2hp Y2tlbiA9IEk5MTVfUkVBRChyZWcpOwo+ICsJCXUzMiBjaGlja2VuOwo+ICsKPiArCQlXQVJOX09O KElOVEVMX0dFTihkZXZfcHJpdikgPCA5KTsKPiArCQljaGlja2VuID0gSTkxNV9SRUFEKENISUNL RU5fVFJBTlMoY3B1X3RyYW5zY29kZXIpKTsKPiAgCj4gIAkJaWYgKElTX0dFTjkoZGV2X3ByaXYp ICYmICFJU19HRU1JTklMQUtFKGRldl9wcml2KSkKPiAgCQkJY2hpY2tlbiB8PSAoUFNSMl9WU0Nf RU5BQkxFX1BST0dfSEVBREVSCj4gQEAgLTYyMCw3ICs2MDIsOCBAQCBzdGF0aWMgdm9pZCBpbnRl bF9wc3JfZW5hYmxlX3NvdXJjZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAKPiAgCQll bHNlCj4gIAkJCWNoaWNrZW4gJj0gflZTQ19EQVRBX1NFTF9TT0ZUV0FSRV9DT05UUk9MOwo+IC0J CUk5MTVfV1JJVEUocmVnLCBjaGlja2VuKTsKPiArCj4gKwkJSTkxNV9XUklURShDSElDS0VOX1RS QU5TKGNwdV90cmFuc2NvZGVyKSwgY2hpY2tlbik7Cj4gIAl9Cj4gIAo+ICAJLyoKPgoKLS0gCkph bmkgTmlrdWxhLCBJbnRlbCBPcGVuIFNvdXJjZSBHcmFwaGljcyBDZW50ZXIKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==