From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH] drm/amdgpu: fix a kcq hang issue for SRIOV Date: Tue, 27 Mar 2018 17:43:14 +0200 Message-ID: <183c370b-bcf5-fd80-429e-8418f2b1a105@gmail.com> References: <1522130286-25401-1-git-send-email-Emily.Deng@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: 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: Alex Deucher , Emily Deng Cc: amd-gfx list , Monk Liu QW0gMjcuMDMuMjAxOCB1bSAxNzozNyBzY2hyaWViIEFsZXggRGV1Y2hlcjoKPiBPbiBUdWUsIE1h ciAyNywgMjAxOCBhdCAxMToxNSBBTSwgQWxleCBEZXVjaGVyIDxhbGV4ZGV1Y2hlckBnbWFpbC5j b20+IHdyb3RlOgo+PiBPbiBUdWUsIE1hciAyNywgMjAxOCBhdCAxOjU4IEFNLCBFbWlseSBEZW5n IDxFbWlseS5EZW5nQGFtZC5jb20+IHdyb3RlOgo+Pj4gaXNzdWU6Cj4+PiB0aGUgdm1mbHVzaCBp biBLQ1EgY291bGQgYmUgcHJlZW1wdGVkIChub3QgbGlrZSBHRlggcmluZwo+Pj4gd2hpY2ggZG9l c24ndCBhbGxvdyBwcmVlbXB0aW9uIGluIHJpbmcgYnVmZmVyKSBhbmQgdGhpcyBsZWFkCj4+PiB0 byB2bSBmbHVzaCBmYWlsIHdoZW4gdGhlcmUgaXMgYSB3b3JsZCBzd2l0Y2ggZHVyaW5nCj4+PiB0 aGUgdm0gZmx1c2ggcHJvY2VkdXJlIChiZXR3ZWVuIHdyaXRlIGludmFsaWRhdGUgcmVxdWVzdAo+ Pj4gYW5kIHF1ZXJ5IGludmFsaWRhdGUgYWNrKQo+Pj4KPj4+IGZpeDoKPj4+IHNlcGFyYXRlIHZt IGZsdXNoIGZvciBnZnggYW5kIGNvbXB1dGUgcmluZywgYW5kIHVzZQo+Pj4gdGhlIG5ldyBmb3Jt YXQgY29tbWFuZCBpbiBjb21wdXRlJ3Mgdm0gZmx1c2ggd2hpY2gKPj4+IHVzZSBvbmx5IG9uZSBw YWNrYWdlIHNvIG5vIHByZWVtcHRpb24gY291bGQgYWxsb3dlZAo+Pj4KPj4+IFNpZ25lZC1vZmYt Ynk6IE1vbmsgTGl1IDxNb25rLkxpdUBhbWQuY29tPgo+Pj4gU2lnbmVkLW9mZi1ieTogRW1pbHkg RGVuZyA8RW1pbHkuRGVuZ0BhbWQuY29tPgo+Pj4gLS0tCj4+PiAgIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdS5oICAgICAgfCAgMSArCj4+PiAgIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9yaW5nLmggfCAgMiArKwo+Pj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9nZnhfdjlfMC5jICAgIHwgMTAgKysrKysrKysrLQo+Pj4gICBkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9nbWNfdjlfMC5jICAgIHwgMTggKysrKysrKysrKysrKy0tLS0tCj4+PiAgIDQg ZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKPj4+Cj4+PiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaAo+Pj4gaW5kZXggYTdlMjIyOS4uOTg2NjU5ZiAx MDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+PiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaAo+Pj4gQEAgLTE3OTAsNiAr MTc5MCw3IEBAIGFtZGdwdV9nZXRfc2RtYV9pbnN0YW5jZShzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJp bmcpCj4+PiAgICNkZWZpbmUgYW1kZ3B1X3JpbmdfZW1pdF9ycmVnKHIsIGQpIChyKS0+ZnVuY3Mt PmVtaXRfcnJlZygociksIChkKSkKPj4+ICAgI2RlZmluZSBhbWRncHVfcmluZ19lbWl0X3dyZWco ciwgZCwgdikgKHIpLT5mdW5jcy0+ZW1pdF93cmVnKChyKSwgKGQpLCAodikpCj4+PiAgICNkZWZp bmUgYW1kZ3B1X3JpbmdfZW1pdF9yZWdfd2FpdChyLCBkLCB2LCBtKSAociktPmZ1bmNzLT5lbWl0 X3JlZ193YWl0KChyKSwgKGQpLCAodiksIChtKSkKPj4+ICsjZGVmaW5lIGFtZGdwdV9yaW5nX2Vt aXRfcmVnX3dhaXQxKHIsIGQwLCBkMSwgdiwgbSkgKHIpLT5mdW5jcy0+ZW1pdF9yZWdfd2FpdDEo KHIpLCAoZDApLCAoZDEpLCAodiksIChtKSkKPj4+ICAgI2RlZmluZSBhbWRncHVfcmluZ19lbWl0 X3RteihyLCBiKSAociktPmZ1bmNzLT5lbWl0X3RteigociksIChiKSkKPj4+ICAgI2RlZmluZSBh bWRncHVfcmluZ19wYWRfaWIociwgaWIpICgociktPmZ1bmNzLT5wYWRfaWIoKHIpLCAoaWIpKSkK Pj4+ICAgI2RlZmluZSBhbWRncHVfcmluZ19pbml0X2NvbmRfZXhlYyhyKSAociktPmZ1bmNzLT5p bml0X2NvbmRfZXhlYygocikpCj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X3JpbmcuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9y aW5nLmgKPj4+IGluZGV4IDFkMGQyNTAuLmQ4NWRmNWQgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcmluZy5oCj4+PiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfcmluZy5oCj4+PiBAQCAtMTUyLDYgKzE1Miw4IEBAIHN0cnVj dCBhbWRncHVfcmluZ19mdW5jcyB7Cj4+PiAgICAgICAgICB2b2lkICgqZW1pdF93cmVnKShzdHJ1 Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsIHVpbnQzMl90IHJlZywgdWludDMyX3QgdmFsKTsKPj4+ICAg ICAgICAgIHZvaWQgKCplbWl0X3JlZ193YWl0KShzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsIHVp bnQzMl90IHJlZywKPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2 YWwsIHVpbnQzMl90IG1hc2spOwo+Pj4gKyAgICAgICB2b2lkICgqZW1pdF9yZWdfd2FpdDEpKHN0 cnVjdCBhbWRncHVfcmluZyAqcmluZywgdWludDMyX3QgcmVnMCwKPj4+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3QgcmVnMSwgdWludDMyX3QgdmFsLCB1aW50MzJfdCBt YXNrKTsKPj4gVGhpcyBpcyBwcmV0dHkgdWdseS4gIFdlIGRvbid0IG5lZWQgYSBuZXcgY2FsbGJh Y2sgZm9yIHRoaXMKPj4gd29ya2Fyb3VuZC4gIEl0IHdpbGwganVzdCBjb25mdXNlIHRoaW5ncyBm b3Igb3RoZXIgSVBzLiAgSnVzdCBjYWxsCj4+IGdmeF92OV8wX3dhaXRfcmVnX21lbSgpIGRpcmVj dGx5IGlmIHlvdSBuZWVkIGl0IGluCj4+IGdtY192OV8wX2VtaXRfZmx1c2hfZ3B1X3RsYigpLgo+ IE5ldmVybWluZCwgSSBtaXNyZWFkIHRoZSBwYXRjaCBhbmQgdGhvdWdodCB0aGUgY2hhbmdlIHdh cyBpbiB0aGUgZ2Z4OQo+IG1vZHVsZS4gIEluIHRoaXMgY2FzZSwgSSdkIHJhdGhlciBzcGxpdCB0 aGlzIGludG8gdGhyZWUgcGF0Y2hlcy4KPgo+IDEuIGFkZCB0aGUgbmV3IHJpbmcgY2FsbGJhY2sg d2l0aCBhIGJldHRlciBuYW1lLiAgRS5nLiwgZW1pdF9yZWdfd2FpdF9vbmVzaG90KCkKCk1heWJl ICJlbWl0X3JlZ193cml0ZV93YWl0KCkiLCBidXQgSSBzdGlsbCB0aGluayB0aGF0IGlzIGFuIGFi c29sdXRlbHkgCndvcnNlIGlkZWEuCgo+IDIuIGFkZCB0aGUgbmV3IGNhbGxiYWNrIGltcGxlbWVu dGF0aW9uIHRvIGdmeDkgYW5kIGdmeDggKEkgdGhpbmsgZ2Z4OAo+IHdpbGwgbmVlZCB0aGlzIGFz IHdlbGwgc2luY2Ugd2Ugc3VwcG9ydCBzci1pb3YgdGhlcmUgdG9vKQoKZ2Z4OCBkb2Vzbid0IGhh dmUgdGhlIGhhcmR3YXJlIGJ1ZyB3aGljaCBzZWVtcyB0byBtYWtlIHRoaXMgbmVjZXNzYXJ5LCAK bm90IGRvZXMgaXQgaGF2ZSB0aGUgc2FtZSBWTUhVQiBkZXNpZ24gYXMgZ2Z4OS4KCj4gMy4gaW4g dGhlIGdtYzggYW5kIDkgY29kZSB0bGJfZmx1c2ggY2FsbGJhY2tzLCBjaGVjayBpZiB0aGUgcmlu Zwo+IHN1cHBvcnRzIHRoZSBuZXcgY2FsbGJhY2sgYW5kIGlmIHNvLCB1c2UgdGhhdCwgb3RoZXJ3 aXNlLCBmYWxsIGJhY2sgdG8KPiB0aGUgZXhpc3RpbmcgY29kZS4KCkFjdHVhbGx5IEkgd291bGQg cmF0aGVyIHNheSB3ZSBwcm92aWRlIGEgc3R1YiBpbiBhbWRncHVfcmluZy5jIHdoaWNoIApqdXN0 IHVzZXMgdGhlIHNlcGFyYXRlIHdyaXRlIGFuZCB3YWl0IGNhbGxiYWNrcy4KCkNocmlzdGlhbi4K Cj4KPgo+PiBBbGV4Cj4+Cj4+PiAgICAgICAgICB2b2lkICgqZW1pdF90bXopKHN0cnVjdCBhbWRn cHVfcmluZyAqcmluZywgYm9vbCBzdGFydCk7Cj4+PiAgICAgICAgICAvKiBwcmlvcml0eSBmdW5j dGlvbnMgKi8KPj4+ICAgICAgICAgIHZvaWQgKCpzZXRfcHJpb3JpdHkpIChzdHJ1Y3QgYW1kZ3B1 X3JpbmcgKnJpbmcsCj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv Z2Z4X3Y5XzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OV8wLmMKPj4+IGlu ZGV4IDFhZTNkZTEuLjUwOWM5ZDIgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9nZnhfdjlfMC5jCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9n ZnhfdjlfMC5jCj4+PiBAQCAtNDA3OCw2ICs0MDc4LDEzIEBAIHN0YXRpYyB2b2lkIGdmeF92OV8w X3JpbmdfZW1pdF9yZWdfd2FpdChzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcsIHVpbnQzMl90IHJl ZywKPj4+ICAgICAgICAgIGdmeF92OV8wX3dhaXRfcmVnX21lbShyaW5nLCAwLCAwLCAwLCByZWcs IDAsIHZhbCwgbWFzaywgMHgyMCk7Cj4+PiAgIH0KPj4+Cj4+PiArc3RhdGljIHZvaWQgZ2Z4X3Y5 XzBfcmluZ19lbWl0X3JlZ193YWl0X2NvbXB1dGUoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLAo+ Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHJlZzAs IHVpbnQzMl90IHJlZzEsCj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdWludDMyX3QgdmFsLCB1aW50MzJfdCBtYXNrKQo+Pj4gK3sKPj4+ICsgICAgICAgZ2Z4X3Y5 XzBfd2FpdF9yZWdfbWVtKHJpbmcsIDAsIDAsIDEsIHJlZzAsIHJlZzEsIHZhbCwgbWFzaywgMHgy MCk7Cj4+PiArfQo+Pj4gKwo+Pj4gICBzdGF0aWMgdm9pZCBnZnhfdjlfMF9zZXRfZ2Z4X2VvcF9p bnRlcnJ1cHRfc3RhdGUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCj4+PiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gYW1kZ3B1X2ludGVy cnVwdF9zdGF0ZSBzdGF0ZSkKPj4+ICAgewo+Pj4gQEAgLTQ0MTUsNyArNDQyMiw3IEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgYW1kZ3B1X3JpbmdfZnVuY3MgZ2Z4X3Y5XzBfcmluZ19mdW5jc19jb21w dXRlID0gewo+Pj4gICAgICAgICAgICAgICAgICA3ICsgLyogZ2Z4X3Y5XzBfcmluZ19lbWl0X2hk cF9mbHVzaCAqLwo+Pj4gICAgICAgICAgICAgICAgICA1ICsgLyogaGRwIGludmFsaWRhdGUgKi8K Pj4+ICAgICAgICAgICAgICAgICAgNyArIC8qIGdmeF92OV8wX3JpbmdfZW1pdF9waXBlbGluZV9z eW5jICovCj4+PiAtICAgICAgICAgICAgICAgU09DMTVfRkxVU0hfR1BVX1RMQl9OVU1fV1JFRyAq IDUgKwo+Pj4gKyAgICAgICAgICAgICAgIChTT0MxNV9GTFVTSF9HUFVfVExCX05VTV9XUkVHIC0g MSkgKiA1ICsKPj4+ICAgICAgICAgICAgICAgICAgU09DMTVfRkxVU0hfR1BVX1RMQl9OVU1fUkVH X1dBSVQgKiA3ICsKPj4+ICAgICAgICAgICAgICAgICAgMiArIC8qIGdmeF92OV8wX3JpbmdfZW1p dF92bV9mbHVzaCAqLwo+Pj4gICAgICAgICAgICAgICAgICA4ICsgOCArIDgsIC8qIGdmeF92OV8w X3JpbmdfZW1pdF9mZW5jZSB4MyBmb3IgdXNlciBmZW5jZSwgdm0gZmVuY2UgKi8KPj4+IEBAIC00 NDMzLDYgKzQ0NDAsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFtZGdwdV9yaW5nX2Z1bmNzIGdm eF92OV8wX3JpbmdfZnVuY3NfY29tcHV0ZSA9IHsKPj4+ICAgICAgICAgIC5zZXRfcHJpb3JpdHkg PSBnZnhfdjlfMF9yaW5nX3NldF9wcmlvcml0eV9jb21wdXRlLAo+Pj4gICAgICAgICAgLmVtaXRf d3JlZyA9IGdmeF92OV8wX3JpbmdfZW1pdF93cmVnLAo+Pj4gICAgICAgICAgLmVtaXRfcmVnX3dh aXQgPSBnZnhfdjlfMF9yaW5nX2VtaXRfcmVnX3dhaXQsCj4+PiArICAgICAgIC5lbWl0X3JlZ193 YWl0MSA9IGdmeF92OV8wX3JpbmdfZW1pdF9yZWdfd2FpdF9jb21wdXRlLAo+Pj4gICB9Owo+Pj4K Pj4+ICAgc3RhdGljIGNvbnN0IHN0cnVjdCBhbWRncHVfcmluZ19mdW5jcyBnZnhfdjlfMF9yaW5n X2Z1bmNzX2tpcSA9IHsKPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9nbWNfdjlfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ21jX3Y5XzAuYwo+Pj4g aW5kZXggZTY4NzM2My4uOTY4NDQ3ZCAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2dtY192OV8wLmMKPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2dtY192OV8wLmMKPj4+IEBAIC0zODUsMTEgKzM4NSwxOSBAQCBzdGF0aWMgdWludDY0X3QgZ21j X3Y5XzBfZW1pdF9mbHVzaF9ncHVfdGxiKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKPj4+ICAg ICAgICAgIGFtZGdwdV9yaW5nX2VtaXRfd3JlZyhyaW5nLCBodWItPmN0eDBfcHRiX2FkZHJfaGkz MiArICgyICogdm1pZCksCj4+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBwZXJf MzJfYml0cyhwZF9hZGRyKSk7Cj4+Pgo+Pj4gLSAgICAgICBhbWRncHVfcmluZ19lbWl0X3dyZWco cmluZywgaHViLT52bV9pbnZfZW5nMF9yZXEgKyBlbmcsIHJlcSk7Cj4+PiAtCj4+PiAtICAgICAg IC8qIHdhaXQgZm9yIHRoZSBpbnZhbGlkYXRlIHRvIGNvbXBsZXRlICovCj4+PiAtICAgICAgIGFt ZGdwdV9yaW5nX2VtaXRfcmVnX3dhaXQocmluZywgaHViLT52bV9pbnZfZW5nMF9hY2sgKyBlbmcs Cj4+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSA8PCB2bWlkLCAxIDw8IHZt aWQpOwo+Pj4gKyAgICAvKiBUaGUgd29ybGQgc3dpdGNoIGNhbm5vdCBiZSBhbGxvd2VkIHRvIG9j Y3VyIHdoaWxlCj4+PiArICAgICAgIHNvbWUgaW52YWxpZGF0aW9uIGNvbnRyb2xsZXIgY29kZSBp cyB3YWl0aW5nIGZvciBhbiBhY2suCj4+PiArICAgICAgIFRvIHdvcmthcm91bmQgdGhlIGhhcmR3 YXJlIHJlc3RyaWN0aW9uLCByZXBsYWNlIHRoZSBvcmlnaW5hbAo+Pj4gKyAgICAgICB0d28gY29t bWFuZCB3aXRoIG9uZSBjb21tYW5kIGZvciBjb21wdXRlIHJpbmcgKi8KPj4+ICsgICAgICAgaWYg KHJpbmctPmZ1bmNzLT50eXBlID09IEFNREdQVV9SSU5HX1RZUEVfQ09NUFVURSAmJiBhbWRncHVf c3Jpb3ZfdmYoYWRldikpIHsKPiBUaGlzIHdpbGwgYnJlYWsgZ2Z4IDggd2l0aCBzci1pb3YuCj4K PiBBbGV4Cj4KPj4+ICsgICAgICAgICAgICAgICBhbWRncHVfcmluZ19lbWl0X3JlZ193YWl0MShy aW5nLCBodWItPnZtX2ludl9lbmcwX3JlcSArIGVuZywKPj4+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaHViLT52bV9pbnZfZW5nMF9hY2sgKyBlbmcsIHJlcSwgMSA8PCB2bWlk KTsKPj4+ICsgICAgICAgfSBlbHNlIHsKPj4+ICsgICAgICAgICAgICAgICBhbWRncHVfcmluZ19l bWl0X3dyZWcocmluZywgaHViLT52bV9pbnZfZW5nMF9yZXEgKyBlbmcsIHJlcSk7Cj4+PiArICAg ICAgICAgICAgICAgLyogd2FpdCBmb3IgdGhlIGludmFsaWRhdGUgdG8gY29tcGxldGUgKi8KPj4+ ICsgICAgICAgICAgICAgICBhbWRncHVfcmluZ19lbWl0X3JlZ193YWl0KHJpbmcsIGh1Yi0+dm1f aW52X2VuZzBfYWNrICsgZW5nLAo+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgMSA8PCB2 bWlkLCAxIDw8IHZtaWQpOwo+Pj4gKyAgICAgICB9Cj4+Pgo+Pj4gICAgICAgICAgcmV0dXJuIHBk X2FkZHI7Cj4+PiAgIH0KPj4+IC0tCj4+PiAyLjcuNAo+Pj4KPj4+IF9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+PiBhbWQtZ2Z4IG1haWxpbmcgbGlzdAo+ Pj4gYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPj4+IGh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo+IF9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gYW1kLWdmeCBtYWlsaW5nIGxpc3QKPiBhbWQt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9hbWQtZ2Z4Cg==