From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 8/9] drm/amdgpu: Add a argument in emit_cntxcntl interface Date: Thu, 6 Dec 2018 13:40:49 +0100 Message-ID: <2915d3c8-fa8d-cd69-5a9e-bebb8c102791@gmail.com> References: <1544098447-21648-1-git-send-email-Rex.Zhu@amd.com> <1544098447-21648-7-git-send-email-Rex.Zhu@amd.com> Reply-To: christian.koenig-5C7GfCeVMHo@public.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1544098447-21648-7-git-send-email-Rex.Zhu-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US 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: Rex Zhu , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org QW0gMDYuMTIuMTggdW0gMTM6MTQgc2NocmllYiBSZXggWmh1Ogo+IGFkZCBhIHBvaW50IG9mIHN0 cnVjdCBhbWRncHVfam9iIGluIGVtaXRfY250eGNudGwKPiBpbnRlcmZhY2UgaW4gb3JkZXIgdG8g Z2V0IHRoZSBjc2EgbWMgYWRkcmVzcyBwZXIgY3R4Cj4gd2hlbiBlbWl0IGNlIG1ldGFkYXRhIGlu IGJhcmVtZXRhbC4KPgo+IFNpZ25lZC1vZmYtYnk6IFJleCBaaHUgPFJleC5aaHVAYW1kLmNvbT4K ClJldmlld2VkLWJ5OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+ Cgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2liLmMgICB8ICAy ICstCj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcmluZy5oIHwgIDQgKyst LQo+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y2XzAuYyAgICB8ICA0ICsrKy0K PiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92N18wLmMgICAgfCAgNCArKystCj4g ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5jICAgIHwgMjAgKysrKysrKysr KysrLS0tLS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OV8wLmMgICAg fCAxNiArKysrKysrKysrLS0tLS0tCj4gICA2IGZpbGVzIGNoYW5nZWQsIDMxIGluc2VydGlvbnMo KyksIDE5IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9pYi5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2li LmMKPiBpbmRleCBjNDgyMDdiMy4uNTMyOTA0NCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfaWIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9pYi5jCj4gQEAgLTIwOCw3ICsyMDgsNyBAQCBpbnQgYW1kZ3B1X2liX3NjaGVk dWxlKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywgdW5zaWduZWQgbnVtX2licywKPiAgIAkJCXN0 YXR1cyB8PSBBTURHUFVfSEFWRV9DVFhfU1dJVENIOwo+ICAgCQlzdGF0dXMgfD0gam9iLT5wcmVh bWJsZV9zdGF0dXM7Cj4gICAKPiAtCQlhbWRncHVfcmluZ19lbWl0X2NudHhjbnRsKHJpbmcsIHN0 YXR1cyk7Cj4gKwkJYW1kZ3B1X3JpbmdfZW1pdF9jbnR4Y250bChyaW5nLCBqb2IsIHN0YXR1cyk7 Cj4gICAJfQo+ICAgCj4gICAJZm9yIChpID0gMDsgaSA8IG51bV9pYnM7ICsraSkgewo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcmluZy5oIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3JpbmcuaAo+IGluZGV4IDBiZWIwMWYuLjdhYTQ2 Y2MgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3Jpbmcu aAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9yaW5nLmgKPiBAQCAt MTU3LDcgKzE1Nyw3IEBAIHN0cnVjdCBhbWRncHVfcmluZ19mdW5jcyB7Cj4gICAJdm9pZCAoKmJl Z2luX3VzZSkoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nKTsKPiAgIAl2b2lkICgqZW5kX3VzZSko c3RydWN0IGFtZGdwdV9yaW5nICpyaW5nKTsKPiAgIAl2b2lkICgqZW1pdF9zd2l0Y2hfYnVmZmVy KSAoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nKTsKPiAtCXZvaWQgKCplbWl0X2NudHhjbnRsKSAo c3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLCB1aW50MzJfdCBmbGFncyk7Cj4gKwl2b2lkICgqZW1p dF9jbnR4Y250bCkgKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywgc3RydWN0IGFtZGdwdV9qb2Ig KmpvYiwgdWludDMyX3QgZmxhZ3MpOwo+ICAgCXZvaWQgKCplbWl0X3JyZWcpKHN0cnVjdCBhbWRn cHVfcmluZyAqcmluZywgdWludDMyX3QgcmVnKTsKPiAgIAl2b2lkICgqZW1pdF93cmVnKShzdHJ1 Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsIHVpbnQzMl90IHJlZywgdWludDMyX3QgdmFsKTsKPiAgIAl2 b2lkICgqZW1pdF9yZWdfd2FpdCkoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLCB1aW50MzJfdCBy ZWcsCj4gQEAgLTIzNiw3ICsyMzYsNyBAQCBzdHJ1Y3QgYW1kZ3B1X3Jpbmcgewo+ICAgI2RlZmlu ZSBhbWRncHVfcmluZ19lbWl0X2dkc19zd2l0Y2gociwgdiwgZGIsIGRzLCB3Yiwgd3MsIGFiLCBh cykgKHIpLT5mdW5jcy0+ZW1pdF9nZHNfc3dpdGNoKChyKSwgKHYpLCAoZGIpLCAoZHMpLCAod2Ip LCAod3MpLCAoYWIpLCAoYXMpKQo+ICAgI2RlZmluZSBhbWRncHVfcmluZ19lbWl0X2hkcF9mbHVz aChyKSAociktPmZ1bmNzLT5lbWl0X2hkcF9mbHVzaCgocikpCj4gICAjZGVmaW5lIGFtZGdwdV9y aW5nX2VtaXRfc3dpdGNoX2J1ZmZlcihyKSAociktPmZ1bmNzLT5lbWl0X3N3aXRjaF9idWZmZXIo KHIpKQo+IC0jZGVmaW5lIGFtZGdwdV9yaW5nX2VtaXRfY250eGNudGwociwgZCkgKHIpLT5mdW5j cy0+ZW1pdF9jbnR4Y250bCgociksIChkKSkKPiArI2RlZmluZSBhbWRncHVfcmluZ19lbWl0X2Nu dHhjbnRsKHIsIGpvYiwgZCkgKHIpLT5mdW5jcy0+ZW1pdF9jbnR4Y250bCgociksIChqb2IpLCAo ZCkpCj4gICAjZGVmaW5lIGFtZGdwdV9yaW5nX2VtaXRfcnJlZyhyLCBkKSAociktPmZ1bmNzLT5l bWl0X3JyZWcoKHIpLCAoZCkpCj4gICAjZGVmaW5lIGFtZGdwdV9yaW5nX2VtaXRfd3JlZyhyLCBk LCB2KSAociktPmZ1bmNzLT5lbWl0X3dyZWcoKHIpLCAoZCksICh2KSkKPiAgICNkZWZpbmUgYW1k Z3B1X3JpbmdfZW1pdF9yZWdfd2FpdChyLCBkLCB2LCBtKSAociktPmZ1bmNzLT5lbWl0X3JlZ193 YWl0KChyKSwgKGQpLCAodiksIChtKSkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvZ2Z4X3Y2XzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92Nl8w LmMKPiBpbmRleCA1YjI1YzI2Li45NzZmOTRhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2dmeF92Nl8wLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9nZnhfdjZfMC5jCj4gQEAgLTI5NzYsNyArMjk3Niw5IEBAIHN0YXRpYyB1aW50NjRfdCBnZnhf djZfMF9nZXRfZ3B1X2Nsb2NrX2NvdW50ZXIoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4g ICAJcmV0dXJuIGNsb2NrOwo+ICAgfQo+ICAgCj4gLXN0YXRpYyB2b2lkIGdmeF92Nl9yaW5nX2Vt aXRfY250eGNudGwoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLCB1aW50MzJfdCBmbGFncykKPiAr c3RhdGljIHZvaWQgZ2Z4X3Y2X3JpbmdfZW1pdF9jbnR4Y250bChzdHJ1Y3QgYW1kZ3B1X3Jpbmcg KnJpbmcsCj4gKwkJCQkJc3RydWN0IGFtZGdwdV9qb2IgKmpvYiwKPiArCQkJCQl1aW50MzJfdCBm bGFncykKPiAgIHsKPiAgIAlpZiAoZmxhZ3MgJiBBTURHUFVfSEFWRV9DVFhfU1dJVENIKQo+ICAg CQlnZnhfdjZfMF9yaW5nX2VtaXRfdmd0X2ZsdXNoKHJpbmcpOwo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjdfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvZ2Z4X3Y3XzAuYwo+IGluZGV4IDI0M2I4YzUuLmFiNjIxMTcgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y3XzAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2dmeF92N18wLmMKPiBAQCAtMjI3NSw3ICsyMjc1LDkgQEAgc3RhdGlj IHZvaWQgZ2Z4X3Y3XzBfcmluZ19lbWl0X2liX2NvbXB1dGUoc3RydWN0IGFtZGdwdV9yaW5nICpy aW5nLAo+ICAgCWFtZGdwdV9yaW5nX3dyaXRlKHJpbmcsIGNvbnRyb2wpOwo+ICAgfQo+ICAgCj4g LXN0YXRpYyB2b2lkIGdmeF92N19yaW5nX2VtaXRfY250eGNudGwoc3RydWN0IGFtZGdwdV9yaW5n ICpyaW5nLCB1aW50MzJfdCBmbGFncykKPiArc3RhdGljIHZvaWQgZ2Z4X3Y3X3JpbmdfZW1pdF9j bnR4Y250bChzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsCj4gKwkJCQkJc3RydWN0IGFtZGdwdV9q b2IgKmpvYiwKPiArCQkJCQl1aW50MzJfdCBmbGFncykKPiAgIHsKPiAgIAl1aW50MzJfdCBkdzIg PSAwOwo+ICAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92 OF8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5jCj4gaW5kZXggZDUy OWNlZi4uM2FjMmQ4ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9n ZnhfdjhfMC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y4XzAuYwo+ IEBAIC03MjMsOCArNzIzLDggQEAgZW51bSB7Cj4gICBzdGF0aWMgdm9pZCBnZnhfdjhfMF9zZXRf cmxjX2Z1bmNzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKPiAgIHN0YXRpYyB1MzIgZ2Z4 X3Y4XzBfZ2V0X2NzYl9zaXplKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKPiAgIHN0YXRp YyB2b2lkIGdmeF92OF8wX2dldF9jdV9pbmZvKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsK PiAtc3RhdGljIHZvaWQgZ2Z4X3Y4XzBfcmluZ19lbWl0X2NlX21ldGEoc3RydWN0IGFtZGdwdV9y aW5nICpyaW5nKTsKPiAtc3RhdGljIHZvaWQgZ2Z4X3Y4XzBfcmluZ19lbWl0X2RlX21ldGEoc3Ry dWN0IGFtZGdwdV9yaW5nICpyaW5nKTsKPiArc3RhdGljIHZvaWQgZ2Z4X3Y4XzBfcmluZ19lbWl0 X2NlX21ldGEoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLCBzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9i KTsKPiArc3RhdGljIHZvaWQgZ2Z4X3Y4XzBfcmluZ19lbWl0X2RlX21ldGEoc3RydWN0IGFtZGdw dV9yaW5nICpyaW5nLCBzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iKTsKPiAgIAo+ICAgc3RhdGljIHZv aWQgZ2Z4X3Y4XzBfaW5pdF9nb2xkZW5fcmVnaXN0ZXJzKHN0cnVjdCBhbWRncHVfZGV2aWNlICph ZGV2KQo+ICAgewo+IEBAIC02MTI3LDcgKzYxMjcsNyBAQCBzdGF0aWMgdm9pZCBnZnhfdjhfMF9y aW5nX2VtaXRfaWJfZ2Z4KHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKPiAgIAkJY29udHJvbCB8 PSBJTkRJUkVDVF9CVUZGRVJfUFJFX0VOQigxKTsKPiAgIAo+ICAgCQlpZiAoIShpYi0+ZmxhZ3Mg JiBBTURHUFVfSUJfRkxBR19DRSkpCj4gLQkJCWdmeF92OF8wX3JpbmdfZW1pdF9kZV9tZXRhKHJp bmcpOwo+ICsJCQlnZnhfdjhfMF9yaW5nX2VtaXRfZGVfbWV0YShyaW5nLCBqb2IpOwo+ICAgCX0K PiAgIAo+ICAgCWFtZGdwdV9yaW5nX3dyaXRlKHJpbmcsIGhlYWRlcik7Cj4gQEAgLTYzODYsMTIg KzYzODYsMTQgQEAgc3RhdGljIHZvaWQgZ2Z4X3Y4X3JpbmdfZW1pdF9zYihzdHJ1Y3QgYW1kZ3B1 X3JpbmcgKnJpbmcpCj4gICAJYW1kZ3B1X3Jpbmdfd3JpdGUocmluZywgMCk7Cj4gICB9Cj4gICAK PiAtc3RhdGljIHZvaWQgZ2Z4X3Y4X3JpbmdfZW1pdF9jbnR4Y250bChzdHJ1Y3QgYW1kZ3B1X3Jp bmcgKnJpbmcsIHVpbnQzMl90IGZsYWdzKQo+ICtzdGF0aWMgdm9pZCBnZnhfdjhfcmluZ19lbWl0 X2NudHhjbnRsKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKPiArCQkJCQlzdHJ1Y3QgYW1kZ3B1 X2pvYiAqam9iLAo+ICsJCQkJCXVpbnQzMl90IGZsYWdzKQo+ICAgewo+ICAgCXVpbnQzMl90IGR3 MiA9IDA7Cj4gICAKPiAgIAlpZiAoYW1kZ3B1X3NyaW92X3ZmKHJpbmctPmFkZXYpKQo+IC0JCWdm eF92OF8wX3JpbmdfZW1pdF9jZV9tZXRhKHJpbmcpOwo+ICsJCWdmeF92OF8wX3JpbmdfZW1pdF9j ZV9tZXRhKHJpbmcsIGpvYik7Cj4gICAKPiAgIAlkdzIgfD0gMHg4MDAwMDAwMDsgLyogc2V0IGxv YWRfZW5hYmxlIG90aGVyd2lzZSB0aGlzIHBhY2thZ2UgaXMganVzdCBOT1BzICovCj4gICAJaWYg KGZsYWdzICYgQU1ER1BVX0hBVkVfQ1RYX1NXSVRDSCkgewo+IEBAIC03MTgyLDcgKzcxODQsOCBA QCBzdGF0aWMgdm9pZCBnZnhfdjhfMF9nZXRfY3VfaW5mbyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldikKPiAgIAkuZnVuY3MgPSAmZ2Z4X3Y4XzBfaXBfZnVuY3MsCj4gICB9Owo+ICAgCj4gLXN0 YXRpYyB2b2lkIGdmeF92OF8wX3JpbmdfZW1pdF9jZV9tZXRhKHN0cnVjdCBhbWRncHVfcmluZyAq cmluZykKPiArc3RhdGljIHZvaWQgZ2Z4X3Y4XzBfcmluZ19lbWl0X2NlX21ldGEoc3RydWN0IGFt ZGdwdV9yaW5nICpyaW5nLAo+ICsJCQkJCXN0cnVjdCBhbWRncHVfam9iICpqb2IpCj4gICB7Cj4g ICAJdWludDY0X3QgY2VfcGF5bG9hZF9hZGRyOwo+ICAgCWludCBjbnRfY2U7Cj4gQEAgLTcxOTYs NyArNzE5OSw3IEBAIHN0YXRpYyB2b2lkIGdmeF92OF8wX3JpbmdfZW1pdF9jZV9tZXRhKHN0cnVj dCBhbWRncHVfcmluZyAqcmluZykKPiAgIAkJCW9mZnNldG9mKHN0cnVjdCB2aV9nZnhfbWV0YV9k YXRhX2NoYWluZWRfaWIsIGNlX3BheWxvYWQpOwo+ICAgCQljbnRfY2UgPSAoc2l6ZW9mKGNlX3Bh eWxvYWQuY2hhaW5lZCkgPj4gMikgKyA0IC0gMjsKPiAgIAl9IGVsc2Ugewo+IC0JCWNlX3BheWxv YWRfYWRkciA9IGFtZGdwdV9jc2FfdmFkZHIocmluZy0+YWRldiwgMSkgKwo+ICsJCWNlX3BheWxv YWRfYWRkciA9IEFNREdQVV9KT0JfR0VUX0NTQV9NQ19BRERSKGpvYikgKwo+ICAgCQkJb2Zmc2V0 b2Yoc3RydWN0IHZpX2dmeF9tZXRhX2RhdGEsIGNlX3BheWxvYWQpOwo+ICAgCQljbnRfY2UgPSAo c2l6ZW9mKGNlX3BheWxvYWQucmVndWxhcikgPj4gMikgKyA0IC0gMjsKPiAgIAl9Cj4gQEAgLTcy MTEsNyArNzIxNCw4IEBAIHN0YXRpYyB2b2lkIGdmeF92OF8wX3JpbmdfZW1pdF9jZV9tZXRhKHN0 cnVjdCBhbWRncHVfcmluZyAqcmluZykKPiAgIAlhbWRncHVfcmluZ193cml0ZV9tdWx0aXBsZShy aW5nLCAodm9pZCAqKSZjZV9wYXlsb2FkLCBjbnRfY2UgLSAyKTsKPiAgIH0KPiAgIAo+IC1zdGF0 aWMgdm9pZCBnZnhfdjhfMF9yaW5nX2VtaXRfZGVfbWV0YShzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJp bmcpCj4gK3N0YXRpYyB2b2lkIGdmeF92OF8wX3JpbmdfZW1pdF9kZV9tZXRhKHN0cnVjdCBhbWRn cHVfcmluZyAqcmluZywKPiArCQkJCQlzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iKQo+ICAgewo+ICAg CXVpbnQ2NF90IGRlX3BheWxvYWRfYWRkciwgZ2RzX2FkZHIsIGNzYV9hZGRyOwo+ICAgCWludCBj bnRfZGU7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OV8w LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjlfMC5jCj4gaW5kZXggODFjMTU3 OC4uZGQyZDUzNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhf djlfMC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y5XzAuYwo+IEBA IC0yOTcsNyArMjk3LDcgQEAgc3RhdGljIGludCBnZnhfdjlfMF9nZXRfY3VfaW5mbyhzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN0cnVjdCBhbWRncHVfY3VfaW5mbyAqY3VfaW5mbyk7Cj4gICBzdGF0aWMgdWludDY0X3QgZ2Z4 X3Y5XzBfZ2V0X2dwdV9jbG9ja19jb3VudGVyKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsK PiAgIHN0YXRpYyB2b2lkIGdmeF92OV8wX3NlbGVjdF9zZV9zaChzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldiwgdTMyIHNlX251bSwgdTMyIHNoX251bSwgdTMyIGluc3RhbmNlKTsKPiAtc3RhdGlj IHZvaWQgZ2Z4X3Y5XzBfcmluZ19lbWl0X2RlX21ldGEoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5n KTsKPiArc3RhdGljIHZvaWQgZ2Z4X3Y5XzBfcmluZ19lbWl0X2RlX21ldGEoc3RydWN0IGFtZGdw dV9yaW5nICpyaW5nLCBzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iKTsKPiAgIAo+ICAgc3RhdGljIHZv aWQgZ2Z4X3Y5XzBfaW5pdF9nb2xkZW5fcmVnaXN0ZXJzKHN0cnVjdCBhbWRncHVfZGV2aWNlICph ZGV2KQo+ICAgewo+IEBAIC00MDY3LDcgKzQwNjcsNyBAQCBzdGF0aWMgdm9pZCBnZnhfdjlfMF9y aW5nX2VtaXRfaWJfZ2Z4KHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKPiAgIAkJY29udHJvbCB8 PSBJTkRJUkVDVF9CVUZGRVJfUFJFX0VOQigxKTsKPiAgIAo+ICAgCQlpZiAoIShpYi0+ZmxhZ3Mg JiBBTURHUFVfSUJfRkxBR19DRSkpCj4gLQkJCWdmeF92OV8wX3JpbmdfZW1pdF9kZV9tZXRhKHJp bmcpOwo+ICsJCQlnZnhfdjlfMF9yaW5nX2VtaXRfZGVfbWV0YShyaW5nLCBqb2IpOwo+ICAgCX0K PiAgIAo+ICAgCWFtZGdwdV9yaW5nX3dyaXRlKHJpbmcsIGhlYWRlcik7Cj4gQEAgLTQzMjAsNyAr NDMyMCw4IEBAIHN0YXRpYyB2b2lkIGdmeF92OV9yaW5nX2VtaXRfc2Ioc3RydWN0IGFtZGdwdV9y aW5nICpyaW5nKQo+ICAgCWFtZGdwdV9yaW5nX3dyaXRlKHJpbmcsIDApOwo+ICAgfQo+ICAgCj4g LXN0YXRpYyB2b2lkIGdmeF92OV8wX3JpbmdfZW1pdF9jZV9tZXRhKHN0cnVjdCBhbWRncHVfcmlu ZyAqcmluZykKPiArc3RhdGljIHZvaWQgZ2Z4X3Y5XzBfcmluZ19lbWl0X2NlX21ldGEoc3RydWN0 IGFtZGdwdV9yaW5nICpyaW5nLAo+ICsJCQkJCXN0cnVjdCBhbWRncHVfam9iICpqb2IpCj4gICB7 Cj4gICAJc3RydWN0IHY5X2NlX2liX3N0YXRlIGNlX3BheWxvYWQgPSB7MH07Cj4gICAJdWludDY0 X3QgY3NhX2FkZHI7Cj4gQEAgLTQzMzksNyArNDM0MCw4IEBAIHN0YXRpYyB2b2lkIGdmeF92OV8w X3JpbmdfZW1pdF9jZV9tZXRhKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZykKPiAgIAlhbWRncHVf cmluZ193cml0ZV9tdWx0aXBsZShyaW5nLCAodm9pZCAqKSZjZV9wYXlsb2FkLCBzaXplb2YoY2Vf cGF5bG9hZCkgPj4gMik7Cj4gICB9Cj4gICAKPiAtc3RhdGljIHZvaWQgZ2Z4X3Y5XzBfcmluZ19l bWl0X2RlX21ldGEoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nKQo+ICtzdGF0aWMgdm9pZCBnZnhf djlfMF9yaW5nX2VtaXRfZGVfbWV0YShzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsCj4gKwkJCQkJ c3RydWN0IGFtZGdwdV9qb2IgKmpvYikKPiAgIHsKPiAgIAlzdHJ1Y3QgdjlfZGVfaWJfc3RhdGUg ZGVfcGF5bG9hZCA9IHswfTsKPiAgIAl1aW50NjRfdCBjc2FfYWRkciwgZ2RzX2FkZHI7Cj4gQEAg LTQzNjcsMTIgKzQzNjksMTQgQEAgc3RhdGljIHZvaWQgZ2Z4X3Y5XzBfcmluZ19lbWl0X3Rteihz dHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsIGJvb2wgc3RhcnQpCj4gICAJYW1kZ3B1X3Jpbmdfd3Jp dGUocmluZywgRlJBTUVfQ01EKHN0YXJ0ID8gMCA6IDEpKTsgLyogZnJhbWVfZW5kICovCj4gICB9 Cj4gICAKPiAtc3RhdGljIHZvaWQgZ2Z4X3Y5X3JpbmdfZW1pdF9jbnR4Y250bChzdHJ1Y3QgYW1k Z3B1X3JpbmcgKnJpbmcsIHVpbnQzMl90IGZsYWdzKQo+ICtzdGF0aWMgdm9pZCBnZnhfdjlfcmlu Z19lbWl0X2NudHhjbnRsKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKPiArCQkJCQlzdHJ1Y3Qg YW1kZ3B1X2pvYiAqam9iLAo+ICsJCQkJCXVpbnQzMl90IGZsYWdzKQo+ICAgewo+ICAgCXVpbnQz Ml90IGR3MiA9IDA7Cj4gICAKPiAgIAlpZiAoYW1kZ3B1X3NyaW92X3ZmKHJpbmctPmFkZXYpKQo+ IC0JCWdmeF92OV8wX3JpbmdfZW1pdF9jZV9tZXRhKHJpbmcpOwo+ICsJCWdmeF92OV8wX3Jpbmdf ZW1pdF9jZV9tZXRhKHJpbmcsIGpvYik7Cj4gICAKPiAgIAlnZnhfdjlfMF9yaW5nX2VtaXRfdG16 KHJpbmcsIHRydWUpOwo+ICAgCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1n ZngK