From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 10/12] drm: allow removal of legacy codepaths (v4) Date: Tue, 23 Apr 2019 20:53:45 +0200 Message-ID: <20190423185345.GF9857@phenom.ffwll.local> References: <20190423020041.32702-1-airlied@gmail.com> <20190423020041.32702-11-airlied@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x541.google.com (mail-ed1-x541.google.com [IPv6:2a00:1450:4864:20::541]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8A5E8895EE for ; Tue, 23 Apr 2019 18:53:49 +0000 (UTC) Received: by mail-ed1-x541.google.com with SMTP id c1so7662775edk.5 for ; Tue, 23 Apr 2019 11:53:49 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20190423020041.32702-11-airlied@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Dave Airlie Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBBcHIgMjMsIDIwMTkgYXQgMTI6MDA6MzlQTSArMTAwMCwgRGF2ZSBBaXJsaWUgd3Jv dGU6Cj4gRnJvbTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KPiAKPiBJZiB5b3Ug ZG9uJ3Qgd2FudCB0aGUgbGVnYWN5IGRyaXZlcnMsIHRoZW4gbGV0cyBnZXQgcmlkIG9mIGFsbCB0 aGUKPiBsZWdhY3kgY29kZXBhdGhzIGZyb20gdGhlIGNvcmUgbW9kdWxlLgo+IAo+IFRoaXMgZHJv cCB0aGUgc2l6ZSBvZiBkcm0ua28gZm9yIG1lIGJ5IGFib3V0IDEwJS4KPiAgMzgwNTE1ICAgIDc0 MjIgICAgNDE5MiAgMzkyMTI5ICAgNWZiYzEgLi4vLi4vZHJtLW5leHQtYnVpbGQvZHJpdmVycy9n cHUvZHJtL2RybS5rbwo+ICAzNTE3MzYJICAgNzI5OAkgICA0MTkyCSAzNjMyMjYJICA1OGFkYQku Li8uLi9kcm0tbmV4dC1idWlsZC9kcml2ZXJzL2dwdS9kcm0vZHJtLmtvCj4gCj4gdjI6IGRyb3Ag ZHJtX2xvY2sgYXMgd2VsbCwgZml4IHNvbWUgRE1BLT5EUk0gdHlwb3MKPiB2MzogYXZvaWQgaWZk ZWZzIGluIG1haW5saW5lIGNvZGUKPiB2NDogcmV3b3JrIGlvY3RsIGRlZnMKPiAKPiBTaWduZWQt b2ZmLWJ5OiBEYXZlIEFpcmxpZSA8YWlybGllZEByZWRoYXQuY29tPgoKQmlrZXNoZWQgbG9va3Mg YXBwZWFsaW5nIGVub3VnaCBub3cgSSB0aGluayA6LSkgQW5kIHRoZQpEUk1fTEVHQUNZX0lPQ1RM X0RFRiBpcyBhIG5lYXQgdHJpY2suCgpSZXZpZXdlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVs LnZldHRlckBmZndsbC5jaD4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL01ha2VmaWxlICAgICAg ICB8ICA3ICsrLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1faW50ZXJuYWwuaCAgfCAgMiArKwo+ ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2lvYzMyLmMgICAgIHwgMTMgKysrKysrKy0KPiAgZHJpdmVy cy9ncHUvZHJtL2RybV9pb2N0bC5jICAgICB8IDU1ICsrKysrKysrKysrKysrKysrKystLS0tLS0t LS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5jICAgICAgIHwgIDIgKysKPiAgZHJp dmVycy9ncHUvZHJtL2RybV9sZWdhY3kuaCAgICB8IDQyICsrKysrKysrKysrKysrKysrKysrKysr LS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV92bS5jICAgICAgICB8ICAyICsrCj4gIGRyaXZlcnMv Z3B1L2RybS9ub3V2ZWF1L0tjb25maWcgfCAgMSArCj4gIDggZmlsZXMgY2hhbmdlZCwgOTMgaW5z ZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9NYWtlZmlsZSBiL2RyaXZlcnMvZ3B1L2RybS9NYWtlZmlsZQo+IGluZGV4IDdlYmFlM2Q0 NTUwNS4uMzQwZTA3NWY2ZTA2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9NYWtlZmls ZQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9NYWtlZmlsZQo+IEBAIC0zLDExICszLDkgQEAKPiAg IyBNYWtlZmlsZSBmb3IgdGhlIGRybSBkZXZpY2UgZHJpdmVyLiAgVGhpcyBkcml2ZXIgcHJvdmlk ZXMgc3VwcG9ydCBmb3IgdGhlCj4gICMgRGlyZWN0IFJlbmRlcmluZyBJbmZyYXN0cnVjdHVyZSAo RFJJKSBpbiBYRnJlZTg2IDQuMS4wIGFuZCBoaWdoZXIuCj4gIAo+IC1kcm0teSAgICAgICA6PQlk cm1fYXV0aC5vIGRybV9idWZzLm8gZHJtX2NhY2hlLm8gXAo+IC0JCWRybV9jb250ZXh0Lm8gZHJt X2RtYS5vIFwKPiArZHJtLXkgICAgICAgOj0JZHJtX2F1dGgubyBkcm1fY2FjaGUubyBcCj4gIAkJ ZHJtX2ZpbGUubyBkcm1fZ2VtLm8gZHJtX2lvY3RsLm8gZHJtX2lycS5vIFwKPiAtCQlkcm1fbG9j ay5vIGRybV9tZW1vcnkubyBkcm1fZHJ2Lm8gXAo+IC0JCWRybV9zY2F0dGVyLm8gZHJtX3BjaS5v IFwKPiArCQlkcm1fbWVtb3J5Lm8gZHJtX2Rydi5vIGRybV9wY2kubyBcCj4gIAkJZHJtX3N5c2Zz Lm8gZHJtX2hhc2h0YWIubyBkcm1fbW0ubyBcCj4gIAkJZHJtX2NydGMubyBkcm1fZm91cmNjLm8g ZHJtX21vZGVzLm8gZHJtX2VkaWQubyBcCj4gIAkJZHJtX2VuY29kZXJfc2xhdmUubyBcCj4gQEAg LTIxLDYgKzE5LDcgQEAgZHJtLXkgICAgICAgOj0JZHJtX2F1dGgubyBkcm1fYnVmcy5vIGRybV9j YWNoZS5vIFwKPiAgCQlkcm1fc3luY29iai5vIGRybV9sZWFzZS5vIGRybV93cml0ZWJhY2subyBk cm1fY2xpZW50Lm8gXAo+ICAJCWRybV9hdG9taWNfdWFwaS5vCj4gIAo+ICtkcm0tJChDT05GSUdf RFJNX0xFR0FDWSkgKz0gZHJtX2J1ZnMubyBkcm1fY29udGV4dC5vIGRybV9kbWEubyBkcm1fc2Nh dHRlci5vIGRybV9sb2NrLm8KPiAgZHJtLSQoQ09ORklHX0RSTV9MSUJfUkFORE9NKSArPSBsaWIv ZHJtX3JhbmRvbS5vCj4gIGRybS0kKENPTkZJR19EUk1fVk0pICs9IGRybV92bS5vCj4gIGRybS0k KENPTkZJR19DT01QQVQpICs9IGRybV9pb2MzMi5vCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1faW50ZXJuYWwuaCBiL2RyaXZlcnMvZ3B1L2RybS9kcm1faW50ZXJuYWwuaAo+IGlu ZGV4IGQ5YTQ4M2E1ZmNlMC4uZTE5YWM3Y2E2MDJkIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1faW50ZXJuYWwuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1faW50ZXJuYWwu aAo+IEBAIC03MSw4ICs3MSwxMCBAQCBpbnQgZHJtX2xlZ2FjeV9tb2Rlc2V0X2N0bF9pb2N0bChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAvKiBkcm1faXJxLmMgKi8KPiAg Cj4gIC8qIElPQ1RMUyAqLwo+ICsjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJNX0xFR0FDWSkKPiAg aW50IGRybV9sZWdhY3lfaXJxX2NvbnRyb2woc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAq ZGF0YSwKPiAgCQkJICAgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOwo+ICsjZW5kaWYKPiAg Cj4gIGludCBkcm1fY3J0Y19nZXRfc2VxdWVuY2VfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgdm9pZCAqZGF0YSwKPiAgCQkJCXN0cnVjdCBkcm1fZmlsZSAqZmlscCk7Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jMzIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9j MzIuYwo+IGluZGV4IDBlMzA0M2UwOGM2OS4uMzc0YjM3MmRhNThhIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9kcm1faW9jMzIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9j MzIuYwo+IEBAIC0xNTYsNiArMTU2LDcgQEAgc3RhdGljIGludCBjb21wYXRfZHJtX3NldHVuaXF1 ZShzdHJ1Y3QgZmlsZSAqZmlsZSwgdW5zaWduZWQgaW50IGNtZCwKPiAgCXJldHVybiAtRUlOVkFM Owo+ICB9Cj4gIAo+ICsjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJNX0xFR0FDWSkKPiAgdHlwZWRl ZiBzdHJ1Y3QgZHJtX21hcDMyIHsKPiAgCXUzMiBvZmZzZXQ7CQkvKiBSZXF1ZXN0ZWQgcGh5c2lj YWwgYWRkcmVzcyAoMCBmb3IgU0FSRUEpICovCj4gIAl1MzIgc2l6ZTsJCS8qIFJlcXVlc3RlZCBw aHlzaWNhbCBzaXplIChieXRlcykgKi8KPiBAQCAtMjM5LDYgKzI0MCw3IEBAIHN0YXRpYyBpbnQg Y29tcGF0X2RybV9ybW1hcChzdHJ1Y3QgZmlsZSAqZmlsZSwgdW5zaWduZWQgaW50IGNtZCwKPiAg CW1hcC5oYW5kbGUgPSBjb21wYXRfcHRyKGhhbmRsZSk7Cj4gIAlyZXR1cm4gZHJtX2lvY3RsX2tl cm5lbChmaWxlLCBkcm1fbGVnYWN5X3JtbWFwX2lvY3RsLCAmbWFwLCBEUk1fQVVUSCk7Cj4gIH0K PiArI2VuZGlmCj4gIAo+ICB0eXBlZGVmIHN0cnVjdCBkcm1fY2xpZW50MzIgewo+ICAJaW50IGlk eDsJLyogV2hpY2ggY2xpZW50IGRlc2lyZWQ/ICovCj4gQEAgLTMwMSw2ICszMDMsNyBAQCBzdGF0 aWMgaW50IGNvbXBhdF9kcm1fZ2V0c3RhdHMoc3RydWN0IGZpbGUgKmZpbGUsIHVuc2lnbmVkIGlu dCBjbWQsCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiArI2lmIElTX0VOQUJMRUQoQ09ORklHX0RS TV9MRUdBQ1kpCj4gIHR5cGVkZWYgc3RydWN0IGRybV9idWZfZGVzYzMyIHsKPiAgCWludCBjb3Vu dDsJCSAvKiBOdW1iZXIgb2YgYnVmZmVycyBvZiB0aGlzIHNpemUgKi8KPiAgCWludCBzaXplOwkJ IC8qIFNpemUgaW4gYnl0ZXMgKi8KPiBAQCAtNjA0LDYgKzYwNyw3IEBAIHN0YXRpYyBpbnQgY29t cGF0X2RybV9kbWEoc3RydWN0IGZpbGUgKmZpbGUsIHVuc2lnbmVkIGludCBjbWQsCj4gIAo+ICAJ cmV0dXJuIDA7Cj4gIH0KPiArI2VuZGlmCj4gIAo+ICAjaWYgSVNfRU5BQkxFRChDT05GSUdfQUdQ KQo+ICB0eXBlZGVmIHN0cnVjdCBkcm1fYWdwX21vZGUzMiB7Cj4gQEAgLTc0OCw2ICs3NTIsNyBA QCBzdGF0aWMgaW50IGNvbXBhdF9kcm1fYWdwX3VuYmluZChzdHJ1Y3QgZmlsZSAqZmlsZSwgdW5z aWduZWQgaW50IGNtZCwKPiAgfQo+ICAjZW5kaWYgLyogQ09ORklHX0FHUCAqLwo+ICAKPiArI2lm IElTX0VOQUJMRUQoQ09ORklHX0RSTV9MRUdBQ1kpCj4gIHR5cGVkZWYgc3RydWN0IGRybV9zY2F0 dGVyX2dhdGhlcjMyIHsKPiAgCXUzMiBzaXplOwkvKio8IEluIGJ5dGVzIC0tIHdpbGwgcm91bmQg dG8gcGFnZSBib3VuZGFyeSAqLwo+ICAJdTMyIGhhbmRsZTsJLyoqPCBVc2VkIGZvciBtYXBwaW5n IC8gdW5tYXBwaW5nICovCj4gQEAgLTc4OCw3ICs3OTMsNyBAQCBzdGF0aWMgaW50IGNvbXBhdF9k cm1fc2dfZnJlZShzdHJ1Y3QgZmlsZSAqZmlsZSwgdW5zaWduZWQgaW50IGNtZCwKPiAgCXJldHVy biBkcm1faW9jdGxfa2VybmVsKGZpbGUsIGRybV9sZWdhY3lfc2dfZnJlZSwgJnJlcXVlc3QsCj4g IAkJCQlEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpOwo+ICB9Cj4gLQo+ICsjZW5k aWYKPiAgI2lmIGRlZmluZWQoQ09ORklHX1g4NikKPiAgdHlwZWRlZiBzdHJ1Y3QgZHJtX3VwZGF0 ZV9kcmF3MzIgewo+ICAJZHJtX2RyYXdhYmxlX3QgaGFuZGxlOwo+IEBAIC05MDMsMTAgKzkwOCwx MyBAQCBzdGF0aWMgc3RydWN0IHsKPiAgI2RlZmluZSBEUk1fSU9DVEwzMl9ERUYobiwgZikgW0RS TV9JT0NUTF9OUihuIyMzMildID0gey5mbiA9IGYsIC5uYW1lID0gI259Cj4gIAlEUk1fSU9DVEwz Ml9ERUYoRFJNX0lPQ1RMX1ZFUlNJT04sIGNvbXBhdF9kcm1fdmVyc2lvbiksCj4gIAlEUk1fSU9D VEwzMl9ERUYoRFJNX0lPQ1RMX0dFVF9VTklRVUUsIGNvbXBhdF9kcm1fZ2V0dW5pcXVlKSwKPiAr I2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9MRUdBQ1kpCj4gIAlEUk1fSU9DVEwzMl9ERUYoRFJN X0lPQ1RMX0dFVF9NQVAsIGNvbXBhdF9kcm1fZ2V0bWFwKSwKPiArI2VuZGlmCj4gIAlEUk1fSU9D VEwzMl9ERUYoRFJNX0lPQ1RMX0dFVF9DTElFTlQsIGNvbXBhdF9kcm1fZ2V0Y2xpZW50KSwKPiAg CURSTV9JT0NUTDMyX0RFRihEUk1fSU9DVExfR0VUX1NUQVRTLCBjb21wYXRfZHJtX2dldHN0YXRz KSwKPiAgCURSTV9JT0NUTDMyX0RFRihEUk1fSU9DVExfU0VUX1VOSVFVRSwgY29tcGF0X2RybV9z ZXR1bmlxdWUpLAo+ICsjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJNX0xFR0FDWSkKPiAgCURSTV9J T0NUTDMyX0RFRihEUk1fSU9DVExfQUREX01BUCwgY29tcGF0X2RybV9hZGRtYXApLAo+ICAJRFJN X0lPQ1RMMzJfREVGKERSTV9JT0NUTF9BRERfQlVGUywgY29tcGF0X2RybV9hZGRidWZzKSwKPiAg CURSTV9JT0NUTDMyX0RFRihEUk1fSU9DVExfTUFSS19CVUZTLCBjb21wYXRfZHJtX21hcmtidWZz KSwKPiBAQCAtOTE4LDYgKzkyNiw3IEBAIHN0YXRpYyBzdHJ1Y3Qgewo+ICAJRFJNX0lPQ1RMMzJf REVGKERSTV9JT0NUTF9HRVRfU0FSRUFfQ1RYLCBjb21wYXRfZHJtX2dldHNhcmVhY3R4KSwKPiAg CURSTV9JT0NUTDMyX0RFRihEUk1fSU9DVExfUkVTX0NUWCwgY29tcGF0X2RybV9yZXNjdHgpLAo+ ICAJRFJNX0lPQ1RMMzJfREVGKERSTV9JT0NUTF9ETUEsIGNvbXBhdF9kcm1fZG1hKSwKPiArI2Vu ZGlmCj4gICNpZiBJU19FTkFCTEVEKENPTkZJR19BR1ApCj4gIAlEUk1fSU9DVEwzMl9ERUYoRFJN X0lPQ1RMX0FHUF9FTkFCTEUsIGNvbXBhdF9kcm1fYWdwX2VuYWJsZSksCj4gIAlEUk1fSU9DVEwz Ml9ERUYoRFJNX0lPQ1RMX0FHUF9JTkZPLCBjb21wYXRfZHJtX2FncF9pbmZvKSwKPiBAQCAtOTI2 LDggKzkzNSwxMCBAQCBzdGF0aWMgc3RydWN0IHsKPiAgCURSTV9JT0NUTDMyX0RFRihEUk1fSU9D VExfQUdQX0JJTkQsIGNvbXBhdF9kcm1fYWdwX2JpbmQpLAo+ICAJRFJNX0lPQ1RMMzJfREVGKERS TV9JT0NUTF9BR1BfVU5CSU5ELCBjb21wYXRfZHJtX2FncF91bmJpbmQpLAo+ICAjZW5kaWYKPiAr I2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9MRUdBQ1kpCj4gIAlEUk1fSU9DVEwzMl9ERUYoRFJN X0lPQ1RMX1NHX0FMTE9DLCBjb21wYXRfZHJtX3NnX2FsbG9jKSwKPiAgCURSTV9JT0NUTDMyX0RF RihEUk1fSU9DVExfU0dfRlJFRSwgY29tcGF0X2RybV9zZ19mcmVlKSwKPiArI2VuZGlmCj4gICNp ZiBkZWZpbmVkKENPTkZJR19YODYpIHx8IGRlZmluZWQoQ09ORklHX0lBNjQpCj4gIAlEUk1fSU9D VEwzMl9ERUYoRFJNX0lPQ1RMX1VQREFURV9EUkFXLCBjb21wYXRfZHJtX3VwZGF0ZV9kcmF3KSwK PiAgI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYwo+IGluZGV4IGNlOGE3MDg3NWJkNS4uNTg3ODE0NTA3 N2QwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYwo+IEBAIC01NTMsNiArNTUzLDEyIEBAIEVYUE9SVF9T WU1CT0woZHJtX2lvY3RsX3Blcm1pdCk7Cj4gIAkJLm5hbWUgPSAjaW9jdGwJCQlcCj4gIAl9Cj4g IAo+ICsjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJNX0xFR0FDWSkKPiArI2RlZmluZSBEUk1fTEVH QUNZX0lPQ1RMX0RFRihpb2N0bCwgX2Z1bmMsIF9mbGFncykgIERSTV9JT0NUTF9ERUYoaW9jdGws IF9mdW5jLCBfZmxhZ3MpCj4gKyNlbHNlCj4gKyNkZWZpbmUgRFJNX0xFR0FDWV9JT0NUTF9ERUYo aW9jdGwsIF9mdW5jLCBfZmxhZ3MpIERSTV9JT0NUTF9ERUYoaW9jdGwsIGRybV9pbnZhbGlkX29w LCBfZmxhZ3MpCj4gKyNlbmRpZgo+ICsKPiAgLyogSW9jdGwgdGFibGUgKi8KPiAgc3RhdGljIGNv bnN0IHN0cnVjdCBkcm1faW9jdGxfZGVzYyBkcm1faW9jdGxzW10gPSB7Cj4gIAlEUk1fSU9DVExf REVGKERSTV9JT0NUTF9WRVJTSU9OLCBkcm1fdmVyc2lvbiwKPiBAQCAtNTYwLDcgKzU2Niw5IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2lvY3RsX2Rlc2MgZHJtX2lvY3Rsc1tdID0gewo+ICAJ RFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfR0VUX1VOSVFVRSwgZHJtX2dldHVuaXF1ZSwgRFJNX1VO TE9DS0VEKSwKPiAgCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0dFVF9NQUdJQywgZHJtX2dldG1h Z2ljLCBEUk1fVU5MT0NLRUQpLAo+ICAJRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfSVJRX0JVU0lE LCBkcm1faXJxX2J5X2J1c2lkLCBEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+IC0JRFJNX0lP Q1RMX0RFRihEUk1fSU9DVExfR0VUX01BUCwgZHJtX2xlZ2FjeV9nZXRtYXBfaW9jdGwsIERSTV9V TkxPQ0tFRCksCj4gKwo+ICsJRFJNX0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0dFVF9NQVAs IGRybV9sZWdhY3lfZ2V0bWFwX2lvY3RsLCBEUk1fVU5MT0NLRUQpLAo+ICsKPiAgCURSTV9JT0NU TF9ERUYoRFJNX0lPQ1RMX0dFVF9DTElFTlQsIGRybV9nZXRjbGllbnQsIERSTV9VTkxPQ0tFRCks Cj4gIAlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9HRVRfU1RBVFMsIGRybV9nZXRzdGF0cywgRFJN X1VOTE9DS0VEKSwKPiAgCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0dFVF9DQVAsIGRybV9nZXRj YXAsIERSTV9VTkxPQ0tFRHxEUk1fUkVOREVSX0FMTE9XKSwKPiBAQCAtNTcyLDM5ICs1ODAsMzgg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1faW9jdGxfZGVzYyBkcm1faW9jdGxzW10gPSB7Cj4g IAlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9VTkJMT0NLLCBkcm1fbm9vcCwgRFJNX0FVVEh8RFJN X01BU1RFUnxEUk1fUk9PVF9PTkxZKSwKPiAgCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0FVVEhf TUFHSUMsIGRybV9hdXRobWFnaWMsIERSTV9VTkxPQ0tFRHxEUk1fTUFTVEVSKSwKPiAgCj4gLQlE Uk1fSU9DVExfREVGKERSTV9JT0NUTF9BRERfTUFQLCBkcm1fbGVnYWN5X2FkZG1hcF9pb2N0bCwg RFJNX0FVVEh8RFJNX01BU1RFUnxEUk1fUk9PVF9PTkxZKSwKPiAtCURSTV9JT0NUTF9ERUYoRFJN X0lPQ1RMX1JNX01BUCwgZHJtX2xlZ2FjeV9ybW1hcF9pb2N0bCwgRFJNX0FVVEgpLAo+ICsJRFJN X0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0FERF9NQVAsIGRybV9sZWdhY3lfYWRkbWFwX2lv Y3RsLCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+ICsJRFJNX0xFR0FDWV9J T0NUTF9ERUYoRFJNX0lPQ1RMX1JNX01BUCwgZHJtX2xlZ2FjeV9ybW1hcF9pb2N0bCwgRFJNX0FV VEgpLAo+ICAKPiAtCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1NFVF9TQVJFQV9DVFgsIGRybV9s ZWdhY3lfc2V0c2FyZWFjdHgsIERSTV9BVVRIfERSTV9NQVNURVJ8RFJNX1JPT1RfT05MWSksCj4g LQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9HRVRfU0FSRUFfQ1RYLCBkcm1fbGVnYWN5X2dldHNh cmVhY3R4LCBEUk1fQVVUSCksCj4gKwlEUk1fTEVHQUNZX0lPQ1RMX0RFRihEUk1fSU9DVExfU0VU X1NBUkVBX0NUWCwgZHJtX2xlZ2FjeV9zZXRzYXJlYWN0eCwgRFJNX0FVVEh8RFJNX01BU1RFUnxE Uk1fUk9PVF9PTkxZKSwKPiArCURSTV9MRUdBQ1lfSU9DVExfREVGKERSTV9JT0NUTF9HRVRfU0FS RUFfQ1RYLCBkcm1fbGVnYWN5X2dldHNhcmVhY3R4LCBEUk1fQVVUSCksCj4gIAo+ICAJRFJNX0lP Q1RMX0RFRihEUk1fSU9DVExfU0VUX01BU1RFUiwgZHJtX3NldG1hc3Rlcl9pb2N0bCwgRFJNX1VO TE9DS0VEfERSTV9ST09UX09OTFkpLAo+ICAJRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfRFJPUF9N QVNURVIsIGRybV9kcm9wbWFzdGVyX2lvY3RsLCBEUk1fVU5MT0NLRUR8RFJNX1JPT1RfT05MWSks Cj4gIAo+IC0JRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfQUREX0NUWCwgZHJtX2xlZ2FjeV9hZGRj dHgsIERSTV9BVVRIfERSTV9ST09UX09OTFkpLAo+IC0JRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExf Uk1fQ1RYLCBkcm1fbGVnYWN5X3JtY3R4LCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09O TFkpLAo+IC0JRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfTU9EX0NUWCwgZHJtX25vb3AsIERSTV9B VVRIfERSTV9NQVNURVJ8RFJNX1JPT1RfT05MWSksCj4gLQlEUk1fSU9DVExfREVGKERSTV9JT0NU TF9HRVRfQ1RYLCBkcm1fbGVnYWN5X2dldGN0eCwgRFJNX0FVVEgpLAo+IC0JRFJNX0lPQ1RMX0RF RihEUk1fSU9DVExfU1dJVENIX0NUWCwgZHJtX2xlZ2FjeV9zd2l0Y2hjdHgsIERSTV9BVVRIfERS TV9NQVNURVJ8RFJNX1JPT1RfT05MWSksCj4gLQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9ORVdf Q1RYLCBkcm1fbGVnYWN5X25ld2N0eCwgRFJNX0FVVEh8RFJNX01BU1RFUnxEUk1fUk9PVF9PTkxZ KSwKPiAtCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1JFU19DVFgsIGRybV9sZWdhY3lfcmVzY3R4 LCBEUk1fQVVUSCksCj4gKwlEUk1fTEVHQUNZX0lPQ1RMX0RFRihEUk1fSU9DVExfQUREX0NUWCwg ZHJtX2xlZ2FjeV9hZGRjdHgsIERSTV9BVVRIfERSTV9ST09UX09OTFkpLAo+ICsJRFJNX0xFR0FD WV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1JNX0NUWCwgZHJtX2xlZ2FjeV9ybWN0eCwgRFJNX0FVVEh8 RFJNX01BU1RFUnxEUk1fUk9PVF9PTkxZKSwKPiArCURSTV9MRUdBQ1lfSU9DVExfREVGKERSTV9J T0NUTF9NT0RfQ1RYLCBkcm1fbm9vcCwgRFJNX0FVVEh8RFJNX01BU1RFUnxEUk1fUk9PVF9PTkxZ KSwKPiArCURSTV9MRUdBQ1lfSU9DVExfREVGKERSTV9JT0NUTF9HRVRfQ1RYLCBkcm1fbGVnYWN5 X2dldGN0eCwgRFJNX0FVVEgpLAo+ICsJRFJNX0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1NX SVRDSF9DVFgsIGRybV9sZWdhY3lfc3dpdGNoY3R4LCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9S T09UX09OTFkpLAo+ICsJRFJNX0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX05FV19DVFgsIGRy bV9sZWdhY3lfbmV3Y3R4LCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+ICsJ RFJNX0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1JFU19DVFgsIGRybV9sZWdhY3lfcmVzY3R4 LCBEUk1fQVVUSCksCj4gIAo+ICAJRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfQUREX0RSQVcsIGRy bV9ub29wLCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+ICAJRFJNX0lPQ1RM X0RFRihEUk1fSU9DVExfUk1fRFJBVywgZHJtX25vb3AsIERSTV9BVVRIfERSTV9NQVNURVJ8RFJN X1JPT1RfT05MWSksCj4gIAo+IC0JRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExfTE9DSywgZHJtX2xl Z2FjeV9sb2NrLCBEUk1fQVVUSCksCj4gLQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9VTkxPQ0ss IGRybV9sZWdhY3lfdW5sb2NrLCBEUk1fQVVUSCksCj4gKwlEUk1fTEVHQUNZX0lPQ1RMX0RFRihE Uk1fSU9DVExfTE9DSywgZHJtX2xlZ2FjeV9sb2NrLCBEUk1fQVVUSCksCj4gKwlEUk1fTEVHQUNZ X0lPQ1RMX0RFRihEUk1fSU9DVExfVU5MT0NLLCBkcm1fbGVnYWN5X3VubG9jaywgRFJNX0FVVEgp LAo+ICAKPiAgCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0ZJTklTSCwgZHJtX25vb3AsIERSTV9B VVRIKSwKPiAgCj4gLQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9BRERfQlVGUywgZHJtX2xlZ2Fj eV9hZGRidWZzLCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+IC0JRFJNX0lP Q1RMX0RFRihEUk1fSU9DVExfTUFSS19CVUZTLCBkcm1fbGVnYWN5X21hcmtidWZzLCBEUk1fQVVU SHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+IC0JRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExf SU5GT19CVUZTLCBkcm1fbGVnYWN5X2luZm9idWZzLCBEUk1fQVVUSCksCj4gLQlEUk1fSU9DVExf REVGKERSTV9JT0NUTF9NQVBfQlVGUywgZHJtX2xlZ2FjeV9tYXBidWZzLCBEUk1fQVVUSCksCj4g LQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9GUkVFX0JVRlMsIGRybV9sZWdhY3lfZnJlZWJ1ZnMs IERSTV9BVVRIKSwKPiAtCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0RNQSwgZHJtX2xlZ2FjeV9k bWFfaW9jdGwsIERSTV9BVVRIKSwKPiAtCj4gLQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9DT05U Uk9MLCBkcm1fbGVnYWN5X2lycV9jb250cm9sLCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09U X09OTFkpLAo+ICsJRFJNX0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX0FERF9CVUZTLCBkcm1f bGVnYWN5X2FkZGJ1ZnMsIERSTV9BVVRIfERSTV9NQVNURVJ8RFJNX1JPT1RfT05MWSksCj4gKwlE Uk1fTEVHQUNZX0lPQ1RMX0RFRihEUk1fSU9DVExfTUFSS19CVUZTLCBkcm1fbGVnYWN5X21hcmti dWZzLCBEUk1fQVVUSHxEUk1fTUFTVEVSfERSTV9ST09UX09OTFkpLAo+ICsJRFJNX0xFR0FDWV9J T0NUTF9ERUYoRFJNX0lPQ1RMX0lORk9fQlVGUywgZHJtX2xlZ2FjeV9pbmZvYnVmcywgRFJNX0FV VEgpLAo+ICsJRFJNX0xFR0FDWV9JT0NUTF9ERUYoRFJNX0lPQ1RMX01BUF9CVUZTLCBkcm1fbGVn YWN5X21hcGJ1ZnMsIERSTV9BVVRIKSwKPiArCURSTV9MRUdBQ1lfSU9DVExfREVGKERSTV9JT0NU TF9GUkVFX0JVRlMsIGRybV9sZWdhY3lfZnJlZWJ1ZnMsIERSTV9BVVRIKSwKPiArCURSTV9MRUdB Q1lfSU9DVExfREVGKERSTV9JT0NUTF9ETUEsIGRybV9sZWdhY3lfZG1hX2lvY3RsLCBEUk1fQVVU SCksCj4gKwlEUk1fTEVHQUNZX0lPQ1RMX0RFRihEUk1fSU9DVExfQ09OVFJPTCwgZHJtX2xlZ2Fj eV9pcnFfY29udHJvbCwgRFJNX0FVVEh8RFJNX01BU1RFUnxEUk1fUk9PVF9PTkxZKSwKPiAgCj4g ICNpZiBJU19FTkFCTEVEKENPTkZJR19BR1ApCj4gIAlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9B R1BfQUNRVUlSRSwgZHJtX2FncF9hY3F1aXJlX2lvY3RsLCBEUk1fQVVUSHxEUk1fTUFTVEVSfERS TV9ST09UX09OTFkpLAo+IEBAIC02MTcsOCArNjI0LDggQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1faW9jdGxfZGVzYyBkcm1faW9jdGxzW10gPSB7Cj4gIAlEUk1fSU9DVExfREVGKERSTV9JT0NU TF9BR1BfVU5CSU5ELCBkcm1fYWdwX3VuYmluZF9pb2N0bCwgRFJNX0FVVEh8RFJNX01BU1RFUnxE Uk1fUk9PVF9PTkxZKSwKPiAgI2VuZGlmCj4gIAo+IC0JRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExf U0dfQUxMT0MsIGRybV9sZWdhY3lfc2dfYWxsb2MsIERSTV9BVVRIfERSTV9NQVNURVJ8RFJNX1JP T1RfT05MWSksCj4gLQlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9TR19GUkVFLCBkcm1fbGVnYWN5 X3NnX2ZyZWUsIERSTV9BVVRIfERSTV9NQVNURVJ8RFJNX1JPT1RfT05MWSksCj4gKwlEUk1fTEVH QUNZX0lPQ1RMX0RFRihEUk1fSU9DVExfU0dfQUxMT0MsIGRybV9sZWdhY3lfc2dfYWxsb2MsIERS TV9BVVRIfERSTV9NQVNURVJ8RFJNX1JPT1RfT05MWSksCj4gKwlEUk1fTEVHQUNZX0lPQ1RMX0RF RihEUk1fSU9DVExfU0dfRlJFRSwgZHJtX2xlZ2FjeV9zZ19mcmVlLCBEUk1fQVVUSHxEUk1fTUFT VEVSfERSTV9ST09UX09OTFkpLAo+ICAKPiAgCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1dBSVRf VkJMQU5LLCBkcm1fd2FpdF92YmxhbmtfaW9jdGwsIERSTV9VTkxPQ0tFRCksCj4gIAo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9p cnEuYwo+IGluZGV4IDliZDg5MDhkNWZkOC4uMDJmMzhjYzlmNDY4IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9kcm1faXJxLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5j Cj4gQEAgLTIxMyw2ICsyMTMsNyBAQCBpbnQgZHJtX2lycV91bmluc3RhbGwoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKPiAgfQo+ICBFWFBPUlRfU1lNQk9MKGRybV9pcnFfdW5pbnN0YWxsKTsKPiAg Cj4gKyNpZiBJU19FTkFCTEVEKENPTkZJR19EUk1fTEVHQUNZKQo+ICBpbnQgZHJtX2xlZ2FjeV9p cnFfY29udHJvbChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAJCQkgICBz dHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdikKPiAgewo+IEBAIC0yNTMsMyArMjU0LDQgQEAgaW50 IGRybV9sZWdhY3lfaXJxX2NvbnRyb2woc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKPiAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgCX0KPiAgfQo+ICsjZW5kaWYKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2RybV9sZWdhY3kuaCBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fbGVn YWN5LmgKPiBpbmRleCA4ZWUyZGUwNmY5OTkuLjNjMDU0NTJhNzEzNyAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2xlZ2FjeS5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9s ZWdhY3kuaAo+IEBAIC00MiwxMSArNDIsMTkgQEAgc3RydWN0IGRybV9maWxlOwo+ICAjZGVmaW5l IERSTV9LRVJORUxfQ09OVEVYVAkJMAo+ICAjZGVmaW5lIERSTV9SRVNFUlZFRF9DT05URVhUUwkJ MQo+ICAKPiArI2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9MRUdBQ1kpCj4gIHZvaWQgZHJtX2xl Z2FjeV9jdHhiaXRtYXBfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgdm9pZCBkcm1f bGVnYWN5X2N0eGJpdG1hcF9jbGVhbnVwKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+IC12b2lk IGRybV9sZWdhY3lfY3R4Yml0bWFwX2ZyZWUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IGN0 eF9oYW5kbGUpOwo+ICB2b2lkIGRybV9sZWdhY3lfY3R4Yml0bWFwX2ZsdXNoKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSk7Cj4gKyNlbHNlCj4gK3N0YXRpYyBp bmxpbmUgdm9pZCBkcm1fbGVnYWN5X2N0eGJpdG1hcF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpIHt9Cj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVnYWN5X2N0eGJpdG1hcF9jbGVhbnVw KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpIHt9Cj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVn YWN5X2N0eGJpdG1hcF9mbHVzaChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGUpIHt9Cj4gKyNlbmRpZgo+ICAKPiArdm9pZCBkcm1fbGVnYWN5X2N0eGJpdG1hcF9m cmVlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBjdHhfaGFuZGxlKTsKPiArCj4gKyNpZiBJ U19FTkFCTEVEKENPTkZJR19EUk1fTEVHQUNZKQo+ICBpbnQgZHJtX2xlZ2FjeV9yZXNjdHgoc3Ry dWN0IGRybV9kZXZpY2UgKmQsIHZvaWQgKnYsIHN0cnVjdCBkcm1fZmlsZSAqZik7Cj4gIGludCBk cm1fbGVnYWN5X2FkZGN0eChzdHJ1Y3QgZHJtX2RldmljZSAqZCwgdm9pZCAqdiwgc3RydWN0IGRy bV9maWxlICpmKTsKPiAgaW50IGRybV9sZWdhY3lfZ2V0Y3R4KHN0cnVjdCBkcm1fZGV2aWNlICpk LCB2b2lkICp2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmYpOwo+IEBAIC01Niw2ICs2NCw3IEBAIGludCBk cm1fbGVnYWN5X3JtY3R4KHN0cnVjdCBkcm1fZGV2aWNlICpkLCB2b2lkICp2LCBzdHJ1Y3QgZHJt X2ZpbGUgKmYpOwo+ICAKPiAgaW50IGRybV9sZWdhY3lfc2V0c2FyZWFjdHgoc3RydWN0IGRybV9k ZXZpY2UgKmQsIHZvaWQgKnYsIHN0cnVjdCBkcm1fZmlsZSAqZik7Cj4gIGludCBkcm1fbGVnYWN5 X2dldHNhcmVhY3R4KHN0cnVjdCBkcm1fZGV2aWNlICpkLCB2b2lkICp2LCBzdHJ1Y3QgZHJtX2Zp bGUgKmYpOwo+ICsjZW5kaWYKPiAgCj4gIC8qCj4gICAqIEdlbmVyaWMgQnVmZmVyIE1hbmFnZW1l bnQKPiBAQCAtNzMsMTYgKzgyLDIwIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVnYWN5X3Jl bW92ZV9tYXBfaGFzaChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJZHJtX2h0X3JlbW92ZSgm ZGV2LT5tYXBfaGFzaCk7Cj4gIH0KPiAgCj4gKwo+ICsjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJN X0xFR0FDWSkKPiAgaW50IGRybV9sZWdhY3lfZ2V0bWFwX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsCj4gIAkJCSAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7 Cj4gIGludCBkcm1fbGVnYWN5X2FkZG1hcF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZCwgdm9p ZCAqdiwgc3RydWN0IGRybV9maWxlICpmKTsKPiAgaW50IGRybV9sZWdhY3lfcm1tYXBfaW9jdGwo c3RydWN0IGRybV9kZXZpY2UgKmQsIHZvaWQgKnYsIHN0cnVjdCBkcm1fZmlsZSAqZik7Cj4gKwo+ ICBpbnQgZHJtX2xlZ2FjeV9hZGRidWZzKHN0cnVjdCBkcm1fZGV2aWNlICpkLCB2b2lkICp2LCBz dHJ1Y3QgZHJtX2ZpbGUgKmYpOwo+ICBpbnQgZHJtX2xlZ2FjeV9pbmZvYnVmcyhzdHJ1Y3QgZHJt X2RldmljZSAqZCwgdm9pZCAqdiwgc3RydWN0IGRybV9maWxlICpmKTsKPiAgaW50IGRybV9sZWdh Y3lfbWFya2J1ZnMoc3RydWN0IGRybV9kZXZpY2UgKmQsIHZvaWQgKnYsIHN0cnVjdCBkcm1fZmls ZSAqZik7Cj4gIGludCBkcm1fbGVnYWN5X2ZyZWVidWZzKHN0cnVjdCBkcm1fZGV2aWNlICpkLCB2 b2lkICp2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmYpOwo+ICBpbnQgZHJtX2xlZ2FjeV9tYXBidWZzKHN0 cnVjdCBkcm1fZGV2aWNlICpkLCB2b2lkICp2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmYpOwo+ICBpbnQg ZHJtX2xlZ2FjeV9kbWFfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmQsIHZvaWQgKnYsIHN0cnVj dCBkcm1fZmlsZSAqZik7Cj4gKyNlbmRpZgo+ICAKPiAgaW50IF9fZHJtX2xlZ2FjeV9pbmZvYnVm cyhzdHJ1Y3QgZHJtX2RldmljZSAqLCB2b2lkICosIGludCAqLAo+ICAJCQkgIGludCAoKikodm9p ZCAqLCBpbnQsIHN0cnVjdCBkcm1fYnVmX2VudHJ5ICopKTsKPiBAQCAtOTEsMTEgKzEwNCwxNyBA QCBpbnQgX19kcm1fbGVnYWN5X21hcGJ1ZnMoc3RydWN0IGRybV9kZXZpY2UgKiwgdm9pZCAqLCBp bnQgKiwKPiAgCQkJICBpbnQgKCopKHZvaWQgKiwgaW50LCB1bnNpZ25lZCBsb25nLCBzdHJ1Y3Qg ZHJtX2J1ZiAqKSwKPiAgCQkJICBzdHJ1Y3QgZHJtX2ZpbGUgKik7Cj4gIAo+ICsjaWYgSVNfRU5B QkxFRChDT05GSUdfRFJNX0xFR0FDWSkKPiAgdm9pZCBkcm1fbGVnYWN5X21hc3Rlcl9ybW1hcHMo c3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkJICAgICAgc3RydWN0IGRybV9tYXN0ZXIgKm1h c3Rlcik7Cj4gIHZvaWQgZHJtX2xlZ2FjeV9ybW1hcHMoc3RydWN0IGRybV9kZXZpY2UgKmRldik7 Cj4gKyNlbHNlCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVnYWN5X21hc3Rlcl9ybW1hcHMo c3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiArCQkJCQkgICAgc3RydWN0IGRybV9tYXN0ZXIgKm1h c3Rlcikge30KPiArc3RhdGljIGlubGluZSB2b2lkIGRybV9sZWdhY3lfcm1tYXBzKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpIHt9Cj4gKyNlbmRpZgo+ICAKPiAtI2lmZGVmIENPTkZJR19EUk1fVk0K PiArI2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9WTSkgJiYgSVNfRU5BQkxFRChDT05GSUdfRFJN X0xFR0FDWSkKPiAgdm9pZCBkcm1fbGVnYWN5X3ZtYV9mbHVzaChzdHJ1Y3QgZHJtX2RldmljZSAq ZCk7Cj4gICNlbHNlCj4gIHN0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVnYWN5X3ZtYV9mbHVzaChz dHJ1Y3QgZHJtX2RldmljZSAqZCkKPiBAQCAtMTE3LDI0ICsxMzYsNDMgQEAgc3RydWN0IGRybV9h Z3BfbWVtIHsKPiAgfTsKPiAgCj4gIC8qIGRybV9sb2NrLmMgKi8KPiArI2lmIElTX0VOQUJMRUQo Q09ORklHX0RSTV9MRUdBQ1kpCj4gIGludCBkcm1fbGVnYWN5X2xvY2soc3RydWN0IGRybV9kZXZp Y2UgKmQsIHZvaWQgKnYsIHN0cnVjdCBkcm1fZmlsZSAqZik7Cj4gIGludCBkcm1fbGVnYWN5X3Vu bG9jayhzdHJ1Y3QgZHJtX2RldmljZSAqZCwgdm9pZCAqdiwgc3RydWN0IGRybV9maWxlICpmKTsK PiAgdm9pZCBkcm1fbGVnYWN5X2xvY2tfcmVsZWFzZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBz dHJ1Y3QgZmlsZSAqZmlscCk7Cj4gKyNlbHNlCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVn YWN5X2xvY2tfcmVsZWFzZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZmlsZSAqZmls cCkge30KPiArI2VuZGlmCj4gIAo+ICAvKiBETUEgc3VwcG9ydCAqLwo+ICsjaWYgSVNfRU5BQkxF RChDT05GSUdfRFJNX0xFR0FDWSkKPiAgaW50IGRybV9sZWdhY3lfZG1hX3NldHVwKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpOwo+ICB2b2lkIGRybV9sZWdhY3lfZG1hX3Rha2Vkb3duKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpOwo+ICsjZWxzZQo+ICtzdGF0aWMgaW5saW5lIGludCBkcm1fbGVnYWN5 X2RtYV9zZXR1cChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICt7Cj4gKwlyZXR1cm4gMDsKPiAr fQo+ICsjZW5kaWYKPiArCj4gIHZvaWQgZHJtX2xlZ2FjeV9mcmVlX2J1ZmZlcihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAo+ICAJCQkgICAgc3RydWN0IGRybV9idWYgKiBidWYpOwo+ICsjaWYgSVNf RU5BQkxFRChDT05GSUdfRFJNX0xFR0FDWSkKPiAgdm9pZCBkcm1fbGVnYWN5X3JlY2xhaW1fYnVm ZmVycyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCQkJc3RydWN0IGRybV9maWxlICpmaWxw KTsKPiArI2Vsc2UKPiArc3RhdGljIGlubGluZSB2b2lkIGRybV9sZWdhY3lfcmVjbGFpbV9idWZm ZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gKwkJCQkJICAgICAgc3RydWN0IGRybV9maWxl ICpmaWxwKSB7fQo+ICsjZW5kaWYKPiAgCj4gIC8qIFNjYXR0ZXIgR2F0aGVyIFN1cHBvcnQgKi8K PiArI2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9MRUdBQ1kpCj4gIHZvaWQgZHJtX2xlZ2FjeV9z Z19jbGVhbnVwKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ICBpbnQgZHJtX2xlZ2FjeV9zZ19h bGxvYyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAJCQlzdHJ1Y3QgZHJt X2ZpbGUgKmZpbGVfcHJpdik7Cj4gIGludCBkcm1fbGVnYWN5X3NnX2ZyZWUoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgCQkgICAgICAgc3RydWN0IGRybV9maWxlICpmaWxl X3ByaXYpOwo+ICsjZW5kaWYKPiAgCj4gIHN0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbGVnYWN5X2lu aXRfbWVtYmVycyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICB7Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9kcm1fdm0uYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fdm0uYwo+IGluZGV4 IDg5ODc1MDFmNTNiMi4uMTBjZjgzZDU2OWUxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fdm0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fdm0uYwo+IEBAIC02NDYsNiAr NjQ2LDcgQEAgaW50IGRybV9sZWdhY3lfbW1hcChzdHJ1Y3QgZmlsZSAqZmlscCwgc3RydWN0IHZt X2FyZWFfc3RydWN0ICp2bWEpCj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fbGVnYWN5X21tYXAp Owo+ICAKPiArI2lmIElTX0VOQUJMRUQoQ09ORklHX0RSTV9MRUdBQ1kpCj4gIHZvaWQgZHJtX2xl Z2FjeV92bWFfZmx1c2goc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgewo+ICAJc3RydWN0IGRy bV92bWFfZW50cnkgKnZtYSwgKnZtYV90ZW1wOwo+IEBAIC02NTYsMyArNjU3LDQgQEAgdm9pZCBk cm1fbGVnYWN5X3ZtYV9mbHVzaChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCWtmcmVlKHZt YSk7Cj4gIAl9Cj4gIH0KPiArI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9u b3V2ZWF1L0tjb25maWcgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9LY29uZmlnCj4gaW5kZXgg M2FlN2E0Y2ZjNmJiLi5jYmNmN2QyYzA4OWQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L25vdXZlYXUvS2NvbmZpZwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L0tjb25maWcK PiBAQCAtMjMsNiArMjMsNyBAQCBjb25maWcgRFJNX05PVVZFQVUKPiAgY29uZmlnIE5PVVZFQVVf TEVHQUNZX0NUWF9TVVBQT1JUCj4gIAlib29sICJOb3V2ZWF1IGxlZ2FjeSBjb250ZXh0IHN1cHBv cnQiCj4gIAlzZWxlY3QgRFJNX1ZNCj4gKwlzZWxlY3QgRFJNX0xFR0FDWQo+ICAJZGVmYXVsdCB5 Cj4gIAloZWxwCj4gIAkgIFRoZXJlIHdhcyBhIHZlcnNpb24gb2YgdGhlIG5vdXZlYXUgRERYIHRo YXQgcmVsaWVkIG9uIGxlZ2FjeQo+IC0tIAo+IDIuMjAuMQo+IAo+IF9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+ IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAoKLS0gCkRhbmllbCBWZXR0ZXIKU29m dHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==