From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 6/9] drm/amdgpu: separate IH and IRQ funcs Date: Wed, 26 Sep 2018 11:18:22 +0200 Message-ID: <3e0ff372-3d56-511b-2e9c-97db92743b0c@amd.com> References: <20180924123820.1873-1-christian.koenig@amd.com> <20180924123820.1873-6-christian.koenig@amd.com> <20180926060459.GA9121@hr-amur2> <39fb9a51-2e85-0828-a193-b54059dec405@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: 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: "Huang, Ray" Cc: "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" QW0gMjYuMDkuMjAxOCB1bSAxMToxNiBzY2hyaWViIEh1YW5nLCBSYXk6Cj4+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tCj4+IEZyb206IENocmlzdGlhbiBLw7ZuaWcgW21haWx0bzpja29lbmln LmxlaWNodHp1bWVya2VuQGdtYWlsLmNvbV0KPj4gU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1iZXIg MjYsIDIwMTggNDowOSBQTQo+PiBUbzogSHVhbmcsIFJheSA8UmF5Lkh1YW5nQGFtZC5jb20+Cj4+ IENjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+PiBTdWJqZWN0OiBSZTogW1BBVENI IDYvOV0gZHJtL2FtZGdwdTogc2VwYXJhdGUgSUggYW5kIElSUSBmdW5jcwo+Pgo+PiBBbSAyNi4w OS4yMDE4IHVtIDA4OjA1IHNjaHJpZWIgSHVhbmcgUnVpOgo+Pj4gT24gTW9uLCBTZXAgMjQsIDIw MTggYXQgMDI6Mzg6MTdQTSArMDIwMCwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90ZToKPj4+PiBPbmUg Zm9yIHRoZSByaW5nIGJ1ZmZlciBhbmQgb25lIGZvciB0aGUgSVYgaGFuZGxpbmcuCj4+Pj4KPj4+ PiBTaWduZWQtb2ZmLWJ5OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5j b20+Cj4+PiBSZXZpZXdlZC1ieTogSHVhbmcgUnVpIDxyYXkuaHVhbmdAYW1kLmNvbT4KPj4+Cj4+ PiBIb3cgYWJvdXQgbWVyZ2UgYW1kZ3B1X2loLmMgaW50byBhbWRncHVfaXJxLmM/IEFzIEkgdGhp bmssIHdlIGRvbid0Cj4+PiBuZWVkIHR3byBjb21tb24gaW50ZXJydXB0IGhhbmRsZSBmaWxlcy4g SUggaXMgYWN0dWFsbHkgdGhlIGh3IGlwIGJsb2NrCj4+PiBuYW1lLCBhbmQgdGhlIG1lYW5pbmcg aXMgYWN0dWFsbHkgdGhlIHNhbWUgd2l0aCBpcnEuIFdlIGNhbiBwdXQgYWxsCj4+PiBjb21tb24g aXJxIGhhbmRsZSBpbmNsdWRlIGloIHJpbmcgaW5pdCBmdW5jdGlvbnMgaW50byBpcnEuYy4gSWYg eW91Cj4+PiBhbHNvIGFncmVlLCBJIHdpbGwgZmlsZSB0aGUgcGF0Y2guCj4+IEkgYWN0dWFsbHkg ZHJvcHBlZCB0aGlzIHBhdGNoLCBidXQgd2UgY2VydGFpbmx5IG5lZWQgdHdvIGRpZmZlcmVudCBm aWxlcy4KPj4KPj4gVGhlIG9uZSBpcyBmb3IgdGhlIElIIHJpbmcgYnVmZmVyLCB3aGljaCBWZWdh MTAgYWN0dWFsbHkgaGFzIDMgb2YuCj4+Cj4+IFRoZSBvdGhlciBvbmUgaXMgZm9yIHRoZSBJUlEg aGFuZGxpbmcgd2hpY2ggZG9lcyB0aGUgdHJhY2tpbmcgaG93IG9mdGVuCj4+IGludGVycnVwdCBz b3VyY2VzIGFyZSBlbmFibGVkLCBob3cgdG8gcm91dGUgdGhlbSBldGMuLi4KPj4KPj4gRS5nLiBm b3IgdGhhdCB3ZSB3b3VsZCBzdGlsbCBoYXZlIG9uZSBpbnN0YW5jZSBwZXIgZGV2aWNlLgo+Pgo+ IFNvIHlvdSB3YW50IHRvIHNlcGFyYXRlIHRoZSBoYXJkd2FyZS1sYXllciBhYnN0cmFjdGlvbiBm dW5jdGlvbiBhbmQgSVJRIGhhbmRsaW5nIGZvciB1cHBlci1sYXllciBvbiBkaWZmZXJlbnQgZmls ZT8KClllcywgZXhhY3RseS4KCj4gVGhhdCdzIGFsc28gZmluZS4KCkknbSBqdXN0IG5vdCBzdXJl IGFib3V0IHRoZSBuYW1pbmcgb2YgZmlsZXMsIGZ1bmN0aW9ucyBhbmQgc3RydWN0dXJlcy4gCkFu eSBiZXR0ZXIgc3VnZ2VzdGlvbiB3b3VsZCBiZSB3ZWxjb21lLgoKQ2hyaXN0aWFuLgoKPgo+IFRo YW5rcywKPiBSYXkKPgo+PiBSZWdhcmRzLAo+PiBDaHJpc3RpYW4uCj4+Cj4+PiBUaGFua3MsCj4+ PiBSYXkKPj4+Cj4+Pj4gLS0tCj4+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2loLmggIHwgMTEgKysrKy0tLS0tLS0KPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfaXJxLmMgfCAgNCArKy0tCj4+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X2lycS5oIHwgMTEgKysrKysrKysrKy0KPj4+PiAgICBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9jaWtfaWguYyAgICAgfCAgOCArKysrKystLQo+Pj4+ICAgIGRyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2N6X2loLmMgICAgICB8ICA4ICsrKysrKy0tCj4+Pj4gICAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvaWNlbGFuZF9paC5jIHwgIDggKysrKysrLS0KPj4+PiAg ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zaV9paC5jICAgICAgfCAgOCArKysrKystLQo+ Pj4+ICAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3RvbmdhX2loLmMgICB8ICA4ICsrKysr Ky0tCj4+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvdmVnYTEwX2loLmMgIHwgIDgg KysrKysrLS0KPj4+PiAgICA5IGZpbGVzIGNoYW5nZWQsIDUyIGluc2VydGlvbnMoKyksIDIyIGRl bGV0aW9ucygtKQo+Pj4+Cj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9paC5oCj4+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf aWguaAo+Pj4+IGluZGV4IDljZThjOTNlYzE5Yi4uZDg4ZjgyMzIxZWU0IDEwMDY0NAo+Pj4+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9paC5oCj4+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2loLmgKPj4+PiBAQCAtNDUsMjIgKzQ1LDE5 IEBAIHN0cnVjdCBhbWRncHVfaWhfcmluZyB7Cj4+Pj4gICAgCWJvb2wJCQl1c2VfZG9vcmJlbGw7 Cj4+Pj4gICAgCWJvb2wJCQl1c2VfYnVzX2FkZHI7Cj4+Pj4gICAgCWRtYV9hZGRyX3QJCXJiX2Rt YV9hZGRyOyAvKiBvbmx5IHVzZWQgd2hlbgo+PiB1c2VfYnVzX2FkZHIgPSB0cnVlICovCj4+Pj4g Kwo+Pj4+ICsJY29uc3Qgc3RydWN0IGFtZGdwdV9paF9mdW5jcwkqZnVuY3M7Cj4+Pj4gICAgfTsK Pj4+Pgo+Pj4+ICAgIC8qIHByb3ZpZGVkIGJ5IHRoZSBpaCBibG9jayAqLwo+Pj4+ICAgIHN0cnVj dCBhbWRncHVfaWhfZnVuY3Mgewo+Pj4+ICAgIAkvKiByaW5nIHJlYWQvd3JpdGUgcHRyIGhhbmRs aW5nLCBjYWxsZWQgZnJvbSBpbnRlcnJ1cHQgY29udGV4dCAqLwo+Pj4+ICAgIAl1MzIgKCpnZXRf d3B0cikoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwo+Pj4+IC0JYm9vbCAoKnByZXNjcmVl bl9pdikoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwo+Pj4+IC0Jdm9pZCAoKmRlY29kZV9p dikoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCj4+Pj4gLQkJCSAgc3RydWN0IGFtZGdwdV9p dl9lbnRyeSAqZW50cnkpOwo+Pj4+ICAgIAl2b2lkICgqc2V0X3JwdHIpKHN0cnVjdCBhbWRncHVf ZGV2aWNlICphZGV2KTsKPj4+PiAgICB9Owo+Pj4+Cj4+Pj4gLSNkZWZpbmUgYW1kZ3B1X2loX2dl dF93cHRyKGFkZXYpCj4+Pj4gKGFkZXYpLT5pcnEuaWhfZnVuY3MtPmdldF93cHRyKChhZGV2KSkK Pj4+PiAtI2RlZmluZSBhbWRncHVfaWhfcHJlc2NyZWVuX2l2KGFkZXYpCj4+Pj4gKGFkZXYpLT5p cnEuaWhfZnVuY3MtPnByZXNjcmVlbl9pdigoYWRldikpCj4+Pj4gLSNkZWZpbmUgYW1kZ3B1X2lo X2RlY29kZV9pdihhZGV2LCBpdikKPj4+PiAoYWRldiktPmlycS5paF9mdW5jcy0+ZGVjb2RlX2l2 KChhZGV2KSwgKGl2KSkgLSNkZWZpbmUKPj4+PiBhbWRncHVfaWhfc2V0X3JwdHIoYWRldikgKGFk ZXYpLT5pcnEuaWhfZnVuY3MtPnNldF9ycHRyKChhZGV2KSkKPj4+PiArI2RlZmluZSBhbWRncHVf aWhfZ2V0X3dwdHIoYWRldikKPj4+PiArKGFkZXYpLT5pcnEuaWguZnVuY3MtPmdldF93cHRyKChh ZGV2KSkKPj4+PiArI2RlZmluZSBhbWRncHVfaWhfc2V0X3JwdHIoYWRldikKPj4+PiArKGFkZXYp LT5pcnEuaWguZnVuY3MtPnNldF9ycHRyKChhZGV2KSkKPj4+Pgo+Pj4+ICAgIGludCBhbWRncHVf aWhfcmluZ19pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QKPj4gYW1kZ3B1 X2loX3JpbmcgKmloLAo+Pj4+ICAgIAkJCXVuc2lnbmVkIHJpbmdfc2l6ZSwgYm9vbCB1c2VfYnVz X2FkZHIpOyBkaWZmIC0tZ2l0Cj4+Pj4gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfaXJxLmMKPj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9pcnEuYwo+ Pj4+IGluZGV4IDUyYzE3ZjYyMTlhNy4uOGU1Y2UyNWYzZmUxIDEwMDY0NAo+Pj4+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9pcnEuYwo+Pj4+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9pcnEuYwo+Pj4+IEBAIC0xNjMsMTQgKzE2MywxNCBA QCBzdGF0aWMgdm9pZCBhbWRncHVfaXJxX2NhbGxiYWNrKHN0cnVjdAo+PiBhbWRncHVfZGV2aWNl ICphZGV2LAo+Pj4+ICAgIAlzdHJ1Y3QgYW1kZ3B1X2l2X2VudHJ5IGVudHJ5Owo+Pj4+Cj4+Pj4g ICAgCS8qIFByZXNjcmVlbmluZyBvZiBoaWdoLWZyZXF1ZW5jeSBpbnRlcnJ1cHRzICovCj4+Pj4g LQlpZiAoIWFtZGdwdV9paF9wcmVzY3JlZW5faXYoYWRldikpCj4+Pj4gKwlpZiAoIWFtZGdwdV9p cnFfcHJlc2NyZWVuX2l2KGFkZXYpKQo+Pj4+ICAgIAkJcmV0dXJuOwo+Pj4+Cj4+Pj4gICAgCS8q IEJlZm9yZSBkaXNwYXRjaGluZyBpcnEgdG8gSVAgYmxvY2tzLCBzZW5kIGl0IHRvIGFtZGtmZCAq Lwo+Pj4+ICAgIAlhbWRncHVfYW1ka2ZkX2ludGVycnVwdChhZGV2LCAoY29uc3Qgdm9pZCAqKQo+ Pj4+ICZpaC0+cmluZ1tyaW5nX2luZGV4XSk7Cj4+Pj4KPj4+PiAgICAJZW50cnkuaXZfZW50cnkg PSAoY29uc3QgdWludDMyX3QgKikmaWgtPnJpbmdbcmluZ19pbmRleF07Cj4+Pj4gLQlhbWRncHVf aWhfZGVjb2RlX2l2KGFkZXYsICZlbnRyeSk7Cj4+Pj4gKwlhbWRncHVfaXJxX2RlY29kZV9pdihh ZGV2LCAmZW50cnkpOwo+Pj4+Cj4+Pj4gICAgCWFtZGdwdV9pcnFfZGlzcGF0Y2goYWRldiwgJmVu dHJ5KTsKPj4+PiAgICB9Cj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9pcnEuaAo+Pj4+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X2lycS5oCj4+Pj4gaW5kZXggZjZjZTE3MWNiOGFhLi4zY2MwZTdjZTQwYTAgMTAwNjQ0Cj4+Pj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2lycS5oCj4+Pj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2lycS5oCj4+Pj4gQEAgLTY4LDYgKzY4 LDEyIEBAIHN0cnVjdCBhbWRncHVfaXJxX2NsaWVudCB7Cj4+Pj4gICAgCXN0cnVjdCBhbWRncHVf aXJxX3NyYyAqKnNvdXJjZXM7Cj4+Pj4gICAgfTsKPj4+Pgo+Pj4+ICtzdHJ1Y3QgYW1kZ3B1X2ly cV9mdW5jcyB7Cj4+Pj4gKwlib29sICgqcHJlc2NyZWVuX2l2KShzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldik7Cj4+Pj4gKwl2b2lkICgqZGVjb2RlX2l2KShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldiwKPj4+PiArCQkJICBzdHJ1Y3QgYW1kZ3B1X2l2X2VudHJ5ICplbnRyeSk7IH07Cj4+Pj4g Kwo+Pj4+ICAgIC8qIHByb3ZpZGVkIGJ5IGludGVycnVwdCBnZW5lcmF0aW5nIElQIGJsb2NrcyAq Lwo+Pj4+ICAgIHN0cnVjdCBhbWRncHVfaXJxX3NyY19mdW5jcyB7Cj4+Pj4gICAgCWludCAoKnNl dCkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHN0cnVjdCBhbWRncHVfaXJxX3NyYwo+Pj4+ ICpzb3VyY2UsIEBAIC04OSwxMiArOTUsMTIgQEAgc3RydWN0IGFtZGdwdV9pcnEgewo+Pj4+Cj4+ Pj4gICAgCS8qIGludGVycnVwdCByaW5nICovCj4+Pj4gICAgCXN0cnVjdCBhbWRncHVfaWhfcmlu ZwkJaWg7Cj4+Pj4gLQljb25zdCBzdHJ1Y3QgYW1kZ3B1X2loX2Z1bmNzCSppaF9mdW5jczsKPj4+ Pgo+Pj4+ICAgIAkvKiBnZW4gaXJxIHN0dWZmICovCj4+Pj4gICAgCXN0cnVjdCBpcnFfZG9tYWlu CQkqZG9tYWluOyAvKiBHUFUgaXJxIGNvbnRyb2xsZXIKPj4gZG9tYWluICovCj4+Pj4gICAgCXVu c2lnbmVkCQkJdmlycVtBTURHUFVfTUFYX0lSUV9TUkNfSURdOwo+Pj4+ICAgIAl1aW50MzJfdCAg ICAgICAgICAgICAgICAgICAgICAgIHNyYm1fc29mdF9yZXNldDsKPj4+PiArCWNvbnN0IHN0cnVj dCBhbWRncHVfaXJxX2Z1bmNzCSpmdW5jczsKPj4+PiAgICB9Owo+Pj4+Cj4+Pj4gICAgdm9pZCBh bWRncHVfaXJxX2Rpc2FibGVfYWxsKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsgQEAgLTEy MSw0Cj4+Pj4gKzEyNyw3IEBAIGludCBhbWRncHVfaXJxX2FkZF9kb21haW4oc3RydWN0IGFtZGdw dV9kZXZpY2UgKmFkZXYpOwo+Pj4+ICAgIHZvaWQgYW1kZ3B1X2lycV9yZW1vdmVfZG9tYWluKHN0 cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKPj4+PiAgICB1bnNpZ25lZCBhbWRncHVfaXJxX2Ny ZWF0ZV9tYXBwaW5nKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAo+Pj4+IHVuc2lnbmVkIHNy Y19pZCk7Cj4+Pj4KPj4+PiArI2RlZmluZSBhbWRncHVfaXJxX3ByZXNjcmVlbl9pdihhZGV2KQo+ Pj4+ICsoYWRldiktPmlycS5mdW5jcy0+cHJlc2NyZWVuX2l2KChhZGV2KSkKPj4+PiArI2RlZmlu ZSBhbWRncHVfaXJxX2RlY29kZV9pdihhZGV2LCBpdikKPj4+PiArKGFkZXYpLT5pcnEuZnVuY3Mt PmRlY29kZV9pdigoYWRldiksIChpdikpCj4+Pj4gKwo+Pj4+ICAgICNlbmRpZgo+Pj4+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9jaWtfaWguYwo+Pj4+IGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvY2lrX2loLmMKPj4+PiBpbmRleCBiNTc3NWM2YTg1N2IuLjE2 MWYwMjI1NzQ5YyAxMDA2NDQKPj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9j aWtfaWguYwo+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Npa19paC5jCj4+ Pj4gQEAgLTQ2MSwxNCArNDYxLDE4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYW1kX2lwX2Z1bmNz Cj4+Pj4gY2lrX2loX2lwX2Z1bmNzID0gewo+Pj4+Cj4+Pj4gICAgc3RhdGljIGNvbnN0IHN0cnVj dCBhbWRncHVfaWhfZnVuY3MgY2lrX2loX2Z1bmNzID0gewo+Pj4+ICAgIAkuZ2V0X3dwdHIgPSBj aWtfaWhfZ2V0X3dwdHIsCj4+Pj4gKwkuc2V0X3JwdHIgPSBjaWtfaWhfc2V0X3JwdHIKPj4+PiAr fTsKPj4+PiArCj4+Pj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYW1kZ3B1X2lycV9mdW5jcyBjaWtf aXJxX2Z1bmNzID0gewo+Pj4+ICAgIAkucHJlc2NyZWVuX2l2ID0gY2lrX2loX3ByZXNjcmVlbl9p diwKPj4+PiAgICAJLmRlY29kZV9pdiA9IGNpa19paF9kZWNvZGVfaXYsCj4+Pj4gLQkuc2V0X3Jw dHIgPSBjaWtfaWhfc2V0X3JwdHIKPj4+PiAgICB9Owo+Pj4+Cj4+Pj4gICAgc3RhdGljIHZvaWQg Y2lrX2loX3NldF9pbnRlcnJ1cHRfZnVuY3Moc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4+ Pj4gICAgewo+Pj4+IC0JYWRldi0+aXJxLmloX2Z1bmNzID0gJmNpa19paF9mdW5jczsKPj4+PiAr CWFkZXYtPmlycS5paC5mdW5jcyA9ICZjaWtfaWhfZnVuY3M7Cj4+Pj4gKwlhZGV2LT5pcnEuZnVu Y3MgPSAmY2lrX2lycV9mdW5jczsKPj4+PiAgICB9Cj4+Pj4KPj4+PiAgICBjb25zdCBzdHJ1Y3Qg YW1kZ3B1X2lwX2Jsb2NrX3ZlcnNpb24gY2lrX2loX2lwX2Jsb2NrID0gZGlmZiAtLWdpdAo+Pj4+ IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvY3pfaWguYwo+Pj4+IGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvY3pfaWguYwo+Pj4+IGluZGV4IGRmNWFjNGQ4NWEwMC4uNjQ4ZWNkNzc0 NjExIDEwMDY0NAo+Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2N6X2loLmMK Pj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9jel9paC5jCj4+Pj4gQEAgLTQ0 MiwxNCArNDQyLDE4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYW1kX2lwX2Z1bmNzIGN6X2loX2lw X2Z1bmNzCj4+Pj4gPSB7Cj4+Pj4KPj4+PiAgICBzdGF0aWMgY29uc3Qgc3RydWN0IGFtZGdwdV9p aF9mdW5jcyBjel9paF9mdW5jcyA9IHsKPj4+PiAgICAJLmdldF93cHRyID0gY3pfaWhfZ2V0X3dw dHIsCj4+Pj4gKwkuc2V0X3JwdHIgPSBjel9paF9zZXRfcnB0cgo+Pj4+ICt9Owo+Pj4+ICsKPj4+ PiArc3RhdGljIGNvbnN0IHN0cnVjdCBhbWRncHVfaXJxX2Z1bmNzIGN6X2lycV9mdW5jcyA9IHsK Pj4+PiAgICAJLnByZXNjcmVlbl9pdiA9IGN6X2loX3ByZXNjcmVlbl9pdiwKPj4+PiAgICAJLmRl Y29kZV9pdiA9IGN6X2loX2RlY29kZV9pdiwKPj4+PiAtCS5zZXRfcnB0ciA9IGN6X2loX3NldF9y cHRyCj4+Pj4gICAgfTsKPj4+Pgo+Pj4+ICAgIHN0YXRpYyB2b2lkIGN6X2loX3NldF9pbnRlcnJ1 cHRfZnVuY3Moc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCj4+Pj4gICAgewo+Pj4+IC0JYWRl di0+aXJxLmloX2Z1bmNzID0gJmN6X2loX2Z1bmNzOwo+Pj4+ICsJYWRldi0+aXJxLmloLmZ1bmNz ID0gJmN6X2loX2Z1bmNzOwo+Pj4+ICsJYWRldi0+aXJxLmZ1bmNzID0gJmN6X2lycV9mdW5jczsK Pj4+PiAgICB9Cj4+Pj4KPj4+PiAgICBjb25zdCBzdHJ1Y3QgYW1kZ3B1X2lwX2Jsb2NrX3ZlcnNp b24gY3pfaWhfaXBfYmxvY2sgPSBkaWZmIC0tZ2l0Cj4+Pj4gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9pY2VsYW5kX2loLmMKPj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2lj ZWxhbmRfaWguYwo+Pj4+IGluZGV4IGNmMGZjNjFhZWJlNi4uNjEzOTE4NmNjZDM2IDEwMDY0NAo+ Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2ljZWxhbmRfaWguYwo+Pj4+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2ljZWxhbmRfaWguYwo+Pj4+IEBAIC00NDAs MTQgKzQ0MCwxOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFtZF9pcF9mdW5jcwo+Pj4+IGljZWxh bmRfaWhfaXBfZnVuY3MgPSB7Cj4+Pj4KPj4+PiAgICBzdGF0aWMgY29uc3Qgc3RydWN0IGFtZGdw dV9paF9mdW5jcyBpY2VsYW5kX2loX2Z1bmNzID0gewo+Pj4+ICAgIAkuZ2V0X3dwdHIgPSBpY2Vs YW5kX2loX2dldF93cHRyLAo+Pj4+ICsJLnNldF9ycHRyID0gaWNlbGFuZF9paF9zZXRfcnB0cgo+ Pj4+ICt9Owo+Pj4+ICsKPj4+PiArc3RhdGljIGNvbnN0IHN0cnVjdCBhbWRncHVfaXJxX2Z1bmNz IGljZWxhbmRfaXJxX2Z1bmNzID0gewo+Pj4+ICAgIAkucHJlc2NyZWVuX2l2ID0gaWNlbGFuZF9p aF9wcmVzY3JlZW5faXYsCj4+Pj4gICAgCS5kZWNvZGVfaXYgPSBpY2VsYW5kX2loX2RlY29kZV9p diwKPj4+PiAtCS5zZXRfcnB0ciA9IGljZWxhbmRfaWhfc2V0X3JwdHIKPj4+PiAgICB9Owo+Pj4+ Cj4+Pj4gICAgc3RhdGljIHZvaWQgaWNlbGFuZF9paF9zZXRfaW50ZXJydXB0X2Z1bmNzKHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2KQo+Pj4+ICAgIHsKPj4+PiAtCWFkZXYtPmlycS5paF9mdW5j cyA9ICZpY2VsYW5kX2loX2Z1bmNzOwo+Pj4+ICsJYWRldi0+aXJxLmloLmZ1bmNzID0gJmljZWxh bmRfaWhfZnVuY3M7Cj4+Pj4gKwlhZGV2LT5pcnEuZnVuY3MgPSAmaWNlbGFuZF9pcnFfZnVuY3M7 Cj4+Pj4gICAgfQo+Pj4+Cj4+Pj4gICAgY29uc3Qgc3RydWN0IGFtZGdwdV9pcF9ibG9ja192ZXJz aW9uIGljZWxhbmRfaWhfaXBfYmxvY2sgPSBkaWZmCj4+Pj4gLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9zaV9paC5jCj4+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9z aV9paC5jCj4+Pj4gaW5kZXggYjNkN2Q5ZjgzMjAyLi4xNmYyMTJmM2I1MzQgMTAwNjQ0Cj4+Pj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvc2lfaWguYwo+Pj4+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3NpX2loLmMKPj4+PiBAQCAtMzAxLDE0ICszMDEsMTggQEAg c3RhdGljIGNvbnN0IHN0cnVjdCBhbWRfaXBfZnVuY3Mgc2lfaWhfaXBfZnVuY3MKPj4+PiA9IHsK Pj4+Pgo+Pj4+ICAgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYW1kZ3B1X2loX2Z1bmNzIHNpX2loX2Z1 bmNzID0gewo+Pj4+ICAgIAkuZ2V0X3dwdHIgPSBzaV9paF9nZXRfd3B0ciwKPj4+PiArCS5zZXRf cnB0ciA9IHNpX2loX3NldF9ycHRyCj4+Pj4gK307Cj4+Pj4gKwo+Pj4+ICtzdGF0aWMgY29uc3Qg c3RydWN0IGFtZGdwdV9pcnFfZnVuY3Mgc2lfaXJxX2Z1bmNzID0gewo+Pj4+ICAgIAkucHJlc2Ny ZWVuX2l2ID0gc2lfaWhfcHJlc2NyZWVuX2l2LAo+Pj4+ICAgIAkuZGVjb2RlX2l2ID0gc2lfaWhf ZGVjb2RlX2l2LAo+Pj4+IC0JLnNldF9ycHRyID0gc2lfaWhfc2V0X3JwdHIKPj4+PiAgICB9Owo+ Pj4+Cj4+Pj4gICAgc3RhdGljIHZvaWQgc2lfaWhfc2V0X2ludGVycnVwdF9mdW5jcyhzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldikKPj4+PiAgICB7Cj4+Pj4gLQlhZGV2LT5pcnEuaWhfZnVuY3Mg PSAmc2lfaWhfZnVuY3M7Cj4+Pj4gKwlhZGV2LT5pcnEuaWguZnVuY3MgPSAmc2lfaWhfZnVuY3M7 Cj4+Pj4gKwlhZGV2LT5pcnEuZnVuY3MgPSAmc2lfaXJxX2Z1bmNzOwo+Pj4+ICAgIH0KPj4+Pgo+ Pj4+ICAgIGNvbnN0IHN0cnVjdCBhbWRncHVfaXBfYmxvY2tfdmVyc2lvbiBzaV9paF9pcF9ibG9j ayA9IGRpZmYgLS1naXQKPj4+PiBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3RvbmdhX2lo LmMKPj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3RvbmdhX2loLmMKPj4+PiBpbmRl eCAzYWJmZmQwNmI1YzcuLjYxMjBhYzNjNzY2NyAxMDA2NDQKPj4+PiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS90b25nYV9paC5jCj4+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvdG9uZ2FfaWguYwo+Pj4+IEBAIC01MDYsMTQgKzUwNiwxOCBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGFtZF9pcF9mdW5jcwo+Pj4+IHRvbmdhX2loX2lwX2Z1bmNzID0gewo+Pj4+Cj4+ Pj4gICAgc3RhdGljIGNvbnN0IHN0cnVjdCBhbWRncHVfaWhfZnVuY3MgdG9uZ2FfaWhfZnVuY3Mg PSB7Cj4+Pj4gICAgCS5nZXRfd3B0ciA9IHRvbmdhX2loX2dldF93cHRyLAo+Pj4+ICsJLnNldF9y cHRyID0gdG9uZ2FfaWhfc2V0X3JwdHIKPj4+PiArfTsKPj4+PiArCj4+Pj4gK3N0YXRpYyBjb25z dCBzdHJ1Y3QgYW1kZ3B1X2lycV9mdW5jcyB0b25nYV9pcnFfZnVuY3MgPSB7Cj4+Pj4gICAgCS5w cmVzY3JlZW5faXYgPSB0b25nYV9paF9wcmVzY3JlZW5faXYsCj4+Pj4gICAgCS5kZWNvZGVfaXYg PSB0b25nYV9paF9kZWNvZGVfaXYsCj4+Pj4gLQkuc2V0X3JwdHIgPSB0b25nYV9paF9zZXRfcnB0 cgo+Pj4+ICAgIH07Cj4+Pj4KPj4+PiAgICBzdGF0aWMgdm9pZCB0b25nYV9paF9zZXRfaW50ZXJy dXB0X2Z1bmNzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQo+Pj4+ICAgIHsKPj4+PiAtCWFk ZXYtPmlycS5paF9mdW5jcyA9ICZ0b25nYV9paF9mdW5jczsKPj4+PiArCWFkZXYtPmlycS5paC5m dW5jcyA9ICZ0b25nYV9paF9mdW5jczsKPj4+PiArCWFkZXYtPmlycS5mdW5jcyA9ICZ0b25nYV9p cnFfZnVuY3M7Cj4+Pj4gICAgfQo+Pj4+Cj4+Pj4gICAgY29uc3Qgc3RydWN0IGFtZGdwdV9pcF9i bG9ja192ZXJzaW9uIHRvbmdhX2loX2lwX2Jsb2NrID0gZGlmZiAtLWdpdAo+Pj4+IGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvdmVnYTEwX2loLmMKPj4+PiBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L3ZlZ2ExMF9paC5jCj4+Pj4gaW5kZXggYTk5ZjcxNzk3YWEzLi5hOTczN2FkZjgz OTIgMTAwNjQ0Cj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvdmVnYTEwX2lo LmMKPj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS92ZWdhMTBfaWguYwo+Pj4+ IEBAIC00ODcsMTQgKzQ4NywxOCBAQCBjb25zdCBzdHJ1Y3QgYW1kX2lwX2Z1bmNzIHZlZ2ExMF9p aF9pcF9mdW5jcwo+PiA9Cj4+Pj4gewo+Pj4+Cj4+Pj4gICAgc3RhdGljIGNvbnN0IHN0cnVjdCBh bWRncHVfaWhfZnVuY3MgdmVnYTEwX2loX2Z1bmNzID0gewo+Pj4+ICAgIAkuZ2V0X3dwdHIgPSB2 ZWdhMTBfaWhfZ2V0X3dwdHIsCj4+Pj4gKwkuc2V0X3JwdHIgPSB2ZWdhMTBfaWhfc2V0X3JwdHIK Pj4+PiArfTsKPj4+PiArCj4+Pj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYW1kZ3B1X2lycV9mdW5j cyB2ZWdhMTBfaXJxX2Z1bmNzID0gewo+Pj4+ICAgIAkucHJlc2NyZWVuX2l2ID0gdmVnYTEwX2lo X3ByZXNjcmVlbl9pdiwKPj4+PiAgICAJLmRlY29kZV9pdiA9IHZlZ2ExMF9paF9kZWNvZGVfaXYs Cj4+Pj4gLQkuc2V0X3JwdHIgPSB2ZWdhMTBfaWhfc2V0X3JwdHIKPj4+PiAgICB9Owo+Pj4+Cj4+ Pj4gICAgc3RhdGljIHZvaWQgdmVnYTEwX2loX3NldF9pbnRlcnJ1cHRfZnVuY3Moc3RydWN0IGFt ZGdwdV9kZXZpY2UgKmFkZXYpCj4+Pj4gICAgewo+Pj4+IC0JYWRldi0+aXJxLmloX2Z1bmNzID0g JnZlZ2ExMF9paF9mdW5jczsKPj4+PiArCWFkZXYtPmlycS5paC5mdW5jcyA9ICZ2ZWdhMTBfaWhf ZnVuY3M7Cj4+Pj4gKwlhZGV2LT5pcnEuZnVuY3MgPSAmdmVnYTEwX2lycV9mdW5jczsKPj4+PiAg ICB9Cj4+Pj4KPj4+PiAgICBjb25zdCBzdHJ1Y3QgYW1kZ3B1X2lwX2Jsb2NrX3ZlcnNpb24gdmVn YTEwX2loX2lwX2Jsb2NrID0KPj4+PiAtLQo+Pj4+IDIuMTQuMQo+Pj4+Cj4+Pj4gX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPj4+PiBhbWQtZ2Z4IG1haWxp bmcgbGlzdAo+Pj4+IGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4+Pj4gaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4CgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlz dAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK