From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v2 17/25] arm/altp2m: Cosmetic fixes - function prototypes. Date: Thu, 4 Aug 2016 13:06:34 +0100 Message-ID: <92064f0a-2e2c-2721-3201-66f5f86e565b@arm.com> References: <20160801171028.11615-1-proskurin@sec.in.tum.de> <20160801171028.11615-18-proskurin@sec.in.tum.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bVHQ7-0001X8-0J for xen-devel@lists.xenproject.org; Thu, 04 Aug 2016 12:06:39 +0000 In-Reply-To: <20160801171028.11615-18-proskurin@sec.in.tum.de> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Sergej Proskurin , xen-devel@lists.xenproject.org Cc: Stefano Stabellini List-Id: xen-devel@lists.xenproject.org SGVsbG8gU2VyZ2VqLAoKT24gMDEvMDgvMTYgMTg6MTAsIFNlcmdlaiBQcm9za3VyaW4gd3JvdGU6 Cj4gVGhpcyBjb21taXQgY2hhbmdlcyB0aGUgcHJvdG90eXBlIG9mIHRoZSBmb2xsb3dpbmcgZnVu Y3Rpb25zOgo+IC0gYXBwbHlfcDJtX2NoYW5nZXMKPiAtIGFwcGx5X29uZV9sZXZlbAo+IC0gcDJt X2luc2VydF9tYXBwaW5nCj4gLSBwMm1fcmVtb3ZlX21hcHBpbmcKPgo+IFRoZXNlIGNoYW5nZXMg YXJlIHJlcXVpcmVkIGFzIG91ciBpbXBsZW1lbnRhdGlvbiByZXVzZXMgbW9zdCBvZiB0aGUKPiBl eGlzdGluZyBBUk0gcDJtIGltcGxlbWVudGF0aW9uIHRvIHNldCBwYWdlIHRhYmxlIGF0dHJpYnV0 ZXMgb2YgdGhlCj4gaW5kaXZpZHVhbCBhbHRwMm0gdmlld3MuIFRoZXJlZm9yZSwgZXhpdGluZyBm dW5jdGlvbiBwcm90b3R5cGVzIGhhdmUKPiBiZWVuIGV4dGVuZGVkIHRvIGhvbGQgYW5vdGhlciBh cmd1bWVudCAob2YgdHlwZSBzdHJ1Y3QgcDJtX2RvbWFpbiAqKS4KPiBUaGlzIGFsbG93cyB0byBz cGVjaWZ5IHRoZSBwMm0vYWx0cDJtIGRvbWFpbiB0aGF0IHNob3VsZCBiZSBwcm9jZXNzZWQgYnkK PiB0aGUgaW5kaXZpZHVhbCBmdW5jdGlvbiAtLSBpbnN0ZWFkIG9mIGFjY2Vzc2luZyB0aGUgaG9z dCdzIGRlZmF1bHQgcDJtCj4gZG9tYWluLgoKSSB3b3VsZCBwcmVmZXIgaWYgeW91IHJlYmFzZSB0 aGlzIHNlcmllcyBvbiB0b3Agb2YgInhlbi9hcm06IFJld29yayB0aGUgClAyTSBjb2RlIHRvIGZv bGxvdyBicmVhay1iZWZvcmUtbWFrZSBzZXF1ZW5jZSIgWzFdLiBUaGlzIHdpbGwgb2ZmZXIgYSAK Y2xlYW5lciBpbnRlcmZhY2UgZm9yIGFsdHAybS4KCj4KPiBTaWduZWQtb2ZmLWJ5OiBTZXJnZWog UHJvc2t1cmluIDxwcm9za3VyaW5Ac2VjLmluLnR1bS5kZT4KPiAtLS0KPiBDYzogU3RlZmFubyBT dGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgo+IENjOiBKdWxpZW4gR3JhbGwgPGp1 bGllbi5ncmFsbEBhcm0uY29tPgo+IC0tLQo+IHYyOiBBZG9wdGlvbiBvZiB0aGUgZnVuY3Rpb25z ICJfX3AybV9sb29rdXAiIGFuZCAiX19wMm1fZ2V0X21lbV9hY2Nlc3MiCj4gICAgIGhhdmUgYmVl biBtb3ZlZCBvdXQgb2YgdGhpcyBjb21taXQuCj4gLS0tCj4gIHhlbi9hcmNoL2FybS9wMm0uYyB8 IDQ5ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAg MSBmaWxlIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQo+Cj4gZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9wMm0uYyBiL3hlbi9hcmNoL2FybS9wMm0uYwo+IGluZGV4 IDUzMjU4ZTEuLmQ0YjdjOTIgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gvYXJtL3AybS5jCj4gKysr IGIveGVuL2FyY2gvYXJtL3AybS5jCj4gQEAgLTcwMiw2ICs3MDIsNyBAQCBzdGF0aWMgaW50IHAy bV9zaGF0dGVyX3BhZ2Uoc3RydWN0IHAybV9kb21haW4gKnAybSwKPiAgICogLXZlID09ICgtRXh4 eCkgZXJyb3IuCj4gICAqLwo+ICBzdGF0aWMgaW50IGFwcGx5X29uZV9sZXZlbChzdHJ1Y3QgZG9t YWluICpkLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcDJtX2RvbWFpbiAq cDJtLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBscGFlX3QgKmVudHJ5LAo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbGV2ZWwsCj4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGJvb2xfdCBmbHVzaF9jYWNoZSwKPiBAQCAtNzE3LDcgKzcxOCw2IEBA IHN0YXRpYyBpbnQgYXBwbHlfb25lX2xldmVsKHN0cnVjdCBkb21haW4gKmQsCj4gICAgICBjb25z dCBwYWRkcl90IGxldmVsX3NpemUgPSBsZXZlbF9zaXplc1tsZXZlbF07Cj4gICAgICBjb25zdCBw YWRkcl90IGxldmVsX21hc2sgPSBsZXZlbF9tYXNrc1tsZXZlbF07Cj4KPiAtICAgIHN0cnVjdCBw Mm1fZG9tYWluICpwMm0gPSAmZC0+YXJjaC5wMm07Cj4gICAgICBscGFlX3QgcHRlOwo+ICAgICAg Y29uc3QgbHBhZV90IG9yaWdfcHRlID0gKmVudHJ5Owo+ICAgICAgaW50IHJjOwo+IEBAIC05NTUs NiArOTU1LDcgQEAgc3RhdGljIHZvaWQgdXBkYXRlX3JlZmVyZW5jZV9tYXBwaW5nKHN0cnVjdCBw YWdlX2luZm8gKnBhZ2UsCj4gIH0KPgo+ICBzdGF0aWMgaW50IGFwcGx5X3AybV9jaGFuZ2VzKHN0 cnVjdCBkb21haW4gKmQsCj4gKyAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwMm1fZG9tYWlu ICpwMm0sCj4gICAgICAgICAgICAgICAgICAgICAgIGVudW0gcDJtX29wZXJhdGlvbiBvcCwKPiAg ICAgICAgICAgICAgICAgICAgICAgZ2ZuX3Qgc2dmbiwKPiAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgbG9uZyBuciwKPiBAQCAtOTY3LDcgKzk2OCw2IEBAIHN0YXRpYyBpbnQgYXBwbHlf cDJtX2NoYW5nZXMoc3RydWN0IGRvbWFpbiAqZCwKPiAgICAgIHBhZGRyX3QgZW5kX2dwYWRkciA9 IHBmbl90b19wYWRkcihnZm5feChzZ2ZuKSArIG5yKTsKPiAgICAgIHBhZGRyX3QgbWFkZHIgPSBw Zm5fdG9fcGFkZHIobWZuX3goc21mbikpOwo+ICAgICAgaW50IHJjLCByZXQ7Cj4gLSAgICBzdHJ1 Y3QgcDJtX2RvbWFpbiAqcDJtID0gJmQtPmFyY2gucDJtOwo+ICAgICAgbHBhZV90ICptYXBwaW5n c1s0XSA9IHsgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCB9Owo+ICAgICAgc3RydWN0IHBhZ2VfaW5m byAqcGFnZXNbNF0gPSB7IE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwgfTsKPiAgICAgIHBhZGRyX3Qg YWRkcjsKPiBAQCAtMTA5Myw3ICsxMDkzLDcgQEAgc3RhdGljIGludCBhcHBseV9wMm1fY2hhbmdl cyhzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgICAgICAgICBscGFlX3QgKmVudHJ5ID0gJm1hcHBp bmdzW2xldmVsXVtvZmZzZXRdOwo+ICAgICAgICAgICAgICBscGFlX3Qgb2xkX2VudHJ5ID0gKmVu dHJ5Owo+Cj4gLSAgICAgICAgICAgIHJldCA9IGFwcGx5X29uZV9sZXZlbChkLCBlbnRyeSwKPiAr ICAgICAgICAgICAgcmV0ID0gYXBwbHlfb25lX2xldmVsKGQsIHAybSwgZW50cnksCj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbCwgZmx1c2hfcHQsIG9wLAo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRfZ3BhZGRyLCBlbmRfZ3BhZGRyLAo+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFkZHIsICZtYWRkciwgJmZsdXNo LAo+IEBAIC0xMTc4LDcgKzExNzgsNyBAQCBzdGF0aWMgaW50IGFwcGx5X3AybV9jaGFuZ2VzKHN0 cnVjdCBkb21haW4gKmQsCj4gIG91dDoKPiAgICAgIGlmICggZmx1c2ggKQo+ICAgICAgewo+IC0g ICAgICAgIHAybV9mbHVzaF90bGIoJmQtPmFyY2gucDJtKTsKPiArICAgICAgICBwMm1fZmx1c2hf dGxiKHAybSk7Cj4gICAgICAgICAgcmV0ID0gaW9tbXVfaW90bGJfZmx1c2goZCwgZ2ZuX3goc2dm biksIG5yKTsKPiAgICAgICAgICBpZiAoICFyYyApCj4gICAgICAgICAgICAgIHJjID0gcmV0Owo+ IEBAIC0xMjA1LDMxICsxMjA1LDMzIEBAIG91dDoKPiAgICAgICAgICAgKiBhZGRyIGtlZXBzIHRo ZSBhZGRyZXNzIG9mIHRoZSBlbmQgb2YgdGhlIGxhc3Qgc3VjY2Vzc2Z1bGx5LWluc2VydGVkCj4g ICAgICAgICAgICogbWFwcGluZy4KPiAgICAgICAgICAgKi8KPiAtICAgICAgICBhcHBseV9wMm1f Y2hhbmdlcyhkLCBSRU1PVkUsIHNnZm4sIGdmbiAtIGdmbl94KHNnZm4pLCBzbWZuLAo+IC0gICAg ICAgICAgICAgICAgICAgICAgICAgIDAsIHAybV9pbnZhbGlkLCBkLT5hcmNoLnAybS5kZWZhdWx0 X2FjY2Vzcyk7Cj4gKyAgICAgICAgYXBwbHlfcDJtX2NoYW5nZXMoZCwgcDJtLCBSRU1PVkUsIHNn Zm4sIGdmbiAtIGdmbl94KHNnZm4pLCBzbWZuLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg IDAsIHAybV9pbnZhbGlkLCBwMm0tPmRlZmF1bHRfYWNjZXNzKTsKPiAgICAgIH0KPgo+ICAgICAg cmV0dXJuIHJjOwo+ICB9Cj4KPiAgc3RhdGljIGlubGluZSBpbnQgcDJtX2luc2VydF9tYXBwaW5n KHN0cnVjdCBkb21haW4gKmQsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZ2ZuX3Qgc3RhcnRfZ2ZuLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgbG9uZyBuciwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG1mbl90IG1mbiwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHAybV90eXBlX3QgdCkKPiAgewo+IC0gICAgcmV0dXJuIGFwcGx5X3AybV9jaGFuZ2VzKGQs IElOU0VSVCwgc3RhcnRfZ2ZuLCBuciwgbWZuLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDAsIHQsIGQtPmFyY2gucDJtLmRlZmF1bHRfYWNjZXNzKTsKPiArICAgIHJldHVybiBhcHBs eV9wMm1fY2hhbmdlcyhkLCBwMm0sIElOU0VSVCwgc3RhcnRfZ2ZuLCBuciwgbWZuLAo+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDAsIHQsIHAybS0+ZGVmYXVsdF9hY2Nlc3MpOwo+ICB9 Cj4KPiAgc3RhdGljIGlubGluZSBpbnQgcDJtX3JlbW92ZV9tYXBwaW5nKHN0cnVjdCBkb21haW4g KmQsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcDJtX2Rv bWFpbiAqcDJtLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuX3Qg c3RhcnRfZ2ZuLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgbG9uZyBuciwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90 IG1mbikKPiAgewo+IC0gICAgcmV0dXJuIGFwcGx5X3AybV9jaGFuZ2VzKGQsIFJFTU9WRSwgc3Rh cnRfZ2ZuLCBuciwgbWZuLAo+ICsgICAgcmV0dXJuIGFwcGx5X3AybV9jaGFuZ2VzKGQsIHAybSwg UkVNT1ZFLCBzdGFydF9nZm4sIG5yLCBtZm4sCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLyogYXJndW1lbnRzIGJlbG93IG5vdCB1c2VkIHdoZW4gcmVtb3ZpbmcgbWFwcGluZyAqLwo+ IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIHAybV9pbnZhbGlkLCBkLT5hcmNoLnAy bS5kZWZhdWx0X2FjY2Vzcyk7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgcDJt X2ludmFsaWQsIHAybS0+ZGVmYXVsdF9hY2Nlc3MpOwo+ICB9Cj4KPiAgaW50IG1hcF9yZWdpb25z X3J3X2NhY2hlKHN0cnVjdCBkb21haW4gKmQsCj4gQEAgLTEyMzcsNyArMTIzOSw3IEBAIGludCBt YXBfcmVnaW9uc19yd19jYWNoZShzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgbG9uZyBuciwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgIG1m bl90IG1mbikKPiAgewo+IC0gICAgcmV0dXJuIHAybV9pbnNlcnRfbWFwcGluZyhkLCBnZm4sIG5y LCBtZm4sIHAybV9tbWlvX2RpcmVjdF9jKTsKPiArICAgIHJldHVybiBwMm1faW5zZXJ0X21hcHBp bmcoZCwgcDJtX2dldF9ob3N0cDJtKGQpLCBnZm4sIG5yLCBtZm4sIHAybV9tbWlvX2RpcmVjdF9j KTsKPiAgfQo+Cj4gIGludCB1bm1hcF9yZWdpb25zX3J3X2NhY2hlKHN0cnVjdCBkb21haW4gKmQs Cj4gQEAgLTEyNDUsNyArMTI0Nyw3IEBAIGludCB1bm1hcF9yZWdpb25zX3J3X2NhY2hlKHN0cnVj dCBkb21haW4gKmQsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg bnIsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IG1mbikKPiAgewo+IC0gICAg cmV0dXJuIHAybV9yZW1vdmVfbWFwcGluZyhkLCBnZm4sIG5yLCBtZm4pOwo+ICsgICAgcmV0dXJu IHAybV9yZW1vdmVfbWFwcGluZyhkLCBwMm1fZ2V0X2hvc3RwMm0oZCksIGdmbiwgbnIsIG1mbik7 Cj4gIH0KPgo+ICBpbnQgbWFwX21taW9fcmVnaW9ucyhzdHJ1Y3QgZG9tYWluICpkLAo+IEBAIC0x MjUzLDcgKzEyNTUsNyBAQCBpbnQgbWFwX21taW9fcmVnaW9ucyhzdHJ1Y3QgZG9tYWluICpkLAo+ ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG5yLAo+ICAgICAgICAgICAgICAg ICAgICAgICBtZm5fdCBtZm4pCj4gIHsKPiAtICAgIHJldHVybiBwMm1faW5zZXJ0X21hcHBpbmco ZCwgc3RhcnRfZ2ZuLCBuciwgbWZuLCBwMm1fbW1pb19kaXJlY3RfbmMpOwo+ICsgICAgcmV0dXJu IHAybV9pbnNlcnRfbWFwcGluZyhkLCBwMm1fZ2V0X2hvc3RwMm0oZCksIHN0YXJ0X2dmbiwgbnIs IG1mbiwgcDJtX21taW9fZGlyZWN0X25jKTsKPiAgfQo+Cj4gIGludCB1bm1hcF9tbWlvX3JlZ2lv bnMoc3RydWN0IGRvbWFpbiAqZCwKPiBAQCAtMTI2MSw3ICsxMjYzLDcgQEAgaW50IHVubWFwX21t aW9fcmVnaW9ucyhzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgICAgICAgICAgICAgICAgICAgIHVu c2lnbmVkIGxvbmcgbnIsCj4gICAgICAgICAgICAgICAgICAgICAgICAgbWZuX3QgbWZuKQo+ICB7 Cj4gLSAgICByZXR1cm4gcDJtX3JlbW92ZV9tYXBwaW5nKGQsIHN0YXJ0X2dmbiwgbnIsIG1mbik7 Cj4gKyAgICByZXR1cm4gcDJtX3JlbW92ZV9tYXBwaW5nKGQsIHAybV9nZXRfaG9zdHAybShkKSwg c3RhcnRfZ2ZuLCBuciwgbWZuKTsKPiAgfQo+Cj4gIGludCBtYXBfZGV2X21taW9fcmVnaW9uKHN0 cnVjdCBkb21haW4gKmQsCj4gQEAgLTEyOTEsMTQgKzEyOTMsMTQgQEAgaW50IGd1ZXN0X3BoeXNt YXBfYWRkX2VudHJ5KHN0cnVjdCBkb21haW4gKmQsCj4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB1bnNpZ25lZCBsb25nIHBhZ2Vfb3JkZXIsCj4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwMm1fdHlwZV90IHQpCj4gIHsKPiAtICAgIHJldHVybiBwMm1faW5zZXJ0X21hcHBpbmco ZCwgZ2ZuLCAoMSA8PCBwYWdlX29yZGVyKSwgbWZuLCB0KTsKPiArICAgIHJldHVybiBwMm1faW5z ZXJ0X21hcHBpbmcoZCwgcDJtX2dldF9ob3N0cDJtKGQpLCBnZm4sICgxIDw8IHBhZ2Vfb3JkZXIp LCBtZm4sIHQpOwo+ICB9Cj4KPiAgdm9pZCBndWVzdF9waHlzbWFwX3JlbW92ZV9wYWdlKHN0cnVj dCBkb21haW4gKmQsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZm5fdCBnZm4s Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZm5fdCBtZm4sIHVuc2lnbmVkIGlu dCBwYWdlX29yZGVyKQo+ICB7Cj4gLSAgICBwMm1fcmVtb3ZlX21hcHBpbmcoZCwgZ2ZuLCAoMSA8 PCBwYWdlX29yZGVyKSwgbWZuKTsKPiArICAgIHAybV9yZW1vdmVfbWFwcGluZyhkLCBwMm1fZ2V0 X2hvc3RwMm0oZCksIGdmbiwgKDEgPDwgcGFnZV9vcmRlciksIG1mbik7Cj4gIH0KPgo+ICBpbnQg cDJtX2FsbG9jX3RhYmxlKHN0cnVjdCBwMm1fZG9tYWluICpwMm0pCj4gQEAgLTE1MDUsMjYgKzE1 MDcsMjUgQEAgaW50IHAybV9pbml0KHN0cnVjdCBkb21haW4gKmQpCj4KPiAgaW50IHJlbGlucXVp c2hfcDJtX21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCkKPiAgewo+IC0gICAgc3RydWN0IHAybV9k b21haW4gKnAybSA9ICZkLT5hcmNoLnAybTsKPiArICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0g PSBwMm1fZ2V0X2hvc3RwMm0oZCk7Cj4gICAgICB1bnNpZ25lZCBsb25nIG5yOwo+Cj4gICAgICBu ciA9IGdmbl94KHAybS0+bWF4X21hcHBlZF9nZm4pIC0gZ2ZuX3gocDJtLT5sb3dlc3RfbWFwcGVk X2dmbik7Cj4KPiAtICAgIHJldHVybiBhcHBseV9wMm1fY2hhbmdlcyhkLCBSRUxJTlFVSVNILCBw Mm0tPmxvd2VzdF9tYXBwZWRfZ2ZuLCBuciwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJTlZBTElEX01GTiwgMCwgcDJtX2ludmFsaWQsCj4gLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZC0+YXJjaC5wMm0uZGVmYXVsdF9hY2Nlc3MpOwo+ICsgICAgcmV0dXJuIGFwcGx5X3Ay bV9jaGFuZ2VzKGQsIHAybSwgUkVMSU5RVUlTSCwgcDJtLT5sb3dlc3RfbWFwcGVkX2dmbiwgbnIs Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5WQUxJRF9NRk4sIDAsIHAybV9pbnZh bGlkLCBwMm0tPmRlZmF1bHRfYWNjZXNzKTsKPiAgfQo+Cj4gIGludCBwMm1fY2FjaGVfZmx1c2go c3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3Qgc3RhcnQsIHVuc2lnbmVkIGxvbmcgbnIpCj4gIHsKPiAt ICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0gPSAmZC0+YXJjaC5wMm07Cj4gKyAgICBzdHJ1Y3Qg cDJtX2RvbWFpbiAqcDJtID0gcDJtX2dldF9ob3N0cDJtKGQpOwo+ICAgICAgZ2ZuX3QgZW5kID0g Z2ZuX2FkZChzdGFydCwgbnIpOwo+Cj4gICAgICBzdGFydCA9IGdmbl9tYXgoc3RhcnQsIHAybS0+ bG93ZXN0X21hcHBlZF9nZm4pOwo+ICAgICAgZW5kID0gZ2ZuX21pbihlbmQsIHAybS0+bWF4X21h cHBlZF9nZm4pOwo+Cj4gLSAgICByZXR1cm4gYXBwbHlfcDJtX2NoYW5nZXMoZCwgQ0FDSEVGTFVT SCwgc3RhcnQsIG5yLCBJTlZBTElEX01GTiwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAwLCBwMm1faW52YWxpZCwgZC0+YXJjaC5wMm0uZGVmYXVsdF9hY2Nlc3MpOwo+ICsgICAgcmV0 dXJuIGFwcGx5X3AybV9jaGFuZ2VzKGQsIHAybSwgQ0FDSEVGTFVTSCwgc3RhcnQsIG5yLCBJTlZB TElEX01GTiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBwMm1faW52YWxpZCwg cDJtLT5kZWZhdWx0X2FjY2Vzcyk7Cj4gIH0KPgo+ICBtZm5fdCBnZm5fdG9fbWZuKHN0cnVjdCBk b21haW4gKmQsIGdmbl90IGdmbikKPiBAQCAtMTk2Myw3ICsxOTY0LDcgQEAgbG9uZyBwMm1fc2V0 X21lbV9hY2Nlc3Moc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgZ2ZuLCB1aW50MzJfdCBuciwKPiAg ICAgICAgICByZXR1cm4gMDsKPiAgICAgIH0KPgo+IC0gICAgcmMgPSBhcHBseV9wMm1fY2hhbmdl cyhkLCBNRU1BQ0NFU1MsIGdmbl9hZGQoZ2ZuLCBzdGFydCksCj4gKyAgICByYyA9IGFwcGx5X3Ay bV9jaGFuZ2VzKGQsIHAybSwgTUVNQUNDRVNTLCBnZm5fYWRkKGdmbiwgc3RhcnQpLAo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAobnIgLSBzdGFydCksIElOVkFMSURfTUZOLCBtYXNrLCAw LCBhKTsKPiAgICAgIGlmICggcmMgPCAwICkKPiAgICAgICAgICByZXR1cm4gcmM7Cj4KClsxXSAK aHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE2 LTA3L21zZzAyOTUyLmh0bWwKCi0tIApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRl dmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=