From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= Subject: Re: [PATCH 1/2] drm/radeon: add large PTE support for NI, SI and CIK v4 Date: Fri, 02 May 2014 14:13:16 +0200 Message-ID: <53638BDC.8080707@vodafone.de> References: <1398963153-1635-1-git-send-email-deathsimple@vodafone.de> <2171fd7c4edd655718a0ed121dba30e5@jcornwall.me> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from pegasos-out.vodafone.de (pegasos-out.vodafone.de [80.84.1.38]) by gabe.freedesktop.org (Postfix) with ESMTP id EFD766E360 for ; Fri, 2 May 2014 05:13:29 -0700 (PDT) In-Reply-To: <2171fd7c4edd655718a0ed121dba30e5@jcornwall.me> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jay Cornwall , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org QW0gMDEuMDUuMjAxNCAxOToyOSwgc2NocmllYiBKYXkgQ29ybndhbGw6Cj4gT24gMjAxNC0wNS0w MSAxMTo1MiwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90ZToKPgo+IFNvbWUgbWlub3IgY29tbWVudCBm aXhlcyBpbmxpbmUuIEkndmUgYmVlbiB1c2luZyB2MyBvZiB0aGlzIHBhdGNoIG9uIAo+IFNJIGZv ciBxdWl0ZSBhIHdoaWxlLCB3aXRoIG5vIHZpc2libGUgZmFpbHVyZXMuCgpUaGFua3MgZm9yIHRo ZSBub3Rlcy4gSSd2ZSBhZGRlZCB0aGVtIHRvIG15IHY1IG9mIHRoZSBwYXRjaCBhbmQgYWxzbyAK dXBkYXRlZCB0aGUgZmlsZSBuYW1lIGluIHRoZSBjb21taXQgbWVzc2FnZSAod2UgaGF2ZSBtb3Zl ZCB0aGF0IHN0dWZmIHRvIApyYWRlb25fdm0uYyBpbiB0aGUgbWVhbnRpbWUpLgoKQ2hyaXN0aWFu LgoKPgo+IFRoYW5rcyBmb3IgcHVzaGluZyB0aGlzLgo+Cj4+IEZyb206IENocmlzdGlhbiBLw7Zu aWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KPj4KPj4gVGhpcyBwYXRjaCBpbXBsZW1lbnRz IHN1cHBvcnQgZm9yIFZSQU0gcGFnZSB0YWJsZSBlbnRyeSBjb21wcmVzc2lvbi4KPj4gUFRFIGNv bnN0cnVjdGlvbiBpcyBlbmhhbmNlZCB0byBpZGVudGlmeSBwaHlzaWNhbGx5IGNvbnRpZ3VvdXMg cGFnZQo+PiByYW5nZXMgYW5kIG1hcmsgdGhlbSBpbiB0aGUgUFRFIGZyYWdtZW50IGZpZWxkLiBM MSBUTEIgYW5kIEwyIGNhY2hlCj4gXl5eXl5eXl5eXl5eXl5eXl5eXgo+IFRoaXMgc2hvdWxkIHJl YWQgTDEvTDIgVExCLiBIVyBzcGVjIHJlZmVycyB0byB0aGUgTDIgVExCIGFzIHRoZSBWTSBMMiAK PiAiY2FjaGUiLCB3aGljaCBjb25mdXNlZCB0aGUgZHJhZnQgY29tbWVudHMuCj4KPj4gc3VwcG9y dCBpcyBlbmFibGVkIGZvciA2NEtCIChTSS9DSUspIGFuZCAyNTZLQiAoTkkpIFBURSBmcmFnbWVu dHMsCj4+IHNpZ25pZmljYW50bHkgaW1wcm92aW5nIFRMQiB1dGlsaXphdGlvbiBmb3IgVlJBTSBh bGxvY2F0aW9ucy4KPj4KPj4gTGluZWFyIHN0b3JlIGJhbmR3aWR0aCBpcyBpbXByb3ZlZCBmcm9t IDYwR0IvcyB0byAxMjVHQi9zIG9uIFBpdGNhaXJuLgo+PiBVbmlnaW5lIEhlYXZlbiAzLjAgc2Vl cyBhbiBhdmVyYWdlIGltcHJvdmVtZW50IGZyb20gMjQuNyB0byAyNy43IEZQUwo+PiBvbiBkZWZh dWx0IHNldHRpbmdzIGF0IDE5MjB4MTIwMCByZXNvbHV0aW9uIHdpdGggdnN5bmMgZGlzYWJsZWQu Cj4+Cj4+IFNlZSBtYWluIGNvbW1lbnQgaW4gcmFkZW9uX2dhcnQuYyBnaXZlcyBhIHRlY2huaWNh bCBkZXNjcmlwdGlvbi4KPj4KPj4gdjIgKGNoayk6IHJlYmFzZWQgYW5kIHNpbXBsaWZpZWQuCj4+ IHYzIChjaGspOiBhZGQgbWlzc2luZyBodyBzZXR1cAo+PiB2NCAoY2hrKTogcmViYXNlZCBvbiBj dXJyZW50IGRybS1maXhlcy0zLjE1Cj4+Cj4+IFNpZ25lZC1vZmYtYnk6IEpheSBDb3Jud2FsbCA8 amF5QGpjb3Jud2FsbC5tZT4KPj4gU2lnbmVkLW9mZi1ieTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hy aXN0aWFuLmtvZW5pZ0BhbWQuY29tPgo+PiAtLS0KPj4gIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24v Y2lrLmMgICAgICAgfCAgNCArLQo+PiAgZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9uaS5jICAgICAg ICB8ICAyICsKPj4gIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmggICAgfCAgNSArKysK Pj4gIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3ZtLmMgfCA5MSAKPj4gKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLS0KPj4gIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24v c2kuYyAgICAgICAgfCAgNSArKy0KPj4gIDUgZmlsZXMgY2hhbmdlZCwgOTggaW5zZXJ0aW9ucygr KSwgOSBkZWxldGlvbnMoLSkKPj4KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRl b24vY2lrLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2Npay5jCj4+IGluZGV4IDM4ZjNmY2Mu LjM4ZGE5ZjMgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vY2lrLmMKPj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9jaWsuYwo+PiBAQCAtNTM5NSw2ICs1Mzk1LDcg QEAgc3RhdGljIGludCBjaWtfcGNpZV9nYXJ0X2VuYWJsZShzdHJ1Y3QKPj4gcmFkZW9uX2Rldmlj ZSAqcmRldikKPj4gICAgICBXUkVHMzIoTUNfVk1fTVhfTDFfVExCX0NOVEwsCj4+ICAgICAgICAg ICAgICgweEEgPDwgNykgfAo+PiAgICAgICAgICAgICBFTkFCTEVfTDFfVExCIHwKPj4gKyAgICAg ICAgICAgRU5BQkxFX0wxX0ZSQUdNRU5UX1BST0NFU1NJTkcgfAo+PiAgICAgICAgICAgICBTWVNU RU1fQUNDRVNTX01PREVfTk9UX0lOX1NZUyB8Cj4+ICAgICAgICAgICAgIEVOQUJMRV9BRFZBTkNF RF9EUklWRVJfTU9ERUwgfAo+PiAgICAgICAgICAgICBTWVNURU1fQVBFUlRVUkVfVU5NQVBQRURf QUNDRVNTX1BBU1NfVEhSVSk7Cj4+IEBAIC01NDA3LDcgKzU0MDgsOCBAQCBzdGF0aWMgaW50IGNp a19wY2llX2dhcnRfZW5hYmxlKHN0cnVjdAo+PiByYWRlb25fZGV2aWNlICpyZGV2KQo+PiAgICAg ICAgICAgICBDT05URVhUMV9JREVOVElUWV9BQ0NFU1NfTU9ERSgxKSk7Cj4+ICAgICAgV1JFRzMy KFZNX0wyX0NOVEwyLCBJTlZBTElEQVRFX0FMTF9MMV9UTEJTIHwgSU5WQUxJREFURV9MMl9DQUNI RSk7Cj4+ICAgICAgV1JFRzMyKFZNX0wyX0NOVEwzLCBMMl9DQUNIRV9CSUdLX0FTU09DSUFUSVZJ VFkgfAo+PiAtICAgICAgICAgICBMMl9DQUNIRV9CSUdLX0ZSQUdNRU5UX1NJWkUoNikpOwo+PiAr ICAgICAgICAgICBCQU5LX1NFTEVDVCg0KSB8Cj4+ICsgICAgICAgICAgIEwyX0NBQ0hFX0JJR0tf RlJBR01FTlRfU0laRSg0KSk7Cj4+ICAgICAgLyogc2V0dXAgY29udGV4dDAgKi8KPj4gICAgICBX UkVHMzIoVk1fQ09OVEVYVDBfUEFHRV9UQUJMRV9TVEFSVF9BRERSLCByZGV2LT5tYy5ndHRfc3Rh cnQgPj4gCj4+IDEyKTsKPj4gICAgICBXUkVHMzIoVk1fQ09OVEVYVDBfUEFHRV9UQUJMRV9FTkRf QUREUiwgcmRldi0+bWMuZ3R0X2VuZCA+PiAxMik7Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL25pLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL25pLmMKPj4gaW5kZXgg ZDI0NmUwNC4uNWU4ZGI5YiAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9u aS5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vbmkuYwo+PiBAQCAtMTIyOCwxMiAr MTIyOCwxNCBAQCBzdGF0aWMgaW50IGNheW1hbl9wY2llX2dhcnRfZW5hYmxlKHN0cnVjdAo+PiBy YWRlb25fZGV2aWNlICpyZGV2KQo+PiAgICAgICAgICAgICBTWVNURU1fQVBFUlRVUkVfVU5NQVBQ RURfQUNDRVNTX1BBU1NfVEhSVSk7Cj4+ICAgICAgLyogU2V0dXAgTDIgY2FjaGUgKi8KPj4gICAg ICBXUkVHMzIoVk1fTDJfQ05UTCwgRU5BQkxFX0wyX0NBQ0hFIHwKPj4gKyAgICAgICAgICAgRU5B QkxFX0wyX0ZSQUdNRU5UX1BST0NFU1NJTkcgfAo+PiAgICAgICAgICAgICBFTkFCTEVfTDJfUFRF X0NBQ0hFX0xSVV9VUERBVEVfQllfV1JJVEUgfAo+PiAgICAgICAgICAgICBFTkFCTEVfTDJfUERF MF9DQUNIRV9MUlVfVVBEQVRFX0JZX1dSSVRFIHwKPj4gICAgICAgICAgICAgRUZGRUNUSVZFX0wy X1FVRVVFX1NJWkUoNykgfAo+PiAgICAgICAgICAgICBDT05URVhUMV9JREVOVElUWV9BQ0NFU1Nf TU9ERSgxKSk7Cj4+ICAgICAgV1JFRzMyKFZNX0wyX0NOVEwyLCBJTlZBTElEQVRFX0FMTF9MMV9U TEJTIHwgSU5WQUxJREFURV9MMl9DQUNIRSk7Cj4+ICAgICAgV1JFRzMyKFZNX0wyX0NOVEwzLCBM Ml9DQUNIRV9CSUdLX0FTU09DSUFUSVZJVFkgfAo+PiArICAgICAgICAgICBCQU5LX1NFTEVDVCg2 KSB8Cj4+ICAgICAgICAgICAgIEwyX0NBQ0hFX0JJR0tfRlJBR01FTlRfU0laRSg2KSk7Cj4+ICAg ICAgLyogc2V0dXAgY29udGV4dDAgKi8KPj4gICAgICBXUkVHMzIoVk1fQ09OVEVYVDBfUEFHRV9U QUJMRV9TVEFSVF9BRERSLCByZGV2LT5tYy5ndHRfc3RhcnQgPj4gCj4+IDEyKTsKPj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmggCj4+IGIvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb24uaAo+PiBpbmRleCA2ODUyODYxLi5lM2Q2YmUzIDEwMDY0NAo+PiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCj4+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9yYWRlb24vcmFkZW9uLmgKPj4gQEAgLTg1NCw2ICs4NTQsMTEgQEAgc3RydWN0IHJhZGVv bl9tZWMgewo+PiAgI2RlZmluZSBSNjAwX1BURV9SRUFEQUJMRSAgICAoMSA8PCA1KQo+PiAgI2Rl ZmluZSBSNjAwX1BURV9XUklURUFCTEUgICAgKDEgPDwgNikKPj4KPj4gKy8qIFBURSAoUGFnZSBU YWJsZSBFbnRyeSkgZnJhZ21lbnQgZmllbGQgZm9yIGRpZmZlcmVudCBwYWdlIHNpemVzICovCj4+ ICsjZGVmaW5lIFI2MDBfUFRFX0ZSQUdfNEtCICAgICgwIDw8IDcpCj4+ICsjZGVmaW5lIFI2MDBf UFRFX0ZSQUdfNjRLQiAgICAoNCA8PCA3KQo+PiArI2RlZmluZSBSNjAwX1BURV9GUkFHXzI1NktC ICAgICg2IDw8IDcpCj4+ICsKPj4gIHN0cnVjdCByYWRlb25fdm1fcHQgewo+PiAgICAgIHN0cnVj dCByYWRlb25fYm8gICAgICAgICpibzsKPj4gICAgICB1aW50NjRfdCAgICAgICAgICAgIGFkZHI7 Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl92bS5jCj4+IGIv ZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fdm0uYwo+PiBpbmRleCAyYWFlNmNlLi42YmY2 NTZlIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl92bS5jCj4+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX3ZtLmMKPj4gQEAgLTY1OCw2ICs2 NTgsODQgQEAgaW50IHJhZGVvbl92bV91cGRhdGVfcGFnZV9kaXJlY3Rvcnkoc3RydWN0Cj4+IHJh ZGVvbl9kZXZpY2UgKnJkZXYsCj4+ICB9Cj4+Cj4+ICAvKioKPj4gKyAqIHJhZGVvbl92bV9mcmFn X3B0ZXMgLSBhZGQgZnJhZ21lbnQgaW5mb3JtYXRpb24gdG8gUFRFcwo+PiArICoKPj4gKyAqIEBy ZGV2OiByYWRlb25fZGV2aWNlIHBvaW50ZXIKPj4gKyAqIEBpYjogSUIgZm9yIHRoZSB1cGRhdGUK Pj4gKyAqIEBwZV9zdGFydDogZmlyc3QgUFRFIHRvIGhhbmRsZQo+PiArICogQHBlX2VuZDogbGFz dCBQVEUgdG8gaGFuZGxlCj4+ICsgKiBAYWRkcjogYWRkciB0aG9zZSBQVEVzIHNob3VsZCBwb2lu dCB0bwo+PiArICogQGZsYWdzOiBodyBtYXBwaW5nIGZsYWdzCj4+ICsgKgo+PiArICogR2xvYmFs IGFuZCBsb2NhbCBtdXRleCBtdXN0IGJlIGxvY2tlZCEKPj4gKyAqLwo+PiArc3RhdGljIHZvaWQg cmFkZW9uX3ZtX2ZyYWdfcHRlcyhzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKPj4gKyAgICAg ICAgICAgICAgICBzdHJ1Y3QgcmFkZW9uX2liICppYiwKPj4gKyAgICAgICAgICAgICAgICB1aW50 NjRfdCBwZV9zdGFydCwgdWludDY0X3QgcGVfZW5kLAo+PiArICAgICAgICAgICAgICAgIHVpbnQ2 NF90IGFkZHIsIHVpbnQzMl90IGZsYWdzKQo+PiArewo+PiArICAgIC8qKgo+PiArICAgICAqIFRo ZSBNQyBMMSBUTEIgc3VwcG9ydHMgdmFyaWFibGUgc2l6ZWQgcGFnZXMsIGJhc2VkIG9uIGEgZnJh Z21lbnQKPj4gKyAgICAgKiBmaWVsZCBpbiB0aGUgUFRFLiBXaGVuIHRoaXMgZmllbGQgaXMgc2V0 IHRvIGEgbm9uLXplcm8gdmFsdWUsIAo+PiBwYWdlCj4+ICsgICAgICogZ3JhbnVsYXJpdHkgaXMg aW5jcmVhc2VkIGZyb20gNEtCIHRvICgxIDw8ICgxMiArIGZyYWcpKS4gVGhlIFBURQo+PiArICAg ICAqIGZsYWdzIGFyZSBjb25zaWRlcmVkIHZhbGlkIGZvciBhbGwgUFRFcyB3aXRoaW4gdGhlIGZy YWdtZW50IAo+PiByYW5nZQo+PiArICAgICAqIGFuZCBjb3JyZXNwb25kaW5nIG1hcHBpbmdzIGFy ZSBhc3N1bWVkIHRvIGJlIHBoeXNpY2FsbHkgCj4+IGNvbnRpZ3VvdXMuCj4+ICsgICAgICoKPj4g KyAgICAgKiBUaGUgTDEgVExCIGNhbiBzdG9yZSBhIHNpbmdsZSBQVEUgZm9yIHRoZSB3aG9sZSBm cmFnbWVudCwKPj4gKyAgICAgKiBzaWduaWZpY2FudGx5IGluY3JlYXNpbmcgdGhlIHNwYWNlIGF2 YWlsYWJsZSBmb3IgdHJhbnNsYXRpb24KPj4gKyAgICAgKiBjYWNoaW5nLiBUaGlzIGxlYWRzIHRv IGxhcmdlIGltcHJvdmVtZW50cyBpbiB0aHJvdWdocHV0IHdoZW4gdGhlCj4+ICsgICAgICogVExC IGlzIHVuZGVyIHByZXNzdXJlLgo+PiArICAgICAqCj4+ICsgICAgICogVGhlIEwyIGNhY2hlIGRp c3RyaWJ1dGVzIHNtYWxsIGFuZCBsYXJnZSBmcmFnbWVudHMgaW50byB0d28KPiAgICAgICAgICAg ICAgICAgICBeXl5eXgo+IEFnYWluLCBMMiBUTEIuCj4KPj4gKyAgICAgKiBhc3ltbWV0cmljIHBh cnRpdGlvbnMuIFRoZSBsYXJnZSBmcmFnbWVudCBjYWNoZSBpcyBzaWduaWZpY2FudGx5Cj4+ICsg ICAgICogbGFyZ2VyLiBUaHVzLCB3ZSB0cnkgdG8gdXNlIGxhcmdlIGZyYWdtZW50cyB3aGVyZXZl ciBwb3NzaWJsZS4KPj4gKyAgICAgKiBVc2Vyc3BhY2UgY2FuIHN1cHBvcnQgdGhpcyBieSBhbGln bmluZyB2aXJ0dWFsIGJhc2UgYWRkcmVzcyBhbmQKPj4gKyAgICAgKiBhbGxvY2F0aW9uIHNpemUg dG8gdGhlIGZyYWdtZW50IHNpemUuCj4+ICsgICAgICovCj4+ICsKPj4gKyAgICAvKiBOSSBpcyBv cHRpbWl6ZWQgZm9yIDI1NktCIGZyYWdtZW50cywgU0kgYW5kIG5ld2VyIGZvciA2NEtCICovCj4+ ICsgICAgdWludDY0X3QgZnJhZ19mbGFncyA9IHJkZXYtPmZhbWlseSA9PSBDSElQX0NBWU1BTiA/ Cj4+ICsgICAgICAgICAgICBSNjAwX1BURV9GUkFHXzI1NktCIDogUjYwMF9QVEVfRlJBR182NEtC Owo+PiArICAgIHVpbnQ2NF90IGZyYWdfYWxpZ24gPSByZGV2LT5mYW1pbHkgPT0gQ0hJUF9DQVlN QU4gPyAweDIwMCA6IDB4ODA7Cj4+ICsKPj4gKyAgICB1aW50NjRfdCBmcmFnX3N0YXJ0ID0gQUxJ R04ocGVfc3RhcnQsIGZyYWdfYWxpZ24pOwo+PiArICAgIHVpbnQ2NF90IGZyYWdfZW5kID0gcGVf ZW5kICYgfihmcmFnX2FsaWduIC0gMSk7Cj4+ICsKPj4gKyAgICB1bnNpZ25lZCBjb3VudDsKPj4g Kwo+PiArICAgIC8qIHN5c3RlbSBwYWdlcyBhcmUgbm9uIGNvbnRpbnVvdXNseSAqLwo+PiArICAg IGlmICgoZmxhZ3MgJiBSNjAwX1BURV9TWVNURU0pIHx8ICEoZmxhZ3MgJiBSNjAwX1BURV9WQUxJ RCkgfHwKPj4gKyAgICAgICAgKGZyYWdfc3RhcnQgPj0gZnJhZ19lbmQpKSB7Cj4+ICsKPj4gKyAg ICAgICAgY291bnQgPSAocGVfZW5kIC0gcGVfc3RhcnQpIC8gODsKPj4gKyAgICAgICAgcmFkZW9u X2FzaWNfdm1fc2V0X3BhZ2UocmRldiwgaWIsIHBlX3N0YXJ0LCBhZGRyLCBjb3VudCwKPj4gKyAg ICAgICAgICAgICAgICAgICAgUkFERU9OX0dQVV9QQUdFX1NJWkUsIGZsYWdzKTsKPj4gKyAgICAg ICAgcmV0dXJuOwo+PiArICAgIH0KPj4gKwo+PiArICAgIC8qIGhhbmRsZSB0aGUgNEsgYXJlYSBh dCB0aGUgYmVnaW5uaW5nICovCj4+ICsgICAgaWYgKHBlX3N0YXJ0ICE9IGZyYWdfc3RhcnQpIHsK Pj4gKyAgICAgICAgY291bnQgPSAoZnJhZ19zdGFydCAtIHBlX3N0YXJ0KSAvIDg7Cj4+ICsgICAg ICAgIHJhZGVvbl9hc2ljX3ZtX3NldF9wYWdlKHJkZXYsIGliLCBwZV9zdGFydCwgYWRkciwgY291 bnQsCj4+ICsgICAgICAgICAgICAgICAgICAgIFJBREVPTl9HUFVfUEFHRV9TSVpFLCBmbGFncyk7 Cj4+ICsgICAgICAgIGFkZHIgKz0gUkFERU9OX0dQVV9QQUdFX1NJWkUgKiBjb3VudDsKPj4gKyAg ICB9Cj4+ICsKPj4gKyAgICAvKiBoYW5kbGUgdGhlIGFyZWEgaW4gdGhlIG1pZGRsZSAqLwo+PiAr ICAgIGNvdW50ID0gKGZyYWdfZW5kIC0gZnJhZ19zdGFydCkgLyA4Owo+PiArICAgIHJhZGVvbl9h c2ljX3ZtX3NldF9wYWdlKHJkZXYsIGliLCBmcmFnX3N0YXJ0LCBhZGRyLCBjb3VudCwKPj4gKyAg ICAgICAgICAgICAgICBSQURFT05fR1BVX1BBR0VfU0laRSwgZmxhZ3MgfCBmcmFnX2ZsYWdzKTsK Pj4gKwo+PiArICAgIC8qIGhhbmRsZSB0aGUgNEsgYXJlYSBhdCB0aGUgZW5kICovCj4+ICsgICAg aWYgKGZyYWdfZW5kICE9IHBlX2VuZCkgewo+PiArICAgICAgICBhZGRyICs9IFJBREVPTl9HUFVf UEFHRV9TSVpFICogY291bnQ7Cj4+ICsgICAgICAgIGNvdW50ID0gKHBlX2VuZCAtIGZyYWdfZW5k KSAvIDg7Cj4+ICsgICAgICAgIHJhZGVvbl9hc2ljX3ZtX3NldF9wYWdlKHJkZXYsIGliLCBmcmFn X2VuZCwgYWRkciwgY291bnQsCj4+ICsgICAgICAgICAgICAgICAgICAgIFJBREVPTl9HUFVfUEFH RV9TSVpFLCBmbGFncyk7Cj4+ICsgICAgfQo+PiArfQo+PiArCj4+ICsvKioKPj4gICAqIHJhZGVv bl92bV91cGRhdGVfcHRlcyAtIG1ha2Ugc3VyZSB0aGF0IHBhZ2UgdGFibGVzIGFyZSB2YWxpZAo+ PiAgICoKPj4gICAqIEByZGV2OiByYWRlb25fZGV2aWNlIHBvaW50ZXIKPj4gQEAgLTcwMywxMCAr NzgxLDkgQEAgc3RhdGljIHZvaWQgcmFkZW9uX3ZtX3VwZGF0ZV9wdGVzKHN0cnVjdAo+PiByYWRl b25fZGV2aWNlICpyZGV2LAo+PiAgICAgICAgICBpZiAoKGxhc3RfcHRlICsgOCAqIGNvdW50KSAh PSBwdGUpIHsKPj4KPj4gICAgICAgICAgICAgIGlmIChjb3VudCkgewo+PiAtICAgICAgICAgICAg ICAgIHJhZGVvbl9hc2ljX3ZtX3NldF9wYWdlKHJkZXYsIGliLCBsYXN0X3B0ZSwKPj4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICBsYXN0X2RzdCwgY291bnQsCj4+IC0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgUkFERU9OX0dQVV9QQUdFX1NJWkUsCj4+IC0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgZmxhZ3MpOwo+PiArICAgICAgICAgICAgICAgIHJhZGVvbl92bV9mcmFnX3B0 ZXMocmRldiwgaWIsIGxhc3RfcHRlLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxh c3RfcHRlICsgOCAqIGNvdW50LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Rf ZHN0LCBmbGFncyk7Cj4+ICAgICAgICAgICAgICB9Cj4+Cj4+ICAgICAgICAgICAgICBjb3VudCA9 IG5wdGVzOwo+PiBAQCAtNzIxLDkgKzc5OCw5IEBAIHN0YXRpYyB2b2lkIHJhZGVvbl92bV91cGRh dGVfcHRlcyhzdHJ1Y3QKPj4gcmFkZW9uX2RldmljZSAqcmRldiwKPj4gICAgICB9Cj4+Cj4+ICAg ICAgaWYgKGNvdW50KSB7Cj4+IC0gICAgICAgIHJhZGVvbl9hc2ljX3ZtX3NldF9wYWdlKHJkZXYs IGliLCBsYXN0X3B0ZSwKPj4gLSAgICAgICAgICAgICAgICAgICAgbGFzdF9kc3QsIGNvdW50LAo+ PiAtICAgICAgICAgICAgICAgICAgICBSQURFT05fR1BVX1BBR0VfU0laRSwgZmxhZ3MpOwo+PiAr ICAgICAgICByYWRlb25fdm1fZnJhZ19wdGVzKHJkZXYsIGliLCBsYXN0X3B0ZSwKPj4gKyAgICAg ICAgICAgICAgICAgICAgbGFzdF9wdGUgKyA4ICogY291bnQsCj4+ICsgICAgICAgICAgICAgICAg ICAgIGxhc3RfZHN0LCBmbGFncyk7Cj4+ICAgICAgfQo+PiAgfQo+Pgo+PiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9zaS5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9zaS5j Cj4+IGluZGV4IDIyYTYzYzkuLmRlY2UzYmUgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vc2kuYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3NpLmMKPj4gQEAg LTQwNDQsMTggKzQwNDQsMjEgQEAgc3RhdGljIGludCBzaV9wY2llX2dhcnRfZW5hYmxlKHN0cnVj dAo+PiByYWRlb25fZGV2aWNlICpyZGV2KQo+PiAgICAgIFdSRUczMihNQ19WTV9NWF9MMV9UTEJf Q05UTCwKPj4gICAgICAgICAgICAgKDB4QSA8PCA3KSB8Cj4+ICAgICAgICAgICAgIEVOQUJMRV9M MV9UTEIgfAo+PiArICAgICAgICAgICBFTkFCTEVfTDFfRlJBR01FTlRfUFJPQ0VTU0lORyB8Cj4+ ICAgICAgICAgICAgIFNZU1RFTV9BQ0NFU1NfTU9ERV9OT1RfSU5fU1lTIHwKPj4gICAgICAgICAg ICAgRU5BQkxFX0FEVkFOQ0VEX0RSSVZFUl9NT0RFTCB8Cj4+ICAgICAgICAgICAgIFNZU1RFTV9B UEVSVFVSRV9VTk1BUFBFRF9BQ0NFU1NfUEFTU19USFJVKTsKPj4gICAgICAvKiBTZXR1cCBMMiBj YWNoZSAqLwo+PiAgICAgIFdSRUczMihWTV9MMl9DTlRMLCBFTkFCTEVfTDJfQ0FDSEUgfAo+PiAr ICAgICAgICAgICBFTkFCTEVfTDJfRlJBR01FTlRfUFJPQ0VTU0lORyB8Cj4+ICAgICAgICAgICAg IEVOQUJMRV9MMl9QVEVfQ0FDSEVfTFJVX1VQREFURV9CWV9XUklURSB8Cj4+ICAgICAgICAgICAg IEVOQUJMRV9MMl9QREUwX0NBQ0hFX0xSVV9VUERBVEVfQllfV1JJVEUgfAo+PiAgICAgICAgICAg ICBFRkZFQ1RJVkVfTDJfUVVFVUVfU0laRSg3KSB8Cj4+ICAgICAgICAgICAgIENPTlRFWFQxX0lE RU5USVRZX0FDQ0VTU19NT0RFKDEpKTsKPj4gICAgICBXUkVHMzIoVk1fTDJfQ05UTDIsIElOVkFM SURBVEVfQUxMX0wxX1RMQlMgfCBJTlZBTElEQVRFX0wyX0NBQ0hFKTsKPj4gICAgICBXUkVHMzIo Vk1fTDJfQ05UTDMsIEwyX0NBQ0hFX0JJR0tfQVNTT0NJQVRJVklUWSB8Cj4+IC0gICAgICAgICAg IEwyX0NBQ0hFX0JJR0tfRlJBR01FTlRfU0laRSgwKSk7Cj4+ICsgICAgICAgICAgIEJBTktfU0VM RUNUKDQpIHwKPj4gKyAgICAgICAgICAgTDJfQ0FDSEVfQklHS19GUkFHTUVOVF9TSVpFKDQpKTsK Pj4gICAgICAvKiBzZXR1cCBjb250ZXh0MCAqLwo+PiAgICAgIFdSRUczMihWTV9DT05URVhUMF9Q QUdFX1RBQkxFX1NUQVJUX0FERFIsIHJkZXYtPm1jLmd0dF9zdGFydCA+PiAKPj4gMTIpOwo+PiAg ICAgIFdSRUczMihWTV9DT05URVhUMF9QQUdFX1RBQkxFX0VORF9BRERSLCByZGV2LT5tYy5ndHRf ZW5kID4+IDEyKTsKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwo+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCj4gaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Ry aS1kZXZlbAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK