From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-eopbgr680116.outbound.protection.outlook.com ([40.107.68.116] helo=NAM04-BN3-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gZcQT-00060I-RI for barebox@lists.infradead.org; Wed, 19 Dec 2018 14:02:23 +0000 From: "Baeuerle, Florian" Date: Wed, 19 Dec 2018 14:02:03 +0000 Message-ID: <20181219140146.11806-1-florian.baeuerle@allegion.com> References: <20181218132233.23669-1-florian.baeuerle@allegion.com> In-Reply-To: <20181218132233.23669-1-florian.baeuerle@allegion.com> Content-Language: en-US Content-ID: 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: [PATCH v2 1/2] recursive_action: add ACTION_SORT flag To: "barebox@lists.infradead.org" QWRkIGEgZmxhZyB0byBzb3J0IGRpcmVjdG9yeSBlbnRyaWVzIGJlZm9yZSByZWN1cnNpbmcgaW50 byB0aGVtLg0KDQpTaW5jZSB0aGlzIHBhcnQgb2YgbGliLyBpcyB1c2VkIGluc2lkZSBiYXJlYm94 IGFzIHdlbGwgYXMgaW4NCnNjcmlwdHMvYmFyZWJveGVudi5jLCB3ZSBjYW5ub3QgZWFzaWx5IHVz ZSBzdHJpbmdsaXN0cyBmcm9tIGxpYi8sIHdoaWNoDQp3b3VsZCBoYXZlIG1hZGUgdGhlIGNvZGUg YSBiaXQgbmljZXIuDQoNCkZ1cnRoZXIsIGFkZCBwb2lzb24uaCBmcm9tIGtlcm5lbCA0LjUtcmMx LCB3aGljaCB3YXMgdGhlIGJhc2UgZm9yDQppbXBvcnRpbmcgbGludXggaGVhZGVycyB1bmRlciBz Y3JpcHRzLyBpbiBhODgzZDlhLiBUaGlzIGlzIHJlcXVpcmVkIGZvcg0KYWN0dWFsbHkgdXNpbmcg a2VybmVsIGxpbmtlZCBsaXN0cyB3aXRoaW4gc2NyaXB0cy8gdG9vbHMuDQoNClNpZ25lZC1vZmYt Ynk6IEZsb3JpYW4gQsOkdWVybGUgPGZsb3JpYW4uYmFldWVybGVAYWxsZWdpb24uY29tPg0KLS0t DQogaW5jbHVkZS9saWJiYi5oICAgICAgICAgICAgICAgICAgIHwgIDEgKw0KIGxpYi9saXN0X3Nv cnQuYyAgICAgICAgICAgICAgICAgICB8ICAzICstDQogbGliL3JlY3Vyc2l2ZV9hY3Rpb24uYyAg ICAgICAgICAgIHwgNjEgKysrKysrKysrKysrKysrKystLS0NCiBzY3JpcHRzL2JhcmVib3hlbnYu YyAgICAgICAgICAgICAgfCAxNSArKysrKw0KIHNjcmlwdHMvaW5jbHVkZS9saW51eC9saXN0X3Nv cnQuaCB8ICAxICsNCiBzY3JpcHRzL2luY2x1ZGUvbGludXgvcG9pc29uLmggICAgfCA5MyArKysr KysrKysrKysrKysrKysrKysrKysrKysrKystDQogNiBmaWxlcyBjaGFuZ2VkLCAxNjQgaW5zZXJ0 aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNjcmlwdHMvaW5j bHVkZS9saW51eC9saXN0X3NvcnQuaA0KDQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saWJiYi5oIGIv aW5jbHVkZS9saWJiYi5oDQppbmRleCBhMzYyYmQzMmQuLjFmNmFmYWEyNyAxMDA2NDQNCi0tLSBh L2luY2x1ZGUvbGliYmIuaA0KKysrIGIvaW5jbHVkZS9saWJiYi5oDQpAQCAtMTcsNiArMTcsNyBA QCBlbnVtIHsNCiAJQUNUSU9OX0ZPTExPV0xJTktTICAgID0gKDEgPDwgMSksDQogCUFDVElPTl9E RVBUSEZJUlNUICA9ICgxIDw8IDIpLA0KIAkvKkFDVElPTl9SRVZFUlNFICAgPSAoMSA8PCAzKSwg LSB1bnVzZWQgKi8NCisJQUNUSU9OX1NPUlQgICAgICAgID0gKDEgPDwgNCksDQogfTsNCiANCiBp bnQgcmVjdXJzaXZlX2FjdGlvbihjb25zdCBjaGFyICpmaWxlTmFtZSwgdW5zaWduZWQgZmxhZ3Ms DQpkaWZmIC0tZ2l0IGEvbGliL2xpc3Rfc29ydC5jIGIvbGliL2xpc3Rfc29ydC5jDQppbmRleCBi N2U3NGYyNjAuLjg0YzZmNjQ2NSAxMDA2NDQNCi0tLSBhL2xpYi9saXN0X3NvcnQuYw0KKysrIGIv bGliL2xpc3Rfc29ydC5jDQpAQCAtMSw3ICsxLDYgQEANCiAjaWZuZGVmIF9fQkFSRUJPWF9fDQog I2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5oPg0KLSNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4NCi0j aW5jbHVkZSA8bGludXgvc2xhYi5oPg0KKyNkZWZpbmUgRVhQT1JUX1NZTUJPTCh4KQ0KICNlbHNl DQogI2luY2x1ZGUgPGNvbW1vbi5oPg0KICNpbmNsdWRlIDxtYWxsb2MuaD4NCmRpZmYgLS1naXQg YS9saWIvcmVjdXJzaXZlX2FjdGlvbi5jIGIvbGliL3JlY3Vyc2l2ZV9hY3Rpb24uYw0KaW5kZXgg MzQ1ZDNkYjBjLi4xOWU2NjFlZjEgMTAwNjQ0DQotLS0gYS9saWIvcmVjdXJzaXZlX2FjdGlvbi5j DQorKysgYi9saWIvcmVjdXJzaXZlX2FjdGlvbi5jDQpAQCAtMTMsOSArMTMsMTggQEANCiAjaW5j bHVkZSA8bGludXgvc3RhdC5oPg0KICNpbmNsdWRlIDxtYWxsb2MuaD4NCiAjaW5jbHVkZSA8bGli YmIuaD4NCisjaW5jbHVkZSA8eGZ1bmNzLmg+DQogDQogI2VuZGlmDQogDQorI2luY2x1ZGUgPGxp bnV4L2xpc3QuaD4NCisjaW5jbHVkZSA8bGludXgvbGlzdF9zb3J0Lmg+DQorDQorc3RydWN0IGRp cmxpc3Qgew0KKwljaGFyICpkaXJuYW1lOw0KKwlzdHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7DQorfTsN CisNCiAvKg0KICAqIFdhbGsgZG93biBhbGwgdGhlIGRpcmVjdG9yaWVzIHVuZGVyIHRoZSBzcGVj aWZpZWQNCiAgKiBsb2NhdGlvbiwgYW5kIGRvIHNvbWV0aGluZyAoc29tZXRoaW5nIHNwZWNpZmll ZA0KQEAgLTMzLDYgKzQyLDE5IEBAIHN0YXRpYyBpbnQgdHJ1ZV9hY3Rpb24oY29uc3QgY2hhciAq ZmlsZU5hbWUsIHN0cnVjdCBzdGF0ICpzdGF0YnVmLA0KIAlyZXR1cm4gMTsNCiB9DQogDQorc3Rh dGljIGludCBjbXBfZGlybGlzdCh2b2lkICpwcml2LCBzdHJ1Y3QgbGlzdF9oZWFkICphLCBzdHJ1 Y3QgbGlzdF9oZWFkICpiKQ0KK3sNCisJc3RydWN0IGRpcmxpc3QgKnJhLCAqcmI7DQorDQorCWlm IChhID09IGIpDQorCQlyZXR1cm4gMDsNCisNCisJcmEgPSBsaXN0X2VudHJ5KGEsIHN0cnVjdCBk aXJsaXN0LCBsaXN0KTsNCisJcmIgPSBsaXN0X2VudHJ5KGIsIHN0cnVjdCBkaXJsaXN0LCBsaXN0 KTsNCisNCisJcmV0dXJuIHN0cmNtcChyYS0+ZGlybmFtZSwgcmItPmRpcm5hbWUpOw0KK30NCisN CiAvKiBmaWxlQWN0aW9uIHJldHVybiB2YWx1ZSBvZiAwIG9uIGFueSBmaWxlIGluIGRpcmVjdG9y eSB3aWxsIG1ha2UNCiAgKiByZWN1cnNpdmVfYWN0aW9uKCkgcmV0dXJuIDAsIGJ1dCBpdCBkb2Vz bid0IHN0b3AgZGlyZWN0b3J5IHRyYXZlcnNhbA0KICAqIChmaWxlQWN0aW9uL2RpckFjdGlvbiB3 aWxsIGJlIGNhbGxlZCBvbiBlYWNoIGZpbGUpLg0KQEAgLTU1LDkgKzc3LDEyIEBAIGludCByZWN1 cnNpdmVfYWN0aW9uKGNvbnN0IGNoYXIgKmZpbGVOYW1lLA0KIHsNCiAJc3RydWN0IHN0YXQgc3Rh dGJ1ZjsNCiAJdW5zaWduZWQgZm9sbG93Ow0KKwl1bnNpZ25lZCBzb3J0Ow0KIAlpbnQgc3RhdHVz Ow0KIAlESVIgKmRpcjsNCiAJc3RydWN0IGRpcmVudCAqbmV4dDsNCisJc3RydWN0IGRpcmxpc3Qg KmVudHJ5LCAqZW50cnlfdG1wOw0KKwlMSVNUX0hFQUQoZGlycyk7DQogDQogCWlmICghZmlsZUFj dGlvbikgZmlsZUFjdGlvbiA9IHRydWVfYWN0aW9uOw0KIAlpZiAoIWRpckFjdGlvbikgZGlyQWN0 aW9uID0gdHJ1ZV9hY3Rpb247DQpAQCAtMTA2LDIwICsxMzEsNDIgQEAgaW50IHJlY3Vyc2l2ZV9h Y3Rpb24oY29uc3QgY2hhciAqZmlsZU5hbWUsDQogCQkvKiBUbyB0cmlnZ2VyOiAiZmluZCAtZXhl YyBybSAtcmYge30gXDsiICovDQogCQlnb3RvIGRvbmVfbmFrX3dhcm47DQogCX0NCisJc29ydCA9 IGZsYWdzICYgQUNUSU9OX1NPUlQ7DQogCXN0YXR1cyA9IDE7DQogCXdoaWxlICgobmV4dCA9IHJl YWRkaXIoZGlyKSkgIT0gTlVMTCkgew0KLQkJY2hhciAqbmV4dEZpbGU7DQotDQotCQluZXh0Rmls ZSA9IGNvbmNhdF9zdWJwYXRoX2ZpbGUoZmlsZU5hbWUsIG5leHQtPmRfbmFtZSk7DQorCQljaGFy ICpuZXh0RmlsZSA9IGNvbmNhdF9zdWJwYXRoX2ZpbGUoZmlsZU5hbWUsIG5leHQtPmRfbmFtZSk7 DQogCQlpZiAobmV4dEZpbGUgPT0gTlVMTCkNCiAJCQljb250aW51ZTsNCi0JCS8qIG5vdyBkZXNj ZW5kIGludG8gaXQsIGZvcmNpbmcgcmVjdXJzaW9uLiAqLw0KLQkJaWYgKCFyZWN1cnNpdmVfYWN0 aW9uKG5leHRGaWxlLCBmbGFncyB8IEFDVElPTl9SRUNVUlNFLA0KLQkJCQlmaWxlQWN0aW9uLCBk aXJBY3Rpb24sIHVzZXJEYXRhLCBkZXB0aCsxKSkgew0KLQkJCXN0YXR1cyA9IDA7DQorDQorCQlp ZiAoc29ydCkgew0KKwkJCXN0cnVjdCBkaXJsaXN0ICplID0geG1hbGxvYyhzaXplb2YoKmUpKTsN CisJCQllLT5kaXJuYW1lID0geHN0cmR1cChuZXh0LT5kX25hbWUpOw0KKwkJCWxpc3RfYWRkKCZl LT5saXN0LCAmZGlycyk7DQorCQl9IGVsc2Ugew0KKwkJCS8qIGRlc2NlbmQgaW50byBpdCwgZm9y Y2luZyByZWN1cnNpb24uICovDQorCQkJaWYgKCFyZWN1cnNpdmVfYWN0aW9uKG5leHRGaWxlLCBm bGFncyB8IEFDVElPTl9SRUNVUlNFLA0KKwkJCQkJCWZpbGVBY3Rpb24sIGRpckFjdGlvbiwgdXNl ckRhdGEsIGRlcHRoKzEpKSB7DQorCQkJCXN0YXR1cyA9IDA7DQorCQkJfQ0KIAkJfQ0KIAkJZnJl ZShuZXh0RmlsZSk7DQogCX0NCisNCisJaWYgKHNvcnQpIHsNCisJCWxpc3Rfc29ydChOVUxMLCAm ZGlycywgJmNtcF9kaXJsaXN0KTsNCisNCisJCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShlbnRy eSwgZW50cnlfdG1wLCAmZGlycywgbGlzdCkNCisJCXsNCisJCQkvKiBkZXNjZW5kIGludG8gaXQs IGZvcmNpbmcgcmVjdXJzaW9uLiAqLw0KKwkJCWlmICghcmVjdXJzaXZlX2FjdGlvbihlbnRyeS0+ ZGlybmFtZSwgZmxhZ3MgfCBBQ1RJT05fUkVDVVJTRSwNCisJCQkJCQlmaWxlQWN0aW9uLCBkaXJB Y3Rpb24sIHVzZXJEYXRhLCBkZXB0aCsxKSkgew0KKwkJCQlzdGF0dXMgPSAwOw0KKwkJCX0NCisN CisJCQlsaXN0X2RlbCgmZW50cnktPmxpc3QpOw0KKwkJCWZyZWUoZW50cnktPmRpcm5hbWUpOw0K KwkJfQ0KKwl9DQogCWNsb3NlZGlyKGRpcik7DQogCWlmICgoZmxhZ3MgJiBBQ1RJT05fREVQVEhG SVJTVCkgJiYNCiAJCSFkaXJBY3Rpb24oZmlsZU5hbWUsICZzdGF0YnVmLCB1c2VyRGF0YSwgZGVw dGgpKSB7DQpkaWZmIC0tZ2l0IGEvc2NyaXB0cy9iYXJlYm94ZW52LmMgYi9zY3JpcHRzL2JhcmVi b3hlbnYuYw0KaW5kZXggMjQ5ZTY1YjI1Li5lOTViZGVhYTUgMTAwNjQ0DQotLS0gYS9zY3JpcHRz L2JhcmVib3hlbnYuYw0KKysrIGIvc2NyaXB0cy9iYXJlYm94ZW52LmMNCkBAIC0zNCw2ICszNCw3 IEBADQogI2luY2x1ZGUgImNvbXBpbGVyLmgiDQogDQogI2RlZmluZSBkZWJ1ZyguLi4pDQorI2Rl ZmluZSBwcmludGtfb25jZSguLi4pDQogDQogLyogRmluZCBvdXQgaWYgdGhlIGxhc3QgY2hhcmFj dGVyIG9mIGEgc3RyaW5nIG1hdGNoZXMgdGhlIG9uZSBnaXZlbi4NCiAgKiBEb24ndCB1bmRlcnJ1 biB0aGUgYnVmZmVyIGlmIHRoZSBzdHJpbmcgbGVuZ3RoIGlzIDAuDQpAQCAtNTQsNiArNTUsNyBA QCBlbnVtIHsNCiAJQUNUSU9OX0ZPTExPV0xJTktTID0gKDEgPDwgMSksDQogCUFDVElPTl9ERVBU SEZJUlNUICA9ICgxIDw8IDIpLA0KIAkvKkFDVElPTl9SRVZFUlNFICAgPSAoMSA8PCAzKSwgLSB1 bnVzZWQgKi8NCisJQUNUSU9OX1NPUlQgICAgICAgID0gKDEgPDwgNCksDQogfTsNCiANCiBpbnQg cmVjdXJzaXZlX2FjdGlvbihjb25zdCBjaGFyICpmaWxlTmFtZSwgdW5zaWduZWQgZmxhZ3MsDQpA QCAtOTUsNiArOTcsMTkgQEAgc3RhdGljIGNoYXIgKmNvbmNhdF9zdWJwYXRoX2ZpbGUoY29uc3Qg Y2hhciAqcGF0aCwgY29uc3QgY2hhciAqZikNCiAJcmV0dXJuIGNvbmNhdF9wYXRoX2ZpbGUocGF0 aCwgZik7DQogfQ0KIA0KK3N0YXRpYyBjaGFyICp4c3RyZHVwKGNvbnN0IGNoYXIgKnMpDQorew0K KwlpbnQgbGVuID0gc3RybGVuKHMpICsgMTsNCisJY2hhciAqZCA9IHhtYWxsb2MobGVuKTsNCisN CisJbWVtY3B5KGQsIHMsIGxlbik7DQorDQorCXJldHVybiBkOw0KK30NCisNCisjaW5jbHVkZSA8 bGludXgvbGlzdC5oPg0KKyNpbmNsdWRlIDxsaW51eC9saXN0X3NvcnQuaD4NCisjaW5jbHVkZSAi Li4vbGliL2xpc3Rfc29ydC5jIg0KICNpbmNsdWRlICIuLi9saWIvcmVjdXJzaXZlX2FjdGlvbi5j Ig0KICNpbmNsdWRlICIuLi9pbmNsdWRlL2VudmZzLmgiDQogI2luY2x1ZGUgIi4uL2NyeXB0by9j cmMzMi5jIg0KZGlmZiAtLWdpdCBhL3NjcmlwdHMvaW5jbHVkZS9saW51eC9saXN0X3NvcnQuaCBi L3NjcmlwdHMvaW5jbHVkZS9saW51eC9saXN0X3NvcnQuaA0KbmV3IGZpbGUgbW9kZSAxMDA2NDQN CmluZGV4IDAwMDAwMDAwMC4uYmU4ODljOWFlDQotLS0gL2Rldi9udWxsDQorKysgYi9zY3JpcHRz L2luY2x1ZGUvbGludXgvbGlzdF9zb3J0LmgNCkBAIC0wLDAgKzEgQEANCisjaW5jbHVkZSA8Li4v Li4vaW5jbHVkZS9saW51eC9saXN0X3NvcnQuaD4NCmRpZmYgLS1naXQgYS9zY3JpcHRzL2luY2x1 ZGUvbGludXgvcG9pc29uLmggYi9zY3JpcHRzL2luY2x1ZGUvbGludXgvcG9pc29uLmgNCmluZGV4 IDBjMjdiZGYxNC4uMTU5MjdlYmMyIDEwMDY0NA0KLS0tIGEvc2NyaXB0cy9pbmNsdWRlL2xpbnV4 L3BvaXNvbi5oDQorKysgYi9zY3JpcHRzL2luY2x1ZGUvbGludXgvcG9pc29uLmgNCkBAIC0xICsx LDkyIEBADQotI2luY2x1ZGUgIi4uLy4uLy4uL2luY2x1ZGUvbGludXgvcG9pc29uLmgiDQorLyog U1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAgKi8NCisjaWZuZGVmIF9MSU5VWF9QT0lT T05fSA0KKyNkZWZpbmUgX0xJTlVYX1BPSVNPTl9IDQorDQorLyoqKioqKioqKiogaW5jbHVkZS9s aW51eC9saXN0LmggKioqKioqKioqKi8NCisNCisvKg0KKyAqIEFyY2hpdGVjdHVyZXMgbWlnaHQg d2FudCB0byBtb3ZlIHRoZSBwb2lzb24gcG9pbnRlciBvZmZzZXQNCisgKiBpbnRvIHNvbWUgd2Vs bC1yZWNvZ25pemVkIGFyZWEgc3VjaCBhcyAweGRlYWQwMDAwMDAwMDAwMDAsDQorICogdGhhdCBp cyBhbHNvIG5vdCBtYXBwYWJsZSBieSB1c2VyLXNwYWNlIGV4cGxvaXRzOg0KKyAqLw0KKyNpZmRl ZiBDT05GSUdfSUxMRUdBTF9QT0lOVEVSX1ZBTFVFDQorIyBkZWZpbmUgUE9JU09OX1BPSU5URVJf REVMVEEgX0FDKENPTkZJR19JTExFR0FMX1BPSU5URVJfVkFMVUUsIFVMKQ0KKyNlbHNlDQorIyBk ZWZpbmUgUE9JU09OX1BPSU5URVJfREVMVEEgMA0KKyNlbmRpZg0KKw0KKy8qDQorICogVGhlc2Ug YXJlIG5vbi1OVUxMIHBvaW50ZXJzIHRoYXQgd2lsbCByZXN1bHQgaW4gcGFnZSBmYXVsdHMNCisg KiB1bmRlciBub3JtYWwgY2lyY3Vtc3RhbmNlcywgdXNlZCB0byB2ZXJpZnkgdGhhdCBub2JvZHkg dXNlcw0KKyAqIG5vbi1pbml0aWFsaXplZCBsaXN0IGVudHJpZXMuDQorICovDQorI2RlZmluZSBM SVNUX1BPSVNPTjEgICgodm9pZCAqKSAweDEwMCArIFBPSVNPTl9QT0lOVEVSX0RFTFRBKQ0KKyNk ZWZpbmUgTElTVF9QT0lTT04yICAoKHZvaWQgKikgMHgyMDAgKyBQT0lTT05fUE9JTlRFUl9ERUxU QSkNCisNCisvKioqKioqKioqKiBpbmNsdWRlL2xpbnV4L3RpbWVyLmggKioqKioqKioqKi8NCisv Kg0KKyAqIE1hZ2ljIG51bWJlciAidHN0YSIgdG8gaW5kaWNhdGUgYSBzdGF0aWMgdGltZXIgaW5p dGlhbGl6ZXINCisgKiBmb3IgdGhlIG9iamVjdCBkZWJ1Z2dpbmcgY29kZS4NCisgKi8NCisjZGVm aW5lIFRJTUVSX0VOVFJZX1NUQVRJQwkoKHZvaWQgKikgMHgzMDAgKyBQT0lTT05fUE9JTlRFUl9E RUxUQSkNCisNCisvKioqKioqKioqKiBtbS9kZWJ1Zy1wYWdlYWxsb2MuYyAqKioqKioqKioqLw0K KyNpZmRlZiBDT05GSUdfUEFHRV9QT0lTT05JTkdfWkVSTw0KKyNkZWZpbmUgUEFHRV9QT0lTT04g MHgwMA0KKyNlbHNlDQorI2RlZmluZSBQQUdFX1BPSVNPTiAweGFhDQorI2VuZGlmDQorDQorLyoq KioqKioqKiogbW0vcGFnZV9hbGxvYy5jICoqKioqKioqKioqKi8NCisNCisjZGVmaW5lIFRBSUxf TUFQUElORwkoKHZvaWQgKikgMHg0MDAgKyBQT0lTT05fUE9JTlRFUl9ERUxUQSkNCisNCisvKioq KioqKioqKiBtbS9zbGFiLmMgKioqKioqKioqKi8NCisvKg0KKyAqIE1hZ2ljIG51bXMgZm9yIG9i aiByZWQgem9uaW5nLg0KKyAqIFBsYWNlZCBpbiB0aGUgZmlyc3Qgd29yZCBiZWZvcmUgYW5kIHRo ZSBmaXJzdCB3b3JkIGFmdGVyIGFuIG9iai4NCisgKi8NCisjZGVmaW5lCVJFRF9JTkFDVElWRQkw eDA5RjkxMTAyOUQ3NEUzNUJVTEwJLyogd2hlbiBvYmogaXMgaW5hY3RpdmUgKi8NCisjZGVmaW5l CVJFRF9BQ1RJVkUJMHhEODQxNTZDNTYzNTY4OEMwVUxMCS8qIHdoZW4gb2JqIGlzIGFjdGl2ZSAq Lw0KKw0KKyNkZWZpbmUgU0xVQl9SRURfSU5BQ1RJVkUJMHhiYg0KKyNkZWZpbmUgU0xVQl9SRURf QUNUSVZFCQkweGNjDQorDQorLyogLi4uYW5kIGZvciBwb2lzb25pbmcgKi8NCisjZGVmaW5lCVBP SVNPTl9JTlVTRQkweDVhCS8qIGZvciB1c2UtdW5pbml0aWFsaXNlZCBwb2lzb25pbmcgKi8NCisj ZGVmaW5lIFBPSVNPTl9GUkVFCTB4NmIJLyogZm9yIHVzZS1hZnRlci1mcmVlIHBvaXNvbmluZyAq Lw0KKyNkZWZpbmUJUE9JU09OX0VORAkweGE1CS8qIGVuZC1ieXRlIG9mIHBvaXNvbmluZyAqLw0K Kw0KKy8qKioqKioqKioqIGFyY2gvJEFSQ0gvbW0vaW5pdC5jICoqKioqKioqKiovDQorI2RlZmlu ZSBQT0lTT05fRlJFRV9JTklUTUVNCTB4Y2MNCisNCisvKioqKioqKioqKiBhcmNoL2lhNjQvaHAv Y29tbW9uL3NiYV9pb21tdS5jICoqKioqKioqKiovDQorLyoNCisgKiBhcmNoL2lhNjQvaHAvY29t bW9uL3NiYV9pb21tdS5jIHVzZXMgYSAxNi1ieXRlIHBvaXNvbiBzdHJpbmcgd2l0aCBhDQorICog dmFsdWUgb2YgIlNCQUlPTU1VIFBPSVNPTlwwIiBmb3Igc3BpbGwtb3ZlciBwb2lzb25pbmcuDQor ICovDQorDQorLyoqKioqKioqKiogZnMvamJkL2pvdXJuYWwuYyAqKioqKioqKioqLw0KKyNkZWZp bmUgSkJEX1BPSVNPTl9GUkVFCQkweDViDQorI2RlZmluZSBKQkQyX1BPSVNPTl9GUkVFCTB4NWMN CisNCisvKioqKioqKioqKiBkcml2ZXJzL2Jhc2UvZG1hcG9vbC5jICoqKioqKioqKiovDQorI2Rl ZmluZQlQT09MX1BPSVNPTl9GUkVFRAkweGE3CS8qICFpbnVzZSAqLw0KKyNkZWZpbmUJUE9PTF9Q T0lTT05fQUxMT0NBVEVECTB4YTkJLyogIWluaXR0ZWQgKi8NCisNCisvKioqKioqKioqKiBkcml2 ZXJzL2F0bS8gKioqKioqKioqKi8NCisjZGVmaW5lIEFUTV9QT0lTT05fRlJFRQkJMHgxMg0KKyNk ZWZpbmUgQVRNX1BPSVNPTgkJMHhkZWFkYmVlZg0KKw0KKy8qKioqKioqKioqIGtlcm5lbC9tdXRl eGVzICoqKioqKioqKiovDQorI2RlZmluZSBNVVRFWF9ERUJVR19JTklUCTB4MTENCisjZGVmaW5l IE1VVEVYX0RFQlVHX0ZSRUUJMHgyMg0KKyNkZWZpbmUgTVVURVhfUE9JU09OX1dXX0NUWAkoKHZv aWQgKikgMHg1MDAgKyBQT0lTT05fUE9JTlRFUl9ERUxUQSkNCisNCisvKioqKioqKioqKiBsaWIv ZmxleF9hcnJheS5jICoqKioqKioqKiovDQorI2RlZmluZSBGTEVYX0FSUkFZX0ZSRUUJMHg2Ywkv KiBmb3IgdXNlLWFmdGVyLWZyZWUgcG9pc29uaW5nICovDQorDQorLyoqKioqKioqKiogc2VjdXJp dHkvICoqKioqKioqKiovDQorI2RlZmluZSBLRVlfREVTVFJPWQkJMHhiZA0KKw0KKyNlbmRpZg0K LS0gDQoyLjE5LjINCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KYmFyZWJveCBtYWlsaW5nIGxpc3QKYmFyZWJveEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0 dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vYmFyZWJveAo=