From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 66050C433FE for ; Tue, 15 Nov 2022 20:51:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238640AbiKOUvF (ORCPT ); Tue, 15 Nov 2022 15:51:05 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55878 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238574AbiKOUul (ORCPT ); Tue, 15 Nov 2022 15:50:41 -0500 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C95172D1DB; Tue, 15 Nov 2022 12:50:38 -0800 (PST) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 09F105FD07; Tue, 15 Nov 2022 23:50:37 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1668545437; bh=JQL1ga6vP7uVnM/1sMjjuRBMWnCgT0aVBhk5ZnnWS9M=; h=From:To:Subject:Date:Message-ID:Content-Type:MIME-Version; b=TzPG1RHKAgiskePC2sqheWt3Nxq2/yfFKOd9cvqk/T6vDIiyXilCgX4S6rCJLj/YG CAGbI4vvLJ9xUXXPLOlVUQQojI4GWvNgPtvSaUB+7XQyydNKGZRDd9EBp0UtsXHwWX 9WLGlIt56T4b6wbfHUpOBpai65PZEGDVcATwFpd9v21z+ukMMfheYa+8wsKk1TvQC/ ujzPsfXFYgBcfTJ2bzi1s4kRiPIhrn8ewYPQ2b1vi9xeoE5mZyJex0cHpI4eJ3SFRP ICGwvhmr7GoWrwPsSfJ172l2OtPJryVNNvI0C63pTo+UdsvlD4WzCQUAxDZV3PK3jb bF5knFYtqv2QQ== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Tue, 15 Nov 2022 23:50:36 +0300 (MSK) From: Arseniy Krasnov To: Stefano Garzarella CC: "linux-kernel@vger.kernel.org" , "netdev@vger.kernel.org" , "virtualization@lists.linux-foundation.org" , kernel , Bobby Eshleman , Krasnov Arseniy Subject: [RFC PATCH v1 1/3] test/vsock: rework message bound test Thread-Topic: [RFC PATCH v1 1/3] test/vsock: rework message bound test Thread-Index: AQHY+TPpot0teDu5AkucZunOQ/7DDw== Date: Tue, 15 Nov 2022 20:50:36 +0000 Message-ID: In-Reply-To: Accept-Language: en-US, ru-RU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.16.1.12] Content-Type: text/plain; charset="utf-8" Content-ID: <905A2B95B2474D41899DA843AF6EFA5E@sberdevices.ru> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2022/11/15 16:23:00 #20571948 X-KSMG-AntiVirus-Status: Clean, skipped Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org VGhpcyB1cGRhdGVzIG1lc3NhZ2UgYm91bmQgdGVzdCBtYWtpbmcgaXQgbW9yZSBjb21wbGV4LiBJ bnN0ZWFkIG9mDQpzZW5kaW5nIDEgYnl0ZXMgbWVzc2FnZXMgd2l0aCBvbmUgTVNHX0VPUiBiaXQs IGl0IHNlbmRzIG1lc3NhZ2VzIG9mDQpyYW5kb20gbGVuZ3RoKG9uZSBoYWxmIG9mIG1lc3NhZ2Vz IGFyZSBzbWFsbGVyIHRoYW4gcGFnZSBzaXplLCBzZWNvbmQNCmhhbGYgYXJlIGJpZ2dlcikgd2l0 aCByYW5kb20gbnVtYmVyIG9mIE1TR19FT1IgYml0cyBzZXQuIFJlY2VpdmVyDQphbHNvIGRvbid0 IGtub3cgdG90YWwgbnVtYmVyIG9mIG1lc3NhZ2VzLg0KDQpTaWduZWQtb2ZmLWJ5OiBBcnNlbml5 IEtyYXNub3YgPEFWS3Jhc25vdkBzYmVyZGV2aWNlcy5ydT4NCi0tLQ0KIHRvb2xzL3Rlc3Rpbmcv dnNvY2svY29udHJvbC5jICAgIHwgIDM0ICsrKysrKysrKw0KIHRvb2xzL3Rlc3RpbmcvdnNvY2sv Y29udHJvbC5oICAgIHwgICAyICsNCiB0b29scy90ZXN0aW5nL3Zzb2NrL3V0aWwuYyAgICAgICB8 ICAxMyArKysrDQogdG9vbHMvdGVzdGluZy92c29jay91dGlsLmggICAgICAgfCAgIDEgKw0KIHRv b2xzL3Rlc3RpbmcvdnNvY2svdnNvY2tfdGVzdC5jIHwgMTE1ICsrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0NCiA1IGZpbGVzIGNoYW5nZWQsIDE1MiBpbnNlcnRpb25zKCspLCAxMyBkZWxl dGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3RpbmcvdnNvY2svY29udHJvbC5jIGIv dG9vbHMvdGVzdGluZy92c29jay9jb250cm9sLmMNCmluZGV4IDQ4NzQ4NzJmYzVhMy4uYmVkMTY0 OWJkZjNkIDEwMDY0NA0KLS0tIGEvdG9vbHMvdGVzdGluZy92c29jay9jb250cm9sLmMNCisrKyBi L3Rvb2xzL3Rlc3RpbmcvdnNvY2svY29udHJvbC5jDQpAQCAtMTQxLDYgKzE0MSw0MCBAQCB2b2lk IGNvbnRyb2xfd3JpdGVsbihjb25zdCBjaGFyICpzdHIpDQogCXRpbWVvdXRfZW5kKCk7DQogfQ0K IA0KK3ZvaWQgY29udHJvbF93cml0ZXVsb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUpDQorew0KKwlj aGFyIHN0clszMl07DQorDQorCWlmIChzbnByaW50ZihzdHIsIHNpemVvZihzdHIpLCAiJWx1Iiwg dmFsdWUpID49IHNpemVvZihzdHIpKSB7DQorCQlwZXJyb3IoInNucHJpbnRmIik7DQorCQlleGl0 KEVYSVRfRkFJTFVSRSk7DQorCX0NCisNCisJY29udHJvbF93cml0ZWxuKHN0cik7DQorfQ0KKw0K K3Vuc2lnbmVkIGxvbmcgY29udHJvbF9yZWFkdWxvbmcoYm9vbCAqb2spDQorew0KKwl1bnNpZ25l ZCBsb25nIHZhbHVlOw0KKwljaGFyICpzdHI7DQorDQorCWlmIChvaykNCisJCSpvayA9IGZhbHNl Ow0KKw0KKwlzdHIgPSBjb250cm9sX3JlYWRsbigpOw0KKw0KKwlpZiAoc3RyID09IE5VTEwpDQor CQlyZXR1cm4gMDsNCisNCisJdmFsdWUgPSBzdHJ0b3VsKHN0ciwgTlVMTCwgMTApOw0KKwlmcmVl KHN0cik7DQorDQorCWlmIChvaykNCisJCSpvayA9IHRydWU7DQorDQorCXJldHVybiB2YWx1ZTsN Cit9DQorDQogLyogUmV0dXJuIHRoZSBuZXh0IGxpbmUgZnJvbSB0aGUgY29udHJvbCBzb2NrZXQg KHdpdGhvdXQgdGhlIHRyYWlsaW5nIG5ld2xpbmUpLg0KICAqDQogICogVGhlIHByb2dyYW0gdGVy bWluYXRlcyBpZiBhIHRpbWVvdXQgb2NjdXJzLg0KZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcv dnNvY2svY29udHJvbC5oIGIvdG9vbHMvdGVzdGluZy92c29jay9jb250cm9sLmgNCmluZGV4IDUx ODE0YjRmOWFjMS4uY2RkOTIyZGZlYTY4IDEwMDY0NA0KLS0tIGEvdG9vbHMvdGVzdGluZy92c29j ay9jb250cm9sLmgNCisrKyBiL3Rvb2xzL3Rlc3RpbmcvdnNvY2svY29udHJvbC5oDQpAQCAtOSw3 ICs5LDkgQEAgdm9pZCBjb250cm9sX2luaXQoY29uc3QgY2hhciAqY29udHJvbF9ob3N0LCBjb25z dCBjaGFyICpjb250cm9sX3BvcnQsDQogdm9pZCBjb250cm9sX2NsZWFudXAodm9pZCk7DQogdm9p ZCBjb250cm9sX3dyaXRlbG4oY29uc3QgY2hhciAqc3RyKTsNCiBjaGFyICpjb250cm9sX3JlYWRs bih2b2lkKTsNCit1bnNpZ25lZCBsb25nIGNvbnRyb2xfcmVhZHVsb25nKGJvb2wgKm9rKTsNCiB2 b2lkIGNvbnRyb2xfZXhwZWN0bG4oY29uc3QgY2hhciAqc3RyKTsNCiBib29sIGNvbnRyb2xfY21w bG4oY2hhciAqbGluZSwgY29uc3QgY2hhciAqc3RyLCBib29sIGZhaWwpOw0KK3ZvaWQgY29udHJv bF93cml0ZXVsb25nKHVuc2lnbmVkIGxvbmcgdmFsdWUpOw0KIA0KICNlbmRpZiAvKiBDT05UUk9M X0ggKi8NCmRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3Zzb2NrL3V0aWwuYyBiL3Rvb2xzL3Rl c3RpbmcvdnNvY2svdXRpbC5jDQppbmRleCAyYWNiYjc3MDNjNmEuLjM1MTkwMzgzNjc3NCAxMDA2 NDQNCi0tLSBhL3Rvb2xzL3Rlc3RpbmcvdnNvY2svdXRpbC5jDQorKysgYi90b29scy90ZXN0aW5n L3Zzb2NrL3V0aWwuYw0KQEAgLTM5NSwzICszOTUsMTYgQEAgdm9pZCBza2lwX3Rlc3Qoc3RydWN0 IHRlc3RfY2FzZSAqdGVzdF9jYXNlcywgc2l6ZV90IHRlc3RfY2FzZXNfbGVuLA0KIA0KIAl0ZXN0 X2Nhc2VzW3Rlc3RfaWRdLnNraXAgPSB0cnVlOw0KIH0NCisNCit1bnNpZ25lZCBsb25nIGRqYjIo Y29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IGxlbikNCit7DQorCXVuc2lnbmVkIGxvbmcgaGFzaCA9 IDUzODE7DQorCWludCBpID0gMDsNCisNCisJd2hpbGUgKGkgPCBsZW4pIHsNCisJCWhhc2ggPSAo KGhhc2ggPDwgNSkgKyBoYXNoKSArICgodW5zaWduZWQgY2hhciAqKWRhdGEpW2ldOw0KKwkJaSsr Ow0KKwl9DQorDQorCXJldHVybiBoYXNoOw0KK30NCmRpZmYgLS1naXQgYS90b29scy90ZXN0aW5n L3Zzb2NrL3V0aWwuaCBiL3Rvb2xzL3Rlc3RpbmcvdnNvY2svdXRpbC5oDQppbmRleCBhMzM3NWFk MmZiN2YuLjk4OGNjNjlhNDY0MiAxMDA2NDQNCi0tLSBhL3Rvb2xzL3Rlc3RpbmcvdnNvY2svdXRp bC5oDQorKysgYi90b29scy90ZXN0aW5nL3Zzb2NrL3V0aWwuaA0KQEAgLTQ5LDQgKzQ5LDUgQEAg dm9pZCBydW5fdGVzdHMoY29uc3Qgc3RydWN0IHRlc3RfY2FzZSAqdGVzdF9jYXNlcywNCiB2b2lk IGxpc3RfdGVzdHMoY29uc3Qgc3RydWN0IHRlc3RfY2FzZSAqdGVzdF9jYXNlcyk7DQogdm9pZCBz a2lwX3Rlc3Qoc3RydWN0IHRlc3RfY2FzZSAqdGVzdF9jYXNlcywgc2l6ZV90IHRlc3RfY2FzZXNf bGVuLA0KIAkgICAgICAgY29uc3QgY2hhciAqdGVzdF9pZF9zdHIpOw0KK3Vuc2lnbmVkIGxvbmcg ZGpiMihjb25zdCB2b2lkICpkYXRhLCBzaXplX3QgbGVuKTsNCiAjZW5kaWYgLyogVVRJTF9IICov DQpkaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy92c29jay92c29ja190ZXN0LmMgYi90b29scy90 ZXN0aW5nL3Zzb2NrL3Zzb2NrX3Rlc3QuYw0KaW5kZXggYmI2ZDY5MWNiMzBkLi4xMDdjMTExNjU4 ODcgMTAwNjQ0DQotLS0gYS90b29scy90ZXN0aW5nL3Zzb2NrL3Zzb2NrX3Rlc3QuYw0KKysrIGIv dG9vbHMvdGVzdGluZy92c29jay92c29ja190ZXN0LmMNCkBAIC0yODQsMTAgKzI4NCwxNCBAQCBz dGF0aWMgdm9pZCB0ZXN0X3N0cmVhbV9tc2dfcGVla19zZXJ2ZXIoY29uc3Qgc3RydWN0IHRlc3Rf b3B0cyAqb3B0cykNCiAJY2xvc2UoZmQpOw0KIH0NCiANCi0jZGVmaW5lIE1FU1NBR0VTX0NOVCA3 DQotI2RlZmluZSBNU0dfRU9SX0lEWCAoTUVTU0FHRVNfQ05UIC8gMikNCisjZGVmaW5lIFNPQ0tf QlVGX1NJWkUgKDIgKiAxMDI0ICogMTAyNCkNCisjZGVmaW5lIE1BWF9NU0dfU0laRSAoMzIgKiAx MDI0KQ0KKw0KIHN0YXRpYyB2b2lkIHRlc3Rfc2VxcGFja2V0X21zZ19ib3VuZHNfY2xpZW50KGNv bnN0IHN0cnVjdCB0ZXN0X29wdHMgKm9wdHMpDQogew0KKwl1bnNpZ25lZCBsb25nIGN1cnJfaGFz aDsNCisJaW50IHBhZ2Vfc2l6ZTsNCisJaW50IG1zZ19jb3VudDsNCiAJaW50IGZkOw0KIA0KIAlm ZCA9IHZzb2NrX3NlcXBhY2tldF9jb25uZWN0KG9wdHMtPnBlZXJfY2lkLCAxMjM0KTsNCkBAIC0y OTYsMTggKzMwMCw2OSBAQCBzdGF0aWMgdm9pZCB0ZXN0X3NlcXBhY2tldF9tc2dfYm91bmRzX2Ns aWVudChjb25zdCBzdHJ1Y3QgdGVzdF9vcHRzICpvcHRzKQ0KIAkJZXhpdChFWElUX0ZBSUxVUkUp Ow0KIAl9DQogDQotCS8qIFNlbmQgc2V2ZXJhbCBtZXNzYWdlcywgb25lIHdpdGggTVNHX0VPUiBm bGFnICovDQotCWZvciAoaW50IGkgPSAwOyBpIDwgTUVTU0FHRVNfQ05UOyBpKyspDQotCQlzZW5k X2J5dGUoZmQsIDEsIChpID09IE1TR19FT1JfSURYKSA/IE1TR19FT1IgOiAwKTsNCisJLyogV2Fp dCwgdW50aWwgcmVjZWl2ZXIgc2V0cyBidWZmZXIgc2l6ZS4gKi8NCisJY29udHJvbF9leHBlY3Rs bigiU1JWUkVBRFkiKTsNCisNCisJY3Vycl9oYXNoID0gMDsNCisJcGFnZV9zaXplID0gZ2V0cGFn ZXNpemUoKTsNCisJbXNnX2NvdW50ID0gU09DS19CVUZfU0laRSAvIE1BWF9NU0dfU0laRTsNCisN CisJZm9yIChpbnQgaSA9IDA7IGkgPCBtc2dfY291bnQ7IGkrKykgew0KKwkJc3NpemVfdCBzZW5k X3NpemU7DQorCQlzaXplX3QgYnVmX3NpemU7DQorCQlpbnQgZmxhZ3M7DQorCQl2b2lkICpidWY7 DQorDQorCQkvKiBVc2UgInNtYWxsIiBidWZmZXJzIGFuZCAiYmlnIiBidWZmZXJzLiAqLw0KKwkJ aWYgKGkgJiAxKQ0KKwkJCWJ1Zl9zaXplID0gcGFnZV9zaXplICsNCisJCQkJCShyYW5kKCkgJSAo TUFYX01TR19TSVpFIC0gcGFnZV9zaXplKSk7DQorCQllbHNlDQorCQkJYnVmX3NpemUgPSAxICsg KHJhbmQoKSAlIHBhZ2Vfc2l6ZSk7DQorDQorCQlidWYgPSBtYWxsb2MoYnVmX3NpemUpOw0KKw0K KwkJaWYgKCFidWYpIHsNCisJCQlwZXJyb3IoIm1hbGxvYyIpOw0KKwkJCWV4aXQoRVhJVF9GQUlM VVJFKTsNCisJCX0NCisNCisJCS8qIFNldCBhdCBsZWFzdCBvbmUgTVNHX0VPUiArIHNvbWUgcmFu ZG9tLiAqLw0KKwkJaWYgKGkgPT0gKG1zZ19jb3VudCAvIDIpIHx8IChyYW5kKCkgJiAxKSkgew0K KwkJCWZsYWdzID0gTVNHX0VPUjsNCisJCQljdXJyX2hhc2grKzsNCisJCX0gZWxzZSB7DQorCQkJ ZmxhZ3MgPSAwOw0KKwkJfQ0KKw0KKwkJc2VuZF9zaXplID0gc2VuZChmZCwgYnVmLCBidWZfc2l6 ZSwgZmxhZ3MpOw0KKw0KKwkJaWYgKHNlbmRfc2l6ZSA8IDApIHsNCisJCQlwZXJyb3IoInNlbmQi KTsNCisJCQlleGl0KEVYSVRfRkFJTFVSRSk7DQorCQl9DQorDQorCQlpZiAoc2VuZF9zaXplICE9 IGJ1Zl9zaXplKSB7DQorCQkJZnByaW50ZihzdGRlcnIsICJJbnZhbGlkIHNlbmQgc2l6ZVxuIik7 DQorCQkJZXhpdChFWElUX0ZBSUxVUkUpOw0KKwkJfQ0KKw0KKwkJY3Vycl9oYXNoICs9IHNlbmRf c2l6ZTsNCisJCWN1cnJfaGFzaCA9IGRqYjIoJmN1cnJfaGFzaCwgc2l6ZW9mKGN1cnJfaGFzaCkp Ow0KKwl9DQogDQogCWNvbnRyb2xfd3JpdGVsbigiU0VORERPTkUiKTsNCisJY29udHJvbF93cml0 ZXVsb25nKGN1cnJfaGFzaCk7DQogCWNsb3NlKGZkKTsNCiB9DQogDQogc3RhdGljIHZvaWQgdGVz dF9zZXFwYWNrZXRfbXNnX2JvdW5kc19zZXJ2ZXIoY29uc3Qgc3RydWN0IHRlc3Rfb3B0cyAqb3B0 cykNCiB7DQorCXVuc2lnbmVkIGxvbmcgc29ja19idWZfc2l6ZTsNCisJdW5zaWduZWQgbG9uZyBy ZW1vdGVfaGFzaDsNCisJdW5zaWduZWQgbG9uZyBjdXJyX2hhc2g7DQogCWludCBmZDsNCi0JY2hh ciBidWZbMTZdOw0KKwljaGFyIGJ1ZltNQVhfTVNHX1NJWkVdOw0KIAlzdHJ1Y3QgbXNnaGRyIG1z ZyA9IHswfTsNCiAJc3RydWN0IGlvdmVjIGlvdiA9IHswfTsNCiANCkBAIC0zMTcsMjUgKzM3Miw1 OCBAQCBzdGF0aWMgdm9pZCB0ZXN0X3NlcXBhY2tldF9tc2dfYm91bmRzX3NlcnZlcihjb25zdCBz dHJ1Y3QgdGVzdF9vcHRzICpvcHRzKQ0KIAkJZXhpdChFWElUX0ZBSUxVUkUpOw0KIAl9DQogDQor CXNvY2tfYnVmX3NpemUgPSBTT0NLX0JVRl9TSVpFOw0KKw0KKwlpZiAoc2V0c29ja29wdChmZCwg QUZfVlNPQ0ssIFNPX1ZNX1NPQ0tFVFNfQlVGRkVSX01BWF9TSVpFLA0KKwkJICAgICAgICZzb2Nr X2J1Zl9zaXplLCBzaXplb2Yoc29ja19idWZfc2l6ZSkpKSB7DQorCQlwZXJyb3IoImdldHNvY2tv cHQiKTsNCisJCWV4aXQoRVhJVF9GQUlMVVJFKTsNCisJfQ0KKw0KKwlpZiAoc2V0c29ja29wdChm ZCwgQUZfVlNPQ0ssIFNPX1ZNX1NPQ0tFVFNfQlVGRkVSX1NJWkUsDQorCQkgICAgICAgJnNvY2tf YnVmX3NpemUsIHNpemVvZihzb2NrX2J1Zl9zaXplKSkpIHsNCisJCXBlcnJvcigiZ2V0c29ja29w dCIpOw0KKwkJZXhpdChFWElUX0ZBSUxVUkUpOw0KKwl9DQorDQorCS8qIFJlYWR5IHRvIHJlY2Vp dmUgZGF0YS4gKi8NCisJY29udHJvbF93cml0ZWxuKCJTUlZSRUFEWSIpOw0KKwkvKiBXYWl0LCB1 bnRpbCBwZWVyIHNlbmRzIHdob2xlIGRhdGEuICovDQogCWNvbnRyb2xfZXhwZWN0bG4oIlNFTkRE T05FIik7DQogCWlvdi5pb3ZfYmFzZSA9IGJ1ZjsNCiAJaW92Lmlvdl9sZW4gPSBzaXplb2YoYnVm KTsNCiAJbXNnLm1zZ19pb3YgPSAmaW92Ow0KIAltc2cubXNnX2lvdmxlbiA9IDE7DQogDQotCWZv ciAoaW50IGkgPSAwOyBpIDwgTUVTU0FHRVNfQ05UOyBpKyspIHsNCi0JCWlmIChyZWN2bXNnKGZk LCAmbXNnLCAwKSAhPSAxKSB7DQotCQkJcGVycm9yKCJtZXNzYWdlIGJvdW5kIHZpb2xhdGVkIik7 DQotCQkJZXhpdChFWElUX0ZBSUxVUkUpOw0KLQkJfQ0KKwljdXJyX2hhc2ggPSAwOw0KIA0KLQkJ aWYgKChpID09IE1TR19FT1JfSURYKSBeICEhKG1zZy5tc2dfZmxhZ3MgJiBNU0dfRU9SKSkgew0K LQkJCXBlcnJvcigiTVNHX0VPUiIpOw0KKwl3aGlsZSAoMSkgew0KKwkJc3NpemVfdCByZWN2X3Np emU7DQorDQorCQlyZWN2X3NpemUgPSByZWN2bXNnKGZkLCAmbXNnLCAwKTsNCisNCisJCWlmICgh cmVjdl9zaXplKQ0KKwkJCWJyZWFrOw0KKw0KKwkJaWYgKHJlY3Zfc2l6ZSA8IDApIHsNCisJCQlw ZXJyb3IoInJlY3Ztc2ciKTsNCiAJCQlleGl0KEVYSVRfRkFJTFVSRSk7DQogCQl9DQorDQorCQlp ZiAobXNnLm1zZ19mbGFncyAmIE1TR19FT1IpDQorCQkJY3Vycl9oYXNoKys7DQorDQorCQljdXJy X2hhc2ggKz0gcmVjdl9zaXplOw0KKwkJY3Vycl9oYXNoID0gZGpiMigmY3Vycl9oYXNoLCBzaXpl b2YoY3Vycl9oYXNoKSk7DQogCX0NCiANCiAJY2xvc2UoZmQpOw0KKwlyZW1vdGVfaGFzaCA9IGNv bnRyb2xfcmVhZHVsb25nKE5VTEwpOw0KKw0KKwlpZiAoY3Vycl9oYXNoICE9IHJlbW90ZV9oYXNo KSB7DQorCQlmcHJpbnRmKHN0ZGVyciwgIk1lc3NhZ2UgYm91bmRzIGJyb2tlblxuIik7DQorCQll eGl0KEVYSVRfRkFJTFVSRSk7DQorCX0NCiB9DQogDQogI2RlZmluZSBNRVNTQUdFX1RSVU5DX1Na IDMyDQpAQCAtODM3LDYgKzkyNSw3IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikN CiAJCS5wZWVyX2NpZCA9IFZNQUREUl9DSURfQU5ZLA0KIAl9Ow0KIA0KKwlzcmFuZCh0aW1lKE5V TEwpKTsNCiAJaW5pdF9zaWduYWxzKCk7DQogDQogCWZvciAoOzspIHsNCi0tIA0KMi4yNS4xDQo=