From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oded Gabbay Subject: Re: [PATCH 1/3] amdkfd: Don't clear *kfd2kgd on kfd_module_init Date: Mon, 22 Dec 2014 09:34:36 +0200 Message-ID: <5497C98C.2080208@amd.com> References: <1419108374-7020-1-git-send-email-oded.gabbay@amd.com> <1419108374-7020-2-git-send-email-oded.gabbay@amd.com> <5496AEAD.3090003@vodafone.de> <5496B04C.50502@amd.com> <5496BAE0.5090901@vodafone.de> <5496C5EA.7050200@amd.com> <5496CA0F.8000800@amd.com> <5496EDF1.7080106@vodafone.de> <5496EF34.70302@amd.com> <5496F0DD.40903@vodafone.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1on0138.outbound.protection.outlook.com [157.56.110.138]) by gabe.freedesktop.org (Postfix) with ESMTP id 8514D6E1BE for ; Sun, 21 Dec 2014 23:34:58 -0800 (PST) In-Reply-To: <5496F0DD.40903@vodafone.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: =?UTF-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= , dri-devel@lists.freedesktop.org Cc: Alexander.Deucher@amd.com, "Elifaz, Dana" , linux-kernel@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org CgpPbiAxMi8yMS8yMDE0IDA2OjEwIFBNLCBDaHJpc3RpYW4gS8O2bmlnIHdyb3RlOgo+IEFtIDIx LjEyLjIwMTQgdW0gMTc6MDMgc2NocmllYiBPZGVkIEdhYmJheToKPj4KPj4KPj4gT24gMTIvMjEv MjAxNCAwNTo1NyBQTSwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90ZToKPj4+PiBUaGVyZSBzaG91bGQg YmUsIGJ1dCB3aGVuIHRoZSBtb2R1bGVzIGFyZSBjb21waWxlZCBpbiwgdGhleSBhcmUgbG9hZGVk IGJhc2VkIG9uCj4+Pj4gbGluayBvcmRlciBvbmx5LCBpZiB0aGV5IGFyZSBpbiB0aGUgc2FtZSBn cm91cCwgYW5kIHRoZSBncm91cHMgYXJlIGxvYWRlZCBieSBhCj4+Pj4gcHJlLWRlZmluZWQgb3Jk ZXIuCj4+PiBJcyB0aGF0IHJlYWxseSBzdGlsbCB1cCB0byBkYXRlPyBJJ3ZlIHNlZW4gZWZmb3J0 IHRvIGNoYW5nZSB0aGF0IHNvbWV0aGluZyBsaWtlCj4+PiAxMCsgeWVhcnMgYWdvIHdoZW4gUnVz dHkgcmV3b3JrZWQgdGhlIG1vZHVsZSBzeXN0ZW0uIEFuZCBpdCBpcyBjb21taW5nIHVwIG9uIHRo ZQo+Pj4gbGlzdHMgYWdhaW4gZnJvbSB0aW1lIHRvIHRpbWUuCj4+IEZyb20gd2hhdCBJIGNhbiBz ZWUgaW4gdGhlIE1ha2VmaWxlIHJ1bGVzLCBjb2RlIGFuZCBnb29nbGUsIHllcywgdGhhdCdzIHN0 aWxsCj4+IHRoZSBzaXR1YXRpb24uIElmIHNvbWVvbmUgd2lsbCBwcm92ZSBtZSB3cm9uZyBJIHdp bGwgYmUgbW9yZSB0aGFuIGhhcHB5IHRvCj4+IGNvcnJlY3QgbXkgY29kZS4KPj4+Cj4+Pj4gSSBk b24ndCB3YW50IHRvIG1vdmUgaW9tbXUgYmVmb3JlIGdwdSwgc28gSSBkb24ndCBoYXZlIGEgc29s dXRpb24gZm9yIHRoZQo+Pj4+IG9yZGVyIGJldHdlZW4gYW1ka2ZkIGFuZCBhbWRfaW9tbXVfdjIu Cj4+PiBXaHkgbm90PyBUaGF0J3Mgc3RpbGwgYmV0dGVyIHRoYW4gY3JlYXRpbmcgYSBrZXJuZWwg d29ya3F1ZXVlLCBzY2hlZHVsaW5nIG9uZQo+Pj4gd29yayBpdGVtIG9uIGl0LCByZXNjaGVkdWxp bmcgdGhlIHRhc2sgdW50aWwgZXZlcnl0aGluZyBpcyBjb21wbGV0ZWQgYW5kIHlvdSBjYW4KPj4+ IGNvbnRpbnVlLgo+PiBCZWNhdXNlIEkgZG9uJ3Qga25vdyB0aGUgY29uc2VxdWVuY2VzIG9mIG1v dmluZyBhbiBlbnRpcmUgc3Vic3lzdGVtIGluIGZyb250Cj4+IG9mIGFub3RoZXIgb25lLiBJbiBh ZGRpdGlvbiwgZXZlbiBpZiBldmVyeW9uZSBhZ3JlZXMsIEknbSBwcmV0dHkgc3VyZSB0aGF0Cj4+ IExpbnVzIHdvbid0IGJlIGhhcHB5IHRvIGRvIHRoYXQgaW4gLXJjIHN0YWdlcy4gU28gbWF5YmUg dGhpcyBpcyBzb21ldGhpbmcgdG8KPj4gY29uc2lkZXIgZm9yIDMuMjAgbWVyZ2Ugd2luZG93LCBi dXQgSSB3b3VsZCBzdGlsbCBsaWtlIHRvIHByb3ZpZGUgYSBzb2x1dGlvbgo+PiBmb3IgMy4xOS4K Pgo+IFllYWgsIHRydWUgaW5kZWVkLiBIb3cgYWJvdXQgZGVwZW5kaW5nIG9uIGV2ZXJ5dGhpbmcg YmVpbmcgY29tcGlsZWQgYXMgbW9kdWxlCj4gZm9yIDMuMTkgdGhlbj8gU3RpbGwgYmV0dGVyIHRo YW4gaGF2aW5nIHN1Y2ggYSBoYWNrIGluIHRoZSBkcml2ZXIgZm9yIGFzIGEKPiB0ZW1wb3Jhcnkg d29ya2Fyb3VuZCBmb3Igb25lIHJlbGVhc2UuCj4KSSB0aG91Z2h0IGFib3V0IGl0LCBidXQgYmVj YXVzZSB0aGlzIHByb2JsZW0gd2FzIG9yaWdpbmFsbHkgcmVwb3J0ZWQgYnkgYSB1c2VyIAp0aGF0 IHRvbGQgdXMgaGUgY291bGRuJ3QgdXNlIG1vZHVsZXMgYmVjYXVzZSBvZiBoaXMgc2V0dXAsIEkg ZGVjaWRlZCBub3QgdG8uCkkgYXNzdW1lIHRoZXJlIGFyZSBvdGhlciB1c2VycyBvdXQgdGhlcmUg d2hvIG5lZWRzIHRoaXMgb3B0aW9uIChjb21waWxlZCAKZXZlcnl0aGluZyBpbiB0aGUga2VybmVs IC0gZW1iZWRkZWQgPyksIHNvIEkgZG9uJ3Qgd2FudCB0byBtYWtlIHRoZWlyIGxpZmUgaGFyZGVy LgoKSW4gYWRkaXRpb24sIHNheWluZyBpdCBpcyBhIHdvcmthcm91bmQgZm9yIG9uZSByZWxlYXNl IGlzIHRydWUgaW4gY2FzZSBtb3ZpbmcgCmlvbW11IHN1YnN5c3RlbSBpbiBmcm9udCBvZiBncHUg c3Vic3lzdGVtIGlzIGFjY2VwdGFibGUgYW5kIGRvZXNuJ3QgY2F1c2Ugb3RoZXIgCnByb2JsZW1z LCB1bmtub3duIGF0IHRoaXMgcG9pbnQuCgpCb3R0b20gbGluZSwgbXkgcGVyc29uYWwgcHJlZmVy ZW5jZSBpcyB0byBoZWxwIHRoZSB1c2VycyBfbm93XyBhbmQgaWYgYSBiZXR0ZXIgCmZpeCBpcyBm b3VuZCBpbiB0aGUgZnV0dXJlLCBjaGFuZ2UgdGhlIGNvZGUgYWNjb3JkaW5nbHkuCgoJT2RlZAoK PiBDaHJpc3RpYW4uCj4KPj4KPj4gICAgIE9kZWQKPj4+Cj4+PiBDaHJpc3RpYW4uCj4+Pgo+Pj4g QW0gMjEuMTIuMjAxNCB1bSAxNDoyNCBzY2hyaWViIE9kZWQgR2FiYmF5Ogo+Pj4+Cj4+Pj4KPj4+ PiBPbiAxMi8yMS8yMDE0IDAzOjA2IFBNLCBPZGVkIEdhYmJheSB3cm90ZToKPj4+Pj4KPj4+Pj4K Pj4+Pj4gT24gMTIvMjEvMjAxNCAwMjoxOSBQTSwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90ZToKPj4+ Pj4+IEFtIDIxLjEyLjIwMTQgdW0gMTI6MzQgc2NocmllYiBPZGVkIEdhYmJheToKPj4+Pj4+Pgo+ Pj4+Pj4+Cj4+Pj4+Pj4gT24gMTIvMjEvMjAxNCAwMToyNyBQTSwgQ2hyaXN0aWFuIEvDtm5pZyB3 cm90ZToKPj4+Pj4+Pj4gQW0gMjAuMTIuMjAxNCB1bSAyMTo0NiBzY2hyaWViIE9kZWQgR2FiYmF5 Ogo+Pj4+Pj4+Pj4gV2hlbiBhbWRrZmQgYW5kIHJhZGVvbiBhcmUgY29tcGlsZWQgaW5zaWRlIHRo ZSBrZXJuZWwgaW1hZ2UgKG5vdCBhcwo+Pj4+Pj4+Pj4gbW9kdWxlcyksCj4+Pj4+Pj4+PiByYWRl b24gd2lsbCBsb2FkIGJlZm9yZSBhbWRrZmQgYW5kIHdpbGwgc2V0ICprZmQya2dkIHRvIGl0cyBp bnRlcmZhY2UKPj4+Pj4+Pj4+IHN0cnVjdHVyZS4gVGhlcmVmb3JlLCB3ZSBtdXN0IG5vdCBzZXQg KmtmZDJrZ2QgdG8gTlVMTCB3aGVuIGFtZGtmZCBpcwo+Pj4+Pj4+Pj4gbG9hZGVkCj4+Pj4+Pj4+ PiBiZWNhdXNlIGl0IHdpbGwgb3ZlcnJpZGUgcmFkZW9uJ3MgaW5pdGlhbGl6YXRpb24gYW5kIGNh dXNlIGtlcm5lbCBCVUcuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogT2RlZCBH YWJiYXkgPG9kZWQuZ2FiYmF5QGFtZC5jb20+Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+IFlvdSBzaG91bGQg cHJvYmFibHkgcmF0aGVyIGZpeCB0aGUgZGVwZW5kZW5jeSBiZXR3ZWVuIHRoZSB0d28gbW9kdWxl cyB0bwo+Pj4+Pj4+PiBnZXQgYW4KPj4+Pj4+Pj4gZGV0ZXJtaW5lZCBsb2FkIG9yZGVyIGluc3Rl YWQgb2YgZG9pbmcgc3VjaCBuYXN0eSB3b3JrYXJvdW5kcy4KPj4+Pj4+Pj4KPj4+Pj4+Pj4gQ2hy aXN0aWFuLgo+Pj4+Pj4+Cj4+Pj4+Pj4gVGhlIHByb2JsZW0gaXMgdGhhdCB3aGVuIG1vZHVsZXMg YXJlIGNvbXBpbGVkIGluc2lkZSB0aGUga2VybmVsLCB0aGVyZSBpcyBOTwo+Pj4+Pj4+IGRldGVy bWluZWQgbG9hZCBvcmRlciBhbmQgdGhlcmUgaXMgbm8gbWVjaGFuaXNtIHRvIGVuZm9yY2UgdGhh dC4gSWYgdGhlcmUKPj4+Pj4+PiBpcy93YXMgc3VjaCBhIG1lY2hhbmlzbSwgSSB3b3VsZCBvZiBj b3Vyc2UgcHJlZmVyIHRvIHVzZSBpdC4KPj4+Pj4+Cj4+Pj4+PiBUaGVyZSBzaG91bGQgYmUgYW4g ZGV0ZXJtaW5lZCBvcmRlciBiYXNlZCBvbiB0aGUgc3ltYm9sIHVzZSwgb3RoZXJ3aXNlCj4+Pj4+ PiBpbml0aWFsaXppbmcgbW9zdCBvZiB0aGUga2VybmVsIG1vZHVsZXMgd291bGRuJ3Qgd29yayBh cyBleHBlY3RlZC4gRm9yCj4+Pj4+PiBleGFtcGxlCj4+Pj4+PiByYWRlb24gZGVwZW5kcyBvbiB0 aGUgZHJtIG1vZHVsZSBtdXN0IGJlIGxvYWRlZCBiZWZvcmUgcmFkZW9uIGlzIGxvYWRlZC4KPj4+ Pj4gVGhlcmUgc2hvdWxkIGJlLCBidXQgd2hlbiB0aGUgbW9kdWxlcyBhcmUgY29tcGlsZWQgaW4s IHRoZXkgYXJlIGxvYWRlZAo+Pj4+PiBiYXNlZCBvbgo+Pj4+PiBsaW5rIG9yZGVyIG9ubHksIGlm IHRoZXkgYXJlIGluIHRoZSBzYW1lIGdyb3VwLCBhbmQgdGhlIGdyb3VwcyBhcmUgbG9hZGVkIGJ5 IGEKPj4+Pj4gcHJlLWRlZmluZWQgb3JkZXIuCj4+Pj4+IFRoZSBncm91cHMgYXJlOiBwdXJlLCBj b3JlLCBwb3N0Y29yZSwgYXJjaCwgc3Vic3lzLCBmcywgZGV2aWNlICh3aGljaAo+Pj4+PiByZXBy ZXNlbnRzCj4+Pj4+IGFsbCB0aGUgbW9kdWxlcykgYW5kIGxhdGUuIFNlZSBpbml0LmgKPj4+Pj4K Pj4+Pj4gU28gcmFkZW9uLCBhbWRrZmQgYW5kIGFtZF9pb21tdV92MiBhcmUgYWxsIGluIGRldmlj ZSBncm91cCwgYW5kIGluIHRoZSBncm91cAo+Pj4+PiB0aGV5IGFyZSBvcmRlcmVkIGJ5IHRoZWly IGxpbmsgb3JkZXIuCj4+Pj4+Cj4+Pj4+IFllcywgcmFkZW9uIGxvYWRzIGFmdGVyIGRybSwgYmVj YXVzZSBkcm0qLm8gYXJlIGJlZm9yZSByYWRlb24qLm8gaW4gdGhlCj4+Pj4+IE1ha2VmaWxlLiBT ZWUKPj4+Pj4gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy81NjY5NjQ3L2xpbnV4 LW9yZGVyLW9mLXN0YXRpY2FsbHktbGlua2VkLW1vZHVsZS1sb2FkaW5nCj4+Pj4+Cj4+Pj4+Cj4+ Pj4+Cj4+Pj4KPj4+PiBTbyBJIHRyaWVkIG1vdmluZyBhbWRrZmQgaW5zaWRlIHRoZSBNYWtlZmls ZSBiZWZvcmUgcmFkZW9uLCBhbmQgdGhhdCBtYWRlCj4+Pj4gYW1ka2ZkIGxvYWQgYmVmb3JlIHJh ZGVvbiBkaWQuIFRoaXMgc29sdmVzIG15IGZpcnN0IHByb2JsZW0gLSBvcmRlciBiZXR3ZWVuCj4+ Pj4gYW1ka2ZkIGFuZCByYWRlb24uIEhvd2V2ZXIsIGFtZF9pb21tdV92MiBkb2Vzbid0IGJlbG9u ZyB0byB0aGUgZHJtIE1ha2VmaWxlLAo+Pj4+IGFuZCBJIGRvbid0IHdhbnQgdG8gbW92ZSBpb21t dSBiZWZvcmUgZ3B1LCBzbyBJIGRvbid0IGhhdmUgYSBzb2x1dGlvbiBmb3IgdGhlCj4+Pj4gb3Jk ZXIgYmV0d2VlbiBhbWRrZmQgYW5kIGFtZF9pb21tdV92Mi4KPj4+Pgo+Pj4+ICAgICBPZGVkCj4+ Pj4+Cj4+Pj4+Cj4+Pj4+Pgo+Pj4+Pj4+Cj4+Pj4+Pj4gQWN0dWFsbHksIEkgZG9uJ3QgdW5kZXJz dGFuZCB3aHkgdGhlIGtlcm5lbCBkb2Vzbid0IGVuZm9yY2UgdGhlIG9yZGVyCj4+Pj4+Pj4gYWNj b3JkaW5nIHRvIHRoZSB1c2Ugb2YgZXhwb3J0ZWQgc3ltYm9scywgbGlrZSBpdCBkb2VzIHdpdGgg bW9kdWxlcy4KPj4+Pj4+Cj4+Pj4+PiBZZWFoLCB0aGF0J3MgaW5kZWVkIHJhdGhlciBzdHJhbmdl LiBUaGVyZSBtdXN0IGJlIHNvbWV0aGluZyBpbiB0aGUgYW1ka2ZkCj4+Pj4+PiBjb2RlCj4+Pj4+ PiB3aGljaCBicm9rZSB0aGF0IHNvbWVob3cuCj4+Pj4+IElNTywgdGhhdCdzIGEgZmFyLWZldGNo ZWQgZ3Vlc3MuIENvdWxkIHlvdSBwb2ludCB0byBzb21ldGhpbmcgbW9yZSBzcGVjaWZpYyA/Cj4+ Pj4+Cj4+Pj4+Pgo+Pj4+Pj4gQXMgZmFyIGFzIEkgdW5kZXJzdGFuZCB5b3UgdGhlIGRlc2lyZWQg aW5pdCBvcmRlciBpcyByYWRlb24gYW5kIGFtZF9pb21tdV92Mgo+Pj4+Pj4gZmlyc3QgYW5kIHRo ZW4gYW1ka2ZkLCByaWdodD8KPj4+Pj4gQWN0dWFsbHkgbm8uIFRoZSBwcmVmZXJyZWQgb3JkZXIg aXMgYW1kX2lvbW11X3YyLCBhbWRrZmQgYW5kIHJhZGVvbiBsYXN0LiBUaGlzCj4+Pj4+IGlzIHRo ZSBvcmRlciB0aGF0IGhhcHBlbnMgd2hlbiBhbGwgdGhyZWUgYXJlIGJ1aWx0IGFzIG1vZHVsZXMu IE1vcmUKPj4+Pj4gYWNjdXJhdGVseSwKPj4+Pj4gcmFkZW9uIGluaXRzLCBidXQgaXRzIGluaXQg dHJpZ2dlcnMgYW1ka2ZkIGluaXQsIHdoaWNoIHRyaWdnZXJzIGFtZF9pb21tdV92Mgo+Pj4+PiBp bml0LiBTbyBiZWZvcmUgcmFkZW9uIHJlYWNoZXMgaXRzIHByb2JlIHN0YWdlLCBhbGwgdGhlIG1v ZHVsZXMgd2VyZQo+Pj4+PiBpbml0aWFsaXplZC4KPj4+Pj4KPj4+Pj4gU28gd2hhdCBoYXBwZW5z IHdoZW4geW91IGJvb3Qgd2l0aCByYWRlb24sCj4+Pj4+PiBhbWRfaW9tbXVfdjIgYW5kIGFtZGtm ZCBibGFja2xpc3RlZCBmb3IgYXV0b21hdGljYWxseSBsb2FkIGFuZCBvbmx5IGxvYWQKPj4+Pj4+ IGFtZGtmZAo+Pj4+Pj4gbWFudWFsbHk/Cj4+Pj4+IEFzIHNhaWQgYWJvdmUsIHRoYXQncyBvay4K Pj4+Pj4+Cj4+Pj4+Pj4gVGhlcmUgd2lsbCBhbHdheXMgYmUgZGVwZW5kZW5jaWVzIGJldHdlZW4g a2dkIChyYWRlb24pIGFuZCBhbWRrZmQgYW5kCj4+Pj4+Pj4gYmV0d2Vlbgo+Pj4+Pj4+IGFtZGtm ZCBhbmQgYW1kX2lvbW11X3YyLiBJIGRvbid0IHRoaW5rIEkgY2FuIGVsaW1pbmF0ZSB0aG9zZQo+ Pj4+Pj4+IGRlcGVuZGVuY2llcywgbm90Cj4+Pj4+Pj4gd2l0aG91dCBhIHZlcnkgY29tcGxleCBz b2x1dGlvbi4gQW5kIHRoZSBmYWN0IHRoYXQgdGhpcyBjb21wbGV4IHNvbHV0aW9uCj4+Pj4+Pj4g b2NjdXJzIG9ubHkgaW4gYSB2ZXJ5IHNwZWNpZmljIHVzZSBjYXNlIChhbGwgbW9kdWxlcyBjb21w aWxlZCBpbiksIG1ha2VzIG1lCj4+Pj4+Pj4gbGVzcyBpbmNsaW5lZCB0byBkbyB0aGF0Lgo+Pj4+ Pj4+Cj4+Pj4+Pj4gU28gSSBkb24ndCBzZWUgaXQgYXMgYSAibmFzdHkgd29ya2Fyb3VuZCIuIEkg d291bGQgY2FsbCBpdCBqdXN0IGEKPj4+Pj4+PiAid29ya2Fyb3VuZCIKPj4+Pj4+PiBmb3IgYSBz cGVjaWZpYyB1c2UgY2FzZSwgd2hpY2ggc2hvdWxkIGJlIHNvbHZlZCBieSBhIGdlbmVyaWMgc29s dXRpb24gdG8gdGhlCj4+Pj4+Pj4ga2VybmVsIGVuZm9yY2luZyBsb2FkIG9yZGVycy4KPj4+Pj4+ Cj4+Pj4+PiBUaGUgbm9ybWFsIGtlcm5lbCBtb2R1bGUgaGFuZGxpbmcgYWxyZWFkeSBzaG91bGQg cHJvdmlkZSB0aGUgY29ycmVjdCBpbml0Cj4+Pj4+PiBvcmRlciwKPj4+Pj4+IHNvIEkgd291bGQg c3RpbGwgY2FsbCB0aGlzIGEgcmF0aGVyIG5hc3R5IHdvcmthcm91bmQgYmVjYXVzZSB3ZSBjb3Vs ZG4ndCBmaW5kCj4+Pj4+PiB0aGUgdW5kZXJseWluZyBwcm9ibGVtLgo+Pj4+PiBXZWxsLCB0aGUg bm9ybWFsIGtlcm5lbCBtb2R1bGUgaGFuZGxpbmcgZG9lc24ndCB3b3JrIHdoZW4gYWxsIG1vZHVs ZXMgYXJlCj4+Pj4+IGNvbXBpbGVkIGluLiBJJ20gbm90IGEgaHVnZSBleHBlcnQgb24gdGhpcyBp c3N1ZSBzbyBJIGhhZCBKb2VyZyBSb2VkZWwgaGVscCBtZQo+Pj4+PiBhbmFseXplIHRoaXMgKHRo YW5rcyBKb2VyZykgYW5kIGhlIGFncmVlZCB0aGF0IHRoZXJlIGlzIG5vIGVuZm9yY2VtZW50IG9m Cj4+Pj4+IG9yZGVyCj4+Pj4+IGluIHRoaXMgY2FzZS4KPj4+Pj4KPj4+Pj4+Cj4+Pj4+PiBDaHJp c3RpYW4uCj4+Pj4+Pgo+Pj4+Pj4+Cj4+Pj4+Pj4gICAgIE9kZWQKPj4+Pj4+Pj4KPj4+Pj4+Pj4+ IC0tLQo+Pj4+Pj4+Pj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfbW9kdWxlLmMg fCA1ICsrLS0tCj4+Pj4+Pj4+PiAgIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1ka2ZkL2tmZF9tb2R1bGUuYwo+Pj4+Pj4+Pj4gYi9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGtmZC9rZmRfbW9kdWxlLmMKPj4+Pj4+Pj4+IGluZGV4IDk1ZDVhZjEuLjIzNjU2MmYg MTAwNjQ0Cj4+Pj4+Pj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfbW9k dWxlLmMKPj4+Pj4+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1ka2ZkL2tmZF9tb2R1 bGUuYwo+Pj4+Pj4+Pj4gQEAgLTM0LDcgKzM0LDcgQEAKPj4+Pj4+Pj4+ICAgI2RlZmluZSBLRkRf RFJJVkVSX01JTk9SICAgIDcKPj4+Pj4+Pj4+ICAgI2RlZmluZSBLRkRfRFJJVkVSX1BBVENITEVW RUwgICAgMAo+Pj4+Pj4+Pj4gLWNvbnN0IHN0cnVjdCBrZmQya2dkX2NhbGxzICprZmQya2dkOwo+ Pj4+Pj4+Pj4gK2NvbnN0IHN0cnVjdCBrZmQya2dkX2NhbGxzICprZmQya2dkID0gTlVMTDsKPj4+ Pj4+Pj4+ICAgc3RhdGljIGNvbnN0IHN0cnVjdCBrZ2Qya2ZkX2NhbGxzIGtnZDJrZmQgPSB7Cj4+ Pj4+Pj4+PiAgICAgICAuZXhpdCAgICAgICAgPSBrZ2Qya2ZkX2V4aXQsCj4+Pj4+Pj4+PiAgICAg ICAucHJvYmUgICAgICAgID0ga2dkMmtmZF9wcm9iZSwKPj4+Pj4+Pj4+IEBAIC04NCwxNCArODQs MTMgQEAgRVhQT1JUX1NZTUJPTChrZ2Qya2ZkX2luaXQpOwo+Pj4+Pj4+Pj4gICB2b2lkIGtnZDJr ZmRfZXhpdCh2b2lkKQo+Pj4+Pj4+Pj4gICB7Cj4+Pj4+Pj4+PiArICAgIGtmZDJrZ2QgPSBOVUxM Owo+Pj4+Pj4+Pj4gICB9Cj4+Pj4+Pj4+PiAgIHN0YXRpYyBpbnQgX19pbml0IGtmZF9tb2R1bGVf aW5pdCh2b2lkKQo+Pj4+Pj4+Pj4gICB7Cj4+Pj4+Pj4+PiAgICAgICBpbnQgZXJyOwo+Pj4+Pj4+ Pj4gLSAgICBrZmQya2dkID0gTlVMTDsKPj4+Pj4+Pj4+IC0KPj4+Pj4+Pj4+ICAgICAgIC8qIFZl cmlmeSBtb2R1bGUgcGFyYW1ldGVycyAqLwo+Pj4+Pj4+Pj4gICAgICAgaWYgKChzY2hlZF9wb2xp Y3kgPCBLRkRfU0NIRURfUE9MSUNZX0hXUykgfHwKPj4+Pj4+Pj4+ICAgICAgICAgICAoc2NoZWRf cG9saWN5ID4gS0ZEX1NDSEVEX1BPTElDWV9OT19IV1MpKSB7Cj4+Pj4+Pj4+Cj4+Pj4+Pgo+Pj4+ PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+Pj4+PiBk cmktZGV2ZWwgbWFpbGluZyBsaXN0Cj4+Pj4+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKPj4+Pj4gaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Ry aS1kZXZlbAo+Pj4KPj4+IC0tCj4+PiBUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgbGlzdDogc2Vu ZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGludXgta2VybmVsIiBpbgo+Pj4gdGhlIGJvZHkgb2Yg YSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5vcmcKPj4+IE1vcmUgbWFqb3Jkb21v IGluZm8gYXQgaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8taW5mby5odG1sCj4+PiBQ bGVhc2UgcmVhZCB0aGUgRkFRIGF0ICBodHRwOi8vd3d3LnR1eC5vcmcvbGttbC8KPgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGlu ZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=