From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (unknown [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id ED66F802A5 for ; Sun, 11 Oct 2026 23:00:33 +0000 (UTC) Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69BMxIuE009473; Mon, 12 Oct 2026 01:59:18 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69BMxIuE009473 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=sashiko.virtuozzo.com header.i=@sashiko.virtuozzo.com header.b="JCa3GMXB"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amazonses.com header.i=@amazonses.com header.b="oQVdpaI/" Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69BMxGVA009469 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Mon, 12 Oct 2026 01:59:16 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69BMxGVA009469 Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-4a16dc2323cso10143185e9.3 for ; Sun, 11 Oct 2026 15:59:16 -0700 (PDT) X-Gm-Message-State: AFq9FYJi0DwgEZ8pJ6lBM2lHIGekYDh0onR1hjE1Ev6Lg+rdS8pFMK9l oQ4YP1In/L2/DCgajZ1iKqjwn9jllMVZK65Az+qDq9qBVmRqApJEWeNTSjLKJjs5VJjBL5c3LUe qeYrK5T2U1ZqVKa/PjhB6zmXsvP5wZHYnhlYuofHuPVsBl2ux8kxvqg== X-Gm-Gg: AYBFou02brYaBaTO459BU6/Xfu448dc+vPkAJUTJZjwJnT62pxFE62vjEavH0vWMv8J UZRChAQLolVjSLxe5UQQXGuI9UhWlwD8omqb+NFTpdKk+it3g0IX+pol2/VWBt1ZUHoOeNM82S+ jj+NVtauK0CUgYyXhz0pQbkyg3q0P7v3RewXOroviSZEy4PI6nlIokrhy9/9WT3n390xqt8VsoK NMZa8AyoJ63CvSXXxEJwXdZZ8q3h2n/2fVcw8MTkDuXuxtixD7OFQ49F4VzQY8vlBtf+ibKURQV 5Lx/6qzz9tzzuR1ExML6wE7JMVtU2RTx/bkCViyfN4I2gCDHrO7+YHWwyU7+i4rp/YRv6qG+wNj 63BQ+zaXdWfUy5oOQUGbaFlnOKOfh0/qKDMzW11zYJqGZix8P80n5h8xj5wJh6BG19exQ7pfjCk gv0j9DkpgxDnhzRWMt4D4kfUmrcIkgHrIOz1cCWErQ2ajMjju9rHFf4qs7PrmiqFGDUJbQQDIz1 2jNz72v/GHL1XXLYAHq X-Received: by 2002:a05:600c:4685:b0:4a0:27eb:49b with SMTP id 5b1f17b1804b1-4a18e4ae6fcmr160362895e9.30.1791759556524; Sun, 11 Oct 2026 15:59:16 -0700 (PDT) X-Received: by 2002:a05:600c:4685:b0:4a0:27eb:49b with SMTP id 5b1f17b1804b1-4a18e4ae6fcmr160362655e9.30.1791759555935; Sun, 11 Oct 2026 15:59:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1791759555; cv=none; d=google.com; s=arc-20260327; b=g/NFXNDudAE8+nKBjKTMgycTsdmRpQFlreCeNycgfr8utR72yhsLcpQKy4hwJRJQ+3 6bLN0VDlYF+4bQUp981KtBQkZIpu/24mI3qV8D0HEn7+EG42303UtWTQ6Klv0uU72sUN 5AOQHiL+fgDaJG2NbBCGDLYOtR/GnIiJ/Sgwym3xa+EGcTqQjTf69QR+mA8Xm1sbCjJq ZSI+xXRcQQGaAQ2aS01MAMo2rxSG0dwAuRbepPocFtoHvijUsyJXExeejW4D1CInk0hN hhBLEgrc7iTQYDIgNvS61EyncDi2kf8S/JhMWnLJe7BZpfg8Mq28lATXdnWb8uetCCGH 35Ww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=feedback-id:date:content-transfer-encoding:references:in-reply-to :cc:to:subject:from:message-id:dkim-signature:dkim-signature; bh=2OOkaBum/W2dPpqYja8gHgBrBQSY8M5ajXuKylrxGRY=; fh=NMOFsDtP469Wm5yIx2pkq2hU7/BYs7E+rpuP7QgOKGo=; b=iTeWqsp/UI+XEy9BRDqAdE+6AvWYxPJsMAeqtHkl505Yim2v5UthpdZxUEx+GgY3yP HmOS9dMqM6xlqr38hAv3UOWrIcCOGbPJS01N5Z9MxKPuzZ+rovlALhsOHCt6ieomoc2B ZPg8xrc9T+GjBkwlTOqAFC3n4grjRkPf41CxZOLJLEfd23a0st7j6ATorMXeJudLYJ62 tjX7RQQY64jCM92chqSLRUkGupm/EhmLs6952yhTuDGTQvcVv3B85cccwr2Q7HkYTYUO 3sfqttV+CZQDISZSJMQyZSQdCd7S9PVtKpHxcFu8B+KI9lWk50iOVrK+4IAc9fBlRkJc mdMA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sashiko.virtuozzo.com header.s=23yjbh4k34hwzfubhuiim7m4inbd3ick header.b=JCa3GMXB; dkim=pass header.i=@amazonses.com header.s=qftdzk2dqsatjnlrq4r5brjbihpfcrsh header.b="oQVdpaI/"; spf=pass (google.com: domain of 010701a12d311bbc-e0c366e6-3ae3-4211-8782-5d95ff805346-000000@eu-central-1.amazonses.com designates 69.169.224.1 as permitted sender) smtp.mailfrom=010701a12d311bbc-e0c366e6-3ae3-4211-8782-5d95ff805346-000000@eu-central-1.amazonses.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from b224-1.smtp-out.eu-central-1.amazonses.com (b224-1.smtp-out.eu-central-1.amazonses.com. [69.169.224.1]) by mx.google.com with ESMTPS id ffacd0b85a97d-48db9b17ff9si15464996f8f.489.2026.10.11.15.59.15 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 11 Oct 2026 15:59:15 -0700 (PDT) Received-SPF: pass (google.com: domain of 010701a12d311bbc-e0c366e6-3ae3-4211-8782-5d95ff805346-000000@eu-central-1.amazonses.com designates 69.169.224.1 as permitted sender) client-ip=69.169.224.1; Authentication-Results: mx.google.com; dkim=pass header.i=@sashiko.virtuozzo.com header.s=23yjbh4k34hwzfubhuiim7m4inbd3ick header.b=JCa3GMXB; dkim=pass header.i=@amazonses.com header.s=qftdzk2dqsatjnlrq4r5brjbihpfcrsh header.b="oQVdpaI/"; spf=pass (google.com: domain of 010701a12d311bbc-e0c366e6-3ae3-4211-8782-5d95ff805346-000000@eu-central-1.amazonses.com designates 69.169.224.1 as permitted sender) smtp.mailfrom=010701a12d311bbc-e0c366e6-3ae3-4211-8782-5d95ff805346-000000@eu-central-1.amazonses.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=23yjbh4k34hwzfubhuiim7m4inbd3ick; d=sashiko.virtuozzo.com; t=1791759555; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type:Content-Transfer-Encoding:Date; bh=Zt0bGB5imvoVkC5q8KGg4DY7anQw4yaYNSr4ktRzUqA=; b=JCa3GMXBs+CcK/lbiwepCnvpetujDeXcR0X+Ko83AW0QPdurqPG1kOIrG/onXHpO eQHs5uzB+eKJBlryyK1Q21BjOpgXhz8QZjZqjy4/pKFNM+5bmmwMz2a1a+9swupThnc gCZeswxOejciqGBGRcog1fmBt8Ik9N/i8N1ed1BGwSqv4LKB5uk8Fwya6USjCOa3JFC cIBFUIe5T9plgu/hKvEAnkDciOkeSg1DnqhPQgyosNC9O0+jsP8orxVQ9AdN6+cF6bS TE08HWvElyxepqMcRauxv26X6gIQJcThOookCDN20g3mfm8wi8/9DMf5EniHzzdTg5A fEV5qJK5ug== DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=qftdzk2dqsatjnlrq4r5brjbihpfcrsh; d=amazonses.com; t=1791759555; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type:Content-Transfer-Encoding:Date:Feedback-ID; bh=Zt0bGB5imvoVkC5q8KGg4DY7anQw4yaYNSr4ktRzUqA=; b=oQVdpaI/GDy9UZ8dfrdOskNKqNU3UWOaOYLyvDPqk+hpV9XoxFz+cSSXGEVKXH9F /btpF0YJThRC5T1zWXw7+bKMJYsWEuSGH0aCMfsUlu8lJ+ahhk3WRlKq6FDKKUwfZFI XLIfpnMJRUtymz9Ly6lbcn2EmFi5tqyYzhdg15nQ= Message-ID: <010701a12d311bbc-e0c366e6-3ae3-4211-8782-5d95ff805346-000000@eu-central-1.amazonses.com> From: no-reply@sashiko.virtuozzo.com To: Konstantin Khorenko , Vladimir Riabchun , vasileios.almpanis@virtuozzo.com, ptikhomirov@virtuozzo.com In-Reply-To: <20261012-ve-printk-irq-v3-2-efc95fd5c78a@virtuozzo.com> References: <20261012-ve-printk-irq-v3-0-efc95fd5c78a@virtuozzo.com> <20261012-ve-printk-irq-v3-2-efc95fd5c78a@virtuozzo.com> Date: Sun, 11 Oct 2026 22:59:15 +0000 Feedback-ID: ::1.eu-central-1.2wRQJBpg9g1fGRYexx3dUuYGS25Bux+2TEOx72/m6U4=:AmazonSES X-SES-Outgoing: 2026.10.11-69.169.224.1 X-OZ-Fwd: true X-MIME-Autoconverted: from quoted-printable to 8bit by mail.openvz.org id 69BMxGVA009469 Cc: devel@openvz.org Subject: Re: [Devel] [PATCH hci-8.1 v3 2/6] ve/printk: Report potentially leaking usage of ve_printk functions X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg MSBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6Ci0gW0xvd10gdmUvcHJpbnRrOiBob3N0 LWxvZyBicmFuY2ggc3RpbGwga2V5ZWQgb24gZ2V0X2V4ZWNfZW52KCkgZnJvbSBJUlEvc29mdGly cQotLQoKY29tbWl0IDhkMDkzOTVhNWYxZmEyMDQzYmIyMTk5MWY4ZWIyMTUyYzlhNWFkOTcKQXV0 aG9yOiBWbGFkaW1pciBSaWFiY2h1biA8dmxhZGltaXIucmlhYmNodW5AdmlydHVvenpvLmNvbT4K CnZlL3ByaW50azogUmVwb3J0IHBvdGVudGlhbGx5IGxlYWtpbmcgdXNhZ2Ugb2YgdmVfcHJpbnRr IGZ1bmN0aW9ucwoKVGhpcyBwYXRjaCBhZGRzIFdBUk5fT05fT05DRSghaW5fdGFzaygpKSBjaGVj a3MgdG8gdGhlIFZFX0xPRyBicmFuY2hlcyBvZgp2ZV92cHJpbnRrKCksIHZlX3ZwcmludGtfZGVm ZXJyZWQoKSBhbmQgdmVfZGV2X3ByaW50a19lbWl0KCksIGFuZCB0bwp2ZV9sb2dfc3RhdGUoKS4g VGhlIGdvYWwgaXMgdG8gYXZvaWQgcmVseWluZyBvbiBnZXRfZXhlY19lbnYoKSBpbgpub24tdGFz ayBjb250ZXh0LCBzbyB0aGF0IG5vdGhpbmcgbGVha3MgdG8gYSByYW5kb20gY29udGFpbmVyLgoK TGluazogaHR0cHM6Ly92aXJ0dW96em8uYXRsYXNzaWFuLm5ldC9icm93c2UvVlNUT1ItMTQ2ODM5 Cgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2Jhc2UvY29yZS5jIGIvZHJpdmVycy9iYXNlL2NvcmUu Ywo+IC0tLSBhL2RyaXZlcnMvYmFzZS9jb3JlLmMKPiArKysgYi9kcml2ZXJzL2Jhc2UvY29yZS5j CgpbIC4uLiBdCgo+IEBAIC00OTUyLDcgKzQ5NTIsOSBAQCBpbnQgdmVfZGV2X3ByaW50a19lbWl0 KGludCBkc3QsIGludCBsZXZlbCwgY29uc3Qgc3RydWN0IGRldmljZSAqZGV2LCBjb25zdCBjaGFy Cj4gIAo+ICAJaWYgKHZlX2lzX3N1cGVyKGdldF9leGVjX2VudigpKSB8fCAoZHN0ICYgVkUwX0xP RykpCj4gIAkJciA9IGRldl92cHJpbnRrX2VtaXQobGV2ZWwsIGRldiwgZm10LCBhcmdzKTsKPiAt CWlmICgoZHN0ICYgVkVfTE9HKSAmJiAhdmVfaXNfc3VwZXIoZ2V0X2V4ZWNfZW52KCkpKQo+ICsK PiArCS8qIFJlcG9ydCBJUlEgdXNhZ2UgaGVyZSAtIHByaW50aW5nIHRvIFZFIHJlcXVpcmVzIGV4 cGxpY2l0IHZlIHJlZmVyZW5jZSAqLwo+ICsJaWYgKChkc3QgJiBWRV9MT0cpICYmICFXQVJOX09O X09OQ0UoIWluX3Rhc2soKSkgJiYgIXZlX2lzX3N1cGVyKGdldF9leGVjX2VudigpKSkKPiAgCQly ID0gdmVfZGV2X3ZwcmludGtfZW1pdChsZXZlbCwgZGV2LCBmbXQsIGFyZ3MyKTsKCltTZXZlcml0 eTogTG93XQpJcyB0aGUgaG9zdC1sb2cgYnJhbmNoIHN0aWxsIGtleWVkIG9uIGdldF9leGVjX2Vu digpIGluIHNvZnRpcnEgb3IgSVJRCmNvbnRleHQ/CgpPbmx5IHRoZSBWRV9MT0cgYnJhbmNoIGlz IGd1YXJkZWQgYnkgaW5fdGFzaygpLiAgVGhlIHByZWNlZGluZyBob3N0CmJyYW5jaCBpcyB1bmNo YW5nZWQ6CgogICAgaWYgKHZlX2lzX3N1cGVyKGdldF9leGVjX2VudigpKSB8fCAoZHN0ICYgVkUw X0xPRykpCiAgICAgICAgciA9IGRldl92cHJpbnRrX2VtaXQobGV2ZWwsIGRldiwgZm10LCBhcmdz KTsKCldpdGggZHN0ID09IFZFX0xPRyBpbiBzb2Z0aXJxLCB0aGUgcmVzdWx0IGRlcGVuZHMgb24g d2hpY2ggdGFzayB3YXMKaW50ZXJydXB0ZWQ6CgogICAgLSBob3N0IHRhc2sgaW50ZXJydXB0ZWQ6 IHRoZSBtZXNzYWdlIGdvZXMgdG8gdGhlIGhvc3QgbG9nLCBhbmQgdGhlbgogICAgICB0aGUgVkUg YnJhbmNoIG9ubHkgcHJvZHVjZXMgYSBXQVJOLCBldmVuIHRob3VnaCB0aGF0IGJyYW5jaCB3b3Vs ZAogICAgICBoYXZlIGJlZW4gc2tpcHBlZCBhbnl3YXkuCiAgICAtIGNvbnRhaW5lciB0YXNrIGlu dGVycnVwdGVkOiBuZWl0aGVyIGJyYW5jaCBydW5zLCBzbyB0aGUgbWVzc2FnZSBpcwogICAgICBz aWxlbnRseSBkcm9wcGVkLgoKSW4gYm90aCBjYXNlcyByIHN0YXlzIDAsIHNvIHRoZSBjYWxsZXIg Y2Fubm90IHRlbGwgd2hhdCBoYXBwZW5lZC4KCk5vdGhpbmcgbGVha3MgdG8gYSBjb250YWluZXIs IGJ1dCB0aGUgb3V0Y29tZSBpcyBub3QgZGV0ZXJtaW5pc3RpYy4KV291bGQgaXQgbWFrZSBzZW5z ZSB0byBjaGVjayBpbl90YXNrKCkgb25jZSBiZWZvcmUgZWl0aGVyIGJyYW5jaCBhbmQKYXBwbHkg YSBzaW5nbGUgcnVsZSBmb3Igbm9uLXRhc2sgY29udGV4dD8KCnZlX2Rldl9wcmludGtfZW1pdCgp IHRha2VzIG5vIHZlIGFyZ3VtZW50LCBzbyBpdCBhbHdheXMgcmVsaWVzIG9uCmdldF9leGVjX2Vu digpLiAgVGhlIGluLXRyZWUgY2FsbGVyIG5ldC9jb3JlL2Rldi5jOl9fdmVfbmV0ZGV2X3ByaW50 aygpCnBhc3NlcyBubyB2ZSBhbmQgY2FuIHJ1biBmcm9tIHNvZnRpcnEvTkFQSSBjb250ZXh0LCBz byBpdCByZWFjaGVzIHRoaXMKcGF0aC4KClRoZSBsYXRlciBwYXRjaGVzIGluIHRoZSBzZXJpZXMg KCJTcGVjaWZ5IHZlIGluIHByaW50a3MiIGFuZCAiVXNlCnZlX3ByaW50ayB3aXRoIHNwZWNpZmll ZCB2ZSIpIG9ubHkgaGVscCBjYWxsZXJzIHRoYXQgcGFzcyBhbiBleHBsaWNpdCB2ZS4KVGhpcyBu ZXRkZXYgcGF0aCBhbmQgdmVfZGV2X3ByaW50a19lbWl0KCkgYXJlIG5vdCBjb3ZlcmVkIGJ5IHRo ZW0uCgo+IGRpZmYgLS1naXQgYS9rZXJuZWwvcHJpbnRrL3ByaW50ay5jIGIva2VybmVsL3ByaW50 ay9wcmludGsuYwo+IC0tLSBhL2tlcm5lbC9wcmludGsvcHJpbnRrLmMKPiArKysgYi9rZXJuZWwv cHJpbnRrL3ByaW50ay5jCgpbIC4uLiBdCgo+IEBAIC0yNTQwLDcgKzI1NDEsOSBAQCBzdGF0aWMg YXNtbGlua2FnZSBpbnQgdmVfdnByaW50ayhpbnQgZHN0LCBjb25zdCBjaGFyICpmbXQsIHZhX2xp c3QgYXJncykKPiAgCXZhX2NvcHkoYXJnczIsIGFyZ3MpOwo+ICAJaWYgKHZlX2lzX3N1cGVyKGdl dF9leGVjX2VudigpKSB8fCAoZHN0ICYgVkUwX0xPRykpCj4gIAkJciA9IHZwcmludGsoZm10LCBh cmdzKTsKPiAtCWlmICgoZHN0ICYgVkVfTE9HKSAmJiAhdmVfaXNfc3VwZXIoZ2V0X2V4ZWNfZW52 KCkpKQo+ICsKPiArCS8qIFJlcG9ydCBJUlEgdXNhZ2UgaGVyZSAtIHByaW50aW5nIHRvIFZFIHJl cXVpcmVzIGV4cGxpY2l0IHZlIHJlZmVyZW5jZSAqLwo+ICsJaWYgKChkc3QgJiBWRV9MT0cpICYm ICFXQVJOX09OX09OQ0UoIWluX3Rhc2soKSkgJiYgIXZlX2lzX3N1cGVyKGdldF9leGVjX2Vudigp KSkKPiAgCQlyID0gdmVfdnByaW50a19lbWl0KDAsIExPR0xFVkVMX0RFRkFVTFQsIE5VTEwsIGZt dCwgYXJnczIpOwoKW1NldmVyaXR5OiBMb3ddCkRvZXMgdmVfdnByaW50aygpIGhhdmUgdGhlIHNh bWUgcHJvYmxlbT8KClRoZSBob3N0LWxvZyBkZWNpc2lvbiBzdGlsbCB1c2VzIHZlX2lzX3N1cGVy KGdldF9leGVjX2VudigpKSB3aXRob3V0IGFuCmluX3Rhc2soKSBjaGVjay4gIEluIHRoZSBzZXJp ZXMtZmluYWwgc3RhdGUgaXQgcmVhZHM6CgogICAgaWYgKCF2ZSkKICAgICAgICB2ZSA9IGdldF9l eGVjX2VudigpOwoKICAgIHZhX2NvcHkoYXJnczIsIGFyZ3MpOwogICAgaWYgKHZlX2lzX3N1cGVy KHZlKSB8fCAoZHN0ICYgVkUwX0xPRykpCiAgICAgICAgciA9IHZwcmludGsoZm10LCBhcmdzKTsK CiAgICBpZiAoKGRzdCAmIFZFX0xPRykpIHsKICAgICAgICBpZiAoIXZlX3Byb3ZpZGVkICYmIFdB Uk5fT05fT05DRSghaW5fdGFzaygpKSkKICAgICAgICAgICAgZ290byBkb25lOwoKU28gYSBWRV9M T0ctb25seSBtZXNzYWdlIGZyb20gc29mdGlycSB3aXRoIHZlID09IE5VTEwgaXMgZWl0aGVyIHBy aW50ZWQKdG8gdGhlIGhvc3QgbG9nIG9yIGRyb3BwZWQsIGRlcGVuZGluZyBvbiB0aGUgaW50ZXJy dXB0ZWQgdGFzay4gIFRoZSBXQVJOCmNhbiBhbHNvIGZpcmUgd2hlbiBhIGhvc3QgdGFzayB3YXMg aW50ZXJydXB0ZWQsIGFsdGhvdWdoIHRoZSBWRSBicmFuY2gKd291bGQgaGF2ZSBiZWVuIHNraXBw ZWQgYW55d2F5LgoKQ291bGQgdGhlIGhvc3QtYnJhbmNoIGRlY2lzaW9uIGJlIG1hZGUgZGV0ZXJt aW5pc3RpYyBmb3Igbm9uLXRhc2sKY29udGV4dCB3aXRoIG5vIGV4cGxpY2l0IHZlPwoKPiBAQCAt MjU3NCw3ICsyNTc3LDkgQEAgc3RhdGljIGFzbWxpbmthZ2UgaW50IHZlX3ZwcmludGtfZGVmZXJy ZWQoaW50IGRzdCwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MKPiAgCXZhX2NvcHkoYXJn czIsIGFyZ3MpOwo+ICAJaWYgKHZlX2lzX3N1cGVyKGdldF9leGVjX2VudigpKSB8fCAoZHN0ICYg VkUwX0xPRykpCj4gIAkJciA9IHZwcmludGtfZW1pdCgwLCBMT0dMRVZFTF9TQ0hFRCwgTlVMTCwg Zm10LCBhcmdzKTsKPiAtCWlmICgoZHN0ICYgVkVfTE9HKSAmJiAhdmVfaXNfc3VwZXIoZ2V0X2V4 ZWNfZW52KCkpKQo+ICsKPiArCS8qIFJlcG9ydCBJUlEgdXNhZ2UgaGVyZSAtIHByaW50aW5nIHRv IFZFIHJlcXVpcmVzIGV4cGxpY2l0IHZlIHJlZmVyZW5jZSAqLwo+ICsJaWYgKChkc3QgJiBWRV9M T0cpICYmICFXQVJOX09OX09OQ0UoIWluX3Rhc2soKSkgJiYgIXZlX2lzX3N1cGVyKGdldF9leGVj X2VudigpKSkKPiAgCQlyID0gdmVfdnByaW50a19lbWl0KDAsIExPR0xFVkVMX1NDSEVELCBOVUxM LCBmbXQsIGFyZ3MyKTsKCltTZXZlcml0eTogTG93XQpUaGUgc2FtZSBwYXR0ZXJuIGFwcGVhcnMg aW4gdmVfdnByaW50a19kZWZlcnJlZCgpLiAgVGhlIGhvc3QgYnJhbmNoCnZlX2lzX3N1cGVyKGdl dF9leGVjX2VudigpKSB8fCAoZHN0ICYgVkUwX0xPRykgaXMgdW5ndWFyZGVkLCBhbmQgdGhlCmZp bmFsLXN0YXRlIGNvZGUgb25seSBndWFyZHMgdGhlIFZFX0xPRyBicmFuY2ggd2l0aAoiaWYgKCF2 ZV9wcm92aWRlZCAmJiBXQVJOX09OX09OQ0UoIWluX3Rhc2soKSkpIGdvdG8gZG9uZTsiLgoKQ2Fu IHRoZSBzYW1lIG5vbi1kZXRlcm1pbmlzdGljIGhvc3QtbG9nIHZlcnN1cyBkcm9wIG91dGNvbWUg b2NjdXIgaGVyZQp3aGVuIHRoaXMgaXMgY2FsbGVkIGZyb20gSVJRIG9yIHNvZnRpcnEgd2l0aCB2 ZSA9PSBOVUxMPwoKLS0gClNhc2hpa28gQUkgcmV2aWV3IMK3IGh0dHBzOi8vc2FzaGlrby52emlu dC5kZXYvIy9wYXRjaHNldC8yMDI2MTAxMi12ZS1wcmludGstaXJxLXYzLTAtZWZjOTVmZDVjNzhh QHZpcnR1b3p6by5jb20/cGFydD0yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpEZXZlbCBtYWlsaW5nIGxpc3QKRGV2ZWxAb3BlbnZ6Lm9yZwpodHRwczov L2xpc3RzLm9wZW52ei5vcmcvbWFpbG1hbi9saXN0aW5mby9kZXZlbAo=