From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: Re: [PATCH 2/9] drm/i915: Add per-pipe plane identifier Date: Fri, 18 Nov 2016 18:40:27 -0200 Message-ID: <1479501627.2382.106.camel@intel.com> References: <1478616439-10150-1-git-send-email-ville.syrjala@linux.intel.com> <1478616439-10150-3-git-send-email-ville.syrjala@linux.intel.com> <1479409778.2382.32.camel@intel.com> <20161117194322.GE31595@intel.com> <1479478626.2382.69.camel@intel.com> <20161118143214.GM31595@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7828F6EA60 for ; Fri, 18 Nov 2016 20:40:32 +0000 (UTC) In-Reply-To: <20161118143214.GM31595@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ville =?ISO-8859-1?Q?Syrj=E4l=E4?= Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RW0gU2V4LCAyMDE2LTExLTE4IMOgcyAxNjozMiArMDIwMCwgVmlsbGUgU3lyasOkbMOkIGVzY3Jl dmV1Ogo+IE9uIEZyaSwgTm92IDE4LCAyMDE2IGF0IDEyOjE3OjA2UE0gLTAyMDAsIFBhdWxvIFph bm9uaSB3cm90ZToKPiA+IAo+ID4gRW0gUXVpLCAyMDE2LTExLTE3IMOgcyAyMTo0MyArMDIwMCwg VmlsbGUgU3lyasOkbMOkIGVzY3JldmV1Ogo+ID4gPiAKPiA+ID4gT24gVGh1LCBOb3YgMTcsIDIw MTYgYXQgMDU6MDk6MzhQTSAtMDIwMCwgUGF1bG8gWmFub25pIHdyb3RlOgo+ID4gPiA+IAo+ID4g PiA+IAo+ID4gPiA+IEVtIFRlciwgMjAxNi0xMS0wOCDDoHMgMTY6NDcgKzAyMDAsIHZpbGxlLnN5 cmphbGFAbGludXguaW50ZWwuY28KPiA+ID4gPiBtCj4gPiA+ID4gZXNjcmV2ZXU6Cj4gPiA+ID4g PiAKPiA+ID4gPiA+IAo+ID4gPiA+ID4gRnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJq YWxhQGxpbnV4LmludGVsLmNvbT4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gQXMgSSB0b2xkIHBlb3Bs ZSBpbiBbMV0gd2UgcmVhbGx5IHNob3VsZCBub3QgYmUgY29uZnVzaW5nCj4gPiA+ID4gPiBlbnVt Cj4gPiA+ID4gPiBwbGFuZQo+ID4gPiA+ID4gYXMgYSBwZXItcGlwZSBwbGFuZSBpZGVudGlmaWVy LiBMb29rcyBsaWtlIHRoYXQgaGFwcGVuZWQKPiA+ID4gPiA+IG5vbmV0aGVsZXNzLAo+ID4gPiA+ ID4gc28KPiA+ID4gPiA+IGxldCdzIGZpeCBpdCB1cCBieSBzcGxpdHRpbmcgdGhlIHR3byBpbnRv IHR3byBlbnVtcy4KPiA+ID4gPiA+IAo+ID4gPiA+ID4gV2UnbGwgYWxzbyB3YW50IHNvbWV0aGlu ZyB3ZSBqdXN0IGRpcmVjdGx5IHBhc3MgdG8gdmFyaW91cwo+ID4gPiA+ID4gcmVnaXN0ZXIKPiA+ ID4gPiA+IG9mZnNldCBtYWNyb3MgYW5kIHdoYXRub3Qgb24gU0tMKy4gU28gbGV0J3MgbWFrZSB0 aGlzIG5ldwo+ID4gPiA+ID4gdGhpbmcKPiA+ID4gPiA+IHdvcmsKPiA+ID4gPiA+IGZvciB0aGF0 Lgo+ID4gPiA+ID4gQ3VycmVudGx5IHdlIHBhc3MgaW50ZWxfcGxhbmUtPnBsYW5lIGZvciB0aGUg InNwcml0ZXMiIGFuZAo+ID4gPiA+ID4ganVzdCBhCj4gPiA+ID4gPiBoYXJkY29kZWQgemVybyBm b3IgdGhlICJwcmltYXJ5IiBwbGFuZXMuIFdlIHdhbnQgdG8gZ2V0IHJpZAo+ID4gPiA+ID4gb2YK PiA+ID4gPiA+IHRoYXQKPiA+ID4gPiA+IGhhcmRvY29kaW5nIHNvIHRoYXQgd2UgY2FuIHNoYXJl IHRoZSBzYW1lIGNvZGUgZm9yIGFsbCBwbGFuZXMKPiA+ID4gPiA+IChhcGFydAo+ID4gPiA+ID4g ZnJvbSB0aGUgbGVnYWN5IGN1cnNvciBvZiBjb3Vyc2UpLgo+ID4gPiA+ID4gCj4gPiA+ID4gPiBb MV0gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvYXJjaGl2ZXMvaW50ZWwtZ2Z4LzIwMTUt U2VwCj4gPiA+ID4gPiB0ZW1iCj4gPiA+ID4gPiBlci8wCj4gPiA+ID4gPiA3NjA4Mi5odG1sCj4g PiA+ID4gPiAKPiA+ID4gPiA+IENjOiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQucm9wZXJAaW50ZWwu Y29tPgo+ID4gPiA+ID4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbEBmZndsbC5jaD4KPiA+ID4g PiA+IFNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+Cj4gPiA+ID4gPiAtLS0KPiA+ID4gPiA+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaMKgwqDCoMKgwqDCoHwgMjgKPiA+ID4gPiA+ICsrKysrKysrKysrKysrKysrKysr Ky0KPiA+ID4gPiA+IC0tLS0KPiA+ID4gPiA+IC0tCj4gPiA+ID4gPiDCoGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8wqDCoDIgKysKPiA+ID4gPiA+IMKgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmjCoMKgwqDCoMKgfMKgwqAzICsrLQo+ID4gPiA+ID4gwqBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuY8KgwqB8wqDCoDEgKwo+ID4gPiA+ID4gwqA0 IGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCj4gPiA+ID4g PiAKPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o Cj4gPiA+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+ID4gPiA+IGlu ZGV4IDMwNzc3ZGVlM2Y5Yy4uMjQ1MWI4OGIxZTgyIDEwMDY0NAo+ID4gPiA+ID4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ID4gPiA+ID4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaAo+ID4gPiA+ID4gQEAgLTE3MSwyMiArMTcxLDM2IEBAIHN0YXRp YyBpbmxpbmUgYm9vbAo+ID4gPiA+ID4gdHJhbnNjb2Rlcl9pc19kc2koZW51bQo+ID4gPiA+ID4g dHJhbnNjb2RlciB0cmFuc2NvZGVyKQo+ID4gPiA+ID4gwqB9Cj4gPiA+ID4gPiDCoAo+ID4gPiA+ ID4gwqAvKgo+ID4gPiA+ID4gLSAqIEk5MTVfTUFYX1BMQU5FUyBpbiB0aGUgZW51bSBiZWxvdyBp cyB0aGUgbWF4aW11bSAoYWNyb3NzCj4gPiA+ID4gPiBhbGwKPiA+ID4gPiA+IHBsYXRmb3JtcykK PiA+ID4gPiA+IC0gKiBudW1iZXIgb2YgcGxhbmVzIHBlciBDUlRDLsKgwqBOb3QgYWxsIHBsYXRm b3JtcyByZWFsbHkgaGF2ZQo+ID4gPiA+ID4gdGhpcwo+ID4gPiA+ID4gbWFueSBwbGFuZXMsCj4g PiA+ID4gPiAtICogd2hpY2ggbWVhbnMgc29tZSBhcnJheXMgb2Ygc2l6ZSBJOTE1X01BWF9QTEFO RVMgbWF5IGhhdmUKPiA+ID4gPiA+IHVudXNlZAo+ID4gPiA+ID4gZW50cmllcwo+ID4gPiA+ID4g LSAqIGJldHdlZW4gdGhlIHRvcG1vc3Qgc3ByaXRlIHBsYW5lIGFuZCB0aGUgY3Vyc29yIHBsYW5l Lgo+ID4gPiA+ID4gKyAqIEdsb2JhbCBsZWdhY3kgcGxhbmUgaWRlbnRpZmllci4gVmFsaWQgb25s eSBmb3IKPiA+ID4gPiA+IHByaW1hcnkvc3ByaXRlCj4gPiA+ID4gPiArICogcGxhbmVzIG9uIHBy ZS1nNHgsIGFuZCBvbmx5IGZvciBwcmltYXJ5IHBsYW5lcyBvbiBnNHgrLgo+ID4gPiA+ID4gwqAg Ki8KPiA+ID4gPiA+IMKgZW51bSBwbGFuZSB7Cj4gPiA+ID4gPiAtCVBMQU5FX0EgPSAwLAo+ID4g PiA+ID4gKwlQTEFORV9BLAo+ID4gPiA+ID4gwqAJUExBTkVfQiwKPiA+ID4gPiA+IMKgCVBMQU5F X0MsCj4gPiA+ID4gPiAtCVBMQU5FX0NVUlNPUiwKPiA+ID4gPiA+IC0JSTkxNV9NQVhfUExBTkVT LAo+ID4gPiA+ID4gwqB9Owo+ID4gPiA+ID4gwqAjZGVmaW5lIHBsYW5lX25hbWUocCkgKChwKSAr ICdBJykKPiA+ID4gPiA+IMKgCj4gPiA+ID4gPiDCoCNkZWZpbmUgc3ByaXRlX25hbWUocCwgcykg KChwKSAqIElOVEVMX0lORk8oZGV2X3ByaXYpLQo+ID4gPiA+ID4gPiAKPiA+ID4gPiA+ID4gCj4g PiA+ID4gPiA+IG51bV9zcHJpdGVzWyhwKV0gKyAocykgKyAnQScpCj4gPiA+ID4gPiDCoAo+ID4g PiA+ID4gKy8qCj4gPiA+ID4gPiArICogUGVyLXBpcGUgcGxhbmUgaWRlbnRpZmllci4KPiA+ID4g PiA+ICsgKiBJOTE1X01BWF9QTEFORVMgaW4gdGhlIGVudW0gYmVsb3cgaXMgdGhlIG1heGltdW0g KGFjcm9zcwo+ID4gPiA+ID4gYWxsCj4gPiA+ID4gPiBwbGF0Zm9ybXMpCj4gPiA+ID4gPiArICog bnVtYmVyIG9mIHBsYW5lcyBwZXIgQ1JUQy7CoMKgTm90IGFsbCBwbGF0Zm9ybXMgcmVhbGx5IGhh dmUKPiA+ID4gPiA+IHRoaXMKPiA+ID4gPiA+IG1hbnkgcGxhbmVzLAo+ID4gPiA+ID4gKyAqIHdo aWNoIG1lYW5zIHNvbWUgYXJyYXlzIG9mIHNpemUgSTkxNV9NQVhfUExBTkVTIG1heSBoYXZlCj4g PiA+ID4gPiB1bnVzZWQKPiA+ID4gPiA+IGVudHJpZXMKPiA+ID4gPiA+ICsgKiBiZXR3ZWVuIHRo ZSB0b3Btb3N0IHNwcml0ZSBwbGFuZSBhbmQgdGhlIGN1cnNvciBwbGFuZS4KPiA+ID4gPiA+ICsg Kgo+ID4gPiA+ID4gKyAqIFRoaXMgaXMgZXhwZWN0ZWQgdG8gYmUgcGFzc2VkIHRvIHZhcmlvdXMg cmVnaXN0ZXIgbWFjcm9zCj4gPiA+ID4gPiArICogKGVnLiBQTEFORV9DVEwoKSwgUFNfUExBTkVf U0VMKCksIGV0Yy4pIHNvIGFkanVzdCB3aXRoCj4gPiA+ID4gPiBjYXJlLgo+ID4gPiA+ID4gKyAq Lwo+ID4gPiA+ID4gK2VudW0gcGxhbmVfaWQgewo+ID4gPiA+ID4gKwlQTEFORV9QUklNQVJZLAo+ ID4gPiA+ID4gKwlQTEFORV9TUFJJVEUwLAo+ID4gPiA+ID4gKwlQTEFORV9TUFJJVEUxLAo+ID4g PiA+ID4gKwlQTEFORV9DVVJTT1IsCj4gPiA+ID4gPiArCUk5MTVfTUFYX1BMQU5FUywKPiA+ID4g PiA+ICt9Owo+ID4gPiA+IAo+ID4gPiA+IFdlIG5vdyBoYXZlIHR3byBkaWZmZXJlbnQgZW51bXMg ZGVmaW5pbmcgUExBTkVfU09NRVRISU5HLCBhbmQKPiA+ID4gPiB3ZQo+ID4gPiA+IGV2ZW4KPiA+ ID4gPiBtb3ZlZCBzb21lIHN0dWZmIGZyb20gb25lIHRvIHRoZSBvdGhlci4gSSB0aGluayB0aGlz IGFkZHMgbW9yZQo+ID4gPiA+IGNvbmZ1c2lvbiB0byB0aGUgY29kZSwgc28gd2Ugd291bGQgcHJv YmFibHkgYmUgc2FuZXIgd2l0aDoKPiA+ID4gPiAKPiA+ID4gPiBlbnVtIHBsYW5lX2lkIHsKPiA+ ID4gPiAJUExBTkVfSURfUFJJTUFSWSwKPiA+ID4gPiAJUExBTkVfSURfU1BSSVRFMCwKPiA+ID4g PiAJUExBTkVfSURfU1BSSVRFMSwKPiA+ID4gPiAJUExBTkVfSURfQ1VSU09SLAo+ID4gPiA+IAlQ TEFORV9JRF97TUFYLE5VTSxUT1RBTCxTT01FVEhJTkdFTFNFfSwKPiA+ID4gPiB9Owo+ID4gPiAK PiA+ID4gSSBkaWQgaGF2ZSBfSURfIGluIHRoZXJlIG9yaWdpbmFsbHksIGJ1dCB0aGVuIGRlY2lk ZWQgaXQgd2FzIGp1c3QKPiA+ID4gd2FzdGVkCj4gPiA+IHNwYWNlLiBXZXJlbid0IHlvdSBjb21w bGFpbmluZyBhYm91dCBtZSBleGNlZWRpbmcgODBjb2xzIGFscmVhZHkKPiA+ID4gdG9vCj4gPiA+ IG11Y2g/IDspCj4gPiAKPiA+IEkgbGlrZSB0byBoYXZlIGJpZ19kZXNjcmlwdGl2ZV92YXJpYWJs ZV9uYW1lcyBidXQgc3RpbGwgc3RheSB1bmRlcgo+ID4gODAKPiA+IGNvbHVtbnMuIEl0J3MgYSBk ZXNpZ24gcGF0dGVybiBjYWxsZWQgTWFzb2NoaXNtLgo+ID4gCj4gPiA+IAo+ID4gPiAKPiA+ID4g STkxNV9NQVhfUExBTkVTIEkgd2FudGVkIHRvIGxlYXZlIGJlIHNpbmNlIGl0IHdhcyBhbHJlYWR5 IGluIHVzZSwKPiA+ID4gYW5kCj4gPiA+IGl0Cj4gPiA+IGRvZXMgbWF0Y2ggb3VyIHdlaXJkIG5h bWluZyBjb252ZW50aW9uIGZvciB0aGVzZSB0aGluZ3MuIFNvIGlmIHdlCj4gPiA+IGNoYW5nZQo+ ID4gPiBpdCB3ZSBzaG91bGQgY2hhbmdlIGFsbCBvdGhlciBzaW1pbGFyIHRoaW5ncy4KPiA+IAo+ ID4gTWFrZXMgc2Vuc2UuCj4gPiAKPiA+ID4gCj4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+IAo+ID4g PiA+IAo+ID4gPiA+IE90aGVyd2lzZSwgdGhlIHBhdGNoIGRvZXMgd2hhdCBpdCBzYXlzLCBzbzoK PiA+ID4gPiBSZXZpZXdlZC1ieTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5j b20+Cj4gPiA+ID4gCj4gPiA+ID4gQnV0IHBsZWFzZSBnZXQgTWF0dCdzIGFjayBiZWZvcmUgbWVy Z2luZyB0aGUgc2VyaWVzIHNpbmNlIGhlJ3MKPiA+ID4gPiBiZWVuCj4gPiA+ID4gdG91Y2hpbmcg dGhpcyBhcmVhIG9mIHRoZSBjb2RlIGZvciBoaXMgd29yayBvbiBjaGFuZ2luZyBob3cgd2UKPiA+ ID4gPiB0cmVhdAo+ID4gPiA+IHRoZSBwbGFuZSBjdXJzb3IuCj4gPiA+IAo+ID4gPiBOb2QuCj4g PiA+IAo+ID4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+IEFsc28sIHBsZWFzZSBjb25z aWRlciB0aGUgcmVuYW1lcyA6KS4KPiA+ID4gCj4gPiA+IFdoaWNoIG9uZXM/IFRoZSBfSURfIHRo aW5nLCBvciBqdXN0IHJlbmFtaW5nIHRoZSBlbnRpcmUgZW51bQo+ID4gPiBwbGFuZSB0bwo+ID4g PiBzb21ldGhpbmcgZWxzZT8gRm9yIHRoZSBsYXR0ZXIgbXkgYmVzdCBpZGVhIHdhcyBsZWdhY3lf cGxhbmVfaWQsCj4gPiA+IGJ1dAo+ID4gPiBub3Qgc3VyZSBhbnlvbmUgZWxzZSBsaWtlcyBpdC4g SSBndWVzcyB3ZSBjb3VsZCBhbHNvIG1ha2UgaXQKPiA+ID4gcHJpbWFyeV9wbGFuZV9pZCwgYnV0 IGxpa2UgSSBzYWlkIHRoYXQgbWlnaHQgY29tcGxpY2F0ZSBteSBsb25nCj4gPiA+IHRlcm0KPiA+ ID4gcGxhbiBvZiByZXN0b3JpbmcgaXRzIHVzZSBmb3IgY3Vyc29yIHBsYW5lcy4KPiA+IAo+ID4g VGhlIGJpZyBwcm9ibGVtIGFkZHJlc3NlZCBieSB0aGlzIHNlcmllcyBpczogd2UgaGF2ZSB0d28g ZGlmZmVyZW50Cj4gPiB0aGluZ3Mgd2UgY2FsbCAicGxhbmUiLiBPbmUgcmVmZXJzIHRvIHRoZSBm YWN0IHRoYXQgaW4gb2xkZXIKPiA+IGhhcmR3YXJlCj4gPiBQbGFuZSBBIGlzbid0IG5lY2Vzc2Fy aWx5IGF0dGFjaGVkIHRvIFBpcGUgQSwgc28gd2UgbmVlZCB0aGUKPiA+IHZhcmlhYmxlCj4gPiB0 byBrbm93IGhvdyB0aGluZ3MgYXJlIGNvbm5lY3RlZCBpbiB0aGUgaGFyZHdhcmUsIHdoaWNoIGhh cmR3YXJlCj4gPiBwbGFuZQo+ID4gd2UncmUgdGFsa2luZyBhYm91dC4gVGhlIG90aGVyIGlzIGZv ciB0aGUgbmV3IHBsYXRmb3JtcywgYW5kIGl0Cj4gPiByZWZlcnMKPiA+IHRvIHRoZSBaIG9yZGVy IG9mIHRoZSBwbGFuZXMgb24gYSBwaXBlLgo+IAo+IE5vdCBaIG9yZGVyIG9uIFZMVi9DSFYgYXMg dGhhdCBzdHVmZiBpcyBhY3R1YWxseSBjb25maWd1cmFibGUuIEJ1dAo+IGl0J3Mgc29tZSBraW5k IG9mIHBlciBwaXBlIHBsYW5lIGlkZW50aWZpZXIuCj4gCj4gPiAKPiA+IAo+ID4gSSB0aGluayB0 aGlzIHNlcmllcyBkb2VzIGEgbmljZSBqb2Igb2YgdXNpbmcgInBsYW5lX2lkIiB0byByZWZlciB0 bwo+ID4gZXZlcnl0aGluZyByZWxhdGVkIHRvIHRoZSBaIG9yZGVyIChleGNlcHQgZm9yIHRoZSBm YWN0IHRoYXQgaXRzCj4gPiBlbnVtCj4gPiBkb2Vzbid0IHNheSAiaWQiKSwKPiAKPiBJdCBkb2Vz LiBPciB5b3kgbWVhbiB0aGUgYWN0dWFsIHZhbHVlcz8gVGhvc2UgZG9uJ3QgaW5kZWVkIHNwZWxs IGl0Cj4gb3V0LgoKSSB3YXMgdGFsa2luZyBhYm91dCBteSBzdWdnZXN0aW9uIG9mIFBMQU5FX0lE X1BSSU1BUlksIGV0Yy4KCj4gCj4gPiAKPiA+IGJ1dCB3ZSBzdGlsbCB1c2UgInBsYW5lIiB0byBy ZWZlciB0byB0aGUgZmlyc3QgY2FzZS4KPiA+IEhhdmluZyB0aGUgInBsYW5lIiB2cyAicGxhbmVf aWQiIGlzIGFscmVhZHkgYW4gaW1wcm92ZW1lbnQsIGJ1dAo+ID4gSU1ITwo+ID4gdGhlcmUncyBy b29tIHRvIG1ha2UgaXQgZXZlbiBiZXR0ZXIuCj4gPiAKPiA+IFNvIHRoZXJlIGFyZSB0d28gcHJv YmxlbXMuCj4gPiAKPiA+IFByb2JsZW0gMSBpcyBtYWtpbmcgc3VyZSB3ZSB1c2UgImlkIiBldmVy eSB0aW1lIHdlJ3JlIHRhbGtpbmcgYWJvdXQKPiA+IHRoZQo+ID4gWiBvcmRlci4gSU1ITyB0aGUg b25seSBtaXNzaW5nIHRoaW5nIGhlcmUgd291bGQgYmUgYWRkaW5nICJpZCIgdG8KPiA+IHRoZQo+ ID4gZW51bXMuCj4gPiAKPiA+IFByb2JsZW0gMiBpcyBmaW5kaW5nIGEgbW9yZSBhcHByb3ByaWF0 ZWQgbmFtZSB0byB3aGF0J3Mgc3RpbGwgYmVpbmcKPiA+IGNhbGxlZCBqdXN0ICJwbGFuZSIuIEhv dyBhYm91dCBqdXN0IHJlbmFtaW5nIGl0IHRvIGh3X3BsYW5lPyBPcgo+ID4gcmVhbGx5Cj4gPiBq dXN0IHBsYW5lX25hbWU/IHBsYW5lX3NlbGVjdGVkPwo+IAo+IEkgZG9uJ3QgcmVhbGx5IGxpa2Ug YW55IG9mIHRob3NlLiBsZWdhY3lfcGxhbmVfaWQgaXMgc3RpbGwgd2hhdCBJCj4gdGhpbmsKPiBJ IGxpa2UgYmVzdC4KCldlbGwsIGF0IGxlYXN0IEkgdHJpZWQgOikuCgpJIGFncmVlIGl0J3MgaGFy ZCB0byBjb21lIHVwIHdpdGggYSBnb29kIG5hbWUgZm9yIHRoaXMgdGhpbmcuIEkgY2FuCmRlZmlu aXRlbHkgbGl2ZSB3aXRoIGxlZ2FjeV9wbGFuZV9pZC4KCj4gCj4gSSBtZWFuLCB3ZSBjb3VsZCBl dmVuIGdvIGFzIGZhciBhcyBlbGltaW5hdGluZyB0aGUgZW51bSBwbGFuZSB1c2FnZQo+IGVudGly ZWx5IG9uIGc0eCssIGJ1dCB0aGF0IHdvdWxkIG1lYW4gZHVwbGljYXRpbmcgdGhlIHByaW1hcnkg cGxhbmUKPiBjb2RlCj4gd2hpY2ggd291bGQgYmUgc2lsbHkuIFdlIGhhdmUgYWxyZWFkeSB0b28g bXVjaCBkdXBsaWNhdGlvbiB0aGUgcGxhbmUKPiBwcm9ncmFtbWluZyBjb2RlLiBGb3Igc2tsKyB3 ZSBzaG91bGRuJ3QgbmVlZCBpdCBhdCBhbGwgc2luY2Ugd2UKPiBhbHJlYWR5Cj4gaGF2ZSB0aGUg cGxhbmUgcmVnaXN0ZXJzIGluZGV4ZWQgdGhlIG90aGVyIHdheS4KPiAKPiBUaGUgZ29vZCB0aGlu ZyBpcyB0aGF0IHRoZSBlbnVtIHBsYW5lIHVzYWdlIGlzIGVudGlyZWx5IGVuY2Fwc3VsYXRlZAo+ IGluCj4gdGhlIHByZS1za2wgcHJpbWFyeSBwbGFuZSBjb2RlLiBTbyBJTU8gZ2V0dGluZyB0aGUg bmFtaW5nIGp1c3QgcmlnaHQKPiBpcwo+IG5vdCB2ZXJ5IGltcG9ydGFudC4gTGltaXRlZCB1c2Us IHNvIGNoYW5jZXMgb2YgZG9pbmcgc29tZXRoaW5nIHdyb25nCj4gYXJlIGFsc28gbGltaXRlZC4g QWx0aG91Z2ggdGhhdCB3aWxsIGNoYW5nZSBhIGxpdHRsZSBldmVudHVhbGx5IGFzCj4gSSdsbAo+ IHByb2JhYmx5IHdhbnQgdG8gc3RhcnQgdXNpbmcgaXQgYSBiaXQgbW9yZSBleHRlbnNpdmVseSBp biB0aGUgcHJlLWc0eAo+IHdhdGVybWFyayBjb2RlICh3aGVuIEkgZ2V0IGFyb3VuZCB0byByZXdy aXRpbmcgaXQgYWxsKS4KCldlbGwsIEkgYWxyZWFkeSBnYXZlIHRoZSByLWIgZm9yIHRoZSBjdXJy ZW50IHZlcnNpb24gb2YgdGhlIHBhdGNoLCBzbwppdCdzIHVwIHRvIHlvdS4gTXkgZ29hbCBoZXJl IHdhcyB0byB0cnkgdG8gYWRkIHNvbWUgc3VnZ2VzdGlvbnMgdG8gbWFrZQp0aGUgY29kZSBldmVu IGJldHRlciB0byByZWFkLCBidXQgdGhleSBhcmUgbm90IHJlcXVpcmVkLiBJIHdvbid0IGJsb2Nr CnlvdXIgc2VyaWVzIGJhc2VkIG9uIHRoZSByZW5hbWVzLiBBbHNvLCB5b3UgY2FuIGV2ZW4gZG8g dGhpcyBhcyBhbgphZGRpdGlvbmFsIHBhdGNoIGF0IHRoZSBlbmQgb2YgdGhlIHNlcmllcyBpZiB5 b3Ugd2FudC4gRmVlbCBmcmVlIHRvCnN1Ym1pdCB2MiB3aXRoIHdoYXQgeW91IHRoaW5rIGlzIHRo ZSBiZXN0IGFwcHJvYWNoLgoKPiAKPiA+IAo+ID4gCj4gPiBJJ20gYWx3YXlzIGluIGZhdm9yIG9m IGhhdmluZyB0aGUgZHVtYmVzdCBwb3NzaWJsZSBjb2RlLCBzbyBJCj4gPiB3b3VsZG4ndAo+ID4g Y29tcGxhaW4gaWYgeW91IGp1c3QgcmVuYW1lZCBldmVyeXRoaW5nIHRvIHBsYW5lX2xldHRlciBh bmQKPiA+IHBsYW5lX251bWJlciA6KS4gSSBrbm93IGl0IHNvdW5kcyBzdXBlciBzaWxseSwgYnV0 IEkgYmV0IHBlb3BsZQo+ID4gd291bGQKPiA+IHF1aWNrbHkgdW5kZXJzdGFuZCBpdC4KPiA+IAo+ ID4gQW55d2F5LCB5b3UgYWxyZWFkeSBoYXZlIHRoZSBSLUIgdGFnIGZvciB0aGUgcGF0Y2ggc2lu Y2UgSSBiZWxpZXZlCj4gPiB3ZSdyZSBhbHJlYWR5IGJldHRlciB3aXRoIHRoZSBjb2RlIHlvdSB3 cm90ZS4gRmVlbCBmcmVlIHRvIGFkb3B0Cj4gPiB0aGUKPiA+IHN1Z2dlc3Rpb25zIHlvdSB0aGlu ayBtYWtlIG1vcmUgc2Vuc2UuIE1heWJlIGRvIHNvbWUgb2YgdGhlIHJlbmFtZXMKPiA+IGFzCj4g PiBsYXRlciBwYXRjaGVzIGlmIHlvdSB3YW50Lgo+ID4gCj4gPiAKPiA+ID4gCj4gPiA+IAo+ID4g PiA+IAo+ID4gPiA+IAo+ID4gPiA+IAo+ID4gPiA+ID4gCj4gPiA+ID4gPiAKPiA+ID4gPiA+ICsK PiA+ID4gPiA+IMKgZW51bSBwb3J0IHsKPiA+ID4gPiA+IMKgCVBPUlRfTk9ORSA9IC0xLAo+ID4g PiA+ID4gwqAJUE9SVF9BID0gMCwKPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiA+ID4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCj4gPiA+ID4gPiBpbmRleCAxMDg2OTM2MGNmZGMuLmIzMTgxMTkzMzBl OCAxMDA2NDQKPiA+ID4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwo+ID4gPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j Cj4gPiA+ID4gPiBAQCAtMTUwMDgsNiArMTUwMDgsNyBAQCBpbnRlbF9wcmltYXJ5X3BsYW5lX2Ny ZWF0ZShzdHJ1Y3QKPiA+ID4gPiA+IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIHBp cGUgcGlwZSkKPiA+ID4gPiA+IMKgCQlwcmltYXJ5LT5wbGFuZSA9IChlbnVtIHBsYW5lKSAhcGlw ZTsKPiA+ID4gPiA+IMKgCWVsc2UKPiA+ID4gPiA+IMKgCQlwcmltYXJ5LT5wbGFuZSA9IChlbnVt IHBsYW5lKSBwaXBlOwo+ID4gPiA+ID4gKwlwcmltYXJ5LT5pZCA9IFBMQU5FX1BSSU1BUlk7Cj4g PiA+ID4gPiDCoAlwcmltYXJ5LT5mcm9udGJ1ZmZlcl9iaXQgPQo+ID4gPiA+ID4gSU5URUxfRlJP TlRCVUZGRVJfUFJJTUFSWShwaXBlKTsKPiA+ID4gPiA+IMKgCXByaW1hcnktPmNoZWNrX3BsYW5l ID0gaW50ZWxfY2hlY2tfcHJpbWFyeV9wbGFuZTsKPiA+ID4gPiA+IMKgCj4gPiA+ID4gPiBAQCAt MTUyMDMsNiArMTUyMDQsNyBAQCBpbnRlbF9jdXJzb3JfcGxhbmVfY3JlYXRlKHN0cnVjdAo+ID4g PiA+ID4gZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlwZSBwaXBlKQo+ID4gPiA+ ID4gwqAJY3Vyc29yLT5tYXhfZG93bnNjYWxlID0gMTsKPiA+ID4gPiA+IMKgCWN1cnNvci0+cGlw ZSA9IHBpcGU7Cj4gPiA+ID4gPiDCoAljdXJzb3ItPnBsYW5lID0gcGlwZTsKPiA+ID4gPiA+ICsJ Y3Vyc29yLT5pZCA9IFBMQU5FX0NVUlNPUjsKPiA+ID4gPiA+IMKgCWN1cnNvci0+ZnJvbnRidWZm ZXJfYml0ID0KPiA+ID4gPiA+IElOVEVMX0ZST05UQlVGRkVSX0NVUlNPUihwaXBlKTsKPiA+ID4g PiA+IMKgCWN1cnNvci0+Y2hlY2tfcGxhbmUgPSBpbnRlbF9jaGVja19jdXJzb3JfcGxhbmU7Cj4g PiA+ID4gPiDCoAljdXJzb3ItPnVwZGF0ZV9wbGFuZSA9IGludGVsX3VwZGF0ZV9jdXJzb3JfcGxh bmU7Cj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2 LmgKPiA+ID4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4gPiA+ IGluZGV4IDM5ODE5NWJmNmRkMS4uNThmYzhlMWQyYWE4IDEwMDY0NAo+ID4gPiA+ID4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4gPiA+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gPiA+ID4gPiBAQCAtNzY3LDcgKzc2Nyw4IEBAIHN0 cnVjdCBpbnRlbF9wbGFuZV93bV9wYXJhbWV0ZXJzIHsKPiA+ID4gPiA+IMKgCj4gPiA+ID4gPiDC oHN0cnVjdCBpbnRlbF9wbGFuZSB7Cj4gPiA+ID4gPiDCoAlzdHJ1Y3QgZHJtX3BsYW5lIGJhc2U7 Cj4gPiA+ID4gPiAtCWludCBwbGFuZTsKPiA+ID4gPiA+ICsJdTggcGxhbmU7Cj4gPiA+ID4gPiAr CWVudW0gcGxhbmVfaWQgaWQ7Cj4gPiA+ID4gPiDCoAllbnVtIHBpcGUgcGlwZTsKPiA+ID4gPiA+ IMKgCWJvb2wgY2FuX3NjYWxlOwo+ID4gPiA+ID4gwqAJaW50IG1heF9kb3duc2NhbGU7Cj4gPiA+ ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPiA+ ID4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPiA+ID4gPiA+IGlu ZGV4IDVlNGViN2NhZmVmMC4uNGI0NDg2M2EwN2MyIDEwMDY0NAo+ID4gPiA+ID4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKPiA+ID4gPiA+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCj4gPiA+ID4gPiBAQCAtMTEyNiw2ICsxMTI2LDcg QEAgaW50ZWxfc3ByaXRlX3BsYW5lX2NyZWF0ZShzdHJ1Y3QKPiA+ID4gPiA+IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+ID4gPiA+ID4gwqAKPiA+ID4gPiA+IMKgCWludGVsX3BsYW5lLT5w aXBlID0gcGlwZTsKPiA+ID4gPiA+IMKgCWludGVsX3BsYW5lLT5wbGFuZSA9IHBsYW5lOwo+ID4g PiA+ID4gKwlpbnRlbF9wbGFuZS0+aWQgPSBQTEFORV9TUFJJVEUwICsgcGxhbmU7Cj4gPiA+ID4g PiDCoAlpbnRlbF9wbGFuZS0+ZnJvbnRidWZmZXJfYml0ID0KPiA+ID4gPiA+IElOVEVMX0ZST05U QlVGRkVSX1NQUklURShwaXBlLCBwbGFuZSk7Cj4gPiA+ID4gPiDCoAlpbnRlbF9wbGFuZS0+Y2hl Y2tfcGxhbmUgPSBpbnRlbF9jaGVja19zcHJpdGVfcGxhbmU7Cj4gPiA+ID4gPiDCoAo+ID4gPiAK PiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==