From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH 02/20] drm/i915: Modify error handler for per engine hang recovery Date: Mon, 15 May 2017 14:14:22 -0700 Message-ID: <20170515211422.15763-1-michel.thierry@intel.com> References: <20170427231300.32841-3-michel.thierry@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2CFAE89E0C for ; Mon, 15 May 2017 21:14:25 +0000 (UTC) In-Reply-To: <20170427231300.32841-3-michel.thierry@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhpcyBpcyBhIHByZXBhcmF0b3J5IHBhdGNoIHdoaWNoIG1vZGlmaWVzIGVycm9yIGhhbmRsZXIg dG8gZG8gcGVyIGVuZ2luZQpoYW5nIHJlY292ZXJ5LiBUaGUgYWN0dWFsIHBhdGNoIHdoaWNoIGlt cGxlbWVudHMgdGhpcyBzZXF1ZW5jZSBmb2xsb3dzCmxhdGVyIGluIHRoZSBzZXJpZXMuIFRoZSBh aW0gaXMgdG8gcHJlcGFyZSBleGlzdGluZyByZWNvdmVyeSBmdW5jdGlvbiB0bwphZGFwdCB0byB0 aGlzIG5ldyBmdW5jdGlvbiB3aGVyZSBhcHBsaWNhYmxlICh3aGljaCBmYWlscyBhdCB0aGlzIHBv aW50CmJlY2F1c2UgY29yZSBpbXBsZW1lbnRhdGlvbiBpcyBsYWNraW5nKSBhbmQgY29udGludWUg cmVjb3ZlcnkgdXNpbmcgbGVnYWN5CmZ1bGwgZ3B1IHJlc2V0LgoKQSBoZWxwZXIgZnVuY3Rpb24g aXMgYWxzbyBhZGRlZCB0byBxdWVyeSB0aGUgYXZhaWxhYmlsaXR5IG9mIGVuZ2luZQpyZXNldC4K CjxPUEVOPgpUaGUgZXJyb3IgZXZlbnRzIHRoYXQgYXJlIHVzZWQgdG8gbm90aWZ5IHVzZXIgb2Yg cmVzZXQgYXJlIGN1cnJlbnRseQpvbW1pdGVkIGluIGNhc2Ugb2YgZW5naW5lIHJlc2V0LiBJbiBs ZWdhY3kgd2UgcmVwb3J0IGFuIGVycm9yIGV2ZW50LCBhIHJlc2V0CmV2ZW50IGJlZm9yZSByZXNl dHRpbmcgdGhlIGdwdSBhbmQgYSByZXNldCBkb25lIGV2ZW50IG1hcmtpbmcgdGhlIGNvbXBsZXRp b24Kb2YgcmVzZXQuIFRoZSBzYW1lIGJlaGF2aW91ciBjYW4gYmUgYWRhcHRlZCBidXQgcmVzZXQg ZXZlbnQgd2lsbCBvbmx5CmRpc3BhdGNoZWQgb25jZSBldmVuIHdoZW4gbXVsdGlwbGUgZW5naW5l cyBhcmUgaHVuZywgYW5kIHRoZXJlIG5lZWRzIHRvIGJlCnNvbWUgY29udHJvbCB0byBwcmV2ZW50 IG11bHRpcGxlIGV2ZW50cyBpbiBjYXNlIHRoZSByZXNldC1lbmdpbmUgZmFpbHMgYW5kCnRoZSBk cml2ZXIgZmFsbCBiYWNrcyB0byBmdWxsIGNoaXAgcmVzZXQuCjwvT1BFTj4KCk5vdGUgdGhhdCB0 aGlzIGltcGxlbWVudGF0aW9uIG9mIGVuZ2luZSByZXNldCBpcyBmb3IgaTkxNSBkaXJlY3RseQpz dWJtaXR0aW5nIHRvIHRoZSBFTFNQLCB3aGVyZSB0aGUgZHJpdmVyIG1hbmFnZXMgdGhlIGhhbmcg ZGV0ZWN0aW9uLApyZWNvdmVyeSBhbmQgcmVzdWJtaXNzaW9uLiBXaXRoIEd1QyBzdWJtaXNzaW9u IHRoZXNlIHRhc2tzIGFyZSBzaGFyZWQKYmV0d2VlbiBkcml2ZXIgYW5kIGZpcm13YXJlOyBpOTE1 IHdpbGwgc3RpbGwgcmVzcG9uc2libGUgZm9yIGRldGVjdGluZyBhCmhhbmcsIGFuZCB3aGVuIGl0 IGRvZXMgaXQgd2lsbCBoYXZlIHRvIHJlcXVlc3QgR3VDIHRvIHJlc2V0IHRoYXQgRW5naW5lIGFu ZApyZW1pbmQgdGhlIGZpcm13YXJlIGFib3V0IHRoZSBvdXRzdGFuZGluZyBzdWJtaXNzaW9ucy4g VGhpcyB3aWxsIGJlCmFkZGVkIGluIGRpZmZlcmVudCBwYXRjaC4KCnYyOiByZWJhc2UsIGFkdmVy dGlzZSBlbmdpbmUgcmVzZXQgYXZhaWxhYmlsaXR5IGluIHBsYXRmb3JtIGRlZmluaXRpb24sCmFk ZCBub3RlIGFib3V0IEd1QyBzdWJtaXNzaW9uLgp2Mzogcy8qZW5naW5lX3Jlc2V0Ki8qcmVzZXRf ZW5naW5lKi8uIChDaHJpcykKSGFuZGxlIHJlc2V0IGFzIDIgbGV2ZWwgcmVzZXRzLCBieSBmaXJz dCBnb2luZyB0byBlbmdpbmUgb25seSBhbmQgZmFsbApiYWNraW5nIHRvIGZ1bGwvY2hpcCByZXNl dCBhcyBuZWVkZWQsIGkuZS4gcmVzZXRfZW5naW5lIHdpbGwgbmVlZCB0aGUKc3RydWN0X211dGV4 Lgp2NDogUGFzcyB0aGUgZW5naW5lIG1hc2sgdG8gaTkxNV9yZXNldC4gKENocmlzKQp2NTogUmVi YXNlLCB1cGRhdGUgc2VsZnRlc3RzLgp2NjogUmViYXNlLCBwcmVwYXJlIGZvciBtdXRleC1sZXNz IHJlc2V0IGVuZ2luZS4Kdjc6IFBhc3MgcmVzZXRfZW5naW5lIG1hc2sgYXMgYSBmdW5jdGlvbiBw YXJhbWV0ZXIsIGFuZCBpdGVyYXRlIG92ZXIgdGhlCmVuZ2luZSBtYXNrIGZvciByZXNldF9lbmdp bmUuIChDaHJpcykKdjg6IFVzZSBpOTE1LnJlc2V0ID49MiBpbiBoYXNfcmVzZXRfZW5naW5lOyBy ZW1vdmUgcmVkdW5kYW50IHJlc2V0CmxvZ2dpbmc7IGFkZCBhIHJlc2V0LWVuZ2luZS1pbi1wcm9n cmVzcyBmbGFnIHRvIHByZXZlbnQgY29uY3VycmVudApyZXNldHMsIGFuZCBhdm9pZCBkdWFsIHB1 cnBvc2luZyBvZiByZXNldC1iYWNrb2ZmLiAoQ2hyaXMpCgpDYzogQ2hyaXMgV2lsc29uIDxjaHJp c0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBNaWthIEt1b3BwYWxhIDxtaWthLmt1b3BwYWxhQGxp bnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogSWFuIExpc3RlciA8aWFuLmxpc3RlckBpbnRl bC5jb20+ClNpZ25lZC1vZmYtYnk6IFRvbWFzIEVsZiA8dG9tYXMuZWxmQGludGVsLmNvbT4KU2ln bmVkLW9mZi1ieTogQXJ1biBTaWx1dmVyeSA8YXJ1bi5zaWx1dmVyeUBsaW51eC5pbnRlbC5jb20+ ClNpZ25lZC1vZmYtYnk6IE1pY2hlbCBUaGllcnJ5IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyAgICAgfCAxMyArKysrKysrKysr KysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICB8ICA4ICsrKysrKysrCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jICAgICB8IDI0ICsrKysrKysrKysrKysrKysr KysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYyAgICAgfCAgNSArKysrLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgfCAxMSArKysrKysrKysrKwogNSBm aWxlcyBjaGFuZ2VkLCA2MCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmMKaW5kZXggNzJmYjQ3YTQzOWQyLi5mYTIxNDU4ZDZlMWUgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuYwpAQCAtMTg3Nyw2ICsxODc3LDE5IEBAIHZvaWQgaTkxNV9yZXNldChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJZ290byBmaW5pc2g7CiB9CiAKKy8qKgor ICogaTkxNV9yZXNldF9lbmdpbmUgLSByZXNldCBHUFUgZW5naW5lIHRvIHJlY292ZXIgZnJvbSBh IGhhbmcKKyAqIEBlbmdpbmU6IGVuZ2luZSB0byByZXNldAorICoKKyAqIFJlc2V0IGEgc3BlY2lm aWMgR1BVIGVuZ2luZS4gVXNlZnVsIGlmIGEgaGFuZyBpcyBkZXRlY3RlZC4KKyAqIFJldHVybnMg emVybyBvbiBzdWNjZXNzZnVsIHJlc2V0IG9yIG90aGVyd2lzZSBhbiBlcnJvciBjb2RlLgorICov CitpbnQgaTkxNV9yZXNldF9lbmdpbmUoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQor eworCS8qIEZJWE1FOiByZXBsYWNlIG1lIHdpdGggZW5naW5lIHJlc2V0IHNlcXVlbmNlICovCisJ cmV0dXJuIC1FTk9ERVY7Cit9CisKIHN0YXRpYyBpbnQgaTkxNV9wbV9zdXNwZW5kKHN0cnVjdCBk ZXZpY2UgKmtkZXYpCiB7CiAJc3RydWN0IHBjaV9kZXYgKnBkZXYgPSB0b19wY2lfZGV2KGtkZXYp OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggZWJjMzhmMzM3MjNkLi5mMGZmOTE4ZTVkMGIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtNzA1LDYgKzcwNSw3IEBAIHN0cnVjdCBpbnRl bF9jc3IgewogCWZ1bmMoaGFzX2RkaSk7IFwKIAlmdW5jKGhhc19kZWNvdXBsZWRfbW1pbyk7IFwK IAlmdW5jKGhhc19kcF9tc3QpOyBcCisJZnVuYyhoYXNfcmVzZXRfZW5naW5lKTsgXAogCWZ1bmMo aGFzX2ZiYyk7IFwKIAlmdW5jKGhhc19mcGdhX2RiZyk7IFwKIAlmdW5jKGhhc19mdWxsX3BwZ3R0 KTsgXApAQCAtMTQ5OCw2ICsxNDk5LDEwIEBAIHN0cnVjdCBpOTE1X2dwdV9lcnJvciB7CiAJICog aW5zcGVjdCB0aGUgYml0IGFuZCBkbyB0aGUgcmVzZXQgZGlyZWN0bHksIG90aGVyd2lzZSB0aGUg d29ya2VyCiAJICogd2FpdHMgZm9yIHRoZSBzdHJ1Y3RfbXV0ZXguCiAJICoKKwkgKiAjSTkxNV9S RVNFVF9FTkdJTkVfSU5fUFJPR1JFU1MgLSBTaW5jZSB0aGUgZHJpdmVyIGRvZXNuJ3QgbmVlZCB0 bworCSAqIGFjcXVpcmUgdGhlIHN0cnVjdF9tdXRleCB0byByZXNldCBhbiBlbmdpbmUsIHdlIG5l ZWQgYW4gZXhwbGljaXQKKwkgKiBmbGFnIHRvIHByZXZlbnQgdHdvIGNvbmN1cnJlbnQgcmVzZXQt ZW5naW5lIGF0dGVtcHRzLgorCSAqCiAJICogI0k5MTVfV0VER0VEIC0gSWYgcmVzZXQgZmFpbHMg YW5kIHdlIGNhbiBubyBsb25nZXIgdXNlIHRoZSBHUFUsCiAJICogd2Ugc2V0IHRoZSAjSTkxNV9X RURHRUQgYml0LiBQcmlvciB0byBjb21tYW5kIHN1Ym1pc3Npb24sIGUuZy4KIAkgKiBpOTE1X2dl bV9yZXF1ZXN0X2FsbG9jKCksIHRoaXMgYml0IGlzIGNoZWNrZWQgYW5kIHRoZSBzZXF1ZW5jZQpA QCAtMTUwNiw2ICsxNTExLDcgQEAgc3RydWN0IGk5MTVfZ3B1X2Vycm9yIHsKIAl1bnNpZ25lZCBs b25nIGZsYWdzOwogI2RlZmluZSBJOTE1X1JFU0VUX0JBQ0tPRkYJMAogI2RlZmluZSBJOTE1X1JF U0VUX0hBTkRPRkYJMQorI2RlZmluZSBJOTE1X1JFU0VUX0VOR0lORV9JTl9QUk9HUkVTUwkyCiAj ZGVmaW5lIEk5MTVfV0VER0VECQkoQklUU19QRVJfTE9ORyAtIDEpCiAKIAkvKioKQEAgLTI5ODks NiArMjk5NSw4IEBAIGV4dGVybiB2b2lkIGk5MTVfZHJpdmVyX3VubG9hZChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KTsKIGV4dGVybiBpbnQgaW50ZWxfZ3B1X3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwgdTMyIGVuZ2luZV9tYXNrKTsKIGV4dGVybiBib29sIGludGVsX2hh c19ncHVfcmVzZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIGV4dGVybiB2 b2lkIGk5MTVfcmVzZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKK2V4dGVy biBpbnQgaTkxNV9yZXNldF9lbmdpbmUoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKTsK K2V4dGVybiBib29sIGludGVsX2hhc19yZXNldF9lbmdpbmUoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KTsKIGV4dGVybiBpbnQgaW50ZWxfZ3VjX3Jlc2V0KHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdik7CiBleHRlcm4gdm9pZCBpbnRlbF9lbmdpbmVfaW5pdF9oYW5n Y2hlY2soc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKTsKIGV4dGVybiB2b2lkIGludGVs X2hhbmdjaGVja19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9pcnEuYwppbmRleCA5ZjVhZTFlOTM4YmUuLjk1OGQ1NmY0OWRhZCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2lycS5jCkBAIC0yNzQxLDYgKzI3NDEsMzAgQEAgdm9pZCBpOTE1X2hhbmRs ZV9lcnJvcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJaWYgKCFlbmdpbmVf bWFzaykKIAkJZ290byBvdXQ7CiAKKwkvKiB0cnkgZW5naW5lIHJlc2V0IGZpcnN0LCBhbmQgY29u dGludWUgaWYgZmFpbHMgKi8KKwlpZiAoaW50ZWxfaGFzX3Jlc2V0X2VuZ2luZShkZXZfcHJpdikp IHsKKwkJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOworCQl1bnNpZ25lZCBpbnQgdG1w OworCisJCS8qIHByb3RlY3QgYWdhaW5zdCBjb25jdXJyZW50IHJlc2V0IGF0dGVtcHRzICovCisJ CWlmICh0ZXN0X2FuZF9zZXRfYml0KEk5MTVfUkVTRVRfRU5HSU5FX0lOX1BST0dSRVNTLAorCQkJ CSAgICAgJmRldl9wcml2LT5ncHVfZXJyb3IuZmxhZ3MpKQorCQkJZ290byBvdXQ7CisKKwkJZm9y X2VhY2hfZW5naW5lX21hc2tlZChlbmdpbmUsIGRldl9wcml2LCBlbmdpbmVfbWFzaywgdG1wKSB7 CisJCQlpZiAoaTkxNV9yZXNldF9lbmdpbmUoZW5naW5lKSA9PSAwKQorCQkJCWVuZ2luZV9tYXNr ICY9IH5pbnRlbF9lbmdpbmVfZmxhZyhlbmdpbmUpOworCQl9CisKKwkJLyogY2xlYXIgdW5jb25k aXRpb25hbGx5LCBmdWxsIHJlc2V0IHdvbid0IGNhcmUgYWJvdXQgaXQgKi8KKwkJY2xlYXJfYml0 KEk5MTVfUkVTRVRfRU5HSU5FX0lOX1BST0dSRVNTLAorCQkJICAmZGV2X3ByaXYtPmdwdV9lcnJv ci5mbGFncyk7CisKKwkJaWYgKCFlbmdpbmVfbWFzaykKKwkJCWdvdG8gb3V0OworCX0KKworCS8q IGZ1bGwgcmVzZXQgbmVlZHMgdGhlIG11dGV4LCBzdG9wIGFueSBvdGhlciB1c2VyIHRyeWluZyB0 byBkbyBzbyAqLwogCWlmICh0ZXN0X2FuZF9zZXRfYml0KEk5MTVfUkVTRVRfQkFDS09GRiwKIAkJ CSAgICAgJmRldl9wcml2LT5ncHVfZXJyb3IuZmxhZ3MpKQogCQlnb3RvIG91dDsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3BjaS5jCmluZGV4IGY4MGRiMmNjZDkyZi4uNGRmYjQwMGFlZjg1IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcGNpLmMKQEAgLTMxMCw3ICszMTAsOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGlu dGVsX2RldmljZV9pbmZvIGludGVsX2hhc3dlbGxfaW5mbyA9IHsKIAlCRFdfQ09MT1JTLCBcCiAJ Lmhhc19sb2dpY2FsX3JpbmdfY29udGV4dHMgPSAxLCBcCiAJLmhhc19mdWxsXzQ4Yml0X3BwZ3R0 ID0gMSwgXAotCS5oYXNfNjRiaXRfcmVsb2MgPSAxCisJLmhhc182NGJpdF9yZWxvYyA9IDEsIFwK KwkuaGFzX3Jlc2V0X2VuZ2luZSA9IDEKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZp Y2VfaW5mbyBpbnRlbF9icm9hZHdlbGxfaW5mbyA9IHsKIAlCRFdfRkVBVFVSRVMsCkBAIC0zNDEs NiArMzQyLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9j aGVycnl2aWV3X2luZm8gPSB7CiAJLmhhc19nbWNoX2Rpc3BsYXkgPSAxLAogCS5oYXNfYWxpYXNp bmdfcHBndHQgPSAxLAogCS5oYXNfZnVsbF9wcGd0dCA9IDEsCisJLmhhc19yZXNldF9lbmdpbmUg PSAxLAogCS5kaXNwbGF5X21taW9fb2Zmc2V0ID0gVkxWX0RJU1BMQVlfQkFTRSwKIAlHRU5fQ0hW X1BJUEVPRkZTRVRTLAogCUNVUlNPUl9PRkZTRVRTLApAQCAtMzg5LDYgKzM5MSw3IEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfc2t5bGFrZV9ndDNfaW5mbyA9 IHsKIAkuaGFzX2FsaWFzaW5nX3BwZ3R0ID0gMSwgXAogCS5oYXNfZnVsbF9wcGd0dCA9IDEsIFwK IAkuaGFzX2Z1bGxfNDhiaXRfcHBndHQgPSAxLCBcCisJLmhhc19yZXNldF9lbmdpbmUgPSAxLCBc CiAJR0VOX0RFRkFVTFRfUElQRU9GRlNFVFMsIFwKIAlJVkJfQ1VSU09SX09GRlNFVFMsIFwKIAlC RFdfQ09MT1JTCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCmluZGV4IGE5YTY5MzNhZmRh Mi4uNWY1NWNiNTcxMjdhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91 bmNvcmUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYwpAQCAtMTc3 Niw2ICsxNzc2LDE3IEBAIGJvb2wgaW50ZWxfaGFzX2dwdV9yZXNldChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpCiAJcmV0dXJuIGludGVsX2dldF9ncHVfcmVzZXQoZGV2X3ByaXYp ICE9IE5VTEw7CiB9CiAKKy8qCisgKiBXaGVuIEd1QyBzdWJtaXNzaW9uIGlzIGVuYWJsZWQsIEd1 QyBtYW5hZ2VzIEVMU1AgYW5kIGNhbiBpbml0aWF0ZSB0aGUKKyAqIGVuZ2luZSByZXNldCB0b28u IEZvciBub3csIGZhbGwgYmFjayB0byBmdWxsIEdQVSByZXNldCBpZiBpdCBpcyBlbmFibGVkLgor ICovCitib29sIGludGVsX2hhc19yZXNldF9lbmdpbmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQoreworCXJldHVybiAoZGV2X3ByaXYtPmluZm8uaGFzX3Jlc2V0X2VuZ2luZSAm JgorCQkhZGV2X3ByaXYtPmd1Yy5leGVjYnVmX2NsaWVudCAmJgorCQlpOTE1LnJlc2V0ID49IDIp OworfQorCiBpbnQgaW50ZWxfZ3VjX3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdikKIHsKIAlpbnQgcmV0OwotLSAKMi4xMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngK