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: Thu, 8 Mar 2018 17:22:41 +0200 Message-ID: <20180308152241.GY5453@intel.com> References: <20180308120202.52446-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 mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id D7B746E8B5 for ; Thu, 8 Mar 2018 15:22:44 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20180308120202.52446-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 T24gVGh1LCBNYXIgMDgsIDIwMTggYXQgMDE6MDI6MDJQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y 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 YmxpbmcgcGlwZSwgaXQgc2hvdWxkIGFscmVhZHkgYmUgZW5hYmxlZC4KPiBDaGFuZ2VzIHNpbmNl IHYyOgo+IC0gTWFrZSBjcmMgZnVuY3Rpb25zIGZvciAhREVCVUdGUyBjYXNlIGlubGluZS4KPiAt IFBhc3MgaW50ZWxfY3J0YyB0byBjcmMgZnVuY3Rpb25zLgo+IC0gQWRkIGNvbW1lbnRzIHRvIGNh bGxzaXRlcy4KPiBDaGFuZ2VzIHNpbmNlIHYzOgo+IC0gQ2FjaGUgc2VsZWN0ZWQgc291cmNlIHRv IHBpcGVfY3JjLT5zb3VyY2UuCj4gLSBTZXQgcGlwZV9jcmMtPnNraXBwZWQgdG8gTUlOX0lOVCBk dXJpbmcgZGlzYWJsZSB0byBjbG9zZSBhIHJhY2UgY29uZGl0aW9uLgo+IENoYW5nZXMgc2luY2Ug djQ6Cj4gLSBIYW5kbGUgZmFsbG91dCBmcm9tIHNldHRpbmcgcGlwZV9jcmMtPnNvdXJjZSBpbiBp cnEgaGFuZGxlci4KPiAKPiBDYzogTWFydGEgTMO2ZnN0ZWR0IDxtYXJ0YS5sb2ZzdGVkdEBpbnRl bC5jb20+Cj4gUmVwb3J0ZWQtYnk6IE1hcnRhIEzDtmZzdGVkdCA8bWFydGEubG9mc3RlZHRAaW50 ZWwuY29tPgo+IEJ1Z3ppbGxhOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVn LmNnaT9pZD0xMDUxODUKPiBTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRl bi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2lycS5jICAgICAgIHwgIDQgKy0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYyAgfCAxMCArKysrKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Ry di5oICAgICAgfCAgOSArKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcGlwZV9j cmMuYyB8IDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCj4gIDQgZmlsZXMg Y2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfaXJxLmMKPiBpbmRleCBjZTE2MDAzZWYwNDguLjc4MDc0ODgwODRmZSAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9pcnEuYwo+IEBAIC0xNjI2LDcgKzE2MjYsNyBAQCBzdGF0aWMgdm9pZCBk aXNwbGF5X3BpcGVfY3JjX2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKPiAgCWludCBoZWFkLCB0YWlsOwo+ICAKPiAgCXNwaW5fbG9jaygmcGlwZV9jcmMtPmxv Y2spOwo+IC0JaWYgKHBpcGVfY3JjLT5zb3VyY2UpIHsKPiArCWlmIChwaXBlX2NyYy0+c291cmNl ICYmICFjcnRjLT5iYXNlLmNyYy5vcGVuZWQpIHsKCkhtbS4gVGhpcyBpcyBzdGFydGluZyB0byBn ZXQgY29uZnVzaW5nLiBTZWVpbmcgYXMgd2Ugbm93IGxvc2UgdGhlCmNhcGFiaWxpdHkgdG8gZ2V0 IGFsbCB0aGUgY3JjcyBhY3Jvc3MgdGhlIG1vZGVzZXQgYW55d2F5IEkgdGhpbmsgSSdsbApoYXZl IHRvIHJldm9rZSBteSBvYmplY3Rpb24gdG8gbnVraW5nIHRoZSBvbGQgaW50ZXJmYWNlLiBDb25z aWRlcgp0aGF0IG9sZCBudWdnZXQgYWNrZWQuCgo+ICAJCWlmICghcGlwZV9jcmMtPmVudHJpZXMp IHsKPiAgCQkJc3Bpbl91bmxvY2soJnBpcGVfY3JjLT5sb2NrKTsKPiAgCQkJRFJNX0RFQlVHX0tN Uygic3B1cmlvdXMgaW50ZXJydXB0XG4iKTsKPiBAQCAtMTY2Niw3ICsxNjY2LDcgQEAgc3RhdGlj IHZvaWQgZGlzcGxheV9waXBlX2NyY19pcnFfaGFuZGxlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCj4gIAkJICogT24gR0VOOCsgc29tZXRpbWVzIHRoZSBzZWNvbmQgQ1JDIGlz IGJvbmtlcnMgYXMgd2VsbCwgc28KPiAgCQkgKiBkb24ndCB0cnVzdCB0aGF0IG9uZSBlaXRoZXIu Cj4gIAkJICovCj4gLQkJaWYgKHBpcGVfY3JjLT5za2lwcGVkID09IDAgfHwKPiArCQlpZiAocGlw ZV9jcmMtPnNraXBwZWQgPD0gMCB8fAo+ICAJCSAgICAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA4 ICYmIHBpcGVfY3JjLT5za2lwcGVkID09IDEpKSB7Cj4gIAkJCXBpcGVfY3JjLT5za2lwcGVkKys7 Cj4gIAkJCXNwaW5fdW5sb2NrKCZwaXBlX2NyYy0+bG9jayk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwo+IGluZGV4IDMzMTA4NDA4MjU0NS4uMjkzM2FkMzgwOTRmIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0xMjE0Nyw2ICsxMjE0Nyw5IEBA IHN0YXRpYyB2b2lkIGludGVsX3VwZGF0ZV9jcnRjKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAg CWlmIChtb2Rlc2V0KSB7Cj4gIAkJdXBkYXRlX3NjYW5saW5lX29mZnNldChpbnRlbF9jcnRjKTsK PiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2VuYWJsZShwaXBlX2NvbmZpZywgc3RhdGUpOwo+ ICsKPiArCQkvKiB2YmxhbmtzIHdvcmsgYWdhaW4sIHJlLWVuYWJsZSBwaXBlIENSQy4gKi8KPiAr CQlpbnRlbF9jcnRjX2VuYWJsZV9waXBlX2NyYyhpbnRlbF9jcnRjKTsKPiAgCX0gZWxzZSB7Cj4g IAkJaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZSh0b19pbnRlbF9jcnRjX3N0YXRlKG9sZF9jcnRjX3N0 YXRlKSwKPiAgCQkJCSAgICAgICBwaXBlX2NvbmZpZyk7Cj4gQEAgLTEyMzI3LDYgKzEyMzMwLDEz IEBAIHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSAqc3RhdGUpCj4gIAo+ICAJCWlmIChvbGRfY3J0Y19zdGF0ZS0+YWN0aXZlKSB7Cj4g IAkJCWludGVsX2NydGNfZGlzYWJsZV9wbGFuZXMoY3J0Yywgb2xkX2NydGNfc3RhdGUtPnBsYW5l X21hc2spOwo+ICsKPiArCQkJLyoKPiArCQkJICogV2UgbmVlZCB0byBkaXNhYmxlIHBpcGUgQ1JD IGJlZm9yZSBkaXNhYmxpbmcgdGhlIHBpcGUsCj4gKwkJCSAqIG9yIHdlIHJhY2UgYWdhaW5zdCB2 Ymxhbmsgb2ZmLgo+ICsJCQkgKi8KPiArCQkJaW50ZWxfY3J0Y19kaXNhYmxlX3BpcGVfY3JjKGlu dGVsX2NydGMpOwo+ICsKPiAgCQkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19kaXNhYmxlKHRvX2lu dGVsX2NydGNfc3RhdGUob2xkX2NydGNfc3RhdGUpLCBzdGF0ZSk7Cj4gIAkJCWludGVsX2NydGMt PmFjdGl2ZSA9IGZhbHNlOwo+ICAJCQlpbnRlbF9mYmNfZGlzYWJsZShpbnRlbF9jcnRjKTsKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IGluZGV4IGQ0MzY4NTg5YjM1NS4uZmNlNWQzMDcyZDk3 IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBAQCAtMjEzOCw4ICsyMTM4LDE3IEBA IGludCBpbnRlbF9waXBlX2NyY19jcmVhdGUoc3RydWN0IGRybV9taW5vciAqbWlub3IpOwo+ICAj aWZkZWYgQ09ORklHX0RFQlVHX0ZTCj4gIGludCBpbnRlbF9jcnRjX3NldF9jcmNfc291cmNlKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNlX25hbWUsCj4gIAkJCSAgICAg IHNpemVfdCAqdmFsdWVzX2NudCk7Cj4gK3ZvaWQgaW50ZWxfY3J0Y19kaXNhYmxlX3BpcGVfY3Jj KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKPiArdm9pZCBpbnRlbF9jcnRjX2VuYWJsZV9waXBl X2NyYyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0Yyk7Cj4gICNlbHNlCj4gICNkZWZpbmUgaW50ZWxf Y3J0Y19zZXRfY3JjX3NvdXJjZSBOVUxMCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBpbnRlbF9jcnRj X2Rpc2FibGVfcGlwZV9jcmMoc3RydWN0IGludGVsX2NydGMgKmNydGMpCj4gK3sKPiArfQo+ICsK PiArc3RhdGljIGlubGluZSB2b2lkIGludGVsX2NydGNfZW5hYmxlX3BpcGVfY3JjKHN0cnVjdCBp bnRlbF9jcnRjICpjcnRjKQo+ICt7Cj4gK30KPiAgI2VuZGlmCj4gIGV4dGVybiBjb25zdCBzdHJ1 Y3QgZmlsZV9vcGVyYXRpb25zIGk5MTVfZGlzcGxheV9jcmNfY3RsX2ZvcHM7Cj4gICNlbmRpZiAv KiBfX0lOVEVMX0RSVl9IX18gKi8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcGlwZV9jcmMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BpcGVfY3JjLmMK PiBpbmRleCAxZjVjZDU3MmE3ZmYuLjRmMzY3YzE2ZTllNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9waXBlX2NyYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcGlwZV9jcmMuYwo+IEBAIC01NjksNyArNTY5LDggQEAgc3RhdGljIHZvaWQgaHN3 X3BpcGVfQV9jcmNfd2Eoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICBzdGF0 aWMgaW50IGl2Yl9waXBlX2NyY19jdGxfcmVnKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKPiAgCQkJCWVudW0gcGlwZSBwaXBlLAo+ICAJCQkJZW51bSBpbnRlbF9waXBlX2NyY19z b3VyY2UgKnNvdXJjZSwKPiAtCQkJCXVpbnQzMl90ICp2YWwpCj4gKwkJCQl1aW50MzJfdCAqdmFs LAo+ICsJCQkJYm9vbCBzZXRfd2EpCj4gIHsKPiAgCWlmICgqc291cmNlID09IElOVEVMX1BJUEVf Q1JDX1NPVVJDRV9BVVRPKQo+ICAJCSpzb3VyY2UgPSBJTlRFTF9QSVBFX0NSQ19TT1VSQ0VfUEY7 Cj4gQEAgLTU4Miw3ICs1ODMsNyBAQCBzdGF0aWMgaW50IGl2Yl9waXBlX2NyY19jdGxfcmVnKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkqdmFsID0gUElQRV9DUkNfRU5B QkxFIHwgUElQRV9DUkNfU09VUkNFX1NQUklURV9JVkI7Cj4gIAkJYnJlYWs7Cj4gIAljYXNlIElO VEVMX1BJUEVfQ1JDX1NPVVJDRV9QRjoKPiAtCQlpZiAoKElTX0hBU1dFTEwoZGV2X3ByaXYpIHx8 Cj4gKwkJaWYgKHNldF93YSAmJiAoSVNfSEFTV0VMTChkZXZfcHJpdikgfHwKPiAgCQkgICAgIElT X0JST0FEV0VMTChkZXZfcHJpdikpICYmIHBpcGUgPT0gUElQRV9BKQo+ICAJCQloc3dfcGlwZV9B X2NyY193YShkZXZfcHJpdiwgdHJ1ZSk7Cj4gIAo+IEBAIC02MDAsNyArNjAxLDggQEAgc3RhdGlj IGludCBpdmJfcGlwZV9jcmNfY3RsX3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYsCj4gIAo+ICBzdGF0aWMgaW50IGdldF9uZXdfY3JjX2N0bF9yZWcoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCQkgICAgICAgZW51bSBwaXBlIHBpcGUsCj4gLQkJCSAg ICAgICBlbnVtIGludGVsX3BpcGVfY3JjX3NvdXJjZSAqc291cmNlLCB1MzIgKnZhbCkKPiArCQkJ ICAgICAgIGVudW0gaW50ZWxfcGlwZV9jcmNfc291cmNlICpzb3VyY2UsIHUzMiAqdmFsLAo+ICsJ CQkgICAgICAgYm9vbCBzZXRfd2EpCj4gIHsKPiAgCWlmIChJU19HRU4yKGRldl9wcml2KSkKPiAg CQlyZXR1cm4gaTh4eF9waXBlX2NyY19jdGxfcmVnKHNvdXJjZSwgdmFsKTsKPiBAQCAtNjExLDcg KzYxMyw3IEBAIHN0YXRpYyBpbnQgZ2V0X25ld19jcmNfY3RsX3JlZyhzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAllbHNlIGlmIChJU19HRU41KGRldl9wcml2KSB8fCBJU19H RU42KGRldl9wcml2KSkKPiAgCQlyZXR1cm4gaWxrX3BpcGVfY3JjX2N0bF9yZWcoc291cmNlLCB2 YWwpOwo+ICAJZWxzZQo+IC0JCXJldHVybiBpdmJfcGlwZV9jcmNfY3RsX3JlZyhkZXZfcHJpdiwg cGlwZSwgc291cmNlLCB2YWwpOwo+ICsJCXJldHVybiBpdmJfcGlwZV9jcmNfY3RsX3JlZyhkZXZf cHJpdiwgcGlwZSwgc291cmNlLCB2YWwsIHNldF93YSk7Cj4gIH0KPiAgCj4gIHN0YXRpYyBpbnQg cGlwZV9jcmNfc2V0X3NvdXJjZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4g QEAgLTYzNiw3ICs2MzgsNyBAQCBzdGF0aWMgaW50IHBpcGVfY3JjX3NldF9zb3VyY2Uoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAJCXJldHVybiAtRUlPOwo+ICAJfQo+ICAK PiAtCXJldCA9IGdldF9uZXdfY3JjX2N0bF9yZWcoZGV2X3ByaXYsIHBpcGUsICZzb3VyY2UsICZ2 YWwpOwo+ICsJcmV0ID0gZ2V0X25ld19jcmNfY3RsX3JlZyhkZXZfcHJpdiwgcGlwZSwgJnNvdXJj ZSwgJnZhbCwgdHJ1ZSk7Cj4gIAlpZiAocmV0ICE9IDApCj4gIAkJZ290byBvdXQ7Cj4gIAo+IEBA IC05MTYsNyArOTE4LDcgQEAgaW50IGludGVsX3BpcGVfY3JjX2NyZWF0ZShzdHJ1Y3QgZHJtX21p bm9yICptaW5vcikKPiAgaW50IGludGVsX2NydGNfc2V0X2NyY19zb3VyY2Uoc3RydWN0IGRybV9j cnRjICpjcnRjLCBjb25zdCBjaGFyICpzb3VyY2VfbmFtZSwKPiAgCQkJICAgICAgc2l6ZV90ICp2 YWx1ZXNfY250KQo+ICB7Cj4gLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBj cnRjLT5kZXYtPmRldl9wcml2YXRlOwo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShjcnRjLT5kZXYpOwo+ICAJc3RydWN0IGludGVsX3BpcGVfY3JjICpwaXBl X2NyYyA9ICZkZXZfcHJpdi0+cGlwZV9jcmNbY3J0Yy0+aW5kZXhdOwo+ICAJZW51bSBpbnRlbF9k aXNwbGF5X3Bvd2VyX2RvbWFpbiBwb3dlcl9kb21haW47Cj4gIAllbnVtIGludGVsX3BpcGVfY3Jj X3NvdXJjZSBzb3VyY2U7Cj4gQEAgLTkzNCwxMCArOTM2LDExIEBAIGludCBpbnRlbF9jcnRjX3Nl dF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNlX25h bWUsCj4gIAkJcmV0dXJuIC1FSU87Cj4gIAl9Cj4gIAo+IC0JcmV0ID0gZ2V0X25ld19jcmNfY3Rs X3JlZyhkZXZfcHJpdiwgY3J0Yy0+aW5kZXgsICZzb3VyY2UsICZ2YWwpOwo+ICsJcmV0ID0gZ2V0 X25ld19jcmNfY3RsX3JlZyhkZXZfcHJpdiwgY3J0Yy0+aW5kZXgsICZzb3VyY2UsICZ2YWwsIHRy dWUpOwo+ICAJaWYgKHJldCAhPSAwKQo+ICAJCWdvdG8gb3V0Owo+ICAKPiArCXBpcGVfY3JjLT5z b3VyY2UgPSBzb3VyY2U7Cj4gIAlJOTE1X1dSSVRFKFBJUEVfQ1JDX0NUTChjcnRjLT5pbmRleCks IHZhbCk7Cj4gIAlQT1NUSU5HX1JFQUQoUElQRV9DUkNfQ1RMKGNydGMtPmluZGV4KSk7Cj4gIAo+ IEBAIC05NTksMyArOTYyLDM5IEBAIGludCBpbnRlbF9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVj dCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc291cmNlX25hbWUsCj4gIAo+ICAJcmV0dXJu IHJldDsKPiAgfQo+ICsKPiArdm9pZCBpbnRlbF9jcnRjX2VuYWJsZV9waXBlX2NyYyhzdHJ1Y3Qg aW50ZWxfY3J0YyAqaW50ZWxfY3J0YykKPiArewo+ICsJc3RydWN0IGRybV9jcnRjICpjcnRjID0g JmludGVsX2NydGMtPmJhc2U7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSB0b19pOTE1KGNydGMtPmRldik7Cj4gKwlzdHJ1Y3QgaW50ZWxfcGlwZV9jcmMgKnBpcGVfY3Jj ID0gJmRldl9wcml2LT5waXBlX2NyY1tjcnRjLT5pbmRleF07Cj4gKwl1MzIgdmFsID0gMDsKPiAr Cj4gKwlpZiAoIWNydGMtPmNyYy5vcGVuZWQpCj4gKwkJcmV0dXJuOwo+ICsKPiArCWlmIChnZXRf bmV3X2NyY19jdGxfcmVnKGRldl9wcml2LCBjcnRjLT5pbmRleCwgJnBpcGVfY3JjLT5zb3VyY2Us ICZ2YWwsIGZhbHNlKSA8IDApCj4gKwkJcmV0dXJuOwo+ICsKPiArCS8qIERvbid0IG5lZWQgcGlw ZV9jcmMtPmxvY2sgaGVyZSwgSVJRcyBhcmUgbm90IGdlbmVyYXRlZC4gKi8KPiArCXBpcGVfY3Jj LT5za2lwcGVkID0gMDsKPiArCj4gKwlJOTE1X1dSSVRFKFBJUEVfQ1JDX0NUTChjcnRjLT5pbmRl eCksIHZhbCk7Cj4gKwlQT1NUSU5HX1JFQUQoUElQRV9DUkNfQ1RMKGNydGMtPmluZGV4KSk7Cj4g K30KPiArCj4gK3ZvaWQgaW50ZWxfY3J0Y19kaXNhYmxlX3BpcGVfY3JjKHN0cnVjdCBpbnRlbF9j cnRjICppbnRlbF9jcnRjKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2NydGMgKmNydGMgPSAmaW50ZWxf Y3J0Yy0+YmFzZTsKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5 MTUoY3J0Yy0+ZGV2KTsKPiArCXN0cnVjdCBpbnRlbF9waXBlX2NyYyAqcGlwZV9jcmMgPSAmZGV2 X3ByaXYtPnBpcGVfY3JjW2NydGMtPmluZGV4XTsKPiArCj4gKwkvKiBTd2FsbG93IGNyYydzIHVu dGlsIHdlIHN0b3AgZ2VuZXJhdGluZyB0aGVtLiAqLwo+ICsJc3Bpbl9sb2NrX2lycSgmcGlwZV9j cmMtPmxvY2spOwo+ICsJcGlwZV9jcmMtPnNraXBwZWQgPSBJTlRfTUlOOwo+ICsJc3Bpbl91bmxv Y2tfaXJxKCZwaXBlX2NyYy0+bG9jayk7CgpEb2VzIHRoaXMgbWVhbiB0aGUgaHcgY2FuIHN0aWxs IGdlbmVyYXRlIGEgY3JjIGludGVycnVwdCBhZnRlciB0aGUKUElQRV9DUkNfQ1RMIGhhcyBiZWVu IGNsZWFyZWQ/Cgo+ICsKPiArCUk5MTVfV1JJVEUoUElQRV9DUkNfQ1RMKGNydGMtPmluZGV4KSwg MCk7Cj4gKwlQT1NUSU5HX1JFQUQoUElQRV9DUkNfQ1RMKGNydGMtPmluZGV4KSk7Cj4gKwlzeW5j aHJvbml6ZV9pcnEoZGV2X3ByaXYtPmRybS5pcnEpOwo+ICt9Cj4gLS0gCj4gMi4xNi4yCj4gCj4g X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1n ZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAK VmlsbGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK