From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Liu, Monk" Subject: RE: [PATCH 4/4] drm/amdgpu/SRIOV:implement guilty job TDR for Date: Mon, 8 May 2017 07:00:34 +0000 Message-ID: References: <1494226269-8837-1-git-send-email-Monk.Liu@amd.com> <1494226269-8837-5-git-send-email-Monk.Liu@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1494226269-8837-5-git-send-email-Monk.Liu-5C7GfCeVMHo@public.gmane.org> Content-Language: zh-CN List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "Liu, Monk" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" U29ycnkgLCBkcm9wIHRoaXMgb25lLCB0aGlzIG9uZSBkb2Vzbid0IHJlbW92ZSBkZWJ1ZyBjb2Rl DQoNClNlbmQgYW5vdGhlciBvbmUgYWZ0ZXIgY2xlYW51cHMuDQoNCg0KLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCkZyb206IGFtZC1nZnggW21haWx0bzphbWQtZ2Z4LWJvdW5jZXNAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnXSBPbiBCZWhhbGYgT2YgTW9uayBMaXUNClNlbnQ6IE1vbmRheSwgTWF5 IDA4LCAyMDE3IDI6NTEgUE0NClRvOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZw0KQ2M6 IExpdSwgTW9uayA8TW9uay5MaXVAYW1kLmNvbT4NClN1YmplY3Q6IFtQQVRDSCA0LzRdIGRybS9h bWRncHUvU1JJT1Y6aW1wbGVtZW50IGd1aWx0eSBqb2IgVERSIGZvcg0KDQoxLFREUiB3aWxsIGtp Y2tvdXQgZ3VpbHR5IGpvYiBpZiBpdCBoYW5nIGV4Y2VlZCB0aGUgdGhyZXNob2xkIG9mIHRoZSBn aXZlbiBvbmUgZnJvbSBrZXJuZWwgcGFyYW10ZXIgImpvYl9oYW5nX2xpbWl0IiwgdGhhdCB3YXkg YSBiYWQgY29tbWFuZCBzdHJlYW0gd2lsbCBub3QgaW5maW5pdGx5IGNhdXNlIEdQVSBoYW5nLg0K DQpieSBkZWZhdWx0IHRoaXMgdGhyZXNob2xkIGlzIDEgc28gYSBqb2Igd2lsbCBiZSBraWNrZWQg b3V0IGFmdGVyIGl0IGhhbmcuDQoNCjIsaWYgYSBqb2IgdGltZW91dCBURFIgcm91dGluZSB3aWxs IG5vdCByZXNldCBhbGwgc2NoZWQvcmluZywgaW5zdGVhZCBpZiB3aWxsIG9ubHkgcmVzZXQgb24g dGhlIGdpdm4gb25lIHdoaWNoIGlzIGluZGljYXRlZCBieSBAam9iIG9mIGFtZGdwdV9zcmlvdl9n cHVfcmVzZXQsIHRoYXQgd2F5IHdlIGRvbid0IG5lZWQgdG8gcmVzZXQgYW5kIHJlY292ZXIgZWFj aCBzY2hlZC9yaW5nIGlmIHdlIGFscmVhZHkga25vdyB3aGljaCBqb2IgY2F1c2UgR1BVIGhhbmcu DQoNCjMsdW5ibG9jayBzcmlvdl9ncHVfcmVzZXQgZm9yIEFJIGZhbWlseS4NCg0KVE9ETzoNCndo ZW4gYSBqb2IgaXMgY29uc2lkZXJlZCBhcyBndWlsdHksIHdlIHNob3VsZCBtYXJrIHNvbWUgZmxh ZyBpbiBpdHMgZmVuY2Ugc3RhdHVzIGZsYWcsIGFuZCBsZXQgVU1EIHNpZGUgYXdhcmUgdGhhdCB0 aGlzIGZlbmNlIHNpZ25hbGluZyBpcyBub3QgZHVlIHRvIGpvYiBjb21wbGV0ZSBidXQgam9iIGhh bmcuDQoNCkNoYW5nZS1JZDogSTdiODljMTlhM2RlOTMyNDlkYjU3MGQwYTgwNTIyMTc2YjE1MjVh MDkNClNpZ25lZC1vZmYtYnk6IE1vbmsgTGl1IDxNb25rLkxpdUBhbWQuY29tPg0KLS0tDQogZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggICAgICAgICAgIHwgIDEgKw0KIGRyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jdHguYyAgICAgICB8ICA0ICsrKw0KIGRyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYyAgICB8IDM2ICsrKysrKysrKysr KysrKysrKysrLS0tLS0tLQ0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYu YyAgICAgICB8ICA0ICsrKw0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9mZW5j ZS5jICAgICB8ICA4ICsrKysrKw0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9y aW5nLmMgICAgICB8ICAyICsrDQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3Jp bmcuaCAgICAgIHwgIDEgKw0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90dG0u YyAgICAgICB8ICAxICsNCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zZG1hX3Y0XzAuYyAg ICAgICAgfCAgMSArDQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvc29jMTUuYyAgICAgICAg ICAgIHwgIDQgKy0tDQogZHJpdmVycy9ncHUvZHJtL2FtZC9zY2hlZHVsZXIvZ3B1X3NjaGVkdWxl ci5jIHwgMTEgKysrKysrKy0gIGRyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hl ZHVsZXIuaCB8ICA3ICsrKysrKw0KIDEyIGZpbGVzIGNoYW5nZWQsIDY4IGluc2VydGlvbnMoKyks IDEyIGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaA0KaW5kZXgg OTBhNjliZi4uOTNiY2VhMiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdS5oDQorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaA0KQEAg LTExMSw2ICsxMTEsNyBAQCBleHRlcm4gaW50IGFtZGdwdV9wcmltX2J1Zl9wZXJfc2U7ICBleHRl cm4gaW50IGFtZGdwdV9wb3NfYnVmX3Blcl9zZTsgIGV4dGVybiBpbnQgYW1kZ3B1X2NudGxfc2Jf YnVmX3Blcl9zZTsgIGV4dGVybiBpbnQgYW1kZ3B1X3BhcmFtX2J1Zl9wZXJfc2U7DQorZXh0ZXJu IGludCBhbWRncHVfam9iX2hhbmdfbGltaXQ7DQogDQogI2RlZmluZSBBTURHUFVfREVGQVVMVF9H VFRfU0laRV9NQgkJMzA3MlVMTCAvKiAzR0IgYnkgZGVmYXVsdCAqLw0KICNkZWZpbmUgQU1ER1BV X1dBSVRfSURMRV9USU1FT1VUX0lOX01TCSAgICAgICAgMzAwMA0KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jdHguYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9jdHguYw0KaW5kZXggYjRiYmJiMy4uMjNhZmM1OCAxMDA2NDQNCi0tLSBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jdHguYw0KKysrIGIvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2N0eC5jDQpAQCAtNTIsNiArNTIsMTAgQEAgc3RhdGlj IGludCBhbWRncHVfY3R4X2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHN0cnVjdCBh bWRncHVfY3R4ICpjdHgpDQogCQlzdHJ1Y3QgYW1kX3NjaGVkX3JxICpycTsNCiANCiAJCXJxID0g JnJpbmctPnNjaGVkLnNjaGVkX3JxW0FNRF9TQ0hFRF9QUklPUklUWV9OT1JNQUxdOw0KKw0KKwkJ aWYgKHJpbmcgPT0gJmFkZXYtPmdmeC5raXEucmluZykNCisJCQljb250aW51ZTsNCisNCiAJCXIg PSBhbWRfc2NoZWRfZW50aXR5X2luaXQoJnJpbmctPnNjaGVkLCAmY3R4LT5yaW5nc1tpXS5lbnRp dHksDQogCQkJCQkgIHJxLCBhbWRncHVfc2NoZWRfam9icyk7DQogCQlpZiAocikNCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMNCmluZGV4IDBlNWYzMTQuLmYzOTkw ZmUgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNl LmMNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYw0KQEAg LTI1MzcsNyArMjUzNyw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3JlY292ZXJfdnJhbV9mcm9tX3No YWRvdyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwNCiAgKi8NCiBpbnQgYW1kZ3B1X3NyaW92 X2dwdV9yZXNldChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgc3RydWN0IGFtZGdwdV9qb2Ig KmpvYikgIHsNCi0JaW50IGksIHIgPSAwOw0KKwlpbnQgaSwgaiwgciA9IDA7DQogCWludCByZXNj aGVkOw0KIAlzdHJ1Y3QgYW1kZ3B1X2JvICpibywgKnRtcDsNCiAJc3RydWN0IGFtZGdwdV9yaW5n ICpyaW5nOw0KQEAgLTI1NTAsMTkgKzI1NTAsMzAgQEAgaW50IGFtZGdwdV9zcmlvdl9ncHVfcmVz ZXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHN0cnVjdCBhbWRncHVfam9iICpqb2IpDQog CS8qIGJsb2NrIFRUTSAqLw0KIAlyZXNjaGVkID0gdHRtX2JvX2xvY2tfZGVsYXllZF93b3JrcXVl dWUoJmFkZXYtPm1tYW4uYmRldik7DQogDQotCS8qIGJsb2NrIHNjaGVkdWxlciAqLw0KLQlmb3Ig KGkgPSAwOyBpIDwgQU1ER1BVX01BWF9SSU5HUzsgKytpKSB7DQotCQlyaW5nID0gYWRldi0+cmlu Z3NbaV07DQorCS8qIHdlIHN0YXJ0IGZyb20gdGhlIHJpbmcgdHJpZ2dlciBHUFUgaGFuZyAqLw0K KwlqID0gam9iID8gam9iLT5yaW5nLT5pZHggOiAwOw0KKw0KKwlpZiAoam9iKQ0KKwkJaWYgKGFt ZF9zY2hlZF9pbnZhbGlkYXRlX2pvYigmam9iLT5iYXNlLCBhbWRncHVfam9iX2hhbmdfbGltaXQp KQ0KKwkJCWFtZF9zY2hlZF9qb2Jfa2lja291dCgmam9iLT5iYXNlKTsNCiANCisJLyogYmxvY2sg c2NoZWR1bGVyICovDQorCWZvciAoaSA9IGo7IGkgPCBqICsgQU1ER1BVX01BWF9SSU5HUzsgKytp KSB7DQorCQlyaW5nID0gYWRldi0+cmluZ3NbaSAlIEFNREdQVV9NQVhfUklOR1NdOw0KIAkJaWYg KCFyaW5nIHx8ICFyaW5nLT5zY2hlZC50aHJlYWQpDQogCQkJY29udGludWU7DQogDQogCQlrdGhy ZWFkX3BhcmsocmluZy0+c2NoZWQudGhyZWFkKTsNCisNCisJCWlmIChqb2IgJiYgaiAhPSBpKQ0K KwkJCWNvbnRpbnVlOw0KKw0KKwkJLyogb25seSBkbyBqb2JfcmVzZXQgb24gdGhlIGhhbmcgcmlu ZyBpZiBAam9iIG5vdCBOVUxMICovDQogCQlhbWRfc2NoZWRfaHdfam9iX3Jlc2V0KCZyaW5nLT5z Y2hlZCk7DQotCX0NCiANCi0JLyogYWZ0ZXIgYWxsIGh3IGpvYnMgYXJlIHJlc2V0LCBodyBmZW5j ZSBpcyBtZWFuaW5nbGVzcywgc28gZm9yY2VfY29tcGxldGlvbiAqLw0KLQlhbWRncHVfZmVuY2Vf ZHJpdmVyX2ZvcmNlX2NvbXBsZXRpb24oYWRldik7DQorCQkvKiBhZnRlciBhbGwgaHcgam9icyBh cmUgcmVzZXQsIGh3IGZlbmNlIGlzIG1lYW5pbmdsZXNzLCBzbyBmb3JjZV9jb21wbGV0aW9uICov DQorCQlhbWRncHVfZmVuY2VfZHJpdmVyX2ZvcmNlX2NvbXBsZXRpb25fcmluZyhyaW5nKTsNCisJ fQ0KIA0KIAkvKiByZXF1ZXN0IHRvIHRha2UgZnVsbCBjb250cm9sIG9mIEdQVSBiZWZvcmUgcmUt aW5pdGlhbGl6YXRpb24gICovDQogCWlmIChqb2IpDQpAQCAtMjYxNSwxMSArMjYyNiwxNiBAQCBp bnQgYW1kZ3B1X3NyaW92X2dwdV9yZXNldChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgc3Ry dWN0IGFtZGdwdV9qb2IgKmpvYikNCiAJfQ0KIAlmZW5jZV9wdXQoZmVuY2UpOw0KIA0KLQlmb3Ig KGkgPSAwOyBpIDwgQU1ER1BVX01BWF9SSU5HUzsgKytpKSB7DQotCQlzdHJ1Y3QgYW1kZ3B1X3Jp bmcgKnJpbmcgPSBhZGV2LT5yaW5nc1tpXTsNCisJZm9yIChpID0gajsgaSA8IGogKyBBTURHUFVf TUFYX1JJTkdTOyArK2kpIHsNCisJCXJpbmcgPSBhZGV2LT5yaW5nc1tpICUgQU1ER1BVX01BWF9S SU5HU107DQogCQlpZiAoIXJpbmcgfHwgIXJpbmctPnNjaGVkLnRocmVhZCkNCiAJCQljb250aW51 ZTsNCiANCisJCWlmIChqb2IgJiYgaiAhPSBpKSB7DQorCQkJa3RocmVhZF91bnBhcmsocmluZy0+ c2NoZWQudGhyZWFkKTsNCisJCQljb250aW51ZTsNCisJCX0NCisNCiAJCWFtZF9zY2hlZF9qb2Jf cmVjb3ZlcnkoJnJpbmctPnNjaGVkKTsNCiAJCWt0aHJlYWRfdW5wYXJrKHJpbmctPnNjaGVkLnRo cmVhZCk7DQogCX0NCkBAIC0yNjI5LDYgKzI2NDUsOCBAQCBpbnQgYW1kZ3B1X3NyaW92X2dwdV9y ZXNldChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgc3RydWN0IGFtZGdwdV9qb2IgKmpvYikN CiAJaWYgKHIpIHsNCiAJCS8qIGJhZCBuZXdzLCBob3cgdG8gdGVsbCBpdCB0byB1c2Vyc3BhY2Ug PyAqLw0KIAkJZGV2X2luZm8oYWRldi0+ZGV2LCAiR1BVIHJlc2V0IGZhaWxlZFxuIik7DQorCX0g ZWxzZSB7DQorCQlkZXZfaW5mbyhhZGV2LT5kZXYsICJHUFUgcmVzZXQgc3VjY2Vzc2VkIVxuIik7 DQogCX0NCiANCiAJYWRldi0+Z2Z4LmluX3Jlc2V0ID0gZmFsc2U7DQpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X2Rydi5jDQppbmRleCA0MTY5MDhhLi5mZDM2OTFhOCAxMDA2NDQNCi0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYuYw0KKysrIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Rydi5jDQpAQCAtMTEyLDYgKzExMiw3IEBAIGlu dCBhbWRncHVfcHJpbV9idWZfcGVyX3NlID0gMDsgIGludCBhbWRncHVfcG9zX2J1Zl9wZXJfc2Ug PSAwOyAgaW50IGFtZGdwdV9jbnRsX3NiX2J1Zl9wZXJfc2UgPSAwOyAgaW50IGFtZGdwdV9wYXJh bV9idWZfcGVyX3NlID0gMDsNCitpbnQgYW1kZ3B1X2pvYl9oYW5nX2xpbWl0ID0gMDsNCiANCiBN T0RVTEVfUEFSTV9ERVNDKHZyYW1saW1pdCwgIlJlc3RyaWN0IFZSQU0gZm9yIHRlc3RpbmcsIGlu IG1lZ2FieXRlcyIpOyAgbW9kdWxlX3BhcmFtX25hbWVkKHZyYW1saW1pdCwgYW1kZ3B1X3ZyYW1f bGltaXQsIGludCwgMDYwMCk7IEBAIC0yMzcsNiArMjM4LDkgQEAgbW9kdWxlX3BhcmFtX25hbWVk KGNudGxfc2JfYnVmX3Blcl9zZSwgYW1kZ3B1X2NudGxfc2JfYnVmX3Blcl9zZSwgaW50LCAwNDQ0 KTsgIE1PRFVMRV9QQVJNX0RFU0MocGFyYW1fYnVmX3Blcl9zZSwgInRoZSBzaXplIG9mIE9mZi1D aGlwIFByYW1hdGVyIENhY2hlIHBlciBTaGFkZXIgRW5naW5lIChkZWZhdWx0IGRlcGVuZGluZyBv biBnZngpIik7ICBtb2R1bGVfcGFyYW1fbmFtZWQocGFyYW1fYnVmX3Blcl9zZSwgYW1kZ3B1X3Bh cmFtX2J1Zl9wZXJfc2UsIGludCwgMDQ0NCk7DQogDQorTU9EVUxFX1BBUk1fREVTQyhqb2JfaGFu Z19saW1pdCwgImhvdyBtdWNoIHRpbWUgYWxsb3cgYSBqb2IgaGFuZyBhbmQgDQorbm90IGRyb3Ag aXQgKGRlZmF1bHQgMCkiKTsgbW9kdWxlX3BhcmFtX25hbWVkKGpvYl9oYW5nX2xpbWl0LCANCith bWRncHVfam9iX2hhbmdfbGltaXQsIGludCAsMDQ0NCk7DQorDQogDQogc3RhdGljIGNvbnN0IHN0 cnVjdCBwY2lfZGV2aWNlX2lkIHBjaWlkbGlzdFtdID0geyAgI2lmZGVmICBDT05GSUdfRFJNX0FN REdQVV9TSSBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Zl bmNlLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZmVuY2UuYw0KaW5kZXgg ZDc1MjNkMS4uYmU5YWVkMSAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdV9mZW5jZS5jDQorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf ZmVuY2UuYw0KQEAgLTU0MSw2ICs1NDEsMTIgQEAgdm9pZCBhbWRncHVfZmVuY2VfZHJpdmVyX2Zv cmNlX2NvbXBsZXRpb24oc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpDQogCX0NCiB9DQogDQor dm9pZCBhbWRncHVfZmVuY2VfZHJpdmVyX2ZvcmNlX2NvbXBsZXRpb25fcmluZyhzdHJ1Y3QgYW1k Z3B1X3JpbmcgDQorKnJpbmcpIHsNCisJaWYgKHJpbmcpDQorCQlhbWRncHVfZmVuY2Vfd3JpdGUo cmluZywgcmluZy0+ZmVuY2VfZHJ2LnN5bmNfc2VxKTsgfQ0KKw0KIC8qDQogICogQ29tbW9uIGZl bmNlIGltcGxlbWVudGF0aW9uDQogICovDQpAQCAtNTg5LDYgKzU5NSw3IEBAIHN0YXRpYyB2b2lk IGFtZGdwdV9mZW5jZV9mcmVlKHN0cnVjdCByY3VfaGVhZCAqcmN1KQ0KIAlzdHJ1Y3QgZmVuY2Ug KmYgPSBjb250YWluZXJfb2YocmN1LCBzdHJ1Y3QgZmVuY2UsIHJjdSk7DQogCXN0cnVjdCBhbWRn cHVfZmVuY2UgKmZlbmNlID0gdG9fYW1kZ3B1X2ZlbmNlKGYpOw0KIAlrbWVtX2NhY2hlX2ZyZWUo YW1kZ3B1X2ZlbmNlX3NsYWIsIGZlbmNlKTsNCisJLy9wcmludGsoImZlbmNlIGZyZWU6JXBcbiIs IGYpOw0KIH0NCiANCiAvKioNCkBAIC02MDEsNiArNjA4LDcgQEAgc3RhdGljIHZvaWQgYW1kZ3B1 X2ZlbmNlX2ZyZWUoc3RydWN0IHJjdV9oZWFkICpyY3UpDQogICovDQogc3RhdGljIHZvaWQgYW1k Z3B1X2ZlbmNlX3JlbGVhc2Uoc3RydWN0IGZlbmNlICpmKSAgew0KKwkvL3ByaW50aygiY2FsbF9y Y3Ugb24gZmVuY2U6JXBcbiIsZik7DQogCWNhbGxfcmN1KCZmLT5yY3UsIGFtZGdwdV9mZW5jZV9m cmVlKTsNCiB9DQogDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3JpbmcuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9yaW5nLmMNCmlu ZGV4IDEzMDM1N2IuLmFjYjM4YTQgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfcmluZy5jDQorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfcmluZy5jDQpAQCAtMTgwLDYgKzE4MCw4IEBAIGludCBhbWRncHVfcmluZ19pbml0KHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsDQogCQkJYW1k Z3B1X3NjaGVkX2h3X3N1Ym1pc3Npb24pOw0KIAkJaWYgKHIpDQogCQkJcmV0dXJuIHI7DQorDQor CQlwcmludGsoInJpbmc6JXAsIGluaXQsIGlkeD0lZFxuIiwgcmluZywgcmluZy0+aWR4KTsNCiAJ fQ0KIA0KIAlpZiAocmluZy0+ZnVuY3MtPnN1cHBvcnRfNjRiaXRfcHRycykgeyBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3JpbmcuaCBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9yaW5nLmgNCmluZGV4IDk4MWVmMDguLjAzZTg4YzYgMTAw NjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcmluZy5oDQorKysg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcmluZy5oDQpAQCAtNzYsNiArNzYs NyBAQCBzdHJ1Y3QgYW1kZ3B1X2ZlbmNlX2RyaXZlciB7ICBpbnQgYW1kZ3B1X2ZlbmNlX2RyaXZl cl9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsgIHZvaWQgYW1kZ3B1X2ZlbmNlX2Ry aXZlcl9maW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsgIHZvaWQgYW1kZ3B1X2ZlbmNl X2RyaXZlcl9mb3JjZV9jb21wbGV0aW9uKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsNCit2 b2lkIGFtZGdwdV9mZW5jZV9kcml2ZXJfZm9yY2VfY29tcGxldGlvbl9yaW5nKHN0cnVjdCBhbWRn cHVfcmluZyANCisqcmluZyk7DQogDQogaW50IGFtZGdwdV9mZW5jZV9kcml2ZXJfaW5pdF9yaW5n KHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywNCiAJCQkJICB1bnNpZ25lZCBudW1faHdfc3VibWlz c2lvbik7DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0 bS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5jDQppbmRleCBjM2Zi MmY5Li5mNmU3OWM1IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3R0bS5jDQorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdHRtLmMN CkBAIC05OSw2ICs5OSw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3R0bV9nbG9iYWxfaW5pdChzdHJ1 Y3QgYW1kZ3B1X2RldmljZSAqYWRldikNCiANCiAJcmluZyA9IGFkZXYtPm1tYW4uYnVmZmVyX2Z1 bmNzX3Jpbmc7DQogCXJxID0gJnJpbmctPnNjaGVkLnNjaGVkX3JxW0FNRF9TQ0hFRF9QUklPUklU WV9LRVJORUxdOw0KKwlwcmludGsoInJpbmcgJXAscmluZy0+aWR4PSVkXG4iLHJpbmcsIHJpbmct PmlkeCk7DQogCXIgPSBhbWRfc2NoZWRfZW50aXR5X2luaXQoJnJpbmctPnNjaGVkLCAmYWRldi0+ bW1hbi5lbnRpdHksDQogCQkJCSAgcnEsIGFtZGdwdV9zY2hlZF9qb2JzKTsNCiAJaWYgKHIpIHsN CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zZG1hX3Y0XzAuYyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NkbWFfdjRfMC5jDQppbmRleCBmODRkNjQyLi42YTgw MjBiIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvc2RtYV92NF8wLmMN CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NkbWFfdjRfMC5jDQpAQCAtMTU3Niw2 ICsxNTc2LDcgQEAgc3RhdGljIHZvaWQgc2RtYV92NF8wX3NldF9idWZmZXJfZnVuY3Moc3RydWN0 IGFtZGdwdV9kZXZpY2UgKmFkZXYpDQogCWlmIChhZGV2LT5tbWFuLmJ1ZmZlcl9mdW5jcyA9PSBO VUxMKSB7DQogCQlhZGV2LT5tbWFuLmJ1ZmZlcl9mdW5jcyA9ICZzZG1hX3Y0XzBfYnVmZmVyX2Z1 bmNzOw0KIAkJYWRldi0+bW1hbi5idWZmZXJfZnVuY3NfcmluZyA9ICZhZGV2LT5zZG1hLmluc3Rh bmNlWzBdLnJpbmc7DQorCQlwcmludGsoIiVzXG4iLF9fZnVuY19fKTsNCiAJfQ0KIH0NCiANCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zb2MxNS5jIGIvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvc29jMTUuYw0KaW5kZXggNGU1MTRiMi4uZWQzYzkyNyAxMDA2NDQN Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1LmMNCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L3NvYzE1LmMNCkBAIC00ODIsOCArNDgyLDggQEAgaW50IHNvYzE1 X3NldF9pcF9ibG9ja3Moc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpICAjZW5kaWYNCiAJCWFt ZGdwdV9pcF9ibG9ja19hZGQoYWRldiwgJmdmeF92OV8wX2lwX2Jsb2NrKTsNCiAJCWFtZGdwdV9p cF9ibG9ja19hZGQoYWRldiwgJnNkbWFfdjRfMF9pcF9ibG9jayk7DQotCQlhbWRncHVfaXBfYmxv Y2tfYWRkKGFkZXYsICZ1dmRfdjdfMF9pcF9ibG9jayk7DQotCQlhbWRncHVfaXBfYmxvY2tfYWRk KGFkZXYsICZ2Y2VfdjRfMF9pcF9ibG9jayk7DQorCQkvL2FtZGdwdV9pcF9ibG9ja19hZGQoYWRl diwgJnV2ZF92N18wX2lwX2Jsb2NrKTsNCisJCS8vYW1kZ3B1X2lwX2Jsb2NrX2FkZChhZGV2LCAm dmNlX3Y0XzBfaXBfYmxvY2spOw0KIAkJYnJlYWs7DQogCWRlZmF1bHQ6DQogCQlyZXR1cm4gLUVJ TlZBTDsNCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2No ZWR1bGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmMN CmluZGV4IDZmNGUzMWYuLjRlOTdlNmQgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmMNCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2No ZWR1bGVyL2dwdV9zY2hlZHVsZXIuYw0KQEAgLTM5MCw5ICszOTAsMTggQEAgdm9pZCBhbWRfc2No ZWRfaHdfam9iX3Jlc2V0KHN0cnVjdCBhbWRfZ3B1X3NjaGVkdWxlciAqc2NoZWQpDQogCQkJCQkg ICZzX2pvYi0+c19mZW5jZS0+Y2IpKSB7DQogCQkJZmVuY2VfcHV0KHNfam9iLT5zX2ZlbmNlLT5w YXJlbnQpOw0KIAkJCXNfam9iLT5zX2ZlbmNlLT5wYXJlbnQgPSBOVUxMOw0KKwkJCWF0b21pY19k ZWMoJnNjaGVkLT5od19ycV9jb3VudCk7DQogCQl9DQogCX0NCi0JYXRvbWljX3NldCgmc2NoZWQt Pmh3X3JxX2NvdW50LCAwKTsNCisJc3Bpbl91bmxvY2soJnNjaGVkLT5qb2JfbGlzdF9sb2NrKTsN Cit9DQorDQordm9pZCBhbWRfc2NoZWRfam9iX2tpY2tvdXQoc3RydWN0IGFtZF9zY2hlZF9qb2Ig KnNfam9iKSB7DQorCXN0cnVjdCBhbWRfZ3B1X3NjaGVkdWxlciAqc2NoZWQgPSBzX2pvYi0+c2No ZWQ7DQorDQorCXNwaW5fbG9jaygmc2NoZWQtPmpvYl9saXN0X2xvY2spOw0KKwlsaXN0X2RlbF9p bml0KCZzX2pvYi0+bm9kZSk7DQogCXNwaW5fdW5sb2NrKCZzY2hlZC0+am9iX2xpc3RfbG9jayk7 DQogfQ0KIA0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9z Y2hlZHVsZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIu aA0KaW5kZXggOGNiNDFkMy4uNTk2OTRmMyAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuaA0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9z Y2hlZHVsZXIvZ3B1X3NjaGVkdWxlci5oDQpAQCAtODEsNiArODEsNyBAQCBzdHJ1Y3QgYW1kX3Nj aGVkX2pvYiB7DQogCXN0cnVjdCBsaXN0X2hlYWQJCW5vZGU7DQogCXN0cnVjdCBkZWxheWVkX3dv cmsJCXdvcmtfdGRyOw0KIAl1aW50NjRfdAkJCWlkOw0KKwlhdG9taWNfdCBrYXJtYTsNCiB9Ow0K IA0KIGV4dGVybiBjb25zdCBzdHJ1Y3QgZmVuY2Vfb3BzIGFtZF9zY2hlZF9mZW5jZV9vcHNfc2No ZWR1bGVkOyBAQCAtOTYsNiArOTcsMTEgQEAgc3RhdGljIGlubGluZSBzdHJ1Y3QgYW1kX3NjaGVk X2ZlbmNlICp0b19hbWRfc2NoZWRfZmVuY2Uoc3RydWN0IGZlbmNlICpmKQ0KIAlyZXR1cm4gTlVM TDsNCiB9DQogDQorc3RhdGljIGlubGluZSBib29sIGFtZF9zY2hlZF9pbnZhbGlkYXRlX2pvYihz dHJ1Y3QgYW1kX3NjaGVkX2pvYiANCisqc19qb2IsIGludCB0aHJlc2hvbGQpIHsNCisJcmV0dXJu IChzX2pvYiAmJiBhdG9taWNfaW5jX3JldHVybigmc19qb2ItPmthcm1hKSA+IHRocmVzaG9sZCk7 IH0NCisNCiAvKioNCiAgKiBEZWZpbmUgdGhlIGJhY2tlbmQgb3BlcmF0aW9ucyBjYWxsZWQgYnkg dGhlIHNjaGVkdWxlciwNCiAgKiB0aGVzZSBmdW5jdGlvbnMgc2hvdWxkIGJlIGltcGxlbWVudGVk IGluIGRyaXZlciBzaWRlIEBAIC0xNTgsNCArMTY0LDUgQEAgaW50IGFtZF9zY2hlZF9qb2JfaW5p dChzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqam9iLA0KIAkJICAgICAgIHZvaWQgKm93bmVyKTsNCiB2 b2lkIGFtZF9zY2hlZF9od19qb2JfcmVzZXQoc3RydWN0IGFtZF9ncHVfc2NoZWR1bGVyICpzY2hl ZCk7ICB2b2lkIGFtZF9zY2hlZF9qb2JfcmVjb3Zlcnkoc3RydWN0IGFtZF9ncHVfc2NoZWR1bGVy ICpzY2hlZCk7DQordm9pZCBhbWRfc2NoZWRfam9iX2tpY2tvdXQoc3RydWN0IGFtZF9zY2hlZF9q b2IgKnNfam9iKTsNCiAjZW5kaWYNCi0tDQoyLjcuNA0KDQpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXw0KYW1kLWdmeCBtYWlsaW5nIGxpc3QNCmFtZC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnDQpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2FtZC1nZngNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1k LWdmeAo=