From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: 3.18-rc regression: drm/nouveau: use shared fences for readable objects Date: Thu, 27 Nov 2014 09:33:43 +0100 Message-ID: <5476E1E7.1030402@canonical.com> References: <546C5085.1020300@canonical.com> <546DAC16.80704@canonical.com> <5470C02F.6080103@canonical.com> <54743306.8080907@canonical.com> <54767BE7.8020401@mni.thm.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by gabe.freedesktop.org (Postfix) with ESMTP id CBD356E8BA for ; Thu, 27 Nov 2014 00:33:46 -0800 (PST) In-Reply-To: <54767BE7.8020401@mni.thm.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Tobias Klausmann , Michael Marineau Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Ben Skeggs List-Id: dri-devel@lists.freedesktop.org SGV5LAoKT3AgMjctMTEtMTQgb20gMDI6MTggc2NocmVlZiBUb2JpYXMgS2xhdXNtYW5uOgo+Cj4K PiBPbiAyNi4xMS4yMDE0IDIxOjI5LCBNaWNoYWVsIE1hcmluZWF1IHdyb3RlOgo+PiBPbiBNb24s IE5vdiAyNCwgMjAxNCBhdCAxMTo0MyBQTSwgTWFhcnRlbiBMYW5raG9yc3QKPj4gPG1hYXJ0ZW4u bGFua2hvcnN0QGNhbm9uaWNhbC5jb20+IHdyb3RlOgo+Pj4gSGV5LAo+Pj4KPj4+IE9wIDIyLTEx LTE0IG9tIDIxOjE2IHNjaHJlZWYgTWljaGFlbCBNYXJpbmVhdToKPj4+PiBPbiBOb3YgMjIsIDIw MTQgMTE6NDUgQU0sICJNaWNoYWVsIE1hcmluZWF1IiA8bWlrZUBtYXJpbmVhdS5vcmc+IHdyb3Rl Ogo+Pj4+PiBPbiBOb3YgMjIsIDIwMTQgODo1NiBBTSwgIk1hYXJ0ZW4gTGFua2hvcnN0IiA8Cj4+ Pj4gbWFhcnRlbi5sYW5raG9yc3RAY2Fub25pY2FsLmNvbT4gd3JvdGU6Cj4+Pj4+PiBIZXksCj4+ Pj4+Pgo+Pj4+Pj4gT3AgMjItMTEtMTQgb20gMDE6MTkgc2NocmVlZiBNaWNoYWVsIE1hcmluZWF1 Ogo+Pj4+Pj4+IE9uIFRodSwgTm92IDIwLCAyMDE0IGF0IDEyOjUzIEFNLCBNYWFydGVuIExhbmto b3JzdAo+Pj4+Pj4+IDxtYWFydGVuLmxhbmtob3JzdEBjYW5vbmljYWwuY29tPiB3cm90ZToKPj4+ Pj4+Pj4gT3AgMjAtMTEtMTQgb20gMDU6MDYgc2NocmVlZiBNaWNoYWVsIE1hcmluZWF1Ogo+Pj4+ Pj4+Pj4gT24gV2VkLCBOb3YgMTksIDIwMTQgYXQgMTI6MTAgQU0sIE1hYXJ0ZW4gTGFua2hvcnN0 Cj4+Pj4+Pj4+PiA8bWFhcnRlbi5sYW5raG9yc3RAY2Fub25pY2FsLmNvbT4gd3JvdGU6Cj4+Pj4+ Pj4+Pj4gSGV5LAo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4gT24gMTktMTEtMTQgMDc6NDMsIE1pY2hh ZWwgTWFyaW5lYXUgd3JvdGU6Cj4+Pj4+Pj4+Pj4+IE9uIDMuMTgtcmMga2VybmVsJ3MgSSBoYXZl IGJlZW4gaW50ZXJtaXR0ZW50bHkgZXhwZXJpZW5jaW5nIEdQVQo+Pj4+Pj4+Pj4+PiBsb2NrdXBz IHNob3J0bHkgYWZ0ZXIgc3RhcnR1cCwgYWNjb21wYW5pZWQgd2l0aCBvbmUgb3IgYm90aCBvZiB0 aGUKPj4+Pj4+Pj4+Pj4gZm9sbG93aW5nIGVycm9yczoKPj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4g bm91dmVhdSBFWyAgIFBGSUZPXVswMDAwOjAxOjAwLjBdIHJlYWQgZmF1bHQgYXQgMHgwMDA3MzRh MDAwIFtQVEVdCj4+Pj4+Pj4+Pj4+IGZyb20gUEJETUEwL0hPU1RfQ1BVIG9uIGNoYW5uZWwgMHgw MDdmYWEzMDAwIFt1bmtub3duXQo+Pj4+Pj4+Pj4+PiBub3V2ZWF1IEVbICAgICBEUk1dIEdQVSBs b2NrdXAgLSBzd2l0Y2hpbmcgdG8gc29mdHdhcmUgZmJjb24KPj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+ Pj4gSSB3YXMgYWJsZSB0byB0cmFjZSB0aGUgaXNzdWUgd2l0aCBiaXNlY3QgdG8gY29tbWl0Cj4+ Pj4+Pj4+Pj4+IDgwOWU5NDQ3YjkyZmZlMTM0NmIyZDZlYzM5MGUyMTJkNTMwN2Y2MWMgImRybS9u b3V2ZWF1OiB1c2Ugc2hhcmVkCj4+Pj4+Pj4+Pj4+IGZlbmNlcyBmb3IgcmVhZGFibGUgb2JqZWN0 cyIuIFRoZSBsb2NrdXBzIGFwcGVhciB0byBoYXZlIGNsZWFyZWQKPj4+PiB1cAo+Pj4+Pj4+Pj4+ PiBzaW5jZSByZXZlcnRpbmcgdGhhdCBhbmQgYSBmZXcgcmVsYXRlZCBmb2xsb3d1cCBjb21taXRz Ogo+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+PiA4MDllOTQ0NzogImRybS9ub3V2ZWF1OiB1c2Ugc2hh cmVkIGZlbmNlcyBmb3IgcmVhZGFibGUgb2JqZWN0cyIKPj4+Pj4+Pj4+Pj4gMDU1ZGZmZGY6ICJk cm0vbm91dmVhdTogYnVtcCBkcml2ZXIgcGF0Y2hsZXZlbCB0byAxLjIuMSIKPj4+Pj4+Pj4+Pj4g ZTNiZTRjMjM6ICJkcm0vbm91dmVhdTogc3BlY2lmeSBpZiBpbnRlcnJ1cHRpYmxlIHdhaXQgaXMg ZGVzaXJlZAo+Pj4+IGluCj4+Pj4+Pj4+Pj4+IG5vdXZlYXVfZmVuY2Vfc3luYyIKPj4+Pj4+Pj4+ Pj4gMTVhOTk2YmI6ICJkcm0vbm91dmVhdTogYXNzaWduIGZlbmNlX2NoYW4tPm5hbWUgY29ycmVj dGx5Igo+Pj4+Pj4+Pj4+IFdlaXJkLiBJJ20gbm90IHN1cmUgeWV0IHdoYXQgY2F1c2VzIGl0Lgo+ Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4KPj4+PiBodHRwOi8vY2dpdC5mcmVlZGVza3RvcC5vcmcvfm1s YW5raG9yc3QvbGludXgvY29tbWl0Lz9oPWZpeGVkLWZlbmNlcy1mb3ItYmlzZWN0JmlkPTg2YmU0 ZjIxNmJiYjllYTMzMzk4NDNhNTY1OGQ0YzIxMTYyYzdlZTIKPj4+Pj4+Pj4+IEJ1aWxkaW5nIGEg a2VybmVsIGZyb20gdGhhdCBjb21taXQgZ2l2ZXMgbWUgYW4gZW50aXJlbHkgbmV3Cj4+Pj4gYmVo YXZpb3I6Cj4+Pj4+Pj4+PiBYIGhhbmdzIGZvciBhdCBsZWFzdCAxMC0yMCBzZWNvbmRzIGF0IGEg dGltZSB3aXRoIGJyaWVmIG1vbWVudHMgb2YKPj4+Pj4+Pj4+IHJlc3BvbnNpdmVuZXNzIGJlZm9y ZSBoYW5naW5nIGFnYWluIHdoaWxlIGdpdGsgb24gdGhlIGtlcm5lbCByZXBvCj4+Pj4+Pj4+PiBs b2Fkcy4gT3RoZXJ3aXNlIHRoZSBzeXN0ZW0gaXMgcmVzcG9uc2l2ZS4gVGhlIGhlYWQgb2YgdGhh dAo+Pj4+Pj4+Pj4gZml4ZWQtZmVuY2VzLWZvci1iaXNlY3QgYnJhbmNoICgxYzZhYWZiNSkgd2hp Y2ggaXMgdGhlICJ1c2Ugc2hhcmVkCj4+Pj4+Pj4+PiBmZW5jZXMgZm9yIHJlYWRhYmxlIG9iamVj dHMiIGNvbW1pdCBJIG9yaWdpbmFsbHkgYmlzZWN0ZWQgdG8gZG9lcwo+Pj4+Pj4+Pj4gZmVhdHVy ZSB0aGUgY29tcGxldGUgbG9ja3VwcyBJIHdhcyBzZWVpbmcgYmVmb3JlLgo+Pj4+Pj4+PiBPayBm b3IgdGhlIHNha2Ugb2YgYXJndW1lbnQgbGV0cyBqdXN0IGFzc3VtZSB0aGV5J3JlIHNlcGFyYXRl IGJ1Z3MsCj4+Pj4gYW5kIHdlIHNob3VsZCBsb29rIGF0IHhvcmcKPj4+Pj4+Pj4gaGFuZ2luZyBm aXJzdC4KPj4+Pj4+Pj4KPj4+Pj4+Pj4gSXMgdGhlcmUgYW55dGhpbmcgaW4gdGhlIGRtZXNnIHdo ZW4gdGhlIGhhbmdpbmcgaGFwcGVucz8KPj4+Pj4+Pj4KPj4+Pj4+Pj4gQW5kIGl0J3MgcHJvYmFi bHkgMTUgc2Vjb25kcywgaWYgaXQncyBjYWxsZWQgdGhyb3VnaAo+Pj4+IG5vdXZlYXVfZmVuY2Vf d2FpdC4KPj4+Pj4+Pj4gVHJ5IGNoYW5naW5nIGVsc2UgaWYgKCFyZXQpIHRvIGVsc2UgaWYgKFdB Uk5fT04oIXJldCkpIGluIHRoYXQKPj4+PiBmdW5jdGlvbiwgYW5kIHNlZSBpZiB5b3UgZ2V0IHNv bWUgZG1lc2cgc3BhbS4gOikKPj4+Pj4+PiBBZGRpbmcgdGhlIFdBUk5fT04gdG8gODZiZTRmMjEg cmVwb3RzIHRoZSBmb2xsb3dpbmc6Cj4+Pj4+Pj4KPj4+Pj4+PiBbIDExODguNjc2MDczXSAtLS0t LS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0KPj4+Pj4+PiBbIDExODguNjc2MTYxXSBX QVJOSU5HOiBDUFU6IDEgUElEOiA0NzQgYXQKPj4+Pj4+PiBkcml2ZXJzL2dwdS9kcm0vbm91dmVh dS9ub3V2ZWF1X2ZlbmNlLmM6MzU5Cj4+Pj4+Pj4gbm91dmVhdV9mZW5jZV93YWl0LnBhcnQuOSsw eDMzLzB4NDAgW25vdXZlYXVdKCkKPj4+Pj4+PiBbIDExODguNjc2MTY2XSBNb2R1bGVzIGxpbmtl ZCBpbjogcm5kaXNfaG9zdCBjZGNfZXRoZXIgdXNibmV0IG1paSBibmVwCj4+Pj4+Pj4gZWNiIGJ0 dXNiIGJsdWV0b290aCByZmtpbGwgYnJpZGdlIHN0cCBsbGMgaGlkX2dlbmVyaWMgdXNiX3N0b3Jh Z2UKPj4+Pj4+PiBqb3lkZXYgbW91c2VkZXYgaGlkX2FwcGxlIHVzYmhpZCBiY201OTc0IG5sc19p c284ODU5XzEgbmxzX2NwNDM3IHZmYXQKPj4+Pj4+PiBmYXQgbm91dmVhdSBzbmRfaGRhX2NvZGVj X2hkbWkgY29yZXRlbXAgeDg2X3BrZ190ZW1wX3RoZXJtYWwKPj4+Pj4+PiBpbnRlbF9wb3dlcmNs YW1wIGt2bV9pbnRlbCBrdm0gaVRDT193ZHQgY3JjdDEwZGlmX3BjbG11bAo+Pj4+Pj4+IGlUQ09f dmVuZG9yX3N1cHBvcnQgY3JjMzJjX2ludGVsIGV2ZGV2IGFlc25pX2ludGVsIG1hY19oaWQgYWVz X3g4Nl82NAo+Pj4+Pj4+IGxydyBnbHVlX2hlbHBlciBhYmxrX2hlbHBlciBhcHBsZXNtYyBzbmRf aGRhX2NvZGVjX2NpcnJ1cyBjcnlwdGQKPj4+Pj4+PiBpbnB1dF9wb2xsZGV2IHNuZF9oZGFfY29k ZWNfZ2VuZXJpYyBteG1fd21pIGxlZF9jbGFzcyB3bWkgbWljcm9jb2RlCj4+Pj4+Pj4gaHdtb24g c25kX2hkYV9pbnRlbCB0dG0gc25kX2hkYV9jb250cm9sbGVyIGxwY19pY2ggaTJjX2k4MDEgbWZk X2NvcmUKPj4+Pj4+PiBzbmRfaGRhX2NvZGVjIGkyY19hbGdvX2JpdCBzbmRfaHdkZXAgZHJtX2tt c19oZWxwZXIgc25kX3BjbSBzYnMgZHJtCj4+Pj4+Pj4gYXBwbGVfZ211eCBpMmNjb3JlIHNuZF90 aW1lciBzbmQgYWdwZ2FydCBtZWlfbWUgc291bmRjb3JlIHNic2hjIG1laQo+Pj4+Pj4+IHZpZGVv IHhoY2lfaGNkIHVzYmNvcmUgdXNiX2NvbW1vbiBhcHBsZV9ibCBidXR0b24gYmF0dGVyeSBhYyBl Zml2YXJzCj4+Pj4+Pj4gYXV0b2ZzNAo+Pj4+Pj4+IFsgMTE4OC42NzYzMDBdICBlZml2YXJmcwo+ Pj4+Pj4+IFsgMTE4OC42NzYzMDhdIENQVTogMSBQSUQ6IDQ3NCBDb21tOiBYb3JnIFRhaW50ZWQ6 IEcgICAgICAgIFcKPj4+Pj4+PiAzLjE3LjAtcmMyLW52dGVzdCsgIzE0Nwo+Pj4+Pj4+IFsgMTE4 OC42NzYzMTNdIEhhcmR3YXJlIG5hbWU6IEFwcGxlIEluYy4KPj4+Pj4+PiBNYWNCb29rUHJvMTEs My9NYWMtMkJEMUIzMTk4M0ZFMTY2MywgQklPUwo+Pj4+Pj4+IE1CUDExMi44OFouMDEzOC5CMTEu MTQwODI5MTUwMyAwOC8yOS8yMDE0Cj4+Pj4+Pj4gWyAxMTg4LjY3NjMxNl0gIDAwMDAwMDAwMDAw MDAwMDkgZmZmZjg4MDQ1ZGFlYmNlOCBmZmZmZmZmZjgxNGYwYzA5Cj4+Pj4+Pj4gMDAwMDAwMDAw MDAwMDAwMAo+Pj4+Pj4+IFsgMTE4OC42NzYzMjVdICBmZmZmODgwNDVkYWViZDIwIGZmZmZmZmZm ODEwNGVhNWQgZmZmZjg4MDA2YTZjMTQ2OAo+Pj4+Pj4+IDAwMDAwMDAwZmZmZmZmZjAKPj4+Pj4+ PiBbIDExODguNjc2MzMzXSAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIGZmZmY4 ODAwNmE2YzEwMDAKPj4+Pj4+PiBmZmZmODgwNDVkYWViZDMwCj4+Pj4+Pj4gWyAxMTg4LjY3NjM0 MV0gQ2FsbCBUcmFjZToKPj4+Pj4+PiBbIDExODguNjc2MzU2XSAgWzxmZmZmZmZmZjgxNGYwYzA5 Pl0gZHVtcF9zdGFjaysweDRkLzB4NjYKPj4+Pj4+PiBbIDExODguNjc2MzY5XSAgWzxmZmZmZmZm ZjgxMDRlYTVkPl0gd2Fybl9zbG93cGF0aF9jb21tb24rMHg3ZC8weGEwCj4+Pj4+Pj4gWyAxMTg4 LjY3NjM3N10gIFs8ZmZmZmZmZmY4MTA0ZWIzYT5dIHdhcm5fc2xvd3BhdGhfbnVsbCsweDFhLzB4 MjAKPj4+Pj4+PiBbIDExODguNjc2NDM5XSAgWzxmZmZmZmZmZmMwNGRkNTIzPl0KPj4+Pj4+PiBu b3V2ZWF1X2ZlbmNlX3dhaXQucGFydC45KzB4MzMvMHg0MCBbbm91dmVhdV0KPj4+Pj4+PiBbIDEx ODguNjc2NDk2XSAgWzxmZmZmZmZmZmMwNGRkZmU2Pl0gbm91dmVhdV9mZW5jZV93YWl0KzB4MTYv MHgzMAo+Pj4+IFtub3V2ZWF1XQo+Pj4+Pj4+IFsgMTE4OC42NzY1NTJdICBbPGZmZmZmZmZmYzA0 ZTU5OGY+XQo+Pj4+Pj4+IG5vdXZlYXVfZ2VtX2lvY3RsX2NwdV9wcmVwKzB4ZWYvMHgxZjAgW25v dXZlYXVdCj4+Pj4+Pj4gWyAxMTg4LjY3NjU3OF0gIFs8ZmZmZmZmZmZjMDFjMmY0Yz5dIGRybV9p b2N0bCsweDFlYy8weDY2MCBbZHJtXQo+Pj4+Pj4+IFsgMTE4OC42NzY1OTBdICBbPGZmZmZmZmZm ODE0ZjkwMjY+XSA/Cj4+Pj4gX3Jhd19zcGluX3VubG9ja19pcnFyZXN0b3JlKzB4MzYvMHg3MAo+ Pj4+Pj4+IFsgMTE4OC42NzY2MDBdICBbPGZmZmZmZmZmODEwOTRmNmQ+XSA/IHRyYWNlX2hhcmRp cnFzX29uKzB4ZC8weDEwCj4+Pj4+Pj4gWyAxMTg4LjY3NjY1NV0gIFs8ZmZmZmZmZmZjMDRkYTVi ND5dIG5vdXZlYXVfZHJtX2lvY3RsKzB4NTQvMHhjMAo+Pj4+IFtub3V2ZWF1XQo+Pj4+Pj4+IFsg MTE4OC42NzY2NjNdICBbPGZmZmZmZmZmODExYTg5NTA+XSBkb192ZnNfaW9jdGwrMHgzMDAvMHg1 MjAKPj4+Pj4+PiBbIDExODguNjc2NjcxXSAgWzxmZmZmZmZmZjgxNGY5ZTU1Pl0gPyBzeXNyZXRf Y2hlY2srMHgyMi8weDVkCj4+Pj4+Pj4gWyAxMTg4LjY3NjY3N10gIFs8ZmZmZmZmZmY4MTFhOGJi MT5dIFN5U19pb2N0bCsweDQxLzB4ODAKPj4+Pj4+PiBbIDExODguNjc2NjgzXSAgWzxmZmZmZmZm ZjgxNGY5ZTI5Pl0gc3lzdGVtX2NhbGxfZmFzdHBhdGgrMHgxNi8weDFiCj4+Pj4+Pj4gWyAxMTg4 LjY3NjY4OF0gLS0tWyBlbmQgdHJhY2UgNmY3YTUxMDg2NWI0Njc0ZiBdLS0tCj4+Pj4+Pj4KPj4+ Pj4+PiBIZXJlIGFyZSB0aGUgZmVuY2UgZXZlbnRzIHRoYXQgZmlyZWQgZHVyaW5nIHRoYXQgcGFy dGljdWxhcgo+Pj4+IGZlbmNlX3dhaXQ6Cj4+Pj4+Pj4gICAgICAgICAgICAgIFhvcmcgICA0NzQg WzAwNF0gIDExNzMuNjY3NjQ1OiBmZW5jZTpmZW5jZV93YWl0X3N0YXJ0Ogo+Pj4+Pj4+IGRyaXZl cj1ub3V2ZWF1IHRpbWVsaW5lPVhvcmdbNDc0XSBjb250ZXh0PTIgc2Vxbm89NTY5MTAKPj4+Pj4+ PiAgICAgICAgICAgICAgWG9yZyAgIDQ3NCBbMDA0XSAgMTE3My42Njc2NDc6IGZlbmNlOmZlbmNl X2VuYWJsZV9zaWduYWw6Cj4+Pj4+Pj4gZHJpdmVyPW5vdXZlYXUgdGltZWxpbmU9WG9yZ1s0NzRd IGNvbnRleHQ9MiBzZXFubz01NjkxMAo+Pj4+Pj4+ICAgICAgICAgICBzd2FwcGVyICAgICAwIFsw MDddICAxMTczLjY2NzY4ODogZmVuY2U6ZmVuY2Vfc2lnbmFsZWQ6Cj4+Pj4+Pj4gZHJpdmVyPW5v dXZlYXUgdGltZWxpbmU9WG9yZ1s0NzRdIGNvbnRleHQ9MiBzZXFubz01NjkwMAo+Pj4+Pj4+ICAg ICAgICAgICBzd2FwcGVyICAgICAwIFswMDddICAxMTczLjY2NzY5MjogZmVuY2U6ZmVuY2VfZGVz dHJveToKPj4+Pj4+PiBkcml2ZXI9bm91dmVhdSB0aW1lbGluZT1Yb3JnWzQ3NF0gY29udGV4dD0y IHNlcW5vPTU2OTAwCj4+Pj4+Pj4gICAgICAgICAgIHN3YXBwZXIgICAgIDAgWzAwN10gIDExNzMu NjY3ODM5OiBmZW5jZTpmZW5jZV9zaWduYWxlZDoKPj4+Pj4+PiBkcml2ZXI9bm91dmVhdSB0aW1l bGluZT1Yb3JnWzQ3NF0gY29udGV4dD0yIHNlcW5vPTU2OTAxCj4+Pj4+Pj4gICAgICAgICAgIHN3 YXBwZXIgICAgIDAgWzAwN10gIDExNzMuNjY3ODQyOiBmZW5jZTpmZW5jZV9kZXN0cm95Ogo+Pj4+ Pj4+IGRyaXZlcj1ub3V2ZWF1IHRpbWVsaW5lPVhvcmdbNDc0XSBjb250ZXh0PTIgc2Vxbm89NTY5 MDEKPj4+Pj4+PiAgICAgICAgICAgc3dhcHBlciAgICAgMCBbMDA3XSAgMTE3My42NjgwMjE6IGZl bmNlOmZlbmNlX3NpZ25hbGVkOgo+Pj4+Pj4+IGRyaXZlcj1ub3V2ZWF1IHRpbWVsaW5lPVhvcmdb NDc0XSBjb250ZXh0PTIgc2Vxbm89NTY5MDIKPj4+Pj4+PiAgICAgICAgICAgc3dhcHBlciAgICAg MCBbMDA3XSAgMTE3My42Njg0ODI6IGZlbmNlOmZlbmNlX3NpZ25hbGVkOgo+Pj4+Pj4+IGRyaXZl cj1ub3V2ZWF1IHRpbWVsaW5lPVhvcmdbNDc0XSBjb250ZXh0PTIgc2Vxbm89NTY5MDMKPj4+Pj4+ PiAgICAgICAgICAgc3dhcHBlciAgICAgMCBbMDA3XSAgMTE3My42Njg0ODU6IGZlbmNlOmZlbmNl X2Rlc3Ryb3k6Cj4+Pj4+Pj4gZHJpdmVyPW5vdXZlYXUgdGltZWxpbmU9WG9yZ1s0NzRdIGNvbnRl eHQ9MiBzZXFubz01NjkwMwo+Pj4+Pj4+ICAgICAgICAgICBzd2FwcGVyICAgICAwIFswMDddICAx MTczLjY2ODQ4OTogZmVuY2U6ZmVuY2Vfc2lnbmFsZWQ6Cj4+Pj4+Pj4gZHJpdmVyPW5vdXZlYXUg dGltZWxpbmU9WG9yZ1s0NzRdIGNvbnRleHQ9MiBzZXFubz01NjkwNAo+Pj4+Pj4+ICAgICAgICAg ICBzd2FwcGVyICAgICAwIFswMDddICAxMTczLjY2ODQ5NjogZmVuY2U6ZmVuY2Vfc2lnbmFsZWQ6 Cj4+Pj4+Pj4gZHJpdmVyPW5vdXZlYXUgdGltZWxpbmU9WG9yZ1s0NzRdIGNvbnRleHQ9MiBzZXFu bz01NjkwNQo+Pj4+Pj4+ICAgICAgICAgICBzd2FwcGVyICAgICAwIFswMDddICAxMTczLjY2ODQ5 OTogZmVuY2U6ZmVuY2VfZGVzdHJveToKPj4+Pj4+PiBkcml2ZXI9bm91dmVhdSB0aW1lbGluZT1Y b3JnWzQ3NF0gY29udGV4dD0yIHNlcW5vPTU2OTA1Cj4+Pj4+Pj4gICAgICAgICAgIHN3YXBwZXIg ICAgIDAgWzAwN10gIDExNzMuNjY4NTAyOiBmZW5jZTpmZW5jZV9zaWduYWxlZDoKPj4+Pj4+PiBk cml2ZXI9bm91dmVhdSB0aW1lbGluZT1Yb3JnWzQ3NF0gY29udGV4dD0yIHNlcW5vPTU2OTA2Cj4+ Pj4+Pj4gICAgICAgICAgIHN3YXBwZXIgICAgIDAgWzAwN10gIDExNzMuNjY4NTA1OiBmZW5jZTpm ZW5jZV9zaWduYWxlZDoKPj4+Pj4+PiBkcml2ZXI9bm91dmVhdSB0aW1lbGluZT1Yb3JnWzQ3NF0g Y29udGV4dD0yIHNlcW5vPTU2OTA3Cj4+Pj4+Pj4gICAgICAgICAgIHN3YXBwZXIgICAgIDAgWzAw N10gIDExNzMuNjY4NTA4OiBmZW5jZTpmZW5jZV9kZXN0cm95Ogo+Pj4+Pj4+IGRyaXZlcj1ub3V2 ZWF1IHRpbWVsaW5lPVhvcmdbNDc0XSBjb250ZXh0PTIgc2Vxbm89NTY5MDcKPj4+Pj4+PiAgICAg ICAgICAgc3dhcHBlciAgICAgMCBbMDA3XSAgMTE3My42Njg1MTE6IGZlbmNlOmZlbmNlX3NpZ25h bGVkOgo+Pj4+Pj4+IGRyaXZlcj1ub3V2ZWF1IHRpbWVsaW5lPVhvcmdbNDc0XSBjb250ZXh0PTIg c2Vxbm89NTY5MDgKPj4+Pj4+PiAgICAgICAgICAgc3dhcHBlciAgICAgMCBbMDA3XSAgMTE3My42 Njg1MTM6IGZlbmNlOmZlbmNlX2Rlc3Ryb3k6Cj4+Pj4+Pj4gZHJpdmVyPW5vdXZlYXUgdGltZWxp bmU9WG9yZ1s0NzRdIGNvbnRleHQ9MiBzZXFubz01NjkwOAo+Pj4+Pj4+ICAgICAgIGt3b3JrZXIv NDoxICAgIDgwIFswMDRdICAxMTczLjY3NjI2NTogZmVuY2U6ZmVuY2VfZGVzdHJveToKPj4+Pj4+ PiBkcml2ZXI9bm91dmVhdSB0aW1lbGluZT1Yb3JnWzQ3NF0gY29udGV4dD0yIHNlcW5vPTU2ODk2 Cj4+Pj4+Pj4gICAgICAga3dvcmtlci80OjEgICAgODAgWzAwNF0gIDExNzMuNjc2MjczOiBmZW5j ZTpmZW5jZV9kZXN0cm95Ogo+Pj4+Pj4+IGRyaXZlcj1ub3V2ZWF1IHRpbWVsaW5lPVhvcmdbNDc0 XSBjb250ZXh0PTIgc2Vxbm89NTY4OTgKPj4+Pj4+PiAgICAgICBrd29ya2VyLzQ6MSAgICA4MCBb MDA0XSAgMTE3My42NzYyNzc6IGZlbmNlOmZlbmNlX2Rlc3Ryb3k6Cj4+Pj4+Pj4gZHJpdmVyPW5v dXZlYXUgdGltZWxpbmU9WG9yZ1s0NzRdIGNvbnRleHQ9MiBzZXFubz01NjkwMgo+Pj4+Pj4+ICAg ICAgIGt3b3JrZXIvNDoxICAgIDgwIFswMDRdICAxMTczLjY3NjI4MDogZmVuY2U6ZmVuY2VfZGVz dHJveToKPj4+Pj4+PiBkcml2ZXI9bm91dmVhdSB0aW1lbGluZT1Yb3JnWzQ3NF0gY29udGV4dD0y IHNlcW5vPTU2OTA0Cj4+Pj4+Pj4gICAgICAgICAgICAgIFhvcmcgICA0NzQgWzAwMV0gIDExODgu Njc2MDY3OiBmZW5jZTpmZW5jZV93YWl0X2VuZDoKPj4+Pj4+PiBkcml2ZXI9bm91dmVhdSB0aW1l bGluZT1Yb3JnWzQ3NF0gY29udGV4dD0yIHNlcW5vPTU2OTEwCj4+Pj4+Pj4KPj4+Pj4+PiBJIGFz c3VtZSB0aGF0IGV4Y2x1ZGVzIHRoZSBjb250ZXh0IHlvdSByZWFsbHkgd2FudCBzbyB0aGUgZnVs bCBmZW5jZQo+Pj4+Pj4+IGV2ZW50IGxvZyBhbmQgY29ycmVzcG9uZGluZyBkbWVzZyBvdXRwdXQg YXJlIGF0dGFjaGVkLgo+Pj4+Pj4gWWVwLCB0aGUgdHJhY2UgZXZlbnRzIGFyZSB1c2VmdWwuIFRo ZSBmZW5jZSBpcyBlbWl0dGVkIGFuZCBwcmVzdW1hYmx5Cj4+Pj4gbm8gZXZlbnQgaXMgZmlyZWQg YWZ0ZXIgZW1pc3Npb24uCj4+Pj4+PiBMZXRzIGZpbmQgb3V0IGlmIHRoZSBudmlmIGNyYXAgaXMg YnVnZ3kgb3IgaXQncyBhIHJlc3VsdCBvZiBzb21lIG90aGVyCj4+Pj4gaXNzdWUsIHdoYXQgaGFw cGVucyB3aGVuIHlvdSBjaGFuZ2U6Cj4+Pj4+PiAud2FpdCA9IGZlbmNlX2RlZmF1bHRfd2FpdCwK Pj4+Pj4+IHRvCj4+Pj4+PiAud2FpdCA9IG5vdXZlYXVfZmVuY2Vfd2FpdF9sZWdhY3ksCj4+Pj4+ PiBpbiBub3V2ZWF1X2ZlbmNlLmM/Cj4+Pj4+IFRoYXQgY2hhbmdlIHdvcmtzIGp1c3QgZmluZS4K Pj4+PiBUaGUgeG9yZyBoYW5ncyBhbHNvIGFwcGVhciB0byBiZSByZXNvbHZlZCBieSBkYjFjZjQ2 ICJkcm0vbm91dmVhdTogdXNlIHJjdQo+Pj4+IGluIG5vdXZlYXVfZ2VtX2lvY3RsX2NwdV9wcmVw Igo+Pj4+Cj4+PiBPaCByaWdodCwgSSBqdXN0IHJlbWVtYmVyZWQgd2hhdCB3YXMgZ29pbmcgb24g dGhlcmUuLgo+Pj4gdGhlIC53YWl0IHdhcyBhIHdvcmthcm91bmQgZm9yIGEgYnVnIGluIHRoZSBu dmlmIGludGVyZmFjZS4gVGhlIGhhbmdzIHNob3VsZCBiZSByZXNvbHZlZCBieSBhcHBseWluZwo+ Pj4gN2NhYTYzYzA0MDI5YzU4ODI4NjU4Njc0NzBjMTA2ZWY3M2VhZmIyYgo+Pj4KPj4+IENhbiB5 b3UgY29uZmlybT8KPj4+Cj4+PiBDb3VsZCB5b3UgYWxzbyBjb25maXJtIHRoYXQgMWM2YWFmYjVm MWI4NGZhNSAiZHJtL25vdXZlYXU6IHVzZSBzaGFyZWQgZmVuY2VzIGZvciByZWFkYWJsZSBvYmpl Y3RzLCBFRElURUQiIHdpdGggdGhlCj4+PiBhYm92ZSBjb21taXQgYXBwbGllZCBpcyB0aGUgZmly c3QgYnJva2VuIGNvbW1pdD8KPj4+Cj4+PiB+TWFhcnRlbgo+Pj4KPj4gSSBkb24ndCBmb2xsb3cs IDdjYWE2M2MwNDAyOWM1ODgyODY1ODY3NDcwYzEwNmVmNzNlYWZiMmIgcHJlY2VkZXMKPj4gdGhv c2Ugb3RoZXIgY29tbWl0cyBzbyB0aGVyZSBpcyBub3RoaW5nIHRvIGFwcGx5LiBKdXN0IGZvciBr aWNrcyBJCj4+IHRyaWVkIHJldmVydGluZyBpdCBidXQgdGhhdCBtYWRlIG5vIGRpZmZlcmVuY2Ug aW4gYmVoYXZpb3IuIERpZCB5b3UKPj4gbWVhbiBzb21ldGhpbmcgZWxzZT8KPj4KPiBObywgTWFh cnRlbiBicm91Z2h0IG1lIG9uIHRoZSBzYW1lIHRyYWNrLCBtaXNzaW5nIHRoYXQgdGhpcyBjb21t aXQgd2FzIGFscmVhZHkgaW4gdGhhdCBicmFuY2guCj4KPiAoUGxlYXNlIGRvbid0IHJlbW92ZSBt ZSBmcm9tIHRoaXMgdGhyZWFkIGFnYWluLCBhcyBNYWFydGVuIHJlcXVlc3RlZCBtZSB0byBkbyB0 aGUgc2FtZSBoZSBhc2tlZCB5b3UgdG8gZG8sIGp1c3QgZWFzaWVyIHRvIGZvbGxvdyB0aGlzLCB0 aGFua3MpCj4KPiBUb2JpYXMKPgpPayB0aGF0IG1vc3QgbGlrZWx5IG1lYW5zIHRoZSBpbnRlcnJ1 cHQgYmFzZWQgd2FpdCBpcyBib3JrZWQgc29tZWhvdywgc28gbGV0cyBmaW5kIG91dCB3aHkuLgoK SSBmZWFyIHRoYXQgdGhpcyBoYXBwZW5zIGJlY2F1c2Ugb2YgYSByYWNlIGluIHRoZSBpbnRlcmZh Y2UsIHNvIG15IGZpcnN0IGF0dGVtcHQgd2lsbCBydWxlIG91dCBhYnVzZSBvZiB0aGUgbnZpZiBh cGkgYnkgbm91dmVhdV9mZW5jZS5jCgpDYW4geW91IHRlc3QgYmVsb3cgcGF0Y2ggd2l0aCB0aGUg ZGVmYXVsdCB3YWl0IGZ1bmN0aW9uPwoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2 ZWF1L25vdXZlYXVfZmVuY2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZmVu Y2UuYwppbmRleCA1MTVjZDlhZWJiOTkuLmMxYTRmZmViYzIwNiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV9mZW5jZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9u b3V2ZWF1L25vdXZlYXVfZmVuY2UuYwpAQCAtNTIsMjAgKzUyLDI3IEBAIG5vdXZlYXVfZmN0eChz dHJ1Y3Qgbm91dmVhdV9mZW5jZSAqZmVuY2UpCiAJcmV0dXJuIGNvbnRhaW5lcl9vZihmZW5jZS0+ YmFzZS5sb2NrLCBzdHJ1Y3Qgbm91dmVhdV9mZW5jZV9jaGFuLCBsb2NrKTsKIH0KIAotc3RhdGlj IHZvaWQKLW5vdXZlYXVfZmVuY2Vfc2lnbmFsKHN0cnVjdCBub3V2ZWF1X2ZlbmNlICpmZW5jZSkK K3N0YXRpYyBpbnQKK25vdXZlYXVfZmVuY2Vfc2lnbmFsKHN0cnVjdCBub3V2ZWF1X2ZlbmNlICpm ZW5jZSwgaW50IGRlbGF5KQogeworCWludCBkcm9wID0gMDsKKwogCWZlbmNlX3NpZ25hbF9sb2Nr ZWQoJmZlbmNlLT5iYXNlKTsKIAlsaXN0X2RlbCgmZmVuY2UtPmhlYWQpOwogCiAJaWYgKHRlc3Rf Yml0KEZFTkNFX0ZMQUdfVVNFUl9CSVRTLCAmZmVuY2UtPmJhc2UuZmxhZ3MpKSB7CiAJCXN0cnVj dCBub3V2ZWF1X2ZlbmNlX2NoYW4gKmZjdHggPSBub3V2ZWF1X2ZjdHgoZmVuY2UpOwogCi0JCWlm ICghLS1mY3R4LT5ub3RpZnlfcmVmKQotCQkJbnZpZl9ub3RpZnlfcHV0KCZmY3R4LT5ub3RpZnkp OworCQlpZiAoIS0tZmN0eC0+bm90aWZ5X3JlZikgeworCQkJaWYgKCFkZWxheSkKKwkJCQludmlm X25vdGlmeV9wdXQoJmZjdHgtPm5vdGlmeSk7CisJCQllbHNlCisJCQkJZHJvcCA9IDE7CisJCX0K IAl9CiAKIAlmZW5jZV9wdXQoJmZlbmNlLT5iYXNlKTsKKwlyZXR1cm4gZHJvcDsKIH0KIAogc3Rh dGljIHN0cnVjdCBub3V2ZWF1X2ZlbmNlICoKQEAgLTk0LDcgKzEwMSw3IEBAIG5vdXZlYXVfZmVu Y2VfY29udGV4dF9kZWwoc3RydWN0IG5vdXZlYXVfZmVuY2VfY2hhbiAqZmN0eCkKIAl3aGlsZSAo IWxpc3RfZW1wdHkoJmZjdHgtPnBlbmRpbmcpKSB7CiAJCWZlbmNlID0gbGlzdF9lbnRyeShmY3R4 LT5wZW5kaW5nLm5leHQsIHR5cGVvZigqZmVuY2UpLCBoZWFkKTsKIAotCQlub3V2ZWF1X2ZlbmNl X3NpZ25hbChmZW5jZSk7CisJCW5vdXZlYXVfZmVuY2Vfc2lnbmFsKGZlbmNlLCAwKTsKIAkJZmVu Y2UtPmNoYW5uZWwgPSBOVUxMOwogCX0KIAlzcGluX3VubG9ja19pcnEoJmZjdHgtPmxvY2spOwpA QCAtMTEyLDEwICsxMTksMTEgQEAgbm91dmVhdV9mZW5jZV9jb250ZXh0X2ZyZWUoc3RydWN0IG5v dXZlYXVfZmVuY2VfY2hhbiAqZmN0eCkKIAlrcmVmX3B1dCgmZmN0eC0+ZmVuY2VfcmVmLCBub3V2 ZWF1X2ZlbmNlX2NvbnRleHRfcHV0KTsKIH0KIAotc3RhdGljIHZvaWQKLW5vdXZlYXVfZmVuY2Vf dXBkYXRlKHN0cnVjdCBub3V2ZWF1X2NoYW5uZWwgKmNoYW4sIHN0cnVjdCBub3V2ZWF1X2ZlbmNl X2NoYW4gKmZjdHgpCitzdGF0aWMgaW50Citub3V2ZWF1X2ZlbmNlX3VwZGF0ZShzdHJ1Y3Qgbm91 dmVhdV9jaGFubmVsICpjaGFuLCBzdHJ1Y3Qgbm91dmVhdV9mZW5jZV9jaGFuICpmY3R4LCBpbnQg ZGVsYXkpCiB7CiAJc3RydWN0IG5vdXZlYXVfZmVuY2UgKmZlbmNlOworCWludCBkcm9wID0gMDsK IAogCXUzMiBzZXEgPSBmY3R4LT5yZWFkKGNoYW4pOwogCkBAIC0xMjMsMTAgKzEzMSwxMiBAQCBu b3V2ZWF1X2ZlbmNlX3VwZGF0ZShzdHJ1Y3Qgbm91dmVhdV9jaGFubmVsICpjaGFuLCBzdHJ1Y3Qg bm91dmVhdV9mZW5jZV9jaGFuICpmYwogCQlmZW5jZSA9IGxpc3RfZW50cnkoZmN0eC0+cGVuZGlu Zy5uZXh0LCB0eXBlb2YoKmZlbmNlKSwgaGVhZCk7CiAKIAkJaWYgKChpbnQpKHNlcSAtIGZlbmNl LT5iYXNlLnNlcW5vKSA8IDApCi0JCQlyZXR1cm47CisJCQlicmVhazsKIAotCQlub3V2ZWF1X2Zl bmNlX3NpZ25hbChmZW5jZSk7CisJCWRyb3AgfD0gbm91dmVhdV9mZW5jZV9zaWduYWwoZmVuY2Us IGRlbGF5KTsKIAl9CisKKwlyZXR1cm4gZHJvcDsKIH0KIAogc3RhdGljIGludApAQCAtMTM1LDE4 ICsxNDUsMjAgQEAgbm91dmVhdV9mZW5jZV93YWl0X3VldmVudF9oYW5kbGVyKHN0cnVjdCBudmlm X25vdGlmeSAqbm90aWZ5KQogCXN0cnVjdCBub3V2ZWF1X2ZlbmNlX2NoYW4gKmZjdHggPQogCQlj b250YWluZXJfb2Yobm90aWZ5LCB0eXBlb2YoKmZjdHgpLCBub3RpZnkpOwogCXVuc2lnbmVkIGxv bmcgZmxhZ3M7CisJaW50IHJldCA9IE5WSUZfTk9USUZZX0tFRVA7CiAKIAlzcGluX2xvY2tfaXJx c2F2ZSgmZmN0eC0+bG9jaywgZmxhZ3MpOwogCWlmICghbGlzdF9lbXB0eSgmZmN0eC0+cGVuZGlu ZykpIHsKIAkJc3RydWN0IG5vdXZlYXVfZmVuY2UgKmZlbmNlOwogCiAJCWZlbmNlID0gbGlzdF9l bnRyeShmY3R4LT5wZW5kaW5nLm5leHQsIHR5cGVvZigqZmVuY2UpLCBoZWFkKTsKLQkJbm91dmVh dV9mZW5jZV91cGRhdGUoZmVuY2UtPmNoYW5uZWwsIGZjdHgpOworCQlpZiAobm91dmVhdV9mZW5j ZV91cGRhdGUoZmVuY2UtPmNoYW5uZWwsIGZjdHgsIDEpKQorCQkJcmV0ID0gTlZJRl9OT1RJRllf RFJPUDsKIAl9CiAJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmZmN0eC0+bG9jaywgZmxhZ3MpOwog CiAJLyogQWx3YXlzIHJldHVybiBrZWVwIGhlcmUuIE5WSUYgcmVmY291bnQgaXMgaGFuZGxlZCB3 aXRoIG5vdXZlYXVfZmVuY2VfdXBkYXRlICovCi0JcmV0dXJuIE5WSUZfTk9USUZZX0tFRVA7CisJ cmV0dXJuIHJldDsKIH0KIAogdm9pZApAQCAtMjYyLDcgKzI3NCw3IEBAIG5vdXZlYXVfZmVuY2Vf ZW1pdChzdHJ1Y3Qgbm91dmVhdV9mZW5jZSAqZmVuY2UsIHN0cnVjdCBub3V2ZWF1X2NoYW5uZWwg KmNoYW4pCiAJaWYgKCFyZXQpIHsKIAkJZmVuY2VfZ2V0KCZmZW5jZS0+YmFzZSk7CiAJCXNwaW5f bG9ja19pcnEoJmZjdHgtPmxvY2spOwotCQlub3V2ZWF1X2ZlbmNlX3VwZGF0ZShjaGFuLCBmY3R4 KTsKKwkJbm91dmVhdV9mZW5jZV91cGRhdGUoY2hhbiwgZmN0eCwgMCk7CiAJCWxpc3RfYWRkX3Rh aWwoJmZlbmNlLT5oZWFkLCAmZmN0eC0+cGVuZGluZyk7CiAJCXNwaW5fdW5sb2NrX2lycSgmZmN0 eC0+bG9jayk7CiAJfQpAQCAtMjgyLDcgKzI5NCw3IEBAIG5vdXZlYXVfZmVuY2VfZG9uZShzdHJ1 Y3Qgbm91dmVhdV9mZW5jZSAqZmVuY2UpCiAJCQlyZXR1cm4gdHJ1ZTsKIAogCQlzcGluX2xvY2tf aXJxc2F2ZSgmZmN0eC0+bG9jaywgZmxhZ3MpOwotCQlub3V2ZWF1X2ZlbmNlX3VwZGF0ZShmZW5j ZS0+Y2hhbm5lbCwgZmN0eCk7CisJCW5vdXZlYXVfZmVuY2VfdXBkYXRlKGZlbmNlLT5jaGFubmVs LCBmY3R4LCAwKTsKIAkJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmZmN0eC0+bG9jaywgZmxhZ3Mp OwogCX0KIAlyZXR1cm4gZmVuY2VfaXNfc2lnbmFsZWQoJmZlbmNlLT5iYXNlKTsKCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGlu ZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=