From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v3 19/25] xen/arm: generate vpl011 node on device tree for domU Date: Mon, 13 Aug 2018 12:20:10 +0100 Message-ID: References: <1533079688-9541-19-git-send-email-sstabellini@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1533079688-9541-19-git-send-email-sstabellini@kernel.org> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Stefano Stabellini Cc: Stefano Stabellini , andrii_anisov@epam.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org SGkgU3RlZmFubywKCk9uIDAxLzA4LzE4IDAwOjI4LCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6 Cj4gSW50cm9kdWNlIHZwbDAxMSBzdXBwb3J0IHRvIGd1ZXN0cyBzdGFydGVkIGZyb20gWGVuOiBp dCBwcm92aWRlcyBhCj4gc2ltcGxlIHdheSB0byBwcmludCBvdXRwdXQgZnJvbSBhIGd1ZXN0LCBh cyBtb3N0IGd1ZXN0cyBjb21lIHdpdGggYQo+IHBsMDExIGRyaXZlci4gSXQgaXMgYWxzbyBhYmxl IHRvIHByb3ZpZGUgYSB3b3JraW5nIGNvbnNvbGUgd2l0aAo+IGludGVycnVwdCBzdXBwb3J0Lgo+ IAo+IFRoZSBVQVJUIGV4cG9zZWQgdG8gdGhlIGd1ZXN0IGlzIGEgU0JTQSBjb21wYXRpYmxlIFVB UlQgYW5kIG5vdCBhIFBMMDExLgo+IFNCU0EgVUFSVCBpcyBhIHN1YnNldCBvZiBQTDAxMSByMXA1 LiBBIGZ1bGwgUEwwMTEgaW1wbGVtZW50YXRpb24gaW4gWGVuCj4gd291bGQganVzdCBiZSB0b28g ZGlmZmljdWx0LCBzbyBndWVzdHMgbWF5IHJlcXVpcmUgc29tZSBkcml2ZXJzIGNoYW5nZXMuCj4g Cj4gRW5hYmxlIHZwbDAxMSBjb25kaXRpb25hbGx5IGlmIHRoZSB1c2VyIHJlcXVlc3RlZCBpdC4K PiAKPiBNYWtlIHNldF9pbnRlcnJ1cHRfcHBpIGFibGUgdG8gaGFuZGxlIG5vbi1QUEkgYW5kIHJl bmFtZSBpdAo+IHNldF9pbnRlcnJ1cHQuCgpJdCB3b3VsZCBoYXZlIGJlZW4gYmV0dGVyIHRvIGhh dmUgdGhpcyBjaGFuZ2UgaW4gYSBzZXBhcmF0ZSBwYXRjaC4KCj4gCj4gU2lnbmVkLW9mZi1ieTog U3RlZmFubyBTdGFiZWxsaW5pIDxzdGVmYW5vc0B4aWxpbnguY29tPgo+IC0tLQo+IENoYW5nZXMg aW4gdjM6Cj4gLSB1c2UgYm9vbAo+IC0gcmV0YWluIEJVR19PTihpcnEgPCAxNikKPiAtIGFkZCB2 cGwwMTEgYm9vbCB0byBraW5mbwo+IC0gcmV0dXJuIGVycm9yIG9mIHZwbDAxMSBpcyByZXF1aXJl ZCBidXQgQ09ORklHX1NCU0FfVlVBUlRfQ09OU09MRSBpcwo+ICAgIG1pc3NpbmcKPiAKPiBDaGFu Z2VzIGluIHYyOgo+IC0gY29kZSBzdHlsZSBmaXhlcwo+IC0gbWFrZSBzZXRfaW50ZXJydXB0X3Bw aSBnZW5lcmljCj4gLSByZW5hbWUgc2V0X2ludGVycnVwdF9wcGkgdG8gc2V0X2ludGVycnVwdAo+ IC0gb25seSBtYWtlIHRoZSB2cGwwMTEgbm9kZSBpZiB0aGUgb3B0aW9uIHdhcyBlbmFibGVkCj4g LS0tCj4gICB4ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxkLmMgfCA5NSArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KPiAgIHhlbi9hcmNoL2FybS9rZXJuZWwuaCAg ICAgICB8ICAzICsrCj4gICAyIGZpbGVzIGNoYW5nZWQsIDgzIGluc2VydGlvbnMoKyksIDE1IGRl bGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxkLmMg Yi94ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxkLmMKPiBpbmRleCAxNjdhNTZlLi5mOWZhNDg0IDEw MDY0NAo+IC0tLSBhL3hlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYwo+ICsrKyBiL3hlbi9hcmNo L2FybS9kb21haW5fYnVpbGQuYwo+IEBAIC02MTksMTkgKzYxOSwyMCBAQCBzdGF0aWMgaW50IF9f aW5pdCB3cml0ZV9wcm9wZXJ0aWVzKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBrZXJuZWxfaW5m byAqa2luZm8sCj4gICAKPiAgIHR5cGVkZWYgX19iZTMyIGdpY19pbnRlcnJ1cHRfdFszXTsKPiAg IAo+IC1zdGF0aWMgdm9pZCBfX2luaXQgc2V0X2ludGVycnVwdF9wcGkoZ2ljX2ludGVycnVwdF90 IGludGVycnVwdCwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGludCBpcnEsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgY3B1bWFzaywKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHVuc2lnbmVkIGludCBsZXZlbCkKPiArc3RhdGljIHZvaWQgX19pbml0IHNldF9pbnRlcnJ1cHQo Z2ljX2ludGVycnVwdF90IGludGVycnVwdCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdW5zaWduZWQgaW50IGlycSwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdW5zaWduZWQgaW50IGNwdW1hc2ssCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVuc2lnbmVkIGludCBsZXZlbCkKPiAgIHsKPiAgICAgICBfX2JlMzIgKmNlbGxzID0gaW50 ZXJydXB0Owo+ICsgICAgYm9vbCBpc19wcGkgPSAhIShpcnEgPCAzMik7Cj4gICAKPiAgICAgICBC VUdfT04oaXJxIDwgMTYpOwo+IC0gICAgQlVHX09OKGlycSA+PSAzMik7Cj4gKyAgICBpcnEgLT0g KGlzX3BwaSkgPyAxNjogMzI7IC8qIFBQSXMgc3RhcnQgYXQgMTYsIFNQSXMgYXQgMzIgKi8KPiAg IAo+ICAgICAgIC8qIFNlZSBsaW51eCBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3Mv aW50ZXJydXB0LWNvbnRyb2xsZXIvYXJtLGdpYy50eHQgKi8KPiAtICAgIGR0X3NldF9jZWxsKCZj ZWxscywgMSwgMSk7IC8qIGlzIGEgUFBJICovCj4gLSAgICBkdF9zZXRfY2VsbCgmY2VsbHMsIDEs IGlycSAtIDE2KTsgLyogUFBJcyBzdGFydCBhdCAxNiAqLwo+ICsgICAgZHRfc2V0X2NlbGwoJmNl bGxzLCAxLCBpc19wcGkpOyAvKiBpcyBhIFBQST8gKi8KPiArICAgIGR0X3NldF9jZWxsKCZjZWxs cywgMSwgaXJxKTsKPiAgICAgICBkdF9zZXRfY2VsbCgmY2VsbHMsIDEsIChjcHVtYXNrIDw8IDgp IHwgbGV2ZWwpOwo+ICAgfQo+ICAgCj4gQEAgLTc1Miw3ICs3NTMsNyBAQCBzdGF0aWMgaW50IF9f aW5pdCBtYWtlX2h5cGVydmlzb3Jfbm9kZShzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgICAqICAt IEFsbCBDUFVzCj4gICAgICAgICogIFRPRE86IEhhbmRsZSBwcm9wZXJseSB0aGUgY3B1bWFzazsK PiAgICAgICAgKi8KPiAtICAgIHNldF9pbnRlcnJ1cHRfcHBpKGludHIsIGQtPmFyY2guZXZ0Y2hu X2lycSwgMHhmLCBEVF9JUlFfVFlQRV9MRVZFTF9MT1cpOwo+ICsgICAgc2V0X2ludGVycnVwdChp bnRyLCBkLT5hcmNoLmV2dGNobl9pcnEsIDB4ZiwgRFRfSVJRX1RZUEVfTEVWRUxfTE9XKTsKPiAg ICAgICByZXMgPSBmZHRfcHJvcGVydHlfaW50ZXJydXB0cyhmZHQsICZpbnRyLCAxKTsKPiAgICAg ICBpZiAoIHJlcyApCj4gICAgICAgICAgIHJldHVybiByZXM7Cj4gQEAgLTEwMjksMTUgKzEwMzAs MTUgQEAgc3RhdGljIGludCBfX2luaXQgbWFrZV90aW1lcl9ub2RlKGNvbnN0IHN0cnVjdCBkb21h aW4gKmQsIHZvaWQgKmZkdCwKPiAgIAo+ICAgICAgIGlycSA9IHRpbWVyX2dldF9pcnEoVElNRVJf UEhZU19TRUNVUkVfUFBJKTsKPiAgICAgICBkdF9kcHJpbnRrKCIgIFNlY3VyZSBpbnRlcnJ1cHQg JXVcbiIsIGlycSk7Cj4gLSAgICBzZXRfaW50ZXJydXB0X3BwaShpbnRyc1swXSwgaXJxLCAweGYs IERUX0lSUV9UWVBFX0xFVkVMX0xPVyk7Cj4gKyAgICBzZXRfaW50ZXJydXB0KGludHJzWzBdLCBp cnEsIDB4ZiwgRFRfSVJRX1RZUEVfTEVWRUxfTE9XKTsKPiAgIAo+ICAgICAgIGlycSA9IHRpbWVy X2dldF9pcnEoVElNRVJfUEhZU19OT05TRUNVUkVfUFBJKTsKPiAgICAgICBkdF9kcHJpbnRrKCIg IE5vbiBzZWN1cmUgaW50ZXJydXB0ICV1XG4iLCBpcnEpOwo+IC0gICAgc2V0X2ludGVycnVwdF9w cGkoaW50cnNbMV0sIGlycSwgMHhmLCBEVF9JUlFfVFlQRV9MRVZFTF9MT1cpOwo+ICsgICAgc2V0 X2ludGVycnVwdChpbnRyc1sxXSwgaXJxLCAweGYsIERUX0lSUV9UWVBFX0xFVkVMX0xPVyk7Cj4g ICAKPiAgICAgICBpcnEgPSB0aW1lcl9nZXRfaXJxKFRJTUVSX1ZJUlRfUFBJKTsKPiAgICAgICBk dF9kcHJpbnRrKCIgIFZpcnQgaW50ZXJydXB0ICV1XG4iLCBpcnEpOwo+IC0gICAgc2V0X2ludGVy cnVwdF9wcGkoaW50cnNbMl0sIGlycSwgMHhmLCBEVF9JUlFfVFlQRV9MRVZFTF9MT1cpOwo+ICsg ICAgc2V0X2ludGVycnVwdChpbnRyc1syXSwgaXJxLCAweGYsIERUX0lSUV9UWVBFX0xFVkVMX0xP Vyk7Cj4gICAKPiAgICAgICByZXMgPSBmZHRfcHJvcGVydHlfaW50ZXJydXB0cyhmZHQsIGludHJz LCAzKTsKPiAgICAgICBpZiAoIHJlcyApCj4gQEAgLTE2MDUsOSArMTYwNiw5IEBAIHN0YXRpYyBp bnQgX19pbml0IG1ha2VfdGltZXJfZG9tVV9ub2RlKGNvbnN0IHN0cnVjdCBkb21haW4gKmQsIHZv aWQgKmZkdCkKPiAgICAgICAgICAgICAgIHJldHVybiByZXM7Cj4gICAgICAgfQo+ICAgCj4gLSAg ICBzZXRfaW50ZXJydXB0X3BwaShpbnRyc1swXSwgR1VFU1RfVElNRVJfUEhZU19TX1BQSSwgMHhm LCBEVF9JUlFfVFlQRV9MRVZFTF9MT1cpOwo+IC0gICAgc2V0X2ludGVycnVwdF9wcGkoaW50cnNb MV0sIEdVRVNUX1RJTUVSX1BIWVNfTlNfUFBJLCAweGYsIERUX0lSUV9UWVBFX0xFVkVMX0xPVyk7 Cj4gLSAgICBzZXRfaW50ZXJydXB0X3BwaShpbnRyc1syXSwgR1VFU1RfVElNRVJfVklSVF9QUEks IDB4ZiwgRFRfSVJRX1RZUEVfTEVWRUxfTE9XKTsKPiArICAgIHNldF9pbnRlcnJ1cHQoaW50cnNb MF0sIEdVRVNUX1RJTUVSX1BIWVNfU19QUEksIDB4ZiwgRFRfSVJRX1RZUEVfTEVWRUxfTE9XKTsK PiArICAgIHNldF9pbnRlcnJ1cHQoaW50cnNbMV0sIEdVRVNUX1RJTUVSX1BIWVNfTlNfUFBJLCAw eGYsIERUX0lSUV9UWVBFX0xFVkVMX0xPVyk7Cj4gKyAgICBzZXRfaW50ZXJydXB0KGludHJzWzJd LCBHVUVTVF9USU1FUl9WSVJUX1BQSSwgMHhmLCBEVF9JUlFfVFlQRV9MRVZFTF9MT1cpOwo+ICAg Cj4gICAgICAgcmVzID0gZmR0X3Byb3BlcnR5KGZkdCwgImludGVycnVwdHMiLCBpbnRycywgc2l6 ZW9mIChpbnRyc1swXSkgKiAzKTsKPiAgICAgICBpZiAoIHJlcyApCj4gQEAgLTE2MjIsNiArMTYy Myw1NiBAQCBzdGF0aWMgaW50IF9faW5pdCBtYWtlX3RpbWVyX2RvbVVfbm9kZShjb25zdCBzdHJ1 Y3QgZG9tYWluICpkLCB2b2lkICpmZHQpCj4gICAgICAgcmV0dXJuIHJlczsKPiAgIH0KPiAgIAo+ ICsjaWZkZWYgQ09ORklHX1NCU0FfVlVBUlRfQ09OU09MRQo+ICtzdGF0aWMgaW50IF9faW5pdCBt YWtlX3ZwbDAxMV91YXJ0X25vZGUoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwgdm9pZCAqZmR0LAo+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYWRkcmNlbGxzLCBpbnQgc2l6 ZWNlbGxzKQo+ICt7Cj4gKyAgICBpbnQgcmVzOwo+ICsgICAgZ2ljX2ludGVycnVwdF90IGludHI7 Cj4gKyAgICBpbnQgcmVnX3NpemUgPSBhZGRyY2VsbHMgKyBzaXplY2VsbHM7Cj4gKyAgICBpbnQg bnJfY2VsbHMgPSByZWdfc2l6ZTsKPiArICAgIF9fYmUzMiByZWdbbnJfY2VsbHNdOwo+ICsgICAg X19iZTMyICpjZWxsczsKPiArCj4gKyAgICByZXMgPSBmZHRfYmVnaW5fbm9kZShmZHQsICJzYnNh LXBsMDExIik7CgpOb2RlIHNob3VsZCBjb250YWluIHRoZSBhZGRyZXNzIGluIHRoZSBuYW1lLiBB bHNvLCB0aGUgbmFtZSBzaG91bGQgYmUgClNCU0EgVUFSVCAod2hpY2ggaGFwcGVucyB0byBiZSBi YXNlZCBvbiBQTDAxMSA6KSkuCgo+ICsgICAgaWYgKCByZXMgKQo+ICsgICAgICAgIHJldHVybiBy ZXM7Cj4gKwo+ICsgICAgcmVzID0gZmR0X3Byb3BlcnR5X3N0cmluZyhmZHQsICJjb21wYXRpYmxl IiwgImFybSxzYnNhLXVhcnQiKTsKPiArICAgIGlmICggcmVzICkKPiArICAgICAgICByZXR1cm4g cmVzOwo+ICsKPiArICAgIGNlbGxzID0gJnJlZ1swXTsKPiArICAgIGR0X2NoaWxkX3NldF9yYW5n ZSgmY2VsbHMsIGFkZHJjZWxscywgc2l6ZWNlbGxzLCBHVUVTVF9QTDAxMV9CQVNFLAo+ICsgICAg ICAgICAgICAgICAgICAgICAgIEdVRVNUX1BMMDExX1NJWkUpOwo+ICsgICAgaWYgKCByZXMgKQo+ ICsgICAgICAgIHJldHVybiByZXM7Cj4gKyAgICByZXMgPSBmZHRfcHJvcGVydHkoZmR0LCAicmVn IiwgcmVnLCBzaXplb2YocmVnKSk7Cj4gKyAgICBpZiAoIHJlcyApCj4gKyAgICAgICAgcmV0dXJu IHJlczsKPiArCj4gKyAgICBzZXRfaW50ZXJydXB0KGludHIsIEdVRVNUX1ZQTDAxMV9TUEksIDB4 ZiwgRFRfSVJRX1RZUEVfTEVWRUxfSElHSCk7Cj4gKwo+ICsgICAgcmVzID0gZmR0X3Byb3BlcnR5 KGZkdCwgImludGVycnVwdHMiLCBpbnRyLCBzaXplb2YgKGludHIpKTsKPiArICAgIGlmICggcmVz ICkKPiArICAgICAgICByZXR1cm4gcmVzOwo+ICsKPiArICAgIHJlcyA9IGZkdF9wcm9wZXJ0eV9j ZWxsKGZkdCwgImludGVycnVwdC1wYXJlbnQiLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR1VFU1RfUEhBTkRMRV9HSUMpOwo+ICsgICAgaWYgKCByZXMgKQo+ICsgICAgICAgIHJldHVy biByZXM7Cj4gKwo+ICsgICAgLyogVXNlIGEgZGVmYXVsdCBiYXVkIHJhdGUgb2YgMTE1MjAwLiAq Lwo+ICsgICAgZmR0X3Byb3BlcnR5X3UzMihmZHQsICJjdXJyZW50LXNwZWVkIiwgMTE1MjAwKTsK PiArCj4gKyAgICByZXMgPSBmZHRfZW5kX25vZGUoZmR0KTsKPiArICAgIGlmICggcmVzICkKPiAr ICAgICAgICByZXR1cm4gcmVzOwo+ICsKPiArICAgIHJldHVybiAwOwo+ICt9Cj4gKyNlbmRpZgo+ ICsKPiAgIC8qCj4gICAgKiBUaGUgbWF4IHNpemUgZm9yIERUIGlzIDJNQi4gSG93ZXZlciwgdGhl IGdlbmVyYXRlZCBEVCBpcyBzbWFsbCwgNEtCCj4gICAgKiBhcmUgZW5vdWdoIGZvciBub3csIGJ1 dCB3ZSBtaWdodCBoYXZlIHRvIGluY3JlYXNlIGl0IGluIHRoZSBmZWF0dXJlLgo+IEBAIC0xNjgz LDYgKzE3MzQsMTggQEAgc3RhdGljIGludCBfX2luaXQgcHJlcGFyZV9kdGJfZG9tVShzdHJ1Y3Qg ZG9tYWluICpkLCBzdHJ1Y3Qga2VybmVsX2luZm8gKmtpbmZvKQo+ICAgICAgIGlmICggcmV0ICkK PiAgICAgICAgICAgZ290byBlcnI7Cj4gICAKPiArICAgIGlmICgga2luZm8tPnZwbDAxMSApCj4g KyAgICB7Cj4gKyNpZmRlZiBDT05GSUdfU0JTQV9WVUFSVF9DT05TT0xFCj4gKyAgICAgICAgcmV0 ID0gbWFrZV92cGwwMTFfdWFydF9ub2RlKGQsIGtpbmZvLT5mZHQsIGFkZHJjZWxscywgc2l6ZWNl bGxzKTsKPiArICAgICAgICBpZiAoIHJldCApCj4gKyAgICAgICAgICAgIGdvdG8gZXJyOwo+ICsj ZWxzZQo+ICsgICAgICAgIHJldCA9IC1FSU5WQUw7Cj4gKyAgICAgICAgZ290byBlcnI7Cj4gKyNl bmRpZgoKSSB3b3VsZCBwcmVmZXI6CgoKcmV0ID0gLUVJTlZBTAojaWZkZWYgQ09ORklHX1NCU0Eu Li4KCXJldCA9IG1ha2UuLi4KI2VuZGlmCglpZiAoIHJldCApCgkgIGdvdG8gZXJyOwoKPiArICAg IH0KPiArCj4gICAgICAgcmV0ID0gZmR0X2VuZF9ub2RlKGtpbmZvLT5mZHQpOwo+ICAgICAgIGlm ICggcmV0IDwgMCApCj4gICAgICAgICAgIGdvdG8gZXJyOwo+IEBAIC0yNTM3LDcgKzI2MDAsNyBA QCBzdGF0aWMgaW50IF9faW5pdCBjb25zdHJ1Y3RfZG9tVShzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1 Y3QgZHRfZGV2aWNlX25vZGUgKm5vZGUpCj4gICB7Cj4gICAgICAgc3RydWN0IGtlcm5lbF9pbmZv IGtpbmZvID0ge307Cj4gICAgICAgaW50IHJjOwo+IC0gICAgdTMyIG1lbTsKPiArICAgIHUzMiBt ZW0sIGxlbjsKPiAgIAo+ICAgICAgIHByaW50aygiKioqIExPQURJTkcgRE9NVSAqKipcbiIpOwo+ ICAgCj4gQEAgLTI1NTAsNiArMjYxMyw4IEBAIHN0YXRpYyBpbnQgX19pbml0IGNvbnN0cnVjdF9k b21VKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBkdF9kZXZpY2Vfbm9kZSAqbm9kZSkKPiAgICAg ICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4gICAgICAga2luZm8udW5hc3NpZ25lZF9tZW0gPSAocGFk ZHJfdCltZW0gPDwgMTA7Cj4gICAKPiArICAgIGtpbmZvLnZwbDAxMSA9IGR0X2dldF9wcm9wZXJ0 eShub2RlLCAidnBsMDExIiwgJmxlbikgIT0gTlVMTDsKPiArCj4gICAgICAgZC0+dmNwdSA9IHh6 YWxsb2NfYXJyYXkoc3RydWN0IHZjcHUgKiwgZC0+bWF4X3ZjcHVzKTsKPiAgICAgICBpZiAoICFk LT52Y3B1ICkKPiAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Owo+IGRpZmYgLS1naXQgYS94ZW4v YXJjaC9hcm0va2VybmVsLmggYi94ZW4vYXJjaC9hcm0va2VybmVsLmgKPiBpbmRleCA0YTY1Mjg5 Li45YzllNTY4IDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL2FybS9rZXJuZWwuaAo+ICsrKyBiL3hl bi9hcmNoL2FybS9rZXJuZWwuaAo+IEBAIC0zMyw2ICszMyw5IEBAIHN0cnVjdCBrZXJuZWxfaW5m byB7Cj4gICAgICAgcGFkZHJfdCBkdGJfcGFkZHI7Cj4gICAgICAgcGFkZHJfdCBpbml0cmRfcGFk ZHI7Cj4gICAKPiArICAgIC8qIEVuYWJsZSBwbDAxMSBlbXVsYXRpb24gKi8KPiArICAgIGJvb2wg dnBsMDExOwo+ICsKPiAgICAgICAvKiBsb2FkZXIgdG8gdXNlIGZvciB0aGlzIGtlcm5lbCAqLwo+ ICAgICAgIHZvaWQgKCpsb2FkKShzdHJ1Y3Qga2VybmVsX2luZm8gKmluZm8pOwo+ICAgICAgIC8q IGxvYWRlciBzcGVjaWZpYyBzdGF0ZSAqLwo+IAoKQ2hlZXJzLAoKLS0gCkp1bGllbiBHcmFsbAoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0 cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==