From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: Re: [PATCH 2/2] drm/i915: Use rcu instead of stop_machine in set_wedged Date: Fri, 06 Oct 2017 18:37:52 +0100 Message-ID: <150731147225.1676.14663520819978219878@mail.alporthouse.com> References: <20171006090637.25545-1-daniel.vetter@ffwll.ch> <20171006090637.25545-2-daniel.vetter@ffwll.ch> <150728782908.14660.8438180235890645166@mail.alporthouse.com> <20171006142009.xfhlchig374eew4h@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 84F5C6E01E for ; Fri, 6 Oct 2017 17:38:12 +0000 (UTC) In-Reply-To: <20171006142009.xfhlchig374eew4h@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Daniel Vetter , Intel Graphics Development , LKML , Daniel Vetter , Thomas Gleixner , Mika Kuoppala List-Id: intel-gfx@lists.freedesktop.org UXVvdGluZyBEYW5pZWwgVmV0dGVyICgyMDE3LTEwLTA2IDE1OjIwOjA5KQo+IE9uIEZyaSwgT2N0 IDA2LCAyMDE3IGF0IDEyOjAzOjQ5UE0gKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiA+IFF1 b3RpbmcgRGFuaWVsIFZldHRlciAoMjAxNy0xMC0wNiAxMDowNjozNykKPiA+ID4gc3RvcF9tYWNo aW5lIGlzIG5vdCByZWFsbHkgYSBsb2NraW5nIHByaW1pdGl2ZSB3ZSBzaG91bGQgdXNlLCBleGNl cHQKPiA+ID4gd2hlbiB0aGUgaHcgZm9sa3MgdGVsbCB1cyB0aGUgaHcgaXMgYnJva2VuIGFuZCB0 aGF0J3MgdGhlIG9ubHkgd2F5IHRvCj4gPiA+IHdvcmsgYXJvdW5kIGl0Lgo+ID4gPiAKPiA+ID4g VGhpcyBwYXRjaCB0cmllcyB0byBhZGRyZXNzIHRoZSBsb2NraW5nIGFidXNlIG9mIHN0b3BfbWFj aGluZSgpIGZyb20KPiA+ID4gCj4gPiA+IGNvbW1pdCAyMGU0OTMzYzQ3OGExY2E2OTRiMzhmYTRh YzQ0ZDk5ZTY1OTk0MWY1Cj4gPiA+IEF1dGhvcjogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13 aWxzb24uY28udWs+Cj4gPiA+IERhdGU6ICAgVHVlIE5vdiAyMiAxNDo0MToyMSAyMDE2ICswMDAw Cj4gPiA+IAo+ID4gPiAgICAgZHJtL2k5MTU6IFN0b3AgdGhlIG1hY2hpbmUgYXMgd2UgaW5zdGFs bCB0aGUgd2VkZ2VkIHN1Ym1pdF9yZXF1ZXN0IGhhbmRsZXIKPiA+ID4gCj4gPiA+IENocmlzIHNh aWQgcGFydHMgb2YgdGhlIHJlYXNvbnMgZm9yIGdvaW5nIHdpdGggc3RvcF9tYWNoaW5lKCkgd2Fz IHRoYXQKPiA+ID4gaXQncyBubyBvdmVyaGVhZCBmb3IgdGhlIGZhc3QtcGF0aC4gQnV0IHRoZXNl IGNhbGxiYWNrcyB1c2UgaXJxc2F2ZQo+ID4gPiBzcGlubG9ja3MgYW5kIGRvIGEgYnVuY2ggb2Yg TU1JTywgYW5kIHJjdV9yZWFkX2xvY2sgaXMgX3JlYWxfIGZhc3QuCj4gPiA+IAo+ID4gPiBUbyBz dGF5IGFzIGNsb3NlIGFzIHBvc3NpYmxlIHRvIHRoZSBzdG9wX21hY2hpbmUgc2VtYW50aWNzIHdl IGZpcnN0Cj4gPiA+IHVwZGF0ZSBhbGwgdGhlIHN1Ym1pdCBmdW5jdGlvbiBwb2ludGVycyB0byB0 aGUgbm9wIGhhbmRsZXIsIHRoZW4gY2FsbAo+ID4gPiBzeW5jaHJvbml6ZV9yY3UoKSB0byBtYWtl IHN1cmUgbm8gbmV3IHJlcXVlc3RzIGNhbiBiZSBzdWJtaXR0ZWQuIFRoaXMKPiA+ID4gc2hvdWxk IGdpdmUgdXMgZXhhY3RseSB0aGUgaHVnZSBiYXJyaWVyIHdlIHdhbnQuCj4gPiA+IAo+ID4gPiBJ IHBvbmRlcmVkIHdoZXRoZXIgd2Ugc2hvdWxkIGFubm90YXRlIGVuZ2luZS0+c3VibWl0X3JlcXVl c3QgYXMgX19yY3UKPiA+ID4gYW5kIHVzZSByY3VfYXNzaWduX3BvaW50ZXIgYW5kIHJjdV9kZXJl ZmVyZW5jZSBvbiBpdC4gQnV0IHRoZSByZWFzb24KPiA+ID4gYmVoaW5kIHRob3NlIGlzIHRvIG1h a2Ugc3VyZSB0aGUgY29tcGlsZXIvY3B1IGJhcnJpZXJzIGFyZSB0aGVyZSBmb3IKPiA+ID4gd2hl biB5b3UgaGF2ZSBhbiBhY3R1YWwgZGF0YSBzdHJ1Y3R1cmUgeW91IHBvaW50IGF0LCB0byBtYWtl IHN1cmUgYWxsCj4gPiA+IHRoZSB3cml0ZXMgYXJlIHNlZW4gY29ycmVjdGx5IG9uIHRoZSByZWFk IHNpZGUuIEJ1dCB3ZSBqdXN0IGhhdmUgYQo+ID4gPiBmdW5jdGlvbiBwb2ludGVyLCBhbmQgLnRl eHQgaXNuJ3QgY2hhbmdlZCwgc28gbm8gbmVlZCBmb3IgdGhlc2UKPiA+ID4gYmFycmllcnMgYW5k IGhlbmNlIG5vIG5lZWQgZm9yIGFubm90YXRpb25zLgo+ID4gPiAKPiA+ID4gVGhpcyBzaG91bGQg Zml4IHRoZSBmb2xsb3d3aW5nIGxvY2tkZXAgc3BsYXQ6Cj4gPiA+IAo+ID4gPiA9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPiA+ID4gV0FSTklO RzogcG9zc2libGUgY2lyY3VsYXIgbG9ja2luZyBkZXBlbmRlbmN5IGRldGVjdGVkCj4gPiA+IDQu MTQuMC1yYzMtQ0ktQ0lfRFJNXzMxNzkrICMxIFRhaW50ZWQ6IEcgICAgIFUKPiA+ID4gLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gPiA+IGt3 b3JrZXIvMzo0LzU2MiBpcyB0cnlpbmcgdG8gYWNxdWlyZSBsb2NrOgo+ID4gPiAgKGNwdV9ob3Rw bHVnX2xvY2sucndfc2VtKXsrKysrfSwgYXQ6IFs8ZmZmZmZmZmY4MTEzZDRiYz5dIHN0b3BfbWFj aGluZSsweDFjLzB4NDAKPiA+ID4gCj4gPiA+IGJ1dCB0YXNrIGlzIGFscmVhZHkgaG9sZGluZyBs b2NrOgo+ID4gPiAgKCZkZXYtPnN0cnVjdF9tdXRleCl7Ky4rLn0sIGF0OiBbPGZmZmZmZmZmYTAx MzY1ODg+XSBpOTE1X3Jlc2V0X2RldmljZSsweDFlOC8weDI2MCBbaTkxNV0KPiA+ID4gCj4gPiA+ IHdoaWNoIGxvY2sgYWxyZWFkeSBkZXBlbmRzIG9uIHRoZSBuZXcgbG9jay4KPiA+ID4gCj4gPiA+ IHRoZSBleGlzdGluZyBkZXBlbmRlbmN5IGNoYWluIChpbiByZXZlcnNlIG9yZGVyKSBpczoKPiA+ ID4gCj4gPiA+IC0+ICM2ICgmZGV2LT5zdHJ1Y3RfbXV0ZXgpeysuKy59Ogo+ID4gPiAgICAgICAg X19sb2NrX2FjcXVpcmUrMHgxNDIwLzB4MTVlMAo+ID4gPiAgICAgICAgbG9ja19hY3F1aXJlKzB4 YjAvMHgyMDAKPiA+ID4gICAgICAgIF9fbXV0ZXhfbG9jaysweDg2LzB4OWIwCj4gPiA+ICAgICAg ICBtdXRleF9sb2NrX2ludGVycnVwdGlibGVfbmVzdGVkKzB4MWIvMHgyMAo+ID4gPiAgICAgICAg aTkxNV9tdXRleF9sb2NrX2ludGVycnVwdGlibGUrMHg1MS8weDEzMCBbaTkxNV0KPiA+ID4gICAg ICAgIGk5MTVfZ2VtX2ZhdWx0KzB4MjA5LzB4NjUwIFtpOTE1XQo+ID4gPiAgICAgICAgX19kb19m YXVsdCsweDFlLzB4ODAKPiA+ID4gICAgICAgIF9faGFuZGxlX21tX2ZhdWx0KzB4YTA4LzB4ZWQw Cj4gPiA+ICAgICAgICBoYW5kbGVfbW1fZmF1bHQrMHgxNTYvMHgzMDAKPiA+ID4gICAgICAgIF9f ZG9fcGFnZV9mYXVsdCsweDJjNS8weDU3MAo+ID4gPiAgICAgICAgZG9fcGFnZV9mYXVsdCsweDI4 LzB4MjUwCj4gPiA+ICAgICAgICBwYWdlX2ZhdWx0KzB4MjIvMHgzMAo+ID4gPiAKPiA+ID4gLT4g IzUgKCZtbS0+bW1hcF9zZW0peysrKyt9Ogo+ID4gPiAgICAgICAgX19sb2NrX2FjcXVpcmUrMHgx NDIwLzB4MTVlMAo+ID4gPiAgICAgICAgbG9ja19hY3F1aXJlKzB4YjAvMHgyMDAKPiA+ID4gICAg ICAgIF9fbWlnaHRfZmF1bHQrMHg2OC8weDkwCj4gPiA+ICAgICAgICBfY29weV90b191c2VyKzB4 MjMvMHg3MAo+ID4gPiAgICAgICAgZmlsbGRpcisweGE1LzB4MTIwCj4gPiA+ICAgICAgICBkY2Fj aGVfcmVhZGRpcisweGY5LzB4MTcwCj4gPiA+ICAgICAgICBpdGVyYXRlX2RpcisweDY5LzB4MWEw Cj4gPiA+ICAgICAgICBTeVNfZ2V0ZGVudHMrMHhhNS8weDE0MAo+ID4gPiAgICAgICAgZW50cnlf U1lTQ0FMTF82NF9mYXN0cGF0aCsweDFjLzB4YjEKPiA+ID4gCj4gPiA+IC0+ICM0ICgmc2ItPnNf dHlwZS0+aV9tdXRleF9rZXkjNSl7KysrK306Cj4gPiA+ICAgICAgICBkb3duX3dyaXRlKzB4M2Iv MHg3MAo+ID4gPiAgICAgICAgaGFuZGxlX2NyZWF0ZSsweGNiLzB4MWUwCj4gPiA+ICAgICAgICBk ZXZ0bXBmc2QrMHgxMzkvMHgxODAKPiA+ID4gICAgICAgIGt0aHJlYWQrMHgxNTIvMHgxOTAKPiA+ ID4gICAgICAgIHJldF9mcm9tX2ZvcmsrMHgyNy8weDQwCj4gPiA+IAo+ID4gPiAtPiAjMyAoKGNv bXBsZXRlKSZyZXEuZG9uZSl7Ky4rLn06Cj4gPiA+ICAgICAgICBfX2xvY2tfYWNxdWlyZSsweDE0 MjAvMHgxNWUwCj4gPiA+ICAgICAgICBsb2NrX2FjcXVpcmUrMHhiMC8weDIwMAo+ID4gPiAgICAg ICAgd2FpdF9mb3JfY29tbW9uKzB4NTgvMHgyMTAKPiA+ID4gICAgICAgIHdhaXRfZm9yX2NvbXBs ZXRpb24rMHgxZC8weDIwCj4gPiA+ICAgICAgICBkZXZ0bXBmc19jcmVhdGVfbm9kZSsweDEzZC8w eDE2MAo+ID4gPiAgICAgICAgZGV2aWNlX2FkZCsweDVlYi8weDYyMAo+ID4gPiAgICAgICAgZGV2 aWNlX2NyZWF0ZV9ncm91cHNfdmFyZ3MrMHhlMC8weGYwCj4gPiA+ICAgICAgICBkZXZpY2VfY3Jl YXRlKzB4M2EvMHg0MAo+ID4gPiAgICAgICAgbXNyX2RldmljZV9jcmVhdGUrMHgyYi8weDQwCj4g PiA+ICAgICAgICBjcHVocF9pbnZva2VfY2FsbGJhY2srMHhjOS8weGJmMAo+ID4gPiAgICAgICAg Y3B1aHBfdGhyZWFkX2Z1bisweDE3Yi8weDI0MAo+ID4gPiAgICAgICAgc21wYm9vdF90aHJlYWRf Zm4rMHgxOGEvMHgyODAKPiA+ID4gICAgICAgIGt0aHJlYWQrMHgxNTIvMHgxOTAKPiA+ID4gICAg ICAgIHJldF9mcm9tX2ZvcmsrMHgyNy8weDQwCj4gPiA+IAo+ID4gPiAtPiAjMiAoY3B1aHBfc3Rh dGUtdXApeysuKy59Ogo+ID4gPiAgICAgICAgX19sb2NrX2FjcXVpcmUrMHgxNDIwLzB4MTVlMAo+ ID4gPiAgICAgICAgbG9ja19hY3F1aXJlKzB4YjAvMHgyMDAKPiA+ID4gICAgICAgIGNwdWhwX2lz c3VlX2NhbGwrMHgxMzMvMHgxYzAKPiA+ID4gICAgICAgIF9fY3B1aHBfc2V0dXBfc3RhdGVfY3B1 c2xvY2tlZCsweDEzOS8weDJhMAo+ID4gPiAgICAgICAgX19jcHVocF9zZXR1cF9zdGF0ZSsweDQ2 LzB4NjAKPiA+ID4gICAgICAgIHBhZ2Vfd3JpdGViYWNrX2luaXQrMHg0My8weDY3Cj4gPiA+ICAg ICAgICBwYWdlY2FjaGVfaW5pdCsweDNkLzB4NDIKPiA+ID4gICAgICAgIHN0YXJ0X2tlcm5lbCsw eDNhOC8weDNmYwo+ID4gPiAgICAgICAgeDg2XzY0X3N0YXJ0X3Jlc2VydmF0aW9ucysweDJhLzB4 MmMKPiA+ID4gICAgICAgIHg4Nl82NF9zdGFydF9rZXJuZWwrMHg2ZC8weDcwCj4gPiA+ICAgICAg ICB2ZXJpZnlfY3B1KzB4MC8weGZiCj4gPiA+IAo+ID4gPiAtPiAjMSAoY3B1aHBfc3RhdGVfbXV0 ZXgpeysuKy59Ogo+ID4gPiAgICAgICAgX19sb2NrX2FjcXVpcmUrMHgxNDIwLzB4MTVlMAo+ID4g PiAgICAgICAgbG9ja19hY3F1aXJlKzB4YjAvMHgyMDAKPiA+ID4gICAgICAgIF9fbXV0ZXhfbG9j aysweDg2LzB4OWIwCj4gPiA+ICAgICAgICBtdXRleF9sb2NrX25lc3RlZCsweDFiLzB4MjAKPiA+ ID4gICAgICAgIF9fY3B1aHBfc2V0dXBfc3RhdGVfY3B1c2xvY2tlZCsweDUzLzB4MmEwCj4gPiA+ ICAgICAgICBfX2NwdWhwX3NldHVwX3N0YXRlKzB4NDYvMHg2MAo+ID4gPiAgICAgICAgcGFnZV9h bGxvY19pbml0KzB4MjgvMHgzMAo+ID4gPiAgICAgICAgc3RhcnRfa2VybmVsKzB4MTQ1LzB4M2Zj Cj4gPiA+ICAgICAgICB4ODZfNjRfc3RhcnRfcmVzZXJ2YXRpb25zKzB4MmEvMHgyYwo+ID4gPiAg ICAgICAgeDg2XzY0X3N0YXJ0X2tlcm5lbCsweDZkLzB4NzAKPiA+ID4gICAgICAgIHZlcmlmeV9j cHUrMHgwLzB4ZmIKPiA+ID4gCj4gPiA+IC0+ICMwIChjcHVfaG90cGx1Z19sb2NrLnJ3X3NlbSl7 KysrK306Cj4gPiA+ICAgICAgICBjaGVja19wcmV2X2FkZCsweDQzMC8weDg0MAo+ID4gPiAgICAg ICAgX19sb2NrX2FjcXVpcmUrMHgxNDIwLzB4MTVlMAo+ID4gPiAgICAgICAgbG9ja19hY3F1aXJl KzB4YjAvMHgyMDAKPiA+ID4gICAgICAgIGNwdXNfcmVhZF9sb2NrKzB4M2QvMHhiMAo+ID4gPiAg ICAgICAgc3RvcF9tYWNoaW5lKzB4MWMvMHg0MAo+ID4gPiAgICAgICAgaTkxNV9nZW1fc2V0X3dl ZGdlZCsweDFhLzB4MjAgW2k5MTVdCj4gPiA+ICAgICAgICBpOTE1X3Jlc2V0KzB4YjkvMHgyMzAg W2k5MTVdCj4gPiA+ICAgICAgICBpOTE1X3Jlc2V0X2RldmljZSsweDFmNi8weDI2MCBbaTkxNV0K PiA+ID4gICAgICAgIGk5MTVfaGFuZGxlX2Vycm9yKzB4MmQ4LzB4NDMwIFtpOTE1XQo+ID4gPiAg ICAgICAgaGFuZ2NoZWNrX2RlY2xhcmVfaGFuZysweGQzLzB4ZjAgW2k5MTVdCj4gPiA+ICAgICAg ICBpOTE1X2hhbmdjaGVja19lbGFwc2VkKzB4MjYyLzB4MmQwIFtpOTE1XQo+ID4gPiAgICAgICAg cHJvY2Vzc19vbmVfd29yaysweDIzMy8weDY2MAo+ID4gPiAgICAgICAgd29ya2VyX3RocmVhZCsw eDRlLzB4M2IwCj4gPiA+ICAgICAgICBrdGhyZWFkKzB4MTUyLzB4MTkwCj4gPiA+ICAgICAgICBy ZXRfZnJvbV9mb3JrKzB4MjcvMHg0MAo+ID4gPiAKPiA+ID4gb3RoZXIgaW5mbyB0aGF0IG1pZ2h0 IGhlbHAgdXMgZGVidWcgdGhpczoKPiA+ID4gCj4gPiA+IENoYWluIGV4aXN0cyBvZjoKPiA+ID4g ICBjcHVfaG90cGx1Z19sb2NrLnJ3X3NlbSAtLT4gJm1tLT5tbWFwX3NlbSAtLT4gJmRldi0+c3Ry dWN0X211dGV4Cj4gPiA+IAo+ID4gPiAgUG9zc2libGUgdW5zYWZlIGxvY2tpbmcgc2NlbmFyaW86 Cj4gPiA+IAo+ID4gPiAgICAgICAgQ1BVMCAgICAgICAgICAgICAgICAgICAgQ1BVMQo+ID4gPiAg ICAgICAgLS0tLSAgICAgICAgICAgICAgICAgICAgLS0tLQo+ID4gPiAgIGxvY2soJmRldi0+c3Ry dWN0X211dGV4KTsKPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2soJm1t LT5tbWFwX3NlbSk7Cj4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NrKCZk ZXYtPnN0cnVjdF9tdXRleCk7Cj4gPiA+ICAgbG9jayhjcHVfaG90cGx1Z19sb2NrLnJ3X3NlbSk7 Cj4gPiA+IAo+ID4gPiAgKioqIERFQURMT0NLICoqKgo+ID4gPiAKPiA+ID4gMyBsb2NrcyBoZWxk IGJ5IGt3b3JrZXIvMzo0LzU2MjoKPiA+ID4gICMwOiAgKCJldmVudHNfbG9uZyIpeysuKy59LCBh dDogWzxmZmZmZmZmZjgxMDljNjRhPl0gcHJvY2Vzc19vbmVfd29yaysweDFhYS8weDY2MAo+ID4g PiAgIzE6ICAoKCYoJmk5MTUtPmdwdV9lcnJvci5oYW5nY2hlY2tfd29yayktPndvcmspKXsrLisu fSwgYXQ6IFs8ZmZmZmZmZmY4MTA5YzY0YT5dIHByb2Nlc3Nfb25lX3dvcmsrMHgxYWEvMHg2NjAK PiA+ID4gICMyOiAgKCZkZXYtPnN0cnVjdF9tdXRleCl7Ky4rLn0sIGF0OiBbPGZmZmZmZmZmYTAx MzY1ODg+XSBpOTE1X3Jlc2V0X2RldmljZSsweDFlOC8weDI2MCBbaTkxNV0KPiA+ID4gCj4gPiA+ IHN0YWNrIGJhY2t0cmFjZToKPiA+ID4gQ1BVOiAzIFBJRDogNTYyIENvbW06IGt3b3JrZXIvMzo0 IFRhaW50ZWQ6IEcgICAgIFUgICAgICAgICAgNC4xNC4wLXJjMy1DSS1DSV9EUk1fMzE3OSsgIzEK PiA+ID4gSGFyZHdhcmUgbmFtZTogICAgICAgICAgICAgICAgICAvTlVDN2k1Qk5CLCBCSU9TIEJO S0JMMzU3Ljg2QS4wMDQ4LjIwMTcuMDcwNC4xNDE1IDA3LzA0LzIwMTcKPiA+ID4gV29ya3F1ZXVl OiBldmVudHNfbG9uZyBpOTE1X2hhbmdjaGVja19lbGFwc2VkIFtpOTE1XQo+ID4gPiBDYWxsIFRy YWNlOgo+ID4gPiAgZHVtcF9zdGFjaysweDY4LzB4OWYKPiA+ID4gIHByaW50X2NpcmN1bGFyX2J1 ZysweDIzNS8weDNjMAo+ID4gPiAgPyBsb2NrZGVwX2luaXRfbWFwX2Nyb3NzbG9jaysweDIwLzB4 MjAKPiA+ID4gIGNoZWNrX3ByZXZfYWRkKzB4NDMwLzB4ODQwCj4gPiA+ICA/IGlycV93b3JrX3F1 ZXVlKzB4ODYvMHhlMAo+ID4gPiAgPyB3YWtlX3VwX2tsb2dkKzB4NTMvMHg3MAo+ID4gPiAgX19s b2NrX2FjcXVpcmUrMHgxNDIwLzB4MTVlMAo+ID4gPiAgPyBfX2xvY2tfYWNxdWlyZSsweDE0MjAv MHgxNWUwCj4gPiA+ICA/IGxvY2tkZXBfaW5pdF9tYXBfY3Jvc3Nsb2NrKzB4MjAvMHgyMAo+ID4g PiAgbG9ja19hY3F1aXJlKzB4YjAvMHgyMDAKPiA+ID4gID8gc3RvcF9tYWNoaW5lKzB4MWMvMHg0 MAo+ID4gPiAgPyBpOTE1X2dlbV9vYmplY3RfdHJ1bmNhdGUrMHg1MC8weDUwIFtpOTE1XQo+ID4g PiAgY3B1c19yZWFkX2xvY2srMHgzZC8weGIwCj4gPiA+ICA/IHN0b3BfbWFjaGluZSsweDFjLzB4 NDAKPiA+ID4gIHN0b3BfbWFjaGluZSsweDFjLzB4NDAKPiA+ID4gIGk5MTVfZ2VtX3NldF93ZWRn ZWQrMHgxYS8weDIwIFtpOTE1XQo+ID4gPiAgaTkxNV9yZXNldCsweGI5LzB4MjMwIFtpOTE1XQo+ ID4gPiAgaTkxNV9yZXNldF9kZXZpY2UrMHgxZjYvMHgyNjAgW2k5MTVdCj4gPiA+ICA/IGdlbjhf Z3RfaXJxX2FjaysweDE3MC8weDE3MCBbaTkxNV0KPiA+ID4gID8gd29ya19vbl9jcHVfc2FmZSsw eDYwLzB4NjAKPiA+ID4gIGk5MTVfaGFuZGxlX2Vycm9yKzB4MmQ4LzB4NDMwIFtpOTE1XQo+ID4g PiAgPyB2c25wcmludGYrMHhkMS8weDRiMAo+ID4gPiAgPyBzY25wcmludGYrMHgzYS8weDcwCj4g PiA+ICBoYW5nY2hlY2tfZGVjbGFyZV9oYW5nKzB4ZDMvMHhmMCBbaTkxNV0KPiA+ID4gID8gaW50 ZWxfcnVudGltZV9wbV9wdXQrMHg1Ni8weGEwIFtpOTE1XQo+ID4gPiAgaTkxNV9oYW5nY2hlY2tf ZWxhcHNlZCsweDI2Mi8weDJkMCBbaTkxNV0KPiA+ID4gIHByb2Nlc3Nfb25lX3dvcmsrMHgyMzMv MHg2NjAKPiA+ID4gIHdvcmtlcl90aHJlYWQrMHg0ZS8weDNiMAo+ID4gPiAga3RocmVhZCsweDE1 Mi8weDE5MAo+ID4gPiAgPyBwcm9jZXNzX29uZV93b3JrKzB4NjYwLzB4NjYwCj4gPiA+ICA/IGt0 aHJlYWRfY3JlYXRlX29uX25vZGUrMHg0MC8weDQwCj4gPiA+ICByZXRfZnJvbV9mb3JrKzB4Mjcv MHg0MAo+ID4gPiBTZXR0aW5nIGRhbmdlcm91cyBvcHRpb24gcmVzZXQgLSB0YWludGluZyBrZXJu ZWwKPiA+ID4gaTkxNSAwMDAwOjAwOjAyLjA6IFJlc2V0dGluZyBjaGlwIGFmdGVyIGdwdSBoYW5n Cj4gPiA+IFNldHRpbmcgZGFuZ2Vyb3VzIG9wdGlvbiByZXNldCAtIHRhaW50aW5nIGtlcm5lbAo+ ID4gPiBpOTE1IDAwMDA6MDA6MDIuMDogUmVzZXR0aW5nIGNoaXAgYWZ0ZXIgZ3B1IGhhbmcKPiA+ ID4gCj4gPiA+IHYyOiBIYXZlIDEgZ2xvYmFsIHN5bmNocm9uaXplX3JjdSgpIGJhcnJpZXIgYWNy b3NzIGFsbCBlbmdpbmVzLCBhbmQKPiA+ID4gaW1wcm92ZSBjb21taXQgbWVzc2FnZS4KPiA+ID4g Cj4gPiA+IEJ1Z3ppbGxhOiBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNn aT9pZD0xMDI4ODYKPiA+ID4gQnVnemlsbGE6IGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcv c2hvd19idWcuY2dpP2lkPTEwMzA5Ngo+ID4gPiBDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJp cy13aWxzb24uY28udWs+Cj4gPiA+IENjOiBNaWthIEt1b3BwYWxhIDxtaWthLmt1b3BwYWxhQGlu dGVsLmNvbT4KPiA+ID4gQ2M6IFRob21hcyBHbGVpeG5lciA8dGdseEBsaW51dHJvbml4LmRlPgo+ ID4gPiBDYzogTWFydGEgTG9mc3RlZHQgPG1hcnRhLmxvZnN0ZWR0QGludGVsLmNvbT4KPiA+ID4g U2lnbmVkLW9mZi1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Cj4g PiA+IC0tLQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyAgICAgICAgICAg ICAgICAgICB8IDMxICsrKysrKysrKy0tLS0tLS0tLS0tLS0tCj4gPiA+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9yZXF1ZXN0LmMgICAgICAgICAgIHwgIDIgKysKPiA+ID4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9yZXF1ZXN0LmMgfCAgMiArKwo+ID4g PiAgMyBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKPiA+ ID4gCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+ID4gPiBpbmRleCBhYjhjNjk0NmZlYTQu LmU3OWE2Y2E2MDI2NSAxMDA2NDQKPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW0uYwo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gPiA+ IEBAIC0zMDIwLDE2ICszMDIwLDggQEAgc3RhdGljIHZvaWQgbm9wX3N1Ym1pdF9yZXF1ZXN0KHN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKPiA+ID4gICAgICAgICBpbnRlbF9l bmdpbmVfaW5pdF9nbG9iYWxfc2Vxbm8ocmVxdWVzdC0+ZW5naW5lLCByZXF1ZXN0LT5nbG9iYWxf c2Vxbm8pOwo+ID4gPiAgfQo+ID4gPiAgCj4gPiA+IC1zdGF0aWMgdm9pZCBlbmdpbmVfc2V0X3dl ZGdlZChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCj4gPiA+ICtzdGF0aWMgdm9pZCBl bmdpbmVfY29tcGxldGVfcmVxdWVzdHMoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQo+ ID4gPiAgewo+ID4gPiAtICAgICAgIC8qIFdlIG5lZWQgdG8gYmUgc3VyZSB0aGF0IG5vIHRocmVh ZCBpcyBydW5uaW5nIHRoZSBvbGQgY2FsbGJhY2sgYXMKPiA+ID4gLSAgICAgICAgKiB3ZSBpbnN0 YWxsIHRoZSBub3AgaGFuZGxlciAob3RoZXJ3aXNlIHdlIHdvdWxkIHN1Ym1pdCBhIHJlcXVlc3QK PiA+ID4gLSAgICAgICAgKiB0byBoYXJkd2FyZSB0aGF0IHdpbGwgbmV2ZXIgY29tcGxldGUpLiBJ biBvcmRlciB0byBwcmV2ZW50IHRoaXMKPiA+ID4gLSAgICAgICAgKiByYWNlLCB3ZSB3YWl0IHVu dGlsIHRoZSBtYWNoaW5lIGlzIGlkbGUgYmVmb3JlIG1ha2luZyB0aGUgc3dhcAo+ID4gPiAtICAg ICAgICAqICh1c2luZyBzdG9wX21hY2hpbmUoKSkuCj4gPiA+IC0gICAgICAgICovCj4gPiA+IC0g ICAgICAgZW5naW5lLT5zdWJtaXRfcmVxdWVzdCA9IG5vcF9zdWJtaXRfcmVxdWVzdDsKPiA+ID4g LQo+ID4gPiAgICAgICAgIC8qIE1hcmsgYWxsIGV4ZWN1dGluZyByZXF1ZXN0cyBhcyBza2lwcGVk ICovCj4gPiA+ICAgICAgICAgZW5naW5lLT5jYW5jZWxfcmVxdWVzdHMoZW5naW5lKTsKPiA+IAo+ ID4gSG93IGFyZSB3ZSBwbGFubmluZyB0byBzZXJpYWxpc2UgdGhlIGludGVsX2VuZ2luZV9pbml0 X2dsb2JhbF9zZXFubygpCj4gPiBoZXJlIHdpdGggdGhlIGluLWZsaWdodCBub3Bfc3VibWl0PyBX aXRoIHN1ZmZpY2llbnQgdGhydXN0IHdlIHdpbGwgZ2V0IGEKPiA+IHN0YWxlIGJyZWFkY3J1bWIg YW5kIGFuIGluY29tcGxldGUgcmVxdWVzdC4KPiAKPiBZZWFoIHRoYXQgcGFydCBsb29rcyBpbmRl ZWQgZmlzaHkuIFdlbGwgdGhlIGVudGlyZSAibGV0IHRoZSBub3AgaGFuZGxlcgo+IGZha2UtY29t cGxldGUgcmVxdWVzdHMiIGxvZ2ljIGlzIHNvbWV0aGluZyBJIGRvbid0IHJlYWxseSB1bmRlcnN0 YW5kLiBJCj4gZ3Vlc3MgdGhlcmUncyBhbiBleGNsdXNpdmUgcmVsYXRpb25zaGlwIGJldHdlZW4g cmVxdWVzdHMgaGFuZGxlZCBkaXJlY3RseQo+IChhbmQgY2FuY2VsbGVkIGluIGVuZ2luZS0+Y2Fu Y2VsX3JlcXVlc3QpIGFuZCByZXF1ZXN0cyB3aXRoIGV4dGVybmFsCj4gZG1hX2ZlbmNlIGRlcGVu ZGVuY2llcy4KPiAKPiBCdXQgdGhlbiBJJ20gbm90IHJlYWxseSBzZWVpbmcgd2hhdCBJJ20gY2hh bmdpbmcsIHNpbmNlIGV2ZW4gd2l0aCB0aGUgc3RvcAo+IG1hY2hpbmUgeW91IG1pZ2h0IGVuZCB1 cCB3aXRoIGEgYnVuY2ggb2YgcmVxdWVzdHMgZGVwZW5kaW5nIHVwb24gZXh0ZXJuYWwKPiBmZW5j ZXMsIHdoaWNoIHRoZW4gYWxsIGNvbXBsZXRlIGF0IHJvdWdobHkgdGhlIHNhbWUgdGltZSBhbmQg cmFjZSBtdWx0aXBsZQo+IGNhbGxzIHRvIGludGVsX2VuZ2luZV9pbml0X2dsb2JhbF9zZXFubyB3 aXRoIGVhY2ggYW5vdGhlci4KClVnaCwgdGhlcmUncyBhbm90aGVyIGlzc3VlLiBJZiBub3Bfc3Vi bWl0X3JlcXVlc3QgaXMgZXhlY3V0ZWQgYmVmb3JlCmNhbmNlbF9yZXF1ZXN0cywgd2Ugd2lsbCBj b25zaWRlciB0aGUgZXhlY3V0aW9uIHF1ZXVlIGFzIGNvbXBsZXRlZCBhbmQKbm90IGluIGVycm9y LCBpLmUuIHdlIHdpbGwgbm90IGZsYWcgdGhvc2UgcmVxdWVzdHMgd2l0aCB0aGUgdXNlciB2aXNp YmxlCi1FSU8uCi1DaHJpcwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK