From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-bn3nam01on072b.outbound.protection.outlook.com ([2a01:111:f400:fe41::72b] helo=NAM01-BN3-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gZbBB-0007lB-9s for barebox@lists.infradead.org; Wed, 19 Dec 2018 12:42:31 +0000 From: "Baeuerle, Florian" Date: Wed, 19 Dec 2018 12:42:11 +0000 Message-ID: References: <20181217105343.kkfo4ihynrcv7dis@pengutronix.de> <20181218132233.23669-1-florian.baeuerle@allegion.com> In-Reply-To: <20181218132233.23669-1-florian.baeuerle@allegion.com> Content-Language: en-US Content-ID: <726C44EDE868FB41B7A9732FE27A5B2F@prod.exchangelabs.com> MIME-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "barebox" Errors-To: barebox-bounces+u.kleine-koenig=pengutronix.de@lists.infradead.org Subject: Re: [PATCH 1/2] recursive_action: add ACTION_SORT flag To: "barebox@lists.infradead.org" QW0gRGllbnN0YWcsIGRlbiAxOC4xMi4yMDE4LCAxMzoyMiArMDAwMCBzY2hyaWViIEJhZXVlcmxl LCBGbG9yaWFuOg0KPiBBZGQgYSBmbGFnIHRvIHNvcnQgZGlyZWN0b3J5IGVudHJpZXMgYmVmb3Jl IHJlY3Vyc2luZyBpbnRvIHRoZW0uDQo+IA0KPiBTaW5jZSB0aGlzIHBhcnQgb2YgbGliLyBpcyB1 c2VkIGluc2lkZSBiYXJlYm94IGFzIHdlbGwgYXMgaW4NCj4gc2NyaXB0cy9iYXJlYm94ZW52LmMs IHdlIGNhbm5vdCBlYXNpbHkgdXNlIHN0cmluZ2xpc3RzIGZyb20gbGliLywgd2hpY2gNCj4gd291 bGQgaGF2ZSBtYWRlIHRoZSBjb2RlIGEgYml0IG5pY2VyLg0KPiANCj4gRnVydGhlciwgYWRkIHBv aXNvbi5oIGZyb20ga2VybmVsIDQuNS1yYzEsIHdoaWNoIHdhcyB0aGUgYmFzZSBmb3INCj4gaW1w b3J0aW5nIGxpbnV4IGhlYWRlcnMgdW5kZXIgc2NyaXB0cy8gaW4gYTg4M2Q5YS4gVGhpcyBpcyBy ZXF1aXJlZCBmb3INCj4gYWN0dWFsbHkgdXNpbmcga2VybmVsIGxpbmtlZCBsaXN0cyB3aXRoaW4g c2NyaXB0cy8gdG9vbHMuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBGbG9yaWFuIELDpHVlcmxlIDxm bG9yaWFuLmJhZXVlcmxlQGFsbGVnaW9uLmNvbT4NCj4gLS0tDQo+ICBpbmNsdWRlL2xpYmJiLmgg ICAgICAgICAgICAgICAgICAgfCAgMSArDQo+ICBsaWIvbGlzdF9zb3J0LmMgICAgICAgICAgICAg ICAgICAgfCAgMyArLQ0KPiAgbGliL3JlY3Vyc2l2ZV9hY3Rpb24uYyAgICAgICAgICAgIHwgNjEg KysrKysrKysrKysrKysrKystLS0NCj4gIHNjcmlwdHMvYmFyZWJveGVudi5jICAgICAgICAgICAg ICB8ICA2ICsrDQo+ICBzY3JpcHRzL2luY2x1ZGUvbGludXgvbGlzdF9zb3J0LmggfCAgMSArDQo+ ICBzY3JpcHRzL2luY2x1ZGUvbGludXgvcG9pc29uLmggICAgfCA5MyArKysrKysrKysrKysrKysr KysrKysrKysrKysrKystDQo+ICA2IGZpbGVzIGNoYW5nZWQsIDE1NSBpbnNlcnRpb25zKCspLCAx MCBkZWxldGlvbnMoLSkNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBzY3JpcHRzL2luY2x1ZGUvbGlu dXgvbGlzdF9zb3J0LmgNCj4gDQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2xpYmJiLmggYi9pbmNs dWRlL2xpYmJiLmgNCj4gaW5kZXggYTM2MmJkMzJkLi4xZjZhZmFhMjcgMTAwNjQ0DQo+IC0tLSBh L2luY2x1ZGUvbGliYmIuaA0KPiArKysgYi9pbmNsdWRlL2xpYmJiLmgNCj4gQEAgLTE3LDYgKzE3 LDcgQEAgZW51bSB7DQo+ICAJQUNUSU9OX0ZPTExPV0xJTktTICAgID0gKDEgPDwgMSksDQo+ICAJ QUNUSU9OX0RFUFRIRklSU1QgID0gKDEgPDwgMiksDQo+ICAJLypBQ1RJT05fUkVWRVJTRSAgID0g KDEgPDwgMyksIC0gdW51c2VkICovDQo+ICsJQUNUSU9OX1NPUlQgICAgICAgID0gKDEgPDwgNCks DQo+ICB9Ow0KPiAgDQo+ICBpbnQgcmVjdXJzaXZlX2FjdGlvbihjb25zdCBjaGFyICpmaWxlTmFt ZSwgdW5zaWduZWQgZmxhZ3MsDQo+IGRpZmYgLS1naXQgYS9saWIvbGlzdF9zb3J0LmMgYi9saWIv bGlzdF9zb3J0LmMNCj4gaW5kZXggYjdlNzRmMjYwLi44NGM2ZjY0NjUgMTAwNjQ0DQo+IC0tLSBh L2xpYi9saXN0X3NvcnQuYw0KPiArKysgYi9saWIvbGlzdF9zb3J0LmMNCj4gQEAgLTEsNyArMSw2 IEBADQo+ICAjaWZuZGVmIF9fQkFSRUJPWF9fDQo+ICAjaW5jbHVkZSA8bGludXgva2VybmVsLmg+ DQo+IC0jaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+DQo+IC0jaW5jbHVkZSA8bGludXgvc2xhYi5o Pg0KPiArI2RlZmluZSBFWFBPUlRfU1lNQk9MKHgpDQo+ICAjZWxzZQ0KPiAgI2luY2x1ZGUgPGNv bW1vbi5oPg0KPiAgI2luY2x1ZGUgPG1hbGxvYy5oPg0KPiBkaWZmIC0tZ2l0IGEvbGliL3JlY3Vy c2l2ZV9hY3Rpb24uYyBiL2xpYi9yZWN1cnNpdmVfYWN0aW9uLmMNCj4gaW5kZXggMzQ1ZDNkYjBj Li4wZDdkZGJkOGUgMTAwNjQ0DQo+IC0tLSBhL2xpYi9yZWN1cnNpdmVfYWN0aW9uLmMNCj4gKysr IGIvbGliL3JlY3Vyc2l2ZV9hY3Rpb24uYw0KPiBAQCAtMTYsNiArMTYsMTQgQEANCj4gIA0KPiAg I2VuZGlmDQo+ICANCj4gKyNpbmNsdWRlIDxsaW51eC9saXN0Lmg+DQo+ICsjaW5jbHVkZSA8bGlu dXgvbGlzdF9zb3J0Lmg+DQo+ICsNCj4gK3N0cnVjdCBkaXJsaXN0IHsNCj4gKwljaGFyICpkaXJu YW1lOw0KPiArCXN0cnVjdCBsaXN0X2hlYWQgbGlzdDsNCj4gK307DQo+ICsNCj4gIC8qDQo+ICAg KiBXYWxrIGRvd24gYWxsIHRoZSBkaXJlY3RvcmllcyB1bmRlciB0aGUgc3BlY2lmaWVkDQo+ICAg KiBsb2NhdGlvbiwgYW5kIGRvIHNvbWV0aGluZyAoc29tZXRoaW5nIHNwZWNpZmllZA0KPiBAQCAt MzMsNiArNDEsMTkgQEAgc3RhdGljIGludCB0cnVlX2FjdGlvbihjb25zdCBjaGFyICpmaWxlTmFt ZSwgc3RydWN0IHN0YXQNCj4gKnN0YXRidWYsDQo+ICAJcmV0dXJuIDE7DQo+ICB9DQo+ICANCj4g K3N0YXRpYyBpbnQgY21wX2Rpcmxpc3Qodm9pZCAqcHJpdiwgc3RydWN0IGxpc3RfaGVhZCAqYSwg c3RydWN0IGxpc3RfaGVhZCAqYikNCj4gK3sNCj4gKwlzdHJ1Y3QgZGlybGlzdCAqcmEsICpyYjsN Cj4gKw0KPiArCWlmIChhID09IGIpDQo+ICsJCXJldHVybiAwOw0KPiArDQo+ICsJcmEgPSBsaXN0 X2VudHJ5KGEsIHN0cnVjdCBkaXJsaXN0LCBsaXN0KTsNCj4gKwlyYiA9IGxpc3RfZW50cnkoYiwg c3RydWN0IGRpcmxpc3QsIGxpc3QpOw0KPiArDQo+ICsJcmV0dXJuIHN0cmNtcChyYS0+ZGlybmFt ZSwgcmItPmRpcm5hbWUpOw0KPiArfQ0KPiArDQo+ICAvKiBmaWxlQWN0aW9uIHJldHVybiB2YWx1 ZSBvZiAwIG9uIGFueSBmaWxlIGluIGRpcmVjdG9yeSB3aWxsIG1ha2UNCj4gICAqIHJlY3Vyc2l2 ZV9hY3Rpb24oKSByZXR1cm4gMCwgYnV0IGl0IGRvZXNuJ3Qgc3RvcCBkaXJlY3RvcnkgdHJhdmVy c2FsDQo+ICAgKiAoZmlsZUFjdGlvbi9kaXJBY3Rpb24gd2lsbCBiZSBjYWxsZWQgb24gZWFjaCBm aWxlKS4NCj4gQEAgLTU1LDkgKzc2LDEyIEBAIGludCByZWN1cnNpdmVfYWN0aW9uKGNvbnN0IGNo YXIgKmZpbGVOYW1lLA0KPiAgew0KPiAgCXN0cnVjdCBzdGF0IHN0YXRidWY7DQo+ICAJdW5zaWdu ZWQgZm9sbG93Ow0KPiArCXVuc2lnbmVkIHNvcnQ7DQo+ICAJaW50IHN0YXR1czsNCj4gIAlESVIg KmRpcjsNCj4gIAlzdHJ1Y3QgZGlyZW50ICpuZXh0Ow0KPiArCXN0cnVjdCBkaXJsaXN0ICplbnRy eSwgKmVudHJ5X3RtcDsNCj4gKwlMSVNUX0hFQUQoZGlycyk7DQo+ICANCj4gIAlpZiAoIWZpbGVB Y3Rpb24pIGZpbGVBY3Rpb24gPSB0cnVlX2FjdGlvbjsNCj4gIAlpZiAoIWRpckFjdGlvbikgZGly QWN0aW9uID0gdHJ1ZV9hY3Rpb247DQo+IEBAIC0xMDYsMjAgKzEzMCw0MyBAQCBpbnQgcmVjdXJz aXZlX2FjdGlvbihjb25zdCBjaGFyICpmaWxlTmFtZSwNCj4gIAkJLyogVG8gdHJpZ2dlcjogImZp bmQgLWV4ZWMgcm0gLXJmIHt9IFw7IiAqLw0KPiAgCQlnb3RvIGRvbmVfbmFrX3dhcm47DQo+ICAJ fQ0KPiArCXNvcnQgPSBmbGFncyAmIEFDVElPTl9TT1JUOw0KPiAgCXN0YXR1cyA9IDE7DQo+ICAJ d2hpbGUgKChuZXh0ID0gcmVhZGRpcihkaXIpKSAhPSBOVUxMKSB7DQo+IC0JCWNoYXIgKm5leHRG aWxlOw0KPiAtDQo+IC0JCW5leHRGaWxlID0gY29uY2F0X3N1YnBhdGhfZmlsZShmaWxlTmFtZSwg bmV4dC0+ZF9uYW1lKTsNCj4gKwkJY2hhciAqbmV4dEZpbGUgPSBjb25jYXRfc3VicGF0aF9maWxl KGZpbGVOYW1lLCBuZXh0LT5kX25hbWUpOw0KPiAgCQlpZiAobmV4dEZpbGUgPT0gTlVMTCkNCj4g IAkJCWNvbnRpbnVlOw0KPiAtCQkvKiBub3cgZGVzY2VuZCBpbnRvIGl0LCBmb3JjaW5nIHJlY3Vy c2lvbi4gKi8NCj4gLQkJaWYgKCFyZWN1cnNpdmVfYWN0aW9uKG5leHRGaWxlLCBmbGFncyB8IEFD VElPTl9SRUNVUlNFLA0KPiAtCQkJCWZpbGVBY3Rpb24sIGRpckFjdGlvbiwgdXNlckRhdGEsIGRl cHRoKzEpKSB7DQo+IC0JCQlzdGF0dXMgPSAwOw0KPiArDQo+ICsJCWlmIChzb3J0KSB7DQo+ICsJ CQlzdHJ1Y3QgZGlybGlzdCAqZSA9IG1hbGxvYyhzaXplb2YoKmUpKTsNCj4gKwkJCWUtPmRpcm5h bWUgPSBzdHJkdXAobmV4dC0+ZF9uYW1lKTsNCg0KSSB0aGluayB0aGlzIHNob3VsZCBoYW5kbGUg TlVMTHMuDQoNCj4gKwkJCWxpc3RfYWRkKCZlLT5saXN0LCAmZGlycyk7DQo+ICsJCX0gZWxzZSB7 DQo+ICsJCQkvKiBkZXNjZW5kIGludG8gaXQsIGZvcmNpbmcgcmVjdXJzaW9uLiAqLw0KPiArCQkJ aWYgKCFyZWN1cnNpdmVfYWN0aW9uKG5leHRGaWxlLCBmbGFncyB8IEFDVElPTl9SRUNVUlNFLA0K PiArCQkJCQkJZmlsZUFjdGlvbiwgZGlyQWN0aW9uLCB1c2VyRGF0YSwNCj4gZGVwdGgrMSkpIHsN Cj4gKwkJCQlzdGF0dXMgPSAwOw0KPiArCQkJfQ0KPiAgCQl9DQo+ICsNCj4gIAkJZnJlZShuZXh0 RmlsZSk7DQo+ICAJfQ0KPiArDQo+ICsJaWYgKHNvcnQpIHsNCj4gKwkJbGlzdF9zb3J0KE5VTEws ICZkaXJzLCAmY21wX2Rpcmxpc3QpOw0KPiArDQo+ICsJCWxpc3RfZm9yX2VhY2hfZW50cnlfc2Fm ZShlbnRyeSwgZW50cnlfdG1wLCAmZGlycywgbGlzdCkNCj4gKwkJew0KPiArCQkJLyogZGVzY2Vu ZCBpbnRvIGl0LCBmb3JjaW5nIHJlY3Vyc2lvbi4gKi8NCj4gKwkJCWlmICghcmVjdXJzaXZlX2Fj dGlvbihlbnRyeS0+ZGlybmFtZSwgZmxhZ3MgfA0KPiBBQ1RJT05fUkVDVVJTRSwNCj4gKwkJCQkJ CWZpbGVBY3Rpb24sIGRpckFjdGlvbiwgdXNlckRhdGEsDQo+IGRlcHRoKzEpKSB7DQo+ICsJCQkJ c3RhdHVzID0gMDsNCj4gKwkJCX0NCj4gKw0KPiArCQkJbGlzdF9kZWwoJmVudHJ5LT5saXN0KTsN Cj4gKwkJCWZyZWUoZW50cnktPmRpcm5hbWUpOw0KPiArCQl9DQo+ICsJfQ0KPiAgCWNsb3NlZGly KGRpcik7DQo+ICAJaWYgKChmbGFncyAmIEFDVElPTl9ERVBUSEZJUlNUKSAmJg0KPiAgCQkhZGly QWN0aW9uKGZpbGVOYW1lLCAmc3RhdGJ1ZiwgdXNlckRhdGEsIGRlcHRoKSkgew0KPiBkaWZmIC0t Z2l0IGEvc2NyaXB0cy9iYXJlYm94ZW52LmMgYi9zY3JpcHRzL2JhcmVib3hlbnYuYw0KPiBpbmRl eCAyNDllNjViMjUuLmRlNTdjMmZjZSAxMDA2NDQNCj4gLS0tIGEvc2NyaXB0cy9iYXJlYm94ZW52 LmMNCj4gKysrIGIvc2NyaXB0cy9iYXJlYm94ZW52LmMNCj4gQEAgLTM0LDYgKzM0LDcgQEANCj4g ICNpbmNsdWRlICJjb21waWxlci5oIg0KPiAgDQo+ICAjZGVmaW5lIGRlYnVnKC4uLikNCj4gKyNk ZWZpbmUgcHJpbnRrX29uY2UoLi4uKQ0KPiAgDQo+ICAvKiBGaW5kIG91dCBpZiB0aGUgbGFzdCBj aGFyYWN0ZXIgb2YgYSBzdHJpbmcgbWF0Y2hlcyB0aGUgb25lIGdpdmVuLg0KPiAgICogRG9uJ3Qg dW5kZXJydW4gdGhlIGJ1ZmZlciBpZiB0aGUgc3RyaW5nIGxlbmd0aCBpcyAwLg0KPiBAQCAtNTQs NiArNTUsNyBAQCBlbnVtIHsNCj4gIAlBQ1RJT05fRk9MTE9XTElOS1MgPSAoMSA8PCAxKSwNCj4g IAlBQ1RJT05fREVQVEhGSVJTVCAgPSAoMSA8PCAyKSwNCj4gIAkvKkFDVElPTl9SRVZFUlNFICAg PSAoMSA8PCAzKSwgLSB1bnVzZWQgKi8NCj4gKwlBQ1RJT05fU09SVCAgICAgICAgPSAoMSA8PCA0 KSwNCj4gIH07DQo+ICANCj4gIGludCByZWN1cnNpdmVfYWN0aW9uKGNvbnN0IGNoYXIgKmZpbGVO YW1lLCB1bnNpZ25lZCBmbGFncywNCj4gQEAgLTk1LDYgKzk3LDEwIEBAIHN0YXRpYyBjaGFyICpj b25jYXRfc3VicGF0aF9maWxlKGNvbnN0IGNoYXIgKnBhdGgsIGNvbnN0DQo+IGNoYXIgKmYpDQo+ ICAJcmV0dXJuIGNvbmNhdF9wYXRoX2ZpbGUocGF0aCwgZik7DQo+ICB9DQo+ICANCj4gKyNpbmNs dWRlIDxsaW51eC9saXN0Lmg+DQo+ICsjaW5jbHVkZSA8bGludXgvbGlzdF9zb3J0Lmg+DQo+ICsj aW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4NCj4gKyNpbmNsdWRlICIuLi9saWIvbGlzdF9zb3J0 LmMiDQo+ICAjaW5jbHVkZSAiLi4vbGliL3JlY3Vyc2l2ZV9hY3Rpb24uYyINCj4gICNpbmNsdWRl ICIuLi9pbmNsdWRlL2VudmZzLmgiDQo+ICAjaW5jbHVkZSAiLi4vY3J5cHRvL2NyYzMyLmMiDQo+ IGRpZmYgLS1naXQgYS9zY3JpcHRzL2luY2x1ZGUvbGludXgvbGlzdF9zb3J0LmgNCj4gYi9zY3Jp cHRzL2luY2x1ZGUvbGludXgvbGlzdF9zb3J0LmgNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4g aW5kZXggMDAwMDAwMDAwLi5iZTg4OWM5YWUNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9zY3Jp cHRzL2luY2x1ZGUvbGludXgvbGlzdF9zb3J0LmgNCj4gQEAgLTAsMCArMSBAQA0KPiArI2luY2x1 ZGUgPC4uLy4uL2luY2x1ZGUvbGludXgvbGlzdF9zb3J0Lmg+DQo+IGRpZmYgLS1naXQgYS9zY3Jp cHRzL2luY2x1ZGUvbGludXgvcG9pc29uLmggYi9zY3JpcHRzL2luY2x1ZGUvbGludXgvcG9pc29u LmgNCj4gaW5kZXggMGMyN2JkZjE0Li4xNTkyN2ViYzIgMTAwNjQ0DQo+IC0tLSBhL3NjcmlwdHMv aW5jbHVkZS9saW51eC9wb2lzb24uaA0KPiArKysgYi9zY3JpcHRzL2luY2x1ZGUvbGludXgvcG9p c29uLmgNCj4gQEAgLTEgKzEsOTIgQEANCj4gLSNpbmNsdWRlICIuLi8uLi8uLi9pbmNsdWRlL2xp bnV4L3BvaXNvbi5oIg0KPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAgKi8N Cj4gKyNpZm5kZWYgX0xJTlVYX1BPSVNPTl9IDQo+ICsjZGVmaW5lIF9MSU5VWF9QT0lTT05fSA0K PiArDQo+ICsvKioqKioqKioqKiBpbmNsdWRlL2xpbnV4L2xpc3QuaCAqKioqKioqKioqLw0KPiAr DQo+ICsvKg0KPiArICogQXJjaGl0ZWN0dXJlcyBtaWdodCB3YW50IHRvIG1vdmUgdGhlIHBvaXNv biBwb2ludGVyIG9mZnNldA0KPiArICogaW50byBzb21lIHdlbGwtcmVjb2duaXplZCBhcmVhIHN1 Y2ggYXMgMHhkZWFkMDAwMDAwMDAwMDAwLA0KPiArICogdGhhdCBpcyBhbHNvIG5vdCBtYXBwYWJs ZSBieSB1c2VyLXNwYWNlIGV4cGxvaXRzOg0KPiArICovDQo+ICsjaWZkZWYgQ09ORklHX0lMTEVH QUxfUE9JTlRFUl9WQUxVRQ0KPiArIyBkZWZpbmUgUE9JU09OX1BPSU5URVJfREVMVEEgX0FDKENP TkZJR19JTExFR0FMX1BPSU5URVJfVkFMVUUsIFVMKQ0KPiArI2Vsc2UNCj4gKyMgZGVmaW5lIFBP SVNPTl9QT0lOVEVSX0RFTFRBIDANCj4gKyNlbmRpZg0KPiArDQo+ICsvKg0KPiArICogVGhlc2Ug YXJlIG5vbi1OVUxMIHBvaW50ZXJzIHRoYXQgd2lsbCByZXN1bHQgaW4gcGFnZSBmYXVsdHMNCj4g KyAqIHVuZGVyIG5vcm1hbCBjaXJjdW1zdGFuY2VzLCB1c2VkIHRvIHZlcmlmeSB0aGF0IG5vYm9k eSB1c2VzDQo+ICsgKiBub24taW5pdGlhbGl6ZWQgbGlzdCBlbnRyaWVzLg0KPiArICovDQo+ICsj ZGVmaW5lIExJU1RfUE9JU09OMSAgKCh2b2lkICopIDB4MTAwICsgUE9JU09OX1BPSU5URVJfREVM VEEpDQo+ICsjZGVmaW5lIExJU1RfUE9JU09OMiAgKCh2b2lkICopIDB4MjAwICsgUE9JU09OX1BP SU5URVJfREVMVEEpDQo+ICsNCj4gKy8qKioqKioqKioqIGluY2x1ZGUvbGludXgvdGltZXIuaCAq KioqKioqKioqLw0KPiArLyoNCj4gKyAqIE1hZ2ljIG51bWJlciAidHN0YSIgdG8gaW5kaWNhdGUg YSBzdGF0aWMgdGltZXIgaW5pdGlhbGl6ZXINCj4gKyAqIGZvciB0aGUgb2JqZWN0IGRlYnVnZ2lu ZyBjb2RlLg0KPiArICovDQo+ICsjZGVmaW5lIFRJTUVSX0VOVFJZX1NUQVRJQwkoKHZvaWQgKikg MHgzMDAgKyBQT0lTT05fUE9JTlRFUl9ERUxUQSkNCj4gKw0KPiArLyoqKioqKioqKiogbW0vZGVi dWctcGFnZWFsbG9jLmMgKioqKioqKioqKi8NCj4gKyNpZmRlZiBDT05GSUdfUEFHRV9QT0lTT05J TkdfWkVSTw0KPiArI2RlZmluZSBQQUdFX1BPSVNPTiAweDAwDQo+ICsjZWxzZQ0KPiArI2RlZmlu ZSBQQUdFX1BPSVNPTiAweGFhDQo+ICsjZW5kaWYNCj4gKw0KPiArLyoqKioqKioqKiogbW0vcGFn ZV9hbGxvYy5jICoqKioqKioqKioqKi8NCj4gKw0KPiArI2RlZmluZSBUQUlMX01BUFBJTkcJKCh2 b2lkICopIDB4NDAwICsgUE9JU09OX1BPSU5URVJfREVMVEEpDQo+ICsNCj4gKy8qKioqKioqKioq IG1tL3NsYWIuYyAqKioqKioqKioqLw0KPiArLyoNCj4gKyAqIE1hZ2ljIG51bXMgZm9yIG9iaiBy ZWQgem9uaW5nLg0KPiArICogUGxhY2VkIGluIHRoZSBmaXJzdCB3b3JkIGJlZm9yZSBhbmQgdGhl IGZpcnN0IHdvcmQgYWZ0ZXIgYW4gb2JqLg0KPiArICovDQo+ICsjZGVmaW5lCVJFRF9JTkFDVElW RQkweDA5RjkxMTAyOUQ3NEUzNUJVTEwJLyogd2hlbiBvYmogaXMNCj4gaW5hY3RpdmUgKi8NCj4g KyNkZWZpbmUJUkVEX0FDVElWRQkweEQ4NDE1NkM1NjM1Njg4QzBVTEwJLyogd2hlbiBvYmogaXMg YWN0aXZlDQo+ICovDQo+ICsNCj4gKyNkZWZpbmUgU0xVQl9SRURfSU5BQ1RJVkUJMHhiYg0KPiAr I2RlZmluZSBTTFVCX1JFRF9BQ1RJVkUJCTB4Y2MNCj4gKw0KPiArLyogLi4uYW5kIGZvciBwb2lz b25pbmcgKi8NCj4gKyNkZWZpbmUJUE9JU09OX0lOVVNFCTB4NWEJLyogZm9yIHVzZS11bmluaXRp YWxpc2VkIHBvaXNvbmluZyAqLw0KPiArI2RlZmluZSBQT0lTT05fRlJFRQkweDZiCS8qIGZvciB1 c2UtYWZ0ZXItZnJlZSBwb2lzb25pbmcgKi8NCj4gKyNkZWZpbmUJUE9JU09OX0VORAkweGE1CS8q IGVuZC1ieXRlIG9mIHBvaXNvbmluZyAqLw0KPiArDQo+ICsvKioqKioqKioqKiBhcmNoLyRBUkNI L21tL2luaXQuYyAqKioqKioqKioqLw0KPiArI2RlZmluZSBQT0lTT05fRlJFRV9JTklUTUVNCTB4 Y2MNCj4gKw0KPiArLyoqKioqKioqKiogYXJjaC9pYTY0L2hwL2NvbW1vbi9zYmFfaW9tbXUuYyAq KioqKioqKioqLw0KPiArLyoNCj4gKyAqIGFyY2gvaWE2NC9ocC9jb21tb24vc2JhX2lvbW11LmMg dXNlcyBhIDE2LWJ5dGUgcG9pc29uIHN0cmluZyB3aXRoIGENCj4gKyAqIHZhbHVlIG9mICJTQkFJ T01NVSBQT0lTT05cMCIgZm9yIHNwaWxsLW92ZXIgcG9pc29uaW5nLg0KPiArICovDQo+ICsNCj4g Ky8qKioqKioqKioqIGZzL2piZC9qb3VybmFsLmMgKioqKioqKioqKi8NCj4gKyNkZWZpbmUgSkJE X1BPSVNPTl9GUkVFCQkweDViDQo+ICsjZGVmaW5lIEpCRDJfUE9JU09OX0ZSRUUJMHg1Yw0KPiAr DQo+ICsvKioqKioqKioqKiBkcml2ZXJzL2Jhc2UvZG1hcG9vbC5jICoqKioqKioqKiovDQo+ICsj ZGVmaW5lCVBPT0xfUE9JU09OX0ZSRUVECTB4YTcJLyogIWludXNlICovDQo+ICsjZGVmaW5lCVBP T0xfUE9JU09OX0FMTE9DQVRFRAkweGE5CS8qICFpbml0dGVkICovDQo+ICsNCj4gKy8qKioqKioq KioqIGRyaXZlcnMvYXRtLyAqKioqKioqKioqLw0KPiArI2RlZmluZSBBVE1fUE9JU09OX0ZSRUUJ CTB4MTINCj4gKyNkZWZpbmUgQVRNX1BPSVNPTgkJMHhkZWFkYmVlZg0KPiArDQo+ICsvKioqKioq KioqKiBrZXJuZWwvbXV0ZXhlcyAqKioqKioqKioqLw0KPiArI2RlZmluZSBNVVRFWF9ERUJVR19J TklUCTB4MTENCj4gKyNkZWZpbmUgTVVURVhfREVCVUdfRlJFRQkweDIyDQo+ICsjZGVmaW5lIE1V VEVYX1BPSVNPTl9XV19DVFgJKCh2b2lkICopIDB4NTAwICsgUE9JU09OX1BPSU5URVJfREVMVEEp DQo+ICsNCj4gKy8qKioqKioqKioqIGxpYi9mbGV4X2FycmF5LmMgKioqKioqKioqKi8NCj4gKyNk ZWZpbmUgRkxFWF9BUlJBWV9GUkVFCTB4NmMJLyogZm9yIHVzZS1hZnRlci1mcmVlIHBvaXNvbmlu ZyAqLw0KPiArDQo+ICsvKioqKioqKioqKiBzZWN1cml0eS8gKioqKioqKioqKi8NCj4gKyNkZWZp bmUgS0VZX0RFU1RST1kJCTB4YmQNCj4gKw0KPiArI2VuZGlmDQo+IC0tIA0KPiAyLjE5LjINCj4g DQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IGJh cmVib3ggbWFpbGluZyBsaXN0DQo+IGJhcmVib3hAbGlzdHMuaW5mcmFkZWFkLm9yZw0KPiBodHRw Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2JhcmVib3gNCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmJhcmVib3ggbWFpbGluZyBs aXN0CmJhcmVib3hAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2JhcmVib3gK