From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [Mesa-dev] [PATCH] drm/i915: Enable the HiZ RAW Stall Optimization on Gen8. Date: Tue, 13 Jan 2015 22:03:04 +0200 Message-ID: <20150113200304.GL10649@intel.com> References: <1420944289-832-1-git-send-email-kenneth@whitecape.org> <3086167.N74lbW7sKX@vakarian> <20150112014609.GA1677@bwidawsk.net> <2114285.mhhyazVrFM@vakarian> <20150112031456.GB2594@bwidawsk.net> <20150112120234.GD10649@intel.com> <20150112180235.GA7733@bwidawsk.net> <54B40DC8.2050207@intel.com> <20150113020725.GB31072@bwidawsk.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id A94BA6E12D for ; Tue, 13 Jan 2015 12:03:15 -0800 (PST) Content-Disposition: inline In-Reply-To: <20150113020725.GB31072@bwidawsk.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ben Widawsky Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBKYW4gMTIsIDIwMTUgYXQgMDY6MDc6MjZQTSAtMDgwMCwgQmVuIFdpZGF3c2t5IHdy b3RlOgo+IE9uIE1vbiwgSmFuIDEyLCAyMDE1IGF0IDA2OjA5OjEyUE0gKzAwMDAsIERhdmUgR29y ZG9uIHdyb3RlOgo+ID4gT24gMTIvMDEvMTUgMTg6MDIsIEJlbiBXaWRhd3NreSB3cm90ZToKPiA+ ID4gT24gTW9uLCBKYW4gMTIsIDIwMTUgYXQgMDI6MDI6MzRQTSArMDIwMCwgVmlsbGUgU3lyasOk bMOkIHdyb3RlOgo+ID4gPj4gT24gU3VuLCBKYW4gMTEsIDIwMTUgYXQgMDc6MTQ6NTdQTSAtMDgw MCwgQmVuIFdpZGF3c2t5IHdyb3RlOgo+ID4gPj4+IE9uIFN1biwgSmFuIDExLCAyMDE1IGF0IDA3 OjA1OjIxUE0gLTA4MDAsIEtlbm5ldGggR3JhdW5rZSB3cm90ZToKPiA+ID4+Pj4gT24gU3VuZGF5 LCBKYW51YXJ5IDExLCAyMDE1IDA1OjQ2OjA5IFBNIEJlbiBXaWRhd3NreSB3cm90ZToKPiA+ID4+ Pj4+IE9uIFN1biwgSmFuIDExLCAyMDE1IGF0IDA0OjA1OjI1UE0gLTA4MDAsIEtlbm5ldGggR3Jh dW5rZSB3cm90ZToKPiA+ID4+Pj4+PiBPbiBTdW5kYXksIEphbnVhcnkgMTEsIDIwMTUgMDE6NDk6 NDEgUE0gQmVuIFdpZGF3c2t5IHdyb3RlOgo+ID4gPj4+Pj4+PiBPbiBTYXQsIEphbiAxMCwgMjAx NSBhdCAwNjo0NDo0OVBNIC0wODAwLCBLZW5uZXRoIEdyYXVua2Ugd3JvdGU6Cj4gPiA+Pj4+Pj4+ PiBUaGlzIGlzIGFuIGltcG9ydGFudCBvcHRpbWl6YXRpb24gZm9yIGF2b2lkaW5nIHJlYWQtYWZ0 ZXItd3JpdGUgKFJBVykKPiA+ID4+Pj4+Pj4+IHN0YWxscyBpbiB0aGUgSGlaIGJ1ZmZlci4gIENl cnRhaW4gd29ya2xvYWRzIHdvdWxkIHJ1biB2ZXJ5IHNsb3dseSB3aXRoCj4gPiA+Pj4+Pj4+PiBI aVogZW5hYmxlZCwgYnV0IHJ1biBtdWNoIGZhc3RlciB3aXRoIHRoZSAiaGl6PWZhbHNlIiBkcmlj b25mIG9wdGlvbi4KPiA+ID4+Pj4+Pj4+IFdpdGggdGhpcyBwYXRjaCwgdGhleSBydW4gYXQgZnVs bCBzcGVlZCBldmVuIHdpdGggSGlaLgo+ID4gPj4+Pj4+Pj4KPiA+ID4+Pj4+Pj4+IEltcHJvdmVz IHBlcmZvcm1hbmNlIGluIE9nbFZTSW5zdGFuY2luZyBieSAzLjJ4IG9uIEJyb2Fkd2VsbCBHVDNl Cj4gPiA+Pj4+Pj4+PiAoSXJpcyBQcm8gNjIwMCkuCj4gPiA+Pj4+Pj4+Pgo+ID4gPj4+Pj4+Pj4g VGhhbmtzIHRvIEplc3NlIEJhcm5lcyBmb3IgZmluZGluZyB0aGlzIG1pc3NpbmcgYml0IQo+ID4g Pj4+Pj4+Pj4gVGhhbmtzIHRvIENocmlzIFdpbHNvbiBmb3IgaGVscGluZyBtZSBmaW5kIHdoZXJl IHRvIHNldCBpdC4KPiA+ID4+Pj4+Pj4+Cj4gPiA+Pj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBLZW5u ZXRoIEdyYXVua2UgPGtlbm5ldGhAd2hpdGVjYXBlLm9yZz4KPiA+ID4+Pj4+Pj4+IENjOiBKZXNz ZSBCYXJuZXMgPGpiYXJuZXNAdmlydHVvdXNnZWVrLm9yZz4KPiA+ID4+Pj4+Pj4+IC0tLQo+ID4g Pj4+Pj4+Pj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyB8IDE1ICsr KysrKysrKysrKysrKwo+ID4gPj4+Pj4+Pj4gIDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25z KCspCj4gPiA+Pj4+Pj4+Pgo+ID4gPj4+Pj4+Pj4gSGVyZSdzIGFuIGFsdGVybmF0ZSBwYXRjaCB3 aGljaCBpbXBsZW1lbnRzIHRoZSB3b3JrYXJvdW5kIGluIHRoZSBrZXJuZWwKPiA+ID4+Pj4+Pj4+ IGluc3RlYWQgb2YgTWVzYS4gIEl0J3MgcHJvYmFibHkgYmV0dGVyIHRvIGRvIGl0IHRoZXJlLCBz aW5jZSB0aGUga2VybmVsCj4gPiA+Pj4+Pj4+PiBkb2VzIGl0IG9uIEhhc3dlbGwgYWxyZWFkeS4K PiA+ID4+Pj4+Pj4+Cj4gPiA+Pj4+Pj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1 ZmZlci5jCj4gPiA+Pj4+Pj4+PiBpbmRleCBkYWJjMWQ4Li4yMzAyMGQ2IDEwMDY0NAo+ID4gPj4+ Pj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCj4gPiA+ Pj4+Pj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKPiA+ ID4+Pj4+Pj4+IEBAIC03OTYsNiArNzk2LDE2IEBAIHN0YXRpYyBpbnQgYmR3X2luaXRfd29ya2Fy b3VuZHMoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKPiA+ID4+Pj4+Pj4+ICAJCQkgIEhE Q19ET05PVF9GRVRDSF9NRU1fV0hFTl9NQVNLRUQgfAo+ID4gPj4+Pj4+Pj4gIAkJCSAgKElTX0JE V19HVDMoZGV2KSA/IEhEQ19GRU5DRV9ERVNUX1NMTV9ESVNBQkxFIDogMCkpOwo+ID4gPj4+Pj4+ Pj4gIAo+ID4gPj4+Pj4+Pj4gKwkvKiBGcm9tIHRoZSBIYXN3ZWxsIFBSTSwgQ29tbWFuZCBSZWZl cmVuY2U6IFJlZ2lzdGVycywgQ0FDSEVfTU9ERV8wOgo+ID4gPj4+Pj4+Pj4gKwkgKiAiVGhlIEhp ZXJhcmNoaWNhbCBaIFJBVyBTdGFsbCBPcHRpbWl6YXRpb24gYWxsb3dzIG5vbi1vdmVybGFwcGlu Zwo+ID4gPj4+Pj4+Pj4gKwkgKiAgcG9seWdvbnMgaW4gdGhlIHNhbWUgOHg0IHBpeGVsL3NhbXBs ZSBhcmVhIHRvIGJlIHByb2Nlc3NlZCB3aXRob3V0Cj4gPiA+Pj4+Pj4+PiArCSAqICBzdGFsbGlu ZyB3YWl0aW5nIGZvciB0aGUgZWFybGllciBvbmVzIHRvIHdyaXRlIHRvIEhpZXJhcmNoaWNhbCBa Cj4gPiA+Pj4+Pj4+PiArCSAqICBidWZmZXIuIgo+ID4gPj4+Pj4+Pj4gKwkgKgo+ID4gPj4+Pj4+ Pj4gKwkgKiBUaGlzIG9wdGltaXphdGlvbiBpcyBvZmYgYnkgZGVmYXVsdCBmb3IgQnJvYWR3ZWxs OyB0dXJuIGl0IG9uLgo+ID4gPj4+Pj4+Pj4gKwkgKi8KPiA+ID4+Pj4+Pj4+ICsJV0FfQ0xSX0JJ VF9NQVNLRUQoQ0FDSEVfTU9ERV8wX0dFTjcsIEhJWl9SQVdfU1RBTExfT1BUX0RJU0FCTEUpOwo+ ID4gPj4+Pj4+Pj4gKwo+ID4gPj4+Pj4+Pj4gIAkvKiBXYTR4NFNUQ09wdGltaXphdGlvbkRpc2Fi bGU6YmR3ICovCj4gPiA+Pj4+Pj4+PiAgCVdBX1NFVF9CSVRfTUFTS0VEKENBQ0hFX01PREVfMSwK PiA+ID4+Pj4+Pj4+ICAJCQkgIEdFTjhfNHg0X1NUQ19PUFRJTUlaQVRJT05fRElTQUJMRSk7Cj4g PiA+Pj4+Pj4+PiBAQCAtODM2LDYgKzg0NiwxMSBAQCBzdGF0aWMgaW50IGNodl9pbml0X3dvcmth cm91bmRzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCj4gPiA+Pj4+Pj4+PiAgCQkJICBI RENfRk9SQ0VfTk9OX0NPSEVSRU5UIHwKPiA+ID4+Pj4+Pj4+ICAJCQkgIEhEQ19ET05PVF9GRVRD SF9NRU1fV0hFTl9NQVNLRUQpOwo+ID4gPj4+Pj4+Pj4gIAo+ID4gPj4+Pj4+Pj4gKwkvKiBBY2Nv cmRpbmcgdG8gdGhlIENBQ0hFX01PREVfMCBkZWZhdWx0IHZhbHVlIGRvY3VtZW50YXRpb24sIHNv bWUKPiA+ID4+Pj4+Pj4+ICsJICogQ0hWIHBsYXRmb3JtcyBkaXNhYmxlIHRoaXMgb3B0aW1pemF0 aW9uIGJ5IGRlZmF1bHQuICBUdXJuIGl0IG9uLgo+ID4gPj4+Pj4+Pj4gKwkgKi8KPiA+ID4+Pj4+ Pj4+ICsJV0FfQ0xSX0JJVF9NQVNLRUQoQ0FDSEVfTU9ERV8wX0dFTjcsIEhJWl9SQVdfU1RBTExf T1BUX0RJU0FCTEUpOwo+ID4gPj4+Pj4+Pj4gKwo+ID4gPj4+Pj4+Pj4gIAkvKiBJbXByb3ZlIEhp WiB0aHJvdWdocHV0IG9uIENIVi4gKi8KPiA+ID4+Pj4+Pj4+ICAJV0FfU0VUX0JJVF9NQVNLRUQo SElaX0NISUNLRU4sIENIVl9IWl84WDhfTU9ERV9JTl8xWCk7Cj4gPiA+Pj4+Pj4+PiAgCj4gPiA+ Pj4+Pj4+Cj4gPiA+Pj4+Pj4+IEkgdGhpbmsgeW91IHNob3VsZCBkbyB0aGlzIGFzIHR3byBzZXBh cmF0ZSBwYXRjaGVzLCAxIHBlciBwbGF0Zm9ybS4gRm9yIHRoZSBCU1cKPiA+ID4+Pj4+Pj4gcGF0 Y2ggKGdpdmVuIHRoYXQgSSBoYWQgdGhlIHNhbWUgZnVuY3Rpb25hbGl0eSBpbiB0aGUga2VybmVs IHBhdGNoIEkgYXNrZWQgeW91Cj4gPiA+Pj4+Pj4+IHRvIGxvb2sgYXQgOy0pIGFuZCBGV0lXLCBK b3JkYW4gaGFzIG51bWJlcnMgb24gQlNXIEItc3RlcCB3aXRoIG15IGtlcm5lbCBwYXRjaAo+ID4g Pj4+Pj4+PiB3aGljaCB3ZSBjYW4gdXNlIGZvciB0aGUgY29tbWl0KToKPiA+ID4+Pj4+Pj4gU2ln bmVkLW9mZi1ieTogQmVuIFdpZGF3c2t5IDxiZW5AYndpZGF3c2submV0Pgo+ID4gPj4+Pj4+Cj4g PiA+Pj4+Pj4gSHVoLCBJIGRvbid0IHJlY2FsbCBzZWVpbmcgdGhhdCBrZXJuZWwgcGF0Y2guICBT b3JyeS4gIEkgZ3Vlc3MgSSdsbCBzcGxpdCBpdAo+ID4gPj4+Pj4+IGFuZCByZXN1Ym1pdC4uLgo+ ID4gPj4+Pj4+Cj4gPiA+Pj4+Pgo+ID4gPj4+Pj4gSXQncyBub3QgbXkgY2FsbCwgaXQncyBqdXN0 IG5pY2UgdG8gaGF2ZSBwbGF0Zm9ybSBzcGVjaWZpYyBiaXNlY3Rpb24uIEFuZCB0aGUKPiA+ID4+ Pj4+IHBhdGNoIHdhc24ndCBvbiB0aGUgbGlzdCwgaXQgd2FzIHRoZSBvbmUgSSBrZXB0IGFza2lu ZyB5b3UgdG8gbG9vayBhdCBpbiBteQo+ID4gPj4+Pj4gYnJhbmNoIDotKQo+ID4gPj4+Pj4KPiA+ ID4+Pj4+Pj4gSSBoYXZlbid0IGxvb2tlZCBhdCBCcm9hZHdlbGwgZG9jcywgc28gSSdsbCBsZXQg c29tZW9uZSBlbHNlIHRha2UgY2FyZSBvZiB0aGF0Lgo+ID4gPj4+Pj4+Pgo+ID4gPj4+Pj4+PiBJ IGRvbid0IGtub3cgaWYgSSBhZ3JlZSB3aXRoIENocmlzIHRoYXQgd2Ugc2hvdWxkIGNhbGwgdGhl c2UgaW4gdGhlIHdvcmthcm91bmQKPiA+ID4+Pj4+Pj4gc2VjdGlvbiwgYnV0IHdoYXRldmVyLiBp bml0X2Nsb2NrX2dhdGluZyBpcyBlcXVhbGx5IHN1Y2t5Lgo+ID4gPj4+Pj4+Cj4gPiA+Pj4+Pj4g aW5pdF9jbG9ja19nYXRpbmcgZG9lc24ndCB3b3JrLiAgVGhlIHJlZ2lzdGVyIHdyaXRlcyBkb24n dCBzdGljayBhbmQgdGhleSBoYXZlCj4gPiA+Pj4+Pj4gbm8gZWZmZWN0IGF0IGFsbC4gIFNldHRp bmcgdGhlbSBoZXJlIG1ha2VzIHRoZW0gYWN0dWFsbHkgdGFrZSBlZmZlY3QgaW4gdGhlCj4gPiA+ Pj4+Pj4gY29udGV4dC4KPiA+ID4+Pj4+Pgo+ID4gPj4+Pj4+IC0tS2VuCj4gPiA+Pj4+Pgo+ID4g Pj4+Pj4gU2VwYXJhdGUgdGhyZWFkIG5vdywgYnV0IGFyZSB5b3Ugc3VyZT8gV2UncmUgc2V0dGlu ZyBhdCBsZWFzdCB0d28gY29udGV4dAo+ID4gPj4+Pj4gc3BlY2lmaWMgcmVnaXN0ZXJzIGluIHRo ZXJlIHRvZGF5LCBhbW9uZyB0aGVtOiBHRU43X0ZGX1RIUkVBRF9NT0RFICh3aGljaCBpcwo+ID4g Pj4+Pj4gaW1wb3J0YW50IHRvIHBlcmZvcm1hbmNlKS4KPiA+ID4+Pj4KPiA+ID4+Pj4gSXQgbG9v a3MgbGlrZSB3ZSdyZSBzZXR0aW5nOgo+ID4gPj4+PiAtIFtCRFddIFJDX1NMRUVQX1BTTUlfQ09O VFJPTCAtIDB4MjA1MAo+ID4gPj4+Cj4gPiA+Pj4gZHdvcmQgb2Zmc2V0IDB4MWMgaW4gdGhlIGNv bnRleHQgaW1hZ2UKPiA+ID4+Cj4gPiA+PiBwb3dlciBjb250ZXh0LCBub3QgbG9naWNhbCBjb250 ZXh0Cj4gPiA+Pgo+ID4gPj4+PiAtIFtCRFcsIENIVl0gRkZfVEhSRUFEX01PREUgLSAweDIwYTAK PiA+ID4+Pgo+ID4gPj4+IGR3b3JkIG9mZnNldCAweDJhIGluIHRoZSBjb250ZXh0IGltYWdlCj4g PiA+Pgo+ID4gPj4gQWxzbyBwb3dlciBjb250ZXh0Cj4gPiA+Pgo+ID4gPj4+PiAtIFtDSFZdIFJD X1NMRUVQX1BTTUlfQ09OVFJPTCAtIDB4MTIwNTAKPiA+ID4+Pgo+ID4gPj4+IEtpbmRhIHN1cnBy aXNlZCB0aGlzIG9uZSBpc24ndCB0aGVyZS4gSSdtIG5vdCBzdXJlIGhvdyBpdCBjYW4gd29yayBj b3JyZWN0bHkuCj4gPiA+Pgo+ID4gPj4gV2UncmUgbm90IGZyb2JiaW5nIHdpdGggdGhpcyBhbnl3 aGVyZSBidXQgZ2VuNl9ic2RfcmluZ193cml0ZV90YWlsKCkuIEluIGFueQo+ID4gPj4gY2FzZSBp dCdzIGEgVkNTIHJlZ2lzdGVyLiBTYWRseSBJJ3ZlIG5vdCBmb3VuZCBhbnkgZG9jdW1lbnRhdGlv biBmb3IgIVJDUwo+ID4gPj4gcG93ZXIgY29udGV4dCwgYnV0IEknbSBhc3N1bWluZyBldmVyeSBl bmdpbmUgaGFzIGEgcG93ZXIgY29udGV4dCBvZiBzb21lIHNvcnQuCj4gPiA+Pgo+ID4gPiAKPiA+ ID4gWWVhaCwgS2VuIGFuZCBJIHJlc29sdmVkIHRoaXMgb2ZmbGluZS4gQW55IGlkZWEgd2h5IHRo ZSBiaXRzIGRvbid0IHN0aWNrIHdoZW4KPiA+ID4gd3JpdHRlbiB2aWEgTU1JTz8KPiA+ID4gCj4g PiA+PiAtLSAKPiA+ID4+IFZpbGxlIFN5cmrDpGzDpAo+ID4gPj4gSW50ZWwgT1RDCj4gPiAKPiA+ IERvZXNuJ3QgQlNwZWMgc2F5IHdyaXRpbmcgdmlhIE1NSU8gaXMgdW5yZWxpYWJsZSBpZiB0aGUg ZW5naW5lIGlzCj4gPiBydW5uaW5nIChmb3Igc29tZSBkZWZpbml0aW9uIG9mICdydW5uaW5nJyk/ IERvIHRoZXkgc3RpY2sgZXZlbgo+ID4gdGVtcG9yYXJpbHk/IElmIHdlIHJlYWQgdGhlbSBiYWNr IGp1c3QgYWZ0ZXIgd3JpdGluZywgZG8gdGhlIE1NSU8KPiA+IHJlZ2lzdGVycyBoYXZlIHRoZSBl eHBlY3RlZCB2YWx1ZXM/IE9yIGFyZSB0aGV5IGxvc3Qgb25seSBhZnRlciBhCj4gPiBjb250ZXh0 IHN3aXRjaCAob3Igc29tZSBvdGhlciBldmVudCk/Cj4gPiAKPiA+IC5EYXZlLgo+ID4gCj4gCj4g SSBkb24ndCByZWNhbGwgZXZlciBzZWVpbmcgaXQncyBzYXlpbmcuIEFuZWNkb3RhbGx5LCBJJ3Zl IGhlYXJkIGEgV2luZG93cyBkcml2ZXIKPiBkZXZlbG9wZXIgc2F5IHRoYXQgb25jZS4gSSdtIG5v dCBzdXJlIHdoYXQgS2VuIGRpZCB0byB2ZXJpZnksIG15IGd1ZXNzIGlzIExSSQo+IGFmdGVyIHRo ZSBkcml2ZXIgd2FzIHJ1bm5pbmcuIFN1cmVseSBjZXJ0YWluIHJlZ2lzdGVycyBoYXZlIHRvIGJl IHJlbGlhYmxlIG9yCj4gdGhpbmdzIGxpa2UgdGFpbC9FTFNQIHdyaXRlcyB3b3VsZCBiZSBwcm9i bGVtYXRpYy4KPiAKPiBJIGhhdmUgcXVlc3Rpb25lZCBpZiB3ZSdyZSBkb2luZyB0aGlzIGF0IGFs bCBjb3JyZWN0bHkgZm9yIGV4ZWNsaXN0cyBpbiBhbgo+IGVhcmxpZXIgbWFpbDoKPiA+IFRoaW5r aW5nIG91dGxvdWQgLSB3aGF0J3MgdGhlIGRlZmF1bHQgc2V0dGluZyBmb3IgZXhlY2xpc3RzIG9u IEJEVyBub3c/ICBGb3IKPiA+IGV4ZWNsaXN0cyBteSBwbGFuICh3aGVuIGl0IHdhcyBteSBwbGFu IHRvIGhhdmUpIGhhZCBhbHdheXMgYmVlbiB0byBtYW51YWxseSBzZXQKPiA+IHRoZSByZWdpc3Rl ciBpbiB0aGUgY29udGV4dCBpbWFnZSBiZWZvcmUgbG9hZGluZyBpdC4gV2UgZG9uJ3QgZG8gdGhh dCB3aXRoIHRoZQo+ID4gZXhpc3RpbmcgY29kZSwgd2UgdXNlIHRoZSBvbGQgcmluZ2J1ZmZlciBz dHlsZSBvZiwgaG9wZSBpdCBwcmVzZXJ2ZXMgdGhlCj4gPiBjb250ZW50cy4gSSB3b25kZXIgaWYg dGhhdCdzIHRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIEhTVy4KPiAKPiBJZiB5b3UgZG8gbm90IGRv IGl0IHRoaXMgd2F5LCB0aGUgZmlyc3QgdGltZSB5b3UgbG9hZCB0aGUgY29udGV4dCB5b3Ugd2ls bCB3aXBlCj4gb3V0IGFueSBvZiB0aGUgY29udGV4dCBzYXZlL3Jlc3RvcmVkIHJlZ2lzdGVycyAo b2Ygd2hpY2ggQ0FDSEVfTU9ERV8wIGlzIG9uZSkuIEkKPiBkaWRuJ3QgbG9vayBhdCB0aGUgY29k ZSB0byBzZWUgaWYgd2UgZG8gdGhlIHJpZ2h0IHRoaW5nLiBJIGhvcGUgd2UgZG8uCj4gCj4gQW55 d2F5LCBJIHRoaW5rIHRoZSBkZWNpc2lvbiBzdGlsbCBzdGFuZHMgdGhhdCB3ZSBuZWVkIHRvIG1v dmUgYW55IHdvcmthcm91bmQKPiB0aGF0IGlzIGNyaXRpY2FsIHNob3VsZCBiZSBtb3ZlZCB0byBh biBMUkkuIFVubGVzcyBzb21lb25lIGNhbiBzb3J0IG91dAo+IGhvdy93aHkvd2hlbiB0aGlzIGZh aWxzLgoKQlNwZWMgc2F5cyB5b3UgbmVlZCB0byB1c2UgTFJJIHRvIG1ha2Ugc3VyZSB0aGVyZSdz IGFuIGFjdGl2ZQpjb250ZXh0IHdoZW4gdGhlIHJlZ2lzdGVyIHdyaXRlIG9jY3Vycy4gTXkgaW50 ZXJwcmV0YXRpb24gaXMgdGhhdCB0aGUKY29udGV4dCByZXN0b3JlIGlzIGFzeW5jaHJvbm91cywg YW5kIHNvIG1pZ2h0IG5vdCBoYXZlIGhhcHBlbmVkIHlldCBieQp0aGUgdGltZSB0aGUgR1Qgd2Fr ZXMgdXAgZnJvbSByYzYuIEFuZCBCc3BlYyBhbHNvIHNlZW1zIHRvIHNheSB0aGF0CndpdGggZXhl Y2xpc3QgdGhlcmUgaXNuJ3QgYW55IGFjdGl2ZSBjb250ZXh0IHVubGVzcyBvbmUgd2FzIGFjdHVh bGx5CnN1Ym1pdHRlZCB0byBFTFNQIGFuZCBpcyBzdGlsbCBydW5uaW5nLCBzbyBmcm9iYmluZyB3 aXRoIHRoZSByZWdpc3Rlcgp2aWEgbW1pbyBpcyBnZW5lcmFsbHkgYSBuby1uby4KClRoZXJlIGlz IGEgc3BlY2lmaWMgbWFnaWMgc2VxdWVuY2UgdG8gZGlzYWJsZSBDUyBpZGxlIG1lc3NhZ2luZyBp ZiB5b3UKcmVhbGx5IHdhbnQgdG8gdXNlIG1taW8gZm9yIGRlYnVnIHB1cnBvc2VzIHRob3VnaC4g TG9uZyBhZ28gSSBoYWQgYQpwYXRjaCB3aGljaCB0cmllZCB0byBpbXBsZW1lbnQgc29tZSBvZiB0 aGF0LCBhbmQgSUlSQyBJIGV2ZW4gb2ZmZXJlZAp0aGUgcGF0Y2ggdG8geW91IHdoZW4geW91IHdl cmUgbG9va2luZyBhdCBzb21lIG1pc3NpbmcgcmVnaXN0ZXIgdmFsdWUKd2VpcmRuZXNzLiBJIGFs c28gdHJpZWQgdG8gcGVkZGxlIGl0IHRvIE1pa2EgYXQgc29tZSBwb2ludC4gTm8gb25lCnRvb2sg dGhlIGJhaXQgc28gZmFyLCBidXQgSSBzdGlsbCB0aGluayB3ZSBzaG91bGQgaW1wbGVtZW50IGl0 IGZvcgpnZW1fd29ya2Fyb3VuZHMuIEN1cnJlbnRseSBnZW1fd29ya2Fyb3VuZHMganVzdCBzdWJt aXRzIHNvbWUgd29yayB0bwp0aGUgR1BVIGFuZCB3YWl0cyBmb3IgaXQgdG8gZmluaXNoIGFmdGVy IGdyYWJiaW5nIGZvcmNld2FrZSB0byBtYWtlCnN1cmUgdGhlIGNvbnRleHQgYmVjYW1lIGFjdGl2 ZS4gSSdtIG5vdCBhdCBhbGwgc3VyZSB0aGF0IGd1YXJhbnRlZXMKdGhhdCB0aGUgY29udGV4dCBy ZW1haW5zIGFjdGl2ZSwgYXQgbGVhc3Qgd2l0aCBleGVjbGlzdHMuCgpJbiBhbnkgY2FzZSBJIGJl bGlldmUgYWxsIG9mIHRoaXMgb25seSBhcHBsaWVzIHRvIHRoZSByZWdpc3RlcnMgaW4KdGhlIGxv Z2ljYWwgY29udGV4dCwgYW5kIGV2ZXJ5dGhpbmcgaW4gdGhlIHBvd2VyIGNvbnRleHQgc2hvdWxk IGJlCmZpbmUgYXMgbG9uZyBhcyB5b3UgcmVtZW1iZXIgdG8gZm9yY2V3YWtlLgoKLS0gClZpbGxl IFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK