From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm/i915: Handle pipe CRC around enabling/disabling pipe. Date: Wed, 7 Mar 2018 15:23:12 +0200 Message-ID: <20180307132312.GM5453@intel.com> References: <20180307121026.15289-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id ADFED6E713 for ; Wed, 7 Mar 2018 13:23:16 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20180307121026.15289-1-maarten.lankhorst@linux.intel.com> 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 List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBNYXIgMDcsIDIwMTggYXQgMDE6MTA6MjZQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gVGhpcyB3aWxsIGdldCByaWQgb2YgdGhlIGZvbGxvd2luZyBlcnJvcjoKPiBb ICAgNzQuNzMwMjcxXSBXQVJOSU5HOiBDUFU6IDQgUElEOiAwIGF0IGRyaXZlcnMvZ3B1L2RybS9k cm1fdmJsYW5rLmM6NjE0IGRybV9jYWxjX3ZibHRpbWVzdGFtcF9mcm9tX3NjYW5vdXRwb3MrMHgx M2UvMHgyZjAKPiBbICAgNzQuNzMwMzExXSBNb2R1bGVzIGxpbmtlZCBpbjogdmdlbSBzbmRfaGRh X2NvZGVjX2hkbWkgc25kX2hkYV9jb2RlY19yZWFsdGVrIHNuZF9oZGFfY29kZWNfZ2VuZXJpYyBp OTE1IHg4Nl9wa2dfdGVtcF90aGVybWFsIGludGVsX3Bvd2VyY2xhbXAgY29yZXRlbXAgc25kX2hk YV9pbnRlbCBjcmN0MTBkaWZfcGNsbXVsIHNuZF9oZGFfY29kZWMgY3JjMzJfcGNsbXVsIHNuZF9o d2RlcCBicm9hZGNvbSBnaGFzaF9jbG11bG5pX2ludGVsIHNuZF9oZGFfY29yZSBiY21fcGh5X2xp YiBzbmRfcGNtIHRnMyBscGNfaWNoIG1laV9tZSBtZWkgcHJpbWVfbnVtYmVycwo+IFsgICA3NC43 MzAzNTNdIENQVTogNCBQSUQ6IDAgQ29tbTogc3dhcHBlci80IFRhaW50ZWQ6IEcgICAgIFUgICAg ICAgICAgIDQuMTYuMC1yYzItQ0ktQ0lfRFJNXzM4MjIrICMxCj4gWyAgIDc0LjczMDM1NV0gSGFy ZHdhcmUgbmFtZTogRGVsbCBJbmMuIFhQUyA4MzAwICAvMFkyTVJHLCBCSU9TIEEwNiAxMC8xNy8y MDExCj4gWyAgIDc0LjczMDM1OV0gUklQOiAwMDEwOmRybV9jYWxjX3ZibHRpbWVzdGFtcF9mcm9t X3NjYW5vdXRwb3MrMHgxM2UvMHgyZjAKPiBbICAgNzQuNzMwMzYxXSBSU1A6IDAwMTg6ZmZmZjg4 MDIyZmIwM2QxMCBFRkxBR1M6IDAwMDEwMDg2Cj4gWyAgIDc0LjczMDM2NV0gUkFYOiBmZmZmZmZm ZmEwMjkxZDIwIFJCWDogZmZmZjg4MDIxYTE4MDAwMCBSQ1g6IDAwMDAwMDAwMDAwMDAwMDEKPiBb ICAgNzQuNzMwMzY3XSBSRFg6IGZmZmZmZmZmODIwZTdkYjggUlNJOiAwMDAwMDAwMDAwMDAwMDAx IFJESTogZmZmZmZmZmY4MjA2OGNlYQo+IFsgICA3NC43MzAzNjldIFJCUDogZmZmZjg4MDIyZmIw M2Q3MCBSMDg6IDAwMDAwMDAwMDAwMDAwMDAgUjA5OiBmZmZmZmZmZjgxNWQyNmQwCj4gWyAgIDc0 LjczMDM3MV0gUjEwOiAwMDAwMDAwMDAwMDAwMDAwIFIxMTogZmZmZmZmZmZhMDE2MWNhMCBSMTI6 IDAwMDAwMDAwMDAwMDAwMDEKPiBbICAgNzQuNzMwMzczXSBSMTM6IGZmZmY4ODAyMTI0NDgwMDgg UjE0OiBmZmZmODgwMjEyNDQ4MzMwIFIxNTogMDAwMDAwMDAwMDAwMDAwMAo+IFsgICA3NC43MzAz NzZdIEZTOiAgMDAwMDAwMDAwMDAwMDAwMCgwMDAwKSBHUzpmZmZmODgwMjJmYjAwMDAwKDAwMDAp IGtubEdTOjAwMDAwMDAwMDAwMDAwMDAKPiBbICAgNzQuNzMwMzc4XSBDUzogIDAwMTAgRFM6IDAw MDAgRVM6IDAwMDAgQ1IwOiAwMDAwMDAwMDgwMDUwMDMzCj4gWyAgIDc0LjczMDM4MF0gQ1IyOiAw MDAwNTVlZGNiZWM5MDAwIENSMzogMDAwMDAwMDAwMjIxMDAwMSBDUjQ6IDAwMDAwMDAwMDAwNjA2 ZTAKPiBbICAgNzQuNzMwMzgyXSBDYWxsIFRyYWNlOgo+IFsgICA3NC43MzAzODVdICA8SVJRPgo+ IFsgICA3NC43MzAzOTddICBkcm1fZ2V0X2xhc3RfdmJsdGltZXN0YW1wKzB4MzYvMHg1MAo+IFsg ICA3NC43MzA0MDFdICBkcm1fdXBkYXRlX3ZibGFua19jb3VudCsweDY0LzB4MjQwCj4gWyAgIDc0 LjczMDQwOV0gIGRybV9jcnRjX2FjY3VyYXRlX3ZibGFua19jb3VudCsweDQxLzB4OTAKPiBbICAg NzQuNzMwNDUzXSAgZGlzcGxheV9waXBlX2NyY19pcnFfaGFuZGxlcisweDE3Ni8weDIyMCBbaTkx NV0KPiBbICAgNzQuNzMwNDk3XSAgaTl4eF9waXBlX2NyY19pcnFfaGFuZGxlcisweGZlLzB4MTUw IFtpOTE1XQo+IFsgICA3NC43MzA1MzddICBpcm9ubGFrZV9pcnFfaGFuZGxlcisweDYxOC8weGEz MCBbaTkxNV0KPiBbICAgNzQuNzMwNTQ4XSAgX19oYW5kbGVfaXJxX2V2ZW50X3BlcmNwdSsweDNj LzB4MzQwCj4gWyAgIDc0LjczMDU1Nl0gIGhhbmRsZV9pcnFfZXZlbnRfcGVyY3B1KzB4MWIvMHg1 MAo+IFsgICA3NC43MzA1NjFdICBoYW5kbGVfaXJxX2V2ZW50KzB4MmYvMHg1MAo+IFsgICA3NC43 MzA1NjZdICBoYW5kbGVfZWRnZV9pcnErMHhlNC8weDFiMAo+IFsgICA3NC43MzA1NzJdICBoYW5k bGVfaXJxKzB4MTEvMHgyMAo+IFsgICA3NC43MzA1NzZdICBkb19JUlErMHg1ZS8weDEyMAo+IFsg ICA3NC43MzA1ODRdICBjb21tb25faW50ZXJydXB0KzB4ODQvMHg4NAo+IFsgICA3NC43MzA1ODZd ICA8L0lSUT4KPiBbICAgNzQuNzMwNTkxXSBSSVA6IDAwMTA6Y3B1aWRsZV9lbnRlcl9zdGF0ZSsw eGFhLzB4MzUwCj4gWyAgIDc0LjczMDU5M10gUlNQOiAwMDE4OmZmZmZjOTAwMDAwOGJlYjggRUZM QUdTOiAwMDAwMDIxMiBPUklHX1JBWDogZmZmZmZmZmZmZmZmZmZkZQo+IFsgICA3NC43MzA1OTdd IFJBWDogZmZmZjg4MDIyNmI4MDA0MCBSQlg6IDAwMDAwMDAwMDAzMWZjM2UgUkNYOiAwMDAwMDAw MDAwMDAwMDAxCj4gWyAgIDc0LjczMDU5OV0gUkRYOiAwMDAwMDAwMDAwMDAwMDAwIFJTSTogZmZm ZmZmZmY4MjEwZmI1OSBSREk6IGZmZmZmZmZmODIwYzAyZTcKPiBbICAgNzQuNzMwNjAxXSBSQlA6 IDAwMDAwMDAwMDAwMDAwMDQgUjA4OiAwMDAwMDAwMDAwMDA0MGFmIFIwOTogMDAwMDAwMDAwMDAw MDAxOAo+IFsgICA3NC43MzA2MDNdIFIxMDogMDAwMDAwMDAwMDAwMDAwMCBSMTE6IDAwMDAwMDAw MDAwMDAwMDAgUjEyOiAwMDAwMDAwMDAwMDAwMDA0Cj4gWyAgIDc0LjczMDYwNl0gUjEzOiBmZmZm ZThmZmZmZDAwNDMwIFIxNDogMDAwMDAwMTE2NjEyMGJmNCBSMTU6IGZmZmZmZmZmODIyOTQ0NjAK PiBbICAgNzQuNzMwNjIxXSAgPyBjcHVpZGxlX2VudGVyX3N0YXRlKzB4YTYvMHgzNTAKPiBbICAg NzQuNzMwNjI5XSAgZG9faWRsZSsweDE4OC8weDFkMAo+IFsgICA3NC43MzA2MzZdICBjcHVfc3Rh cnR1cF9lbnRyeSsweDE0LzB4MjAKPiBbICAgNzQuNzMwNjQxXSAgc3RhcnRfc2Vjb25kYXJ5KzB4 MTI5LzB4MTYwCj4gWyAgIDc0LjczMDY0Nl0gIHNlY29uZGFyeV9zdGFydHVwXzY0KzB4YTUvMHhi MAo+IFsgICA3NC43MzA2NjBdIENvZGU6IGUxIDQ4IGM3IGMyIGI4IDdkIDBlIDgyIGJlIDAxIDAw IDAwIDAwIDQ4IGM3IGM3IGVhIDhjIDA2IDgyIGU4IDY0IGVjIGZmIGZmIDQ4IDhiIDgzIGM4IDA3 IDAwIDAwIDQ4IDgzIDc4IDI4IDAwIDBmIDg0IGUyIGZlIGZmIGZmIDwwZj4gMGIgNDUgMzEgZWQg ZTkgZGIgZmUgZmYgZmYgNDEgYjggZDMgNGQgNjIgMTAgODkgYzggNmEgMDMgNDEKPiBbICAgNzQu NzMwNzU0XSAtLS1bIGVuZCB0cmFjZSAxNGIxMzQ1NzA1YjY4NTY1IF0tLS0KPiAKPiBDaGFuZ2Vz IHNpbmNlIHYxOgo+IC0gRG9uJ3QgdHJ5IHRvIGFwcGx5IENSQyB3b3JrYXJvdW5kIHdoZW4gZW5h YmxpbmcgcGlwZSwgaXQgc2hvdWxkIGFscmVhZHkgYmUgZW5hYmxlZC4KPiAKPiBDYzogTWFydGEg TMO2ZnN0ZWR0IDxtYXJ0YS5sb2ZzdGVkdEBpbnRlbC5jb20+Cj4gUmVwb3J0ZWQtYnk6IE1hcnRh IEzDtmZzdGVkdCA8bWFydGEubG9mc3RlZHRAaW50ZWwuY29tPgo+IEJ1Z3ppbGxhOiBodHRwczov L2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDUxODUKPiBTaWduZWQtb2Zm LWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29t Pgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgIHwgIDIgKysK PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgICB8ICAzICsrKwo+ICBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9waXBlX2NyYy5jIHwgNDQgKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA3 IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRl eCAzMzEwODQwODI1NDUuLjY3ZDEzZmU0YzI0ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKPiBAQCAtMTIxNDcsNiArMTIxNDcsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF91 cGRhdGVfY3J0YyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAlpZiAobW9kZXNldCkgewo+ICAJ CXVwZGF0ZV9zY2FubGluZV9vZmZzZXQoaW50ZWxfY3J0Yyk7Cj4gIAkJZGV2X3ByaXYtPmRpc3Bs YXkuY3J0Y19lbmFibGUocGlwZV9jb25maWcsIHN0YXRlKTsKPiArCQlpbnRlbF9jcnRjX2VuYWJs ZV9waXBlX2NyYyhjcnRjKTsKCkkgdGhpbmsgSSdkIHByZWZlciB0aGlzIHRvIGxpdmUgbmV4dCB0 byB0aGUgdmJsYW5rIG9uL29mZiwgd2l0aCBhCmNvbW1lbnQuIFB1dHRpbmcgaXQgaGVyZSBnaXZl cyBhYnNvbHV0ZWx5IG5vIGNsdWUgd2h5IHdlIGhhdmUgdG8KZG8gaXQuCgo+ICAJfSBlbHNlIHsK PiAgCQlpbnRlbF9wcmVfcGxhbmVfdXBkYXRlKHRvX2ludGVsX2NydGNfc3RhdGUob2xkX2NydGNf c3RhdGUpLAo+ICAJCQkJICAgICAgIHBpcGVfY29uZmlnKTsKPiBAQCAtMTIzMjcsNiArMTIzMjgs NyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoc3RydWN0IGRybV9hdG9t aWNfc3RhdGUgKnN0YXRlKQo+ICAKPiAgCQlpZiAob2xkX2NydGNfc3RhdGUtPmFjdGl2ZSkgewo+ ICAJCQlpbnRlbF9jcnRjX2Rpc2FibGVfcGxhbmVzKGNydGMsIG9sZF9jcnRjX3N0YXRlLT5wbGFu ZV9tYXNrKTsKPiArCQkJaW50ZWxfY3J0Y19kaXNhYmxlX3BpcGVfY3JjKGNydGMpOwo+ICAJCQlk ZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUodG9faW50ZWxfY3J0Y19zdGF0ZShvbGRfY3J0 Y19zdGF0ZSksIHN0YXRlKTsKPiAgCQkJaW50ZWxfY3J0Yy0+YWN0aXZlID0gZmFsc2U7Cj4gIAkJ CWludGVsX2ZiY19kaXNhYmxlKGludGVsX2NydGMpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5o Cj4gaW5kZXggZDQzNjg1ODliMzU1Li4wMDI0Mjk5NTdkZDUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaAo+IEBAIC0yMTM4LDggKzIxMzgsMTEgQEAgaW50IGludGVsX3BpcGVfY3JjX2Ny ZWF0ZShzdHJ1Y3QgZHJtX21pbm9yICptaW5vcik7Cj4gICNpZmRlZiBDT05GSUdfREVCVUdfRlMK PiAgaW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBj b25zdCBjaGFyICpzb3VyY2VfbmFtZSwKPiAgCQkJICAgICAgc2l6ZV90ICp2YWx1ZXNfY250KTsK PiArdm9pZCBpbnRlbF9jcnRjX2Rpc2FibGVfcGlwZV9jcmMoc3RydWN0IGRybV9jcnRjICpjcnRj KTsKPiArdm9pZCBpbnRlbF9jcnRjX2VuYWJsZV9waXBlX2NyYyhzdHJ1Y3QgZHJtX2NydGMgKmNy dGMpOwo+ICAjZWxzZQo+ICAjZGVmaW5lIGludGVsX2NydGNfc2V0X2NyY19zb3VyY2UgTlVMTAo+ ICsjZGVmaW5lIGludGVsX2NydGNfZGlzYWJsZV9waXBlX2NyYyhjcnRjKSBkbyB7fSB3aGlsZSAo MCkKPiAgI2VuZGlmCj4gIGV4dGVybiBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGk5MTVf ZGlzcGxheV9jcmNfY3RsX2ZvcHM7Cj4gICNlbmRpZiAvKiBfX0lOVEVMX0RSVl9IX18gKi8KPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMKPiBpbmRleCAxZjVjZDU3MmE3ZmYuLjk0 MjJlZDk4ZTk4NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9waXBl X2NyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9jcmMuYwo+IEBA IC01NjksNyArNTY5LDggQEAgc3RhdGljIHZvaWQgaHN3X3BpcGVfQV9jcmNfd2Eoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICBzdGF0aWMgaW50IGl2Yl9waXBlX2NyY19jdGxf cmVnKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkJCWVudW0gcGlwZSBw aXBlLAo+ICAJCQkJZW51bSBpbnRlbF9waXBlX2NyY19zb3VyY2UgKnNvdXJjZSwKPiAtCQkJCXVp bnQzMl90ICp2YWwpCj4gKwkJCQl1aW50MzJfdCAqdmFsLAo+ICsJCQkJYm9vbCBzZXRfd2EpCj4g IHsKPiAgCWlmICgqc291cmNlID09IElOVEVMX1BJUEVfQ1JDX1NPVVJDRV9BVVRPKQo+ICAJCSpz b3VyY2UgPSBJTlRFTF9QSVBFX0NSQ19TT1VSQ0VfUEY7Cj4gQEAgLTU4Miw3ICs1ODMsNyBAQCBz dGF0aWMgaW50IGl2Yl9waXBlX2NyY19jdGxfcmVnKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiwKPiAgCQkqdmFsID0gUElQRV9DUkNfRU5BQkxFIHwgUElQRV9DUkNfU09VUkNFX1NQ UklURV9JVkI7Cj4gIAkJYnJlYWs7Cj4gIAljYXNlIElOVEVMX1BJUEVfQ1JDX1NPVVJDRV9QRjoK PiAtCQlpZiAoKElTX0hBU1dFTEwoZGV2X3ByaXYpIHx8Cj4gKwkJaWYgKHNldF93YSAmJiAoSVNf SEFTV0VMTChkZXZfcHJpdikgfHwKPiAgCQkgICAgIElTX0JST0FEV0VMTChkZXZfcHJpdikpICYm IHBpcGUgPT0gUElQRV9BKQo+ICAJCQloc3dfcGlwZV9BX2NyY193YShkZXZfcHJpdiwgdHJ1ZSk7 Cj4gIAo+IEBAIC02MDAsNyArNjAxLDggQEAgc3RhdGljIGludCBpdmJfcGlwZV9jcmNfY3RsX3Jl ZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAo+ICBzdGF0aWMgaW50IGdl dF9uZXdfY3JjX2N0bF9yZWcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJ CQkgICAgICAgZW51bSBwaXBlIHBpcGUsCj4gLQkJCSAgICAgICBlbnVtIGludGVsX3BpcGVfY3Jj X3NvdXJjZSAqc291cmNlLCB1MzIgKnZhbCkKPiArCQkJICAgICAgIGVudW0gaW50ZWxfcGlwZV9j cmNfc291cmNlICpzb3VyY2UsIHUzMiAqdmFsLAo+ICsJCQkgICAgICAgYm9vbCBzZXRfd2EpCj4g IHsKPiAgCWlmIChJU19HRU4yKGRldl9wcml2KSkKPiAgCQlyZXR1cm4gaTh4eF9waXBlX2NyY19j dGxfcmVnKHNvdXJjZSwgdmFsKTsKPiBAQCAtNjExLDcgKzYxMyw3IEBAIHN0YXRpYyBpbnQgZ2V0 X25ld19jcmNfY3RsX3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAll bHNlIGlmIChJU19HRU41KGRldl9wcml2KSB8fCBJU19HRU42KGRldl9wcml2KSkKPiAgCQlyZXR1 cm4gaWxrX3BpcGVfY3JjX2N0bF9yZWcoc291cmNlLCB2YWwpOwo+ICAJZWxzZQo+IC0JCXJldHVy biBpdmJfcGlwZV9jcmNfY3RsX3JlZyhkZXZfcHJpdiwgcGlwZSwgc291cmNlLCB2YWwpOwo+ICsJ CXJldHVybiBpdmJfcGlwZV9jcmNfY3RsX3JlZyhkZXZfcHJpdiwgcGlwZSwgc291cmNlLCB2YWws IHNldF93YSk7Cj4gIH0KPiAgCj4gIHN0YXRpYyBpbnQgcGlwZV9jcmNfc2V0X3NvdXJjZShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gQEAgLTYzNiw3ICs2MzgsNyBAQCBzdGF0 aWMgaW50IHBpcGVfY3JjX3NldF9zb3VyY2Uoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAo+ICAJCXJldHVybiAtRUlPOwo+ICAJfQo+ICAKPiAtCXJldCA9IGdldF9uZXdfY3JjX2N0 bF9yZWcoZGV2X3ByaXYsIHBpcGUsICZzb3VyY2UsICZ2YWwpOwo+ICsJcmV0ID0gZ2V0X25ld19j cmNfY3RsX3JlZyhkZXZfcHJpdiwgcGlwZSwgJnNvdXJjZSwgJnZhbCwgdHJ1ZSk7Cj4gIAlpZiAo cmV0ICE9IDApCj4gIAkJZ290byBvdXQ7Cj4gIAo+IEBAIC05MTYsNyArOTE4LDcgQEAgaW50IGlu dGVsX3BpcGVfY3JjX2NyZWF0ZShzdHJ1Y3QgZHJtX21pbm9yICptaW5vcikKPiAgaW50IGludGVs X2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpz b3VyY2VfbmFtZSwKPiAgCQkJICAgICAgc2l6ZV90ICp2YWx1ZXNfY250KQo+ICB7Cj4gLQlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBjcnRjLT5kZXYtPmRldl9wcml2YXRlOwo+ ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5kZXYp Owo+ICAJc3RydWN0IGludGVsX3BpcGVfY3JjICpwaXBlX2NyYyA9ICZkZXZfcHJpdi0+cGlwZV9j cmNbY3J0Yy0+aW5kZXhdOwo+ICAJZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbiBwb3dl cl9kb21haW47Cj4gIAllbnVtIGludGVsX3BpcGVfY3JjX3NvdXJjZSBzb3VyY2U7Cj4gQEAgLTkz NCw3ICs5MzYsNyBAQCBpbnQgaW50ZWxfY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsIGNvbnN0IGNoYXIgKnNvdXJjZV9uYW1lLAo+ICAJCXJldHVybiAtRUlPOwo+ICAJ fQo+ICAKPiAtCXJldCA9IGdldF9uZXdfY3JjX2N0bF9yZWcoZGV2X3ByaXYsIGNydGMtPmluZGV4 LCAmc291cmNlLCAmdmFsKTsKPiArCXJldCA9IGdldF9uZXdfY3JjX2N0bF9yZWcoZGV2X3ByaXYs IGNydGMtPmluZGV4LCAmc291cmNlLCAmdmFsLCB0cnVlKTsKPiAgCWlmIChyZXQgIT0gMCkKPiAg CQlnb3RvIG91dDsKPiAgCj4gQEAgLTk1OSwzICs5NjEsMzEgQEAgaW50IGludGVsX2NydGNfc2V0 X2NyY19zb3VyY2Uoc3RydWN0IGRybV9jcnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFt ZSwKPiAgCj4gIAlyZXR1cm4gcmV0Owo+ICB9Cj4gKwo+ICt2b2lkIGludGVsX2NydGNfZW5hYmxl X3BpcGVfY3JjKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiArewo+ICsJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5kZXYpOwo+ICsJZW51bSBpbnRlbF9w aXBlX2NyY19zb3VyY2Ugc291cmNlOwo+ICsJdTMyIHZhbCA9IDA7Cj4gKwo+ICsJaWYgKCFjcnRj LT5jcmMub3BlbmVkKQo+ICsJCXJldHVybjsKPiArCj4gKwlpZiAoZGlzcGxheV9jcmNfY3RsX3Bh cnNlX3NvdXJjZShjcnRjLT5jcmMuc291cmNlLCAmc291cmNlKSA8IDApCj4gKwkJcmV0dXJuOwo+ ICsKPiArCWlmIChnZXRfbmV3X2NyY19jdGxfcmVnKGRldl9wcml2LCBjcnRjLT5pbmRleCwgJnNv dXJjZSwgJnZhbCwgZmFsc2UpIDwgMCkKPiArCQlyZXR1cm47Cj4gKwo+ICsJSTkxNV9XUklURShQ SVBFX0NSQ19DVEwoY3J0Yy0+aW5kZXgpLCB2YWwpOwo+ICsJUE9TVElOR19SRUFEKFBJUEVfQ1JD X0NUTChjcnRjLT5pbmRleCkpOwo+ICt9Cj4gKwo+ICt2b2lkIGludGVsX2NydGNfZGlzYWJsZV9w aXBlX2NyYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+ZGV2KTsKPiArCj4gKwlJOTE1X1dSSVRF KFBJUEVfQ1JDX0NUTChjcnRjLT5pbmRleCksIDApOwo+ICsJUE9TVElOR19SRUFEKFBJUEVfQ1JD X0NUTChjcnRjLT5pbmRleCkpOwo+ICsJc3luY2hyb25pemVfaXJxKGRldl9wcml2LT5kcm0uaXJx KTsKPiArfQo+IC0tIAo+IDIuMTYuMgo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==