From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [RFC 00/11] TDR/watchdog timeout support for gen8 Date: Tue, 23 Jun 2015 13:38:29 +0200 Message-ID: <20150623113829.GU25769@phenom.ffwll.local> References: <1433783009-17251-1-git-send-email-tomas.elf@intel.com> <20150623100551.GT25769@phenom.ffwll.local> <55893934.4080105@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f176.google.com (mail-wi0-f176.google.com [209.85.212.176]) by gabe.freedesktop.org (Postfix) with ESMTP id 7BB7F6E30E for ; Tue, 23 Jun 2015 04:35:43 -0700 (PDT) Received: by wicgi11 with SMTP id gi11so13760864wic.0 for ; Tue, 23 Jun 2015 04:35:42 -0700 (PDT) Content-Disposition: inline In-Reply-To: <55893934.4080105@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tomas Elf Cc: "Intel-GFX@Lists.FreeDesktop.Org" List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBKdW4gMjMsIDIwMTUgYXQgMTE6NDc6MTZBTSArMDEwMCwgVG9tYXMgRWxmIHdyb3Rl Ogo+IE9uIDIzLzA2LzIwMTUgMTE6MDUsIERhbmllbCBWZXR0ZXIgd3JvdGU6Cj4gPllvdXIgcGF0 Y2hlcyBkb24ndCBhcHBseSBjbGVhbmx5IGFueSBtb3JlIGFuZCBJIGNhbid0IGZpbmQgYSBzdWl0 YWJsZQo+ID5iYXNlbGluZSB3aGVyZSB0aGV5IHdvdWxkLiBCdXQgSSdkIGxpa2UgdG8gc2VlIGl0 IGFsbCBpbiBjb250ZXh0IHRvIGNoZWNrCj4gPmEgZmV3IHRoaW5ncy4KPiA+Cj4gPkNhbiB5b3Ug cGxzIHB1c2ggYSBnaXQgYnJhbmNoIHdpdGggdGhlc2Ugc29tZXdoZXJlPwo+ID4KPiAKPiBIZXJl J3MgdGhlIGJhc2VsaW5lIGZvciBteSBsb2NhbCB0cmVlOgo+IGNkMDc2MzcgLSAgZHJtLWludGVs LW5pZ2h0bHk6IDIwMTV5LTA0bS0xM2QtMDloLTQ2bS01OXMgVVRDIGludGVncmF0aW9uCj4gbWFu aWZlc3QgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CgpJIGRvbid0IGhhdmUgdGhhdCBiYXNlbGlu ZSBhcm91bmQgaGVyZSAoYW55IG1vcmUgYXQgbGVhc3QpLiBIYXBwZW5zCnJlZ3VsYXJseSB3aXRo IHJlYmFzaW5nIHRyZWVzLgoKPiBJIGhhdmVuJ3QgdXBkYXRlZCBpdCBpbiBhIHdoaWxlIG9idmlv dXNseSBzaW5jZSBJIHRob3VnaHQgdGhhdCBjb3VsZCB3YWl0Cj4gdW50aWwgd2UnZCB3b3JrZWQg b3VyIHdheSB0aHJvdWdoIHRoZSBSRkMgc2VyaWVzIGFuZCBJIGNvdWxkIGdldCB0byB3b3JrIG9u Cj4gdGhlIGZpcnN0IHJlYWwgcGF0Y2ggc2VyaWVzLgo+IAo+IElzIGl0IHBvc3NpYmxlIGZvciB5 b3UgdG8gc2V0IHVwIGEgbG9jYWwgdHJlZSBvZiB5b3VyIG93biB3aXRoIG15IGJhc2VsaW5lCj4g YW5kIG15IFJGQyBwYXRjaGVzIG9uIHRvcCBvciB3b3VsZCB5b3UgcHJlZmVyIGl0IGlmIEkgcHVz aCBteSBicmFuY2ggdG8KPiBkcm0tcHJpdmF0ZT8KClNvIHllYWggSSBuZWVkIHlvdXIgYnJhbmNo IDstKQotRGFuaWwKPiAKPiBUaGFua3MsCj4gVG9tYXMKPiAKPiA+VGhhbmtzLCBEYW5pZWwKPiA+ Cj4gPk9uIE1vbiwgSnVuIDA4LCAyMDE1IGF0IDA2OjAzOjE4UE0gKzAxMDAsIFRvbWFzIEVsZiB3 cm90ZToKPiA+PlRoaXMgcGF0Y2ggc2VyaWVzIGludHJvZHVjZXMgdGhlIGZvbGxvd2luZyBmZWF0 dXJlczoKPiA+Pgo+ID4+KiBGZWF0dXJlIDE6IFREUiAoVGltZW91dCBEZXRlY3Rpb24gYW5kIFJl Y292ZXJ5KSBmb3IgZ2VuOCBleGVjbGlzdCBtb2RlLgo+ID4+Cj4gPj5URFIgaXMgYW4gdW1icmVs bGEgdGVybSBmb3IgYW55dGhpbmcgdGhhdCBnb2VzIGludG8gZGV0ZWN0aW5nIGFuZCByZWNvdmVy aW5nCj4gPj5mcm9tIEdQVSBoYW5ncyBhbmQgaXMgYSB0ZXJtIG1vcmUgd2lkZWx5IHVzZWQgb3V0 c2lkZSBvZiB0aGUgdXBzdHJlYW0gZHJpdmVyLgo+ID4+VGhpcyBmZWF0dXJlIGludHJvZHVjZXMg YW4gZXh0ZW5zaWJsZSBmcmFtZXdvcmsgdGhhdCBjdXJyZW50bHkgc3VwcG9ydHMgZ2VuOAo+ID4+ YnV0IHRoYXQgY2FuIGJlIGVhc2lseSBleHRlbmRlZCB0byBzdXBwb3J0IGdlbjcgYXMgd2VsbCAo d2hpY2ggaXMgYWxyZWFkeSB0aGUKPiA+PmNhc2UgaW4gR01JTiBidXQgdW5mb3J0dW5hdGVseSBp biBhIG5vdCBxdWl0ZSB1cHN0cmVhbWFibGUgZm9ybSkuIFRoZSBjb2RlCj4gPj5jb250YWluZWQg aW4gdGhpcyBzdWJtaXNzaW9uIHJlcHJlc2VudHMgdGhlIGVzc2VudGlhbHMgb2Ygd2hhdCBpcyBj dXJyZW50bHkgaW4KPiA+PkdNSU4gbWVyZ2VkIHdpdGggd2hhdCBpcyBjdXJyZW50bHkgaW4gdXBz dHJlYW0gKGFzIG9mIHRoZSB0aW1lIHdoZW4gdGhpcyB3b3JrCj4gPj5jb21tZW5jZWQgYSBmZXcg bW9udGhzIGJhY2spLgo+ID4+Cj4gPj5UaGlzIGZlYXR1cmUgYWRkcyBhIG5ldyBoYW5nIHJlY292 ZXJ5IHBhdGggYWxvbmdzaWRlIHRoZSBsZWdhY3kgR1BVIHJlc2V0IHBhdGgsCj4gPj53aGljaCB0 YWtlcyBjYXJlIG9mIGVuZ2luZSByZWNvdmVyeSBvbmx5LiBBc2lkZSBmcm9tIGFkZGluZyBzdXBw b3J0IGZvcgo+ID4+cGVyLWVuZ2luZSByZWNvdmVyeSB0aGlzIGZlYXR1cmUgYWxzbyBpbnRyb2R1 Y2VzIHJ1bGVzIGZvciBob3cgdG8gcHJvbW90ZSBhCj4gPj5wb3RlbnRpYWwgcGVyLWVuZ2luZSBy ZXNldCB0byBhIGxlZ2FjeSwgZnVsbCBHUFUgcmVzZXQuCj4gPj4KPiA+PlRoZSBoYW5nIGNoZWNr ZXIgbm93IGludGVncmF0ZXMgd2l0aCB0aGUgZXJyb3IgaGFuZGxlciBpbiBhIHNsaWdodGx5IGRp ZmZlcmVudAo+ID4+d2F5IGluIHRoYXQgaXQgYWxsb3dzIGhhbmcgcmVjb3Zlcnkgb24gbXVsdGlw bGUgZW5naW5lcyBhdCB0aGUgc2FtZSB0aW1lIGJ5Cj4gPj5wYXNzaW5nIGFuIGVuZ2luZSBmbGFn IG1hc2sgdG8gdGhlIGVycm9yIGhhbmRsZXIgd2hlcmUgZmxhZ3MgcmVwcmVzZW50aW5nIGFsbAo+ ID4+b2YgdGhlIGh1bmcgZW5naW5lcyBhcmUgc2V0LiBUaGlzIGFsbG93cyB1cyB0byBzY2hlZHVs ZSBoYW5nIHJlY292ZXJ5IG9uY2UgZm9yCj4gPj5hbGwgY3VycmVudGx5IGh1bmcgZW5naW5lcyBp bnN0ZWFkIG9mIG9uZSBoYW5nIHJlY292ZXJ5IHBlciBkZXRlY3RlZCBlbmdpbmUKPiA+Pmhhbmcu IFByZXZpb3VzbHksIHdoZW4gb25seSBmdWxsIEdQVSByZXNldCB3YXMgc3VwcG9ydGVkIHRoaXMg d2FzIGFsbCB0aGUgc2FtZQo+ID4+c2luY2UgaXQgd291bGRuJ3QgbWF0dGVyIGlmIG9uZSBvciBm b3VyIGVuZ2luZXMgd2VyZSBodW5nIGF0IGFueSBnaXZlbiBwb2ludAo+ID4+c2luY2UgaXQgd291 bGQgYWxsIGFtb3VudCB0byB0aGUgc2FtZSB0aGluZyAtIHRoZSBHUFUgZ2V0dGluZyByZXNldC4g QXMgaXQKPiA+PnN0YW5kcyBub3cgdGhlIGJlaGF2aW91ciBpcyBkaWZmZXJlbnQgZGVwZW5kaW5n IG9uIHdoaWNoIGVuZ2luZSBpcyBodW5nIHNpbmNlCj4gPj5lYWNoIGVuZ2luZSBpcyByZXNldCBz ZXBhcmF0ZWx5IGZyb20gYWxsIHRoZSBvdGhlciBlbmdpbmVzLCB0aGVyZWZvcmUgd2UgaGF2ZQo+ ID4+dG8gdGhpbmsgYWJvdXQgdGhpcyBpbiB0ZXJtcyBvZiBzY2hlZHVsaW5nIGNvc3QgYW5kIHJl Y292ZXJ5IGxhdGVuY3kuIChzZWUKPiA+Pm9wZW4gcXVlc3Rpb24gYmVsb3cpCj4gPj4KPiA+Pk9Q RU4gUVVFU1RJT05TOgo+ID4+Cj4gPj4JMS4gRG8gd2Ugd2FudCB0byBpbnZlc3RpZ2F0ZSB0aGUg cG9zc2liaWxpdHkgb2YgcGVyLWVuZ2luZSBoYW5nCj4gPj4JZGV0ZWN0aW9uPyBJbiB0aGUgY3Vy cmVudCB1cHN0cmVhbSBkcml2ZXIgdGhlcmUgaXMgb25seSBvbmUgd29yayBxdWV1ZQo+ID4+CXRo YXQgaGFuZGxlcyB0aGUgaGFuZyBjaGVja2VyIGFuZCBldmVyeXRoaW5nIGZyb20gaW5pdGlhbCBo YW5nCj4gPj4JZGV0ZWN0aW9uIHRvIGZpbmFsIGhhbmcgcmVjb3ZlcnkgcnVucyBpbiB0aGlzIHRo cmVhZC4gVGhpcyBtYWtlcyBzZW5zZQo+ID4+CWlmIHlvdSdyZSBvbmx5IHN1cHBvcnRpbmcgb25l IGZvcm0gb2YgaGFuZyByZWNvdmVyeSAtIHVzaW5nIGZ1bGwgR1BVCj4gPj4JcmVzZXQgYW5kIG5v dGhpbmcgdGllZCB0byBhbnkgcGFydGljdWxhciBlbmdpbmUuIEhvd2V2ZXIsIGFzIHBhcnQKPiA+ PglvZiB0aGlzIHBhdGNoIHNlcmllcyB3ZSdyZSBjaGFuZ2luZyB0aGF0IGJ5IGludHJvZHVjaW5n IHBlci1lbmdpbmUKPiA+PgloYW5nIHJlY292ZXJ5LiBJdCBjb3VsZCBtYWtlIHNlbnNlIHRvIGlu dHJvZHVjZSBtdWx0aXBsZSB3b3JrCj4gPj4JcXVldWVzIC0gb25lIHBlciBlbmdpbmUgLSB0byBy dW4gbXVsdGlwbGUgaGFuZyBjaGVja2luZyB0aHJlYWRzIGluCj4gPj4JcGFyYWxsZWwuCj4gPj4K PiA+PglUaGlzIHdvdWxkIHBvdGVudGlhbGx5IGFsbG93IHNhdmluZ3MgaW4gdGVybXMgb2YgcmVj b3ZlcnkgbGF0ZW5jeSBzaW5jZQo+ID4+CXdlIGRvbid0IGhhdmUgdG8gc2NhbiBhbGwgZW5naW5l cyBldmVyeSB0aW1lIHRoZSBoYW5nIGNoZWNrZXIgaXMKPiA+PglzY2hlZHVsZWQgYW5kIHRoZSBl cnJvciBoYW5kbGVyIGRvZXMgbm90IGhhdmUgdG8gc2NhbiBhbGwgZW5naW5lcyBldmVyeQo+ID4+ CXRpbWUgaXQgaXMgc2NoZWR1bGVkLiBJbnN0ZWFkLCB3ZSBjb3VsZCBpbXBsZW1lbnQgb25lIHdv cmsgcXVldWUgcGVyCj4gPj4JZW5naW5lIHRoYXQgd291bGQgaW52b2tlIHRoZSBoYW5nIGNoZWNr ZXIgdGhhdCBvbmx5IGNoZWNrcyBfdGhhdF8KPiA+PglwYXJ0aWN1bGFyIGVuZ2luZSBhbmQgdGhl biB0aGUgZXJyb3IgaGFuZGxlciBpcyBpbnZva2VkIGZvciBfdGhhdF8KPiA+PglwYXJ0aWN1bGFy IGVuZ2luZS4gSWYgb25lIGVuZ2luZSBoYXMgaHVuZyB0aGUgbGF0ZW5jeSBmb3IgZ2V0dGluZyB0 bwo+ID4+CXRoZSBoYW5nIHJlY292ZXJ5IHBhdGggZm9yIHRoYXQgcGFydGljdWxhciBlbmdpbmUg d291bGQgYmUgKFRpbWUgRm9yCj4gPj4JSGFuZyBDaGVja2luZyBPbmUgRW5naW5lKSArIChUaW1l IEZvciBFcnJvciBIYW5kbGluZyBPbmUgRW5naW5lKSByYXRoZXIKPiA+Pgl0aGFuIHRoZSB0aW1l IGl0IHRha2VzIHRvIGRvIGhhbmcgY2hlY2tpbmcgZm9yIGFsbCBlbmdpbmVzICsgdGhlIHRpbWUK PiA+PglpdCB0YWtlcyB0byBkbyBlcnJvciBoYW5kbGluZyBmb3IgYWxsIGVuZ2luZXMgdGhhdCBo YXZlIGJlZW4gZGV0ZWN0ZWQKPiA+PglhcyBodW5nICh3aGljaCBpbiB0aGUgd29yc3QgY2FzZSB3 b3VsZCBiZSBhbGwgZW5naW5lcykuIFRoZXJlIHdvdWxkCj4gPj4JcG90ZW50aWFsbHkgYmUgYXMg bWFueSBoYW5nIGNoZWNrZXIgYW5kIGVycm9yIGhhbmRsaW5nIHRocmVhZHMgZ29pbmcgb24KPiA+ Pgljb25jdXJyZW50bHkgYXMgdGhlcmUgYXJlIGVuZ2luZXMgaW4gdGhlIGhhcmR3YXJlIGJ1dCB0 aGV5IHdvdWxkIGFsbCBiZQo+ID4+CXJ1bm5pbmcgaW4gcGFyYWxsZWwgd2l0aG91dCBhbnkgc2ln bmlmaWNhbnQgbG9ja2luZy4gVGhlIGZpcnN0IHRpbWUKPiA+Pgl3aGVyZSBhbnkgdGhyZWFkIG5l ZWRzIGV4Y2x1c2l2ZSBhY2Nlc3MgdG8gdGhlIGRyaXZlciBpcyBhdCB0aGUgcG9pbnQKPiA+Pglv ZiB0aGUgYWN0dWFsIGhhbmcgcmVjb3ZlcnkgYnV0IHRoZSB0aW1lIGl0IHRha2VzIHRvIGdldCB0 aGVyZSB3b3VsZAo+ID4+CXRoZW9yZXRpY2FsbHkgYmUgbG93ZXIgYW5kIHRoZSB0aW1lIGl0IGFj dHVhbGx5IHRha2VzIHRvIGRvIHBlci1lbmdpbmUKPiA+PgloYW5nIHJlY292ZXJ5IGlzIHF1aXRl IGEgbG90IGxvd2VyIHRoYW4gdGhlIHRpbWUgaXQgdGFrZXMgdG8gYWN0dWFsbHkKPiA+PglkZXRl Y3QgYSBoYW5nIHJlbGlhYmx5Lgo+ID4+Cj4gPj4JSG93IG11Y2ggd2Ugd291bGQgc2F2ZSBieSBz dWNoIGEgY2hhbmdlIHN0aWxsIG5lZWRzIHRvIGJlIGFuYWx5c2VkIGFuZAo+ID4+CWNvbXBhcmVk IGFnYWluc3QgdGhlIGN1cnJlbnQgc2luZ2xlLXRocmVhZCBtb2RlbCBidXQgaXQgbWFrZXMgc2Vu c2UKPiA+Pglmcm9tIGEgdGhlb3JldGljYWwgZGVzaWduIHBvaW50IG9mIHZpZXcuCj4gPj4KPiA+ PgkyLiBIb3cgZG9lcyBwZXItZW5naW5lIHJlc2V0IGludGVncmF0ZSB3aXRoIHRoZSBwdWJsaWMg cmVzZXQgc3RhdHMKPiA+PglJT0NUTD8gVGhlc2Ugc3RhdHMgYXJlIHVzZWQgZm9yIHRoZSBHTCBy b2J1c3RuZXNzIGludGVyZmFjZSBhbmQKPiA+PgljdXJyZW50bHkgdGhlc2UgdGVzdHMgYXJlIGZh aWxpbmcgd2hlbiBydW5uaW5nIHBlci1lbmdpbmUgaGFuZyByZWNvdmVyeQo+ID4+CXNpbmNlIHdl IHRyZWF0IHBlci1lbmdpbmUgcmVjb3ZlcnkgZGlmZmVyZW50bHkgZnJvbSBmdWxsIEdQVSByZWNv dmVyeSwKPiA+Pgl3aGljaCBpcyBub3RoaW5nIHRoYXQgdXNlcmxhbmQga25vd3MgYW55dGhpbmcg YWJvdXQuIFdoZW4gdXNlcmxhbmQKPiA+PglleHBlY3RzIHRvIGhhbmcgdGhlIGhhcmR3YXJlIGl0 IGV4cGVjdHMgdGhlIHJlc2V0IHN0YXQgaW50ZXJmYWNlIHRvCj4gPj4JcmVmbGVjdCB0aGlzLCB3 aGljaCBpcyBzb21ldGhpbmcgdGhhdCBoYXMgY2hhbmdlZCBhcyBwYXJ0IG9mIHRoaXMgY29kZQo+ ID4+CXN1Ym1pc3Npb24uIFRoZXJlJ3MgbW9yZSB0aGFuIG9uZSB3YXkgdG8gc29sdmUgdGhpcy4g SGVyZSBhcmUgdHdvIG9wdGlvbnM6Cj4gPj4KPiA+PgkJMS4gRXhwb3NlIHBlci1lbmdpbmUgcmVz ZXQgc3RhdGlzdGljcyBhbmQgc2V0IGNvbnRleHRzIGFzCj4gPj4JCWd1aWx0eSB0aGUgc2FtZSB3 YXkgZm9yIHBlci1lbmdpbmUgcmVzZXQgYXMgZm9yIGZ1bGwgR1BVCj4gPj4JCXJlc2V0cy4KPiA+ Pgo+ID4+CQlUaGF0IHdvdWxkIG1ha2UgdGhpcyBjaGFuZ2UgdG8gdGhlIGhhbmcgcmVjb3Zlcnkg bWVjaGFuaXNtCj4gPj4JCXRyYW5zcGFyZW50IHRvIHVzZXJsYW5kIGJ1dCBpdCB3b3VsZCBjaGFu Z2UgdGhlIHNlbWFudGljcyBzaW5jZQo+ID4+CQlhbiBhY3RpdmUgY29udGV4dCBpbiB0aGUgcmVz ZXQgc3RhdHMgbm8gbG9uZ2VyIGltcGxpZXMgdGhhdCB0aGUKPiA+PgkJR1BVIHdhcyBmdWxseSBy ZXNldC4KPiA+Pgo+ID4+CQkyLiBBZGQgYSBuZXcgc2V0IG9mIHN0YXRpc3RpY3MgZm9yIHBlci1l bmdpbmUgcmVzZXQgKG9uZSBncm91cAo+ID4+CQlvZiBzdGF0aXN0aWNzIGZvciBlYWNoIGVuZ2lu ZSkgdG8gcmVmbGVjdCB0aGUgZXh0ZW5kZWQKPiA+PgkJY2FwYWJpbGl0aWVzIHRoYXQgcGVyLWVu Z2luZSBoYW5nIHJlY292ZXJ5IG9mZmVycy4KPiA+Pgo+ID4+CQlXb3VsZCB0aGF0IGJlIGJyZWFr aW5nIHRoZSBBQkk/Cj4gPj4KPiA+PgkJLi4uIE9yIGFyZSB0aGVyZSBhbnkgb3RoZXIgd2F5IG9m IGRvaW5nIHRoaXM/Cj4gPj4KPiA+PiogRmVhdHVyZSAyOiBXYXRjaGRvZyBUaW1lb3V0IChhLmsu YSAibWVkaWEgZW5naW5lIHJlc2V0IikgZm9yIGdlbjguCj4gPj4KPiA+PlRoaXMgZmVhdHVyZSBh bGxvd3MgdXNlcmxhbmQgYXBwbGljYXRpb25zIHRvIGNvbnRyb2wgd2hldGhlciBvciBub3QgaW5k aXZpZHVhbAo+ID4+YmF0Y2ggYnVmZmVycyBzaG91bGQgaGF2ZSBhIGZpcnN0LWxldmVsLCBmaW5l LWdyYWluZWQsIGhhcmR3YXJlLWJhc2VkIGhhbmcKPiA+PmRldGVjdGlvbiBtZWNoYW5pc20gb24g dG9wIG9mIHRoZSBvcmRpbmFyeSwgc29mdHdhcmUtYmFzZWQgcGVyaW9kaWMgaGFuZwo+ID4+Y2hl Y2tlciB0aGF0IGlzIGFscmVhZHkgaW4gdGhlIGRyaXZlci4gVGhlIGFkdmFudGFnZSBvdmVyIHJl bHlpbmcgc29sZWx5IG9uIHRoZQo+ID4+Y3VycmVudCBzb2Z0d2FyZS1iYXNlZCBoYW5nIGNoZWNr ZXIgaXMgdGhhdCB0aGUgd2F0Y2hkb2cgdGltZW91dCBtZWNoYW5pc20gaXMKPiA+PmFib3V0IDEw MDB4IHF1aWNrZXIgYW5kIG1vcmUgcHJlY2lzZS4gU2luY2UgaXQncyBub3QgYSBmdWxsIGRyaXZl ci1sZXZlbCBoYW5nCj4gPj5kZXRlY3Rpb24gbWVjaGFuaXNtIGJ1dCBvbmx5IHRhcmdldHRpbmcg b25lIGluZGl2aWR1YWwgYmF0Y2ggYnVmZmVyIGF0IGEgdGltZQo+ID4+aXQgY2FuIGFmZm9yZCB0 byBiZSB0aGF0IHF1aWNrIHdpdGhvdXQgcmlza2luZyBhbiBpbmNyZWFzZSBpbiBmYWxzZSBwb3Np dGl2ZQo+ID4+aGFuZyBkZXRlY3Rpb24uCj4gPj4KPiA+PlRoaXMgZmVhdHVyZSBpbmNsdWRlcyB0 aGUgZm9sbG93aW5nIGNoYW5nZXM6Cj4gPj4KPiA+PmEpIFdhdGNoZG9nIHRpbWVvdXQgaW50ZXJy dXB0IHNlcnZpY2Ugcm91dGluZSBmb3IgaGFuZGxpbmcgd2F0Y2hkb2cgaW50ZXJydXB0cwo+ID4+ YW5kIGNvbm5lY3RpbmcgdGhlc2UgdG8gcGVyLWVuZ2luZSBoYW5nIHJlY292ZXJ5Lgo+ID4+Cj4g Pj5iKSBJbmplY3Rpb24gb2Ygd2F0Y2hkb2cgdGltZXIgZW5hYmxlbWVudC9jYW5jZWxsYXRpb24g aW5zdHJ1Y3Rpb25zCj4gPj5iZWZvcmUvYWZ0ZXIgdGhlIGJhdGNoIGJ1ZmZlciBzdGFydCBpbnN0 cnVjdGlvbiBpbiB0aGUgcmluZyBidWZmZXIgc28gdGhhdAo+ID4+d2F0Y2hkb2cgdGltZW91dCBp cyBjb25uZWN0ZWQgdG8gdGhlIHN1Ym1pc3Npb24gb2YgYW4gaW5kaXZpZHVhbCBiYXRjaCBidWZm ZXIuCj4gPj4KPiA+PmMpIEV4dGVuc2lvbiBvZiB0aGUgRFJNIGJhdGNoIGJ1ZmZlciBpbnRlcmZh Y2UsIGV4cG9zaW5nIHRoZSB3YXRjaGRvZyB0aW1lb3V0Cj4gPj5mZWF0dXJlIHRvIHVzZXJsYW5k LiBXZSd2ZSBnb3QgdHdvIG9wZW4gc291cmNlIGdyb3VwcyBpbiBWUEcgY3VycmVudGx5IGluIHRo ZQo+ID4+cHJvY2VzcyBvZiBpbnRlZ3JhdGluZyBzdXBwb3J0IGZvciB0aGlzIGZlYXR1cmUsIHdo aWNoIHNob3VsZCBtYWtlIGl0Cj4gPj5wcmluY2lwYWxseSBwb3NzaWJsZSB0byB1cHN0cmVhbSB0 aGlzIGV4dGVuc2lvbi4KPiA+Pgo+ID4+VGhlcmUgaXMgY3VycmVudGx5IGZ1bGwgd2F0Y2hkb2cg dGltZW91dCBzdXBwb3J0IGZvciBnZW43IGluIEdNSU4gYW5kIGl0IGlzCj4gPj5xdWl0ZSBzaW1p bGFyIHRvIHRoZSBnZW44IGltcGxlbWVudGF0aW9uIHNvIHRoZXJlIGlzIG5vdGhpbmcgb2J2aW91 cyB0aGF0Cj4gPj5wcmV2ZW50cyB1cyBmcm9tIHVwc3RyZWFtaW5nIHRoYXQgY29kZSBhbG9uZyB3 aXRoIHRoZSBnZW44IGNvZGUuIEhvd2V2ZXIsCj4gPj53YXRjaGRvZyB0aW1lb3V0IGlzIGZ1bGx5 IGRlcGVuZGVudCBvbiB0aGUgcGVyLWVuZ2luZSBoYW5nIHJlY292ZXJ5IHBhdGggYW5kCj4gPj50 aGF0IGlzIG5vdCBwYXJ0IG9mIHRoaXMgY29kZSBzdWJtaXNzaW9uIGZvciBnZW43LiBUaGVyZWZv cmUgd2F0Y2hkb2cgdGltZW91dAo+ID4+c3VwcG9ydCBmb3IgZ2VuNyBoYXMgYmVlbiBleGNsdWRl ZCB1bnRpbCBwZXItZW5naW5lIGhhbmcgcmVjb3Zlcnkgc3VwcG9ydCBmb3IKPiA+PmdlbjcgaGFz IGxhbmRlZCB1cHN0cmVhbS4KPiA+Pgo+ID4+QXMgcGFydCBvZiB0aGlzIHN1Ym1pc3Npb24gd2Un dmUgaGFkIHRvIHJlaW5zdGF0ZSB0aGUgd29yayBxdWV1ZSB0aGF0IHdhcwo+ID4+cHJldmlvdXNs eSBpbiBwbGFjZSBiZXR3ZWVuIHRoZSBlcnJvciBoYW5kbGVyIGFuZCB0aGUgaGFuZyByZWNvdmVy eSBwYXRoLiBUaGUKPiA+PnJlYXNvbiBmb3IgdGhpcyBpcyB0aGF0IHRoZSBwZXItZW5naW5lIHJl Y292ZXJ5IHBhdGggaXMgY2FsbGVkIGRpcmVjdGx5IGZyb20KPiA+PnRoZSBpbnRlcnJ1cHQgaGFu ZGxlciBpbiB0aGUgY2FzZSBvZiB3YXRjaGRvZyB0aW1lb3V0LiBJbiB0aGF0IHNpdHVhdGlvbgo+ ID4+dGhlcmUncyBubyB3YXkgb2YgZ3JhYmJpbmcgdGhlIHN0cnVjdF9tdXRleCwgd2hpY2ggaXMg YSByZXF1aXJlbWVudCBmb3IgdGhlCj4gPj5oYW5nIHJlY292ZXJ5IHBhdGguIFRoZXJlZm9yZSwg YnkgcmVpbnN0YXRpbmcgdGhlIHdvcmsgcXVldWUgd2UgcHJvdmlkZSBhCj4gPj51bmlmaWVkIGV4 ZWN1dGlvbiBjb250ZXh0IGZvciB0aGUgaGFuZyByZWNvdmVyeSBjb2RlIHRoYXQgYWxsb3dzIHRo ZSBoYW5nCj4gPj5yZWNvdmVyeSBjb2RlIHRvIGdyYWIgd2hhdGV2ZXIgbG9ja3MgaXQgbmVlZHMg d2l0aG91dCBzYWNyaWZpY2luZyBpbnRlcnJ1cHQKPiA+PmxhdGVuY3kgdG9vIG11Y2ggb3Igc2xl ZXBpbmcgaW5kZWZpbml0ZWx5IGluIGhhcmQgaW50ZXJydXB0IGNvbnRleHQuCj4gPj4KPiA+Piog RmVhdHVyZSAzLiBDb250ZXh0IFN1Ym1pc3Npb24gU3RhdHVzIENvbnNpc3RlbmN5IGNoZWNraW5n Cj4gPj4KPiA+PlNvbWV0aGluZyB0aGF0IGJlY29tZXMgYXBwYXJlbnQgd2hlbiB5b3UgcnVuIGxv bmctZHVyYXRpb24gb3BlcmF0aW9ucyB0ZXN0cwo+ID4+d2l0aCBjb25jdXJyZW50IHJlbmRlcmlu ZyBwcm9jZXNzZXMgd2l0aCBpbnRlcm1pdHRlbnRseSBpbmplY3RlZCBoYW5ncyBpcyB0aGF0Cj4g Pj5pdCBzZWVtcyBsaWtlIHRoZSBHUFUgZm9yZ2V0cyB0byBzZW5kIGNvbnRleHQgY29tcGxldGlv biBpbnRlcnJ1cHRzIHRvIHRoZQo+ID4+ZHJpdmVyIHVuZGVyIHNvbWUgY2lyY3Vtc3RhbmNlcy4g V2hhdCB0aGlzIG1lYW5zIGlzIHRoYXQgdGhlIGRyaXZlciBzb21ldGltZXMKPiA+PmdldHMgc3R1 Y2sgb24gYSBjb250ZXh0IHRoYXQgbmV2ZXIgc2VlbXMgdG8gZmluaXNoLCBhbGwgdGhlIHdoaWxl IHRoZSBoYXJkd2FyZQo+ID4+aGFzIGNvbXBsZXRlZCBhbmQgaXMgd2FpdGluZyBmb3IgbW9yZSB3 b3JrLgo+ID4+Cj4gPj5UaGUgcHJvYmxlbSB3aXRoIHRoaXMgaXMgdGhhdCB0aGUgcGVyLWVuZ2lu ZSBoYW5nIHJlY292ZXJ5IHBhdGggcmVsaWVzIG9uCj4gPj5jb250ZXh0IHJlc3VibWlzc2lvbiB0 byBraWNrIG9mZiB0aGUgaGFyZHdhcmUgYWdhaW4gZm9sbG93aW5nIGFuIGVuZ2luZSByZXNldC4K PiA+PlRoaXMgY2FuIG9ubHkgYmUgZG9uZSBzYWZlbHkgaWYgdGhlIGhhcmR3YXJlIGFuZCBkcml2 ZXIgc2hhcmUgdGhlIHNhbWUgb3Bpbmlvbgo+ID4+YWJvdXQgdGhlIGN1cnJlbnQgc3RhdGUuIFRo ZXJlZm9yZSB3ZSd2ZSBleHRlbmRlZCB0aGUgcGVyaW9kaWMgaGFuZyBjaGVja2VyIHRvCj4gPj5j aGVjayBmb3IgY29udGV4dCBzdWJtaXNzaW9uIHN0YXRlIGluY29uc2lzdGVuY2llcyBhc2lkZSBm cm9tIHRoZSBoYW5nIGNoZWNraW5nCj4gPj5pdCBhbHJlYWR5IGRvZXMuCj4gPj4KPiA+PklmIHN1 Y2ggYSBzdGF0ZSBpcyBkZXRlY3RlZCBpdCBpcyBhc3N1bWVkIChiYXNlZCBvbiBleHBlcmllbmNl KSB0aGF0IGEgY29udGV4dAo+ID4+Y29tcGxldGlvbiBpbnRlcnJ1cHQgaGFzIGJlZW4gbG9zdCBz b21laG93LiBJZiB0aGlzIHN0YXRlIHBlcnNpc3RzIGZvciBzb21lCj4gPj50aW1lIGFuIGF0dGVt cHQgdG8gY29ycmVjdCBpdCBpcyBtYWRlIGJ5IGZha2luZyB0aGUgcHJlc3VtYWJseSBsb3N0IGNv bnRleHQKPiA+PmNvbXBsZXRpb24gaW50ZXJydXB0IGJ5IG1hbnVhbGx5IGNhbGxpbmcgdGhlIGV4 ZWNsaXN0IGludGVycnVwdCBoYW5kbGVyLCB3aGljaAo+ID4+aXMgbm9ybWFsbHkgY2FsbGVkIGZy b20gdGhlIG1haW4gaW50ZXJydXB0IGhhbmRsZXIgY3VlZCBieSBhIHJlY2VpdmVkIGNvbnRleHQK PiA+PmV2ZW50IGludGVycnVwdC4gSnVzdCBiZWNhdXNlIGFuIGludGVycnVwdCBnb2VzIG1pc3Np bmcgZG9lcyBub3QgbWVhbiB0aGF0IHRoZQo+ID4+Y29udGV4dCBzdGF0dXMgYnVmZmVyIChDU0Ip IGRvZXMgbm90IGdldCBhcHByb3ByaWF0ZWx5IHVwZGF0ZWQgYnkgdGhlIGhhcmR3YXJlLAo+ID4+ d2hpY2ggbWVhbnMgdGhhdCB3ZSBjYW4gZXhwZWN0IHRvIGZpbmQgYWxsIHRoZSByZWNlbnQgY2hh bmdlcyB0byB0aGUgY29udGV4dAo+ID4+c3RhdGVzIGZvciBlYWNoIGVuZ2luZSBjYXB0dXJlZCB0 aGVyZS4gSWYgdGhlcmUgYXJlIG91dHN0YW5kaW5nIGNvbnRleHQgc3RhdHVzCj4gPj5jaGFuZ2Vz IGluIHN0b3JlIHRoZXJlIHRoZW4gdGhlIGZha2VkIGNvbnRleHQgZXZlbnQgaW50ZXJydXB0IHdp bGwgYWxsb3cgdGhlCj4gPj5pbnRlcnJ1cHQgaGFuZGxlciB0byBhY3Qgb24gdGhlbS4gSW4gdGhl IGNhc2Ugb2YgbG9zdCBjb250ZXh0IGNvbXBsZXRpb24KPiA+PmludGVycnVwdHMgdGhpcyB3aWxs IHByb21wdCB0aGUgZHJpdmVyIHRvIHJlbW92ZSB0aGUgYWxyZWFkeSBjb21wbGV0ZWQgY29udGV4 dAo+ID4+ZnJvbSB0aGUgZXhlY2xpc3QgcXVldWUgYW5kIG1vdmUgb24gdG8gdGhlIG5leHQgcGVu ZGluZyBwaWVjZSBvZiB3b3JrIGFuZAo+ID4+dGhlcmVieSBlbGltaW5hdGluZyB0aGUgaW5jb25z aXN0ZW5jeS4KPiA+Pgo+ID4+KiBGZWF0dXJlIDQuIERlYnVnZnMgZXh0ZW5zaW9ucyBmb3IgcGVy LWVuZ2luZSBoYW5nIHJlY292ZXJ5IGFuZCBURFIvd2F0Y2hkb2cgdHJhY2UKPiA+PnBvaW50cy4K PiA+Pgo+ID4+Cj4gPj5Ub21hcyBFbGYgKDExKToKPiA+PiAgIGRybS9pOTE1OiBFYXJseSBleGl0 IGZyb20gc2VtYXBob3JlX3dhaXRzX2ZvciBmb3IgZXhlY2xpc3QgbW9kZS4KPiA+PiAgIGRybS9p OTE1OiBJbnRyb2R1Y2UgdWV2ZW50IGZvciBmdWxsIEdQVSByZXNldC4KPiA+PiAgIGRybS9pOTE1 OiBBZGQgcmVzZXQgc3RhdHMgZW50cnkgcG9pbnQgZm9yIHBlci1lbmdpbmUgcmVzZXQuCj4gPj4g ICBkcm0vaTkxNTogQWRkaW5nIFREUiAvIHBlci1lbmdpbmUgcmVzZXQgc3VwcG9ydCBmb3IgZ2Vu OC4KPiA+PiAgIGRybS9pOTE1OiBFeHRlbmRpbmcgaTkxNV9nZW1fY2hlY2tfd2VkZ2UgdG8gY2hl Y2sgZW5naW5lIHJlc2V0IGluCj4gPj4gICAgIHByb2dyZXNzCj4gPj4gICBkcm0vaTkxNTogRGlz YWJsZSB3YXJuaW5ncyBmb3IgVERSIGludGVycnVwdGlvbnMgaW4gdGhlIGRpc3BsYXkKPiA+PiAg ICAgZHJpdmVyLgo+ID4+ICAgZHJtL2k5MTU6IFJlaW5zdGF0ZSBoYW5nIHJlY292ZXJ5IHdvcmsg cXVldWUuCj4gPj4gICBkcm0vaTkxNTogV2F0Y2hkb2cgdGltZW91dCBzdXBwb3J0IGZvciBnZW44 Lgo+ID4+ICAgZHJtL2k5MTU6IEZha2UgbG9zdCBjb250ZXh0IGludGVycnVwdHMgdGhyb3VnaCBm b3JjZWQgQ1NCIGNoZWNrLgo+ID4+ICAgZHJtL2k5MTU6IERlYnVnZnMgaW50ZXJmYWNlIGZvciBw ZXItZW5naW5lIGhhbmcgcmVjb3ZlcnkuCj4gPj4gICBkcm0vaTkxNTogVERSL3dhdGNoZG9nIHRy YWNlIHBvaW50cy4KPiA+Pgo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMu YyAgICAgfCAgMTQ2ICsrKysrLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5j ICAgICAgICAgfCAgIDc5ICsrKwo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5j ICAgICAgICAgfCAgMjAxICsrKysrKysrCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmggICAgICAgICB8ICAgOTEgKysrLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jICAgICAgICAgfCAgIDkzICsrKy0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9ncHVfZXJyb3IuYyAgIHwgICAgMiArLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2lycS5jICAgICAgICAgfCAgMzc4ICsrKysrKysrKysrKy0tCj4gPj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcGFyYW1zLmMgICAgICB8ICAgMTAgKwo+ID4+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3JlZy5oICAgICAgICAgfCAgIDEzICsKPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV90cmFjZS5oICAgICAgIHwgIDI5OCArKysrKysrKysrKwo+ID4+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgICAgfCAgIDE2ICstCj4gPj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8ICA4NTggKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaCAgICAgICAg fCAgIDE2ICstCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyY190ZHIuaCAgICB8 ICAgNDAgKysKPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIHwg ICA4NyArKystCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCB8 ICAxMDkgKysrKwo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYyAgICAg fCAgMjQxICsrKysrKysrLQo+ID4+ICBpbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggICAgICAg ICAgICAgfCAgICA1ICstCj4gPj4gIDE4IGZpbGVzIGNoYW5nZWQsIDI1ODkgaW5zZXJ0aW9ucygr KSwgOTQgZGVsZXRpb25zKC0pCj4gPj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9scmNfdGRyLmgKPiA+Pgo+ID4+LS0KPiA+PjEuNy45LjUKPiA+Pgo+ID4+ X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+PkludGVs LWdmeCBtYWlsaW5nIGxpc3QKPiA+PkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiA+ Pmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK PiA+Cj4gCgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9y YXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK