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 BEB50802A5 for ; Thu, 8 Oct 2026 07:54:07 +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 6987qnU6021236; Thu, 8 Oct 2026 10:52:50 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 6987qnU6021236 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="ggG/LOYq"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amazonses.com header.i=@amazonses.com header.b="WxuMgFGG" Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 6987qmMs021232 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Thu, 8 Oct 2026 10:52:49 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 6987qmMs021232 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-48589603501so2695646f8f.3 for ; Thu, 08 Oct 2026 00:52:49 -0700 (PDT) X-Gm-Message-State: AFq9FYKcouKEN9qzoDhkGRZsnba0B/lRQb0Yn17Hc+Mh1iEFAI+s6sw5 xyqR+1wDi/AluvSQinwWHRpCcilUBCsZoF8x0qdoD7rHtjUWyvSdVfeubDkFrEfQSF59c+/Sv2o 8+y9TyuydD+OzpIakfWg0grAllDTeC62nXoDUO7wxsP6nPemVVaNgQw== X-Gm-Gg: AYBFou3iUsJcdJ0EgtCs2rdxDHVchb5+KoD2VMT1mEOEWA+uU9vUMLxoSAWoFSPjMWo j/V0cIDeFeVkhTiOZEdyKq/Tq7WhiDR+lOA7IbROLJ0fquRUD/gk9YWsp0389dz2YW4e78/ds17 +5nKgQS+AJIFWBWfpADLHGXY+JJr0R46NlpQMzNjc6HKuiHlnppVEeleq1vHlI4tiYK/HBoDTvM lvC9ssY+o16cEU5x0p6mFruxwVi/AkufqeWhhD/MaZv7Pip7mC9mHhgb6TaK3rLuUNeklffAEaF 8xU121ggn4L027lKWyhbV3qPSbE3ndtoeXMJg4WhyFzyAqjZdyE36T0hfWk+NlZHpswgnCmrc3e l/sqEN9choMFFw89NltsuNQQt5+zi9dW6GvCJsjeDu8yo/5JBxk7nTjhW0cWWEJN9oUKxioYfWg QjvFdSx4B95+dc9Daf3hY2YqfII5S+ZOlE39BChRdJZIDqns/Fyuxpe09JLfL76GSXbQ/+EbyKX kFslFVv4mJT0O6cbzt3 X-Received: by 2002:a05:6000:420b:b0:488:8a3d:b58a with SMTP id ffacd0b85a97d-48c728a7a1bmr8246293f8f.53.1791445968665; Thu, 08 Oct 2026 00:52:48 -0700 (PDT) X-Received: by 2002:a05:6000:420b:b0:488:8a3d:b58a with SMTP id ffacd0b85a97d-48c728a7a1bmr8246255f8f.53.1791445968173; Thu, 08 Oct 2026 00:52:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1791445968; cv=none; d=google.com; s=arc-20260327; b=B/ICs21NF87mQ0SuIozieqa9YQ+PiOs3UPr2YWGHOtEuA8UjwQoZuPP/dBRjYMKe/i 3QcWoLZP3p2OYg1zOLQTx0G4inA5BCPVbRVjlP+xPDMtkrhTtxlDK9LOUMveRyltCUJF P2atP2zeTf0pIJa5X3evuP4YimbP/3CY7RHfYFLGEnbNA/F67HrnuNqDhoyACXQcGAXq rfRrjwEaS9i0BQu3ttoYgHn9oBu43I3RQR+TlcGYlSlt8BWQ/3+PDTkpVFKZsW1gHxRP szVUHtJ7bHgJe0wdTcY/lxz6VzstgCsr8vti8r8ZtoQO0HBfHkegT7J9EgFCP9b49CFq uotA== 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=e34zXotJuaK50Yw5X+jtcpq8C8Qt+xdZiaNHXIbSMKg=; fh=Vs2MFr2i0bIXYuHiUVrn3OPs4PZu77y36I1YNkLb3H8=; b=XHJPhdTUYmiqT7vImmcmx6F6mVBv1duF/xYAQy/12y/ajVAMKHPXYucgcdjb0Jmf+M 58d7KPdt+CSE9fU1EQwna60ZWIm61n7EgtH9sFR6Sgu+YXQ7lAnzi5vd4w1C0lztSNtY ZMi+9TSLjsqf7em+MJIAj3rYEpPP2pioAbkBmO4Qd6S99/yKn/wR6bHjEwfs/4RiP6NQ TAksHJRK4l3UxdCMgsi4dhzbI64CR1bFzCCVeIrRPDDQa1DmEkJQWxL8gDtuZo+KmWqq T9Q/yBFDLf+KfeKrpKAclntMa8AmXi0EsY1iHW1RZhFX9YPq7/QuaoSYlBymQum+Vw5f +Dqg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sashiko.virtuozzo.com header.s=23yjbh4k34hwzfubhuiim7m4inbd3ick header.b="ggG/LOYq"; dkim=pass header.i=@amazonses.com header.s=sokbgaaqhfgd6qjht2wmdajpuuanpimv header.b=WxuMgFGG; spf=pass (google.com: domain of 010701a11a80234d-8d4299a3-99d4-4979-88a3-b128c2dc9503-000000@eu-central-1.amazonses.com designates 69.169.224.5 as permitted sender) smtp.mailfrom=010701a11a80234d-8d4299a3-99d4-4979-88a3-b128c2dc9503-000000@eu-central-1.amazonses.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from b224-5.smtp-out.eu-central-1.amazonses.com (b224-5.smtp-out.eu-central-1.amazonses.com. [69.169.224.5]) by mx.google.com with ESMTPS id ffacd0b85a97d-48c72133687si8368128f8f.19.2026.10.08.00.52.48 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 08 Oct 2026 00:52:48 -0700 (PDT) Received-SPF: pass (google.com: domain of 010701a11a80234d-8d4299a3-99d4-4979-88a3-b128c2dc9503-000000@eu-central-1.amazonses.com designates 69.169.224.5 as permitted sender) client-ip=69.169.224.5; Authentication-Results: mx.google.com; dkim=pass header.i=@sashiko.virtuozzo.com header.s=23yjbh4k34hwzfubhuiim7m4inbd3ick header.b="ggG/LOYq"; dkim=pass header.i=@amazonses.com header.s=sokbgaaqhfgd6qjht2wmdajpuuanpimv header.b=WxuMgFGG; spf=pass (google.com: domain of 010701a11a80234d-8d4299a3-99d4-4979-88a3-b128c2dc9503-000000@eu-central-1.amazonses.com designates 69.169.224.5 as permitted sender) smtp.mailfrom=010701a11a80234d-8d4299a3-99d4-4979-88a3-b128c2dc9503-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=1791445967; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type:Content-Transfer-Encoding:Date; bh=P+W0+Y0QtAnM9j9EG64GjRxaX3gMJaWdy+hzI7MG7O8=; b=ggG/LOYqnSRTYfIc13KFmjQ0OlElgA4NvTVh6UX7hlAJGVXwKFin5i8DaK/c7veQ TM9EFZTQ48rxBOtWevaESxBwXSVwrLwLqwFUU/rJgnw+0BvMI8rw5dykGySNVmlv7ah cC9qVUwaSrG4VlrOWmBnFjEJBzuBHZDS4XR4ndLpcBTmhYv5U+bJ8S6TdDGY+FHh9G1 04WmYt5k+WTuXqad0Ir22n39lSEFb0ABu84kkyjcv9vhWs0R6TBDRN8VOP8KNM+utox K6FpEF3T2cH7tiXAmeeLGHqse+coSRvz/wnGQ5ggdluHJZ7BNDBtS+qtLbwqKXKenm7 SRyiMAxPMw== DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=sokbgaaqhfgd6qjht2wmdajpuuanpimv; d=amazonses.com; t=1791445967; h=Message-ID:From:Subject:To:Cc:In-Reply-To:References:Content-Type:Content-Transfer-Encoding:Date:Feedback-ID; bh=P+W0+Y0QtAnM9j9EG64GjRxaX3gMJaWdy+hzI7MG7O8=; b=WxuMgFGGcEW7SbjgHmjNmnNNk+3GxpEyCDLLc0AWwv7cuf/wDK5hz/veGx5cLXJI Tm1PB6bBJNFrwYkG+9R9PUCjFbixiidcHknFZ66J4YpGgvS8BInU0QPzW2Z1VhMlj7d 5KI39JQc2OCY7JhS6yW+HLLvTht8EJXRSEPUK5cI= Message-ID: <010701a11a80234d-8d4299a3-99d4-4979-88a3-b128c2dc9503-000000@eu-central-1.amazonses.com> From: no-reply@sashiko.virtuozzo.com To: Alexander Ivanov , den@virtuozzo.com In-Reply-To: <20261008073837.510678-7-alexander.ivanov@virtuozzo.com> References: <20261008073837.510678-1-alexander.ivanov@virtuozzo.com> <20261008073837.510678-7-alexander.ivanov@virtuozzo.com> Date: Thu, 8 Oct 2026 07:52:47 +0000 Feedback-ID: ::1.eu-central-1.2wRQJBpg9g1fGRYexx3dUuYGS25Bux+2TEOx72/m6U4=:AmazonSES X-SES-Outgoing: 2026.10.08-69.169.224.5 X-OZ-Fwd: true X-MIME-Autoconverted: from quoted-printable to 8bit by mail.openvz.org id 6987qmMs021232 Cc: devel@openvz.org Subject: Re: [Devel] [PATCH hci-8.1 v2 6/6] dm-ploop: truncate unused tail of top delta on suspend 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 NCBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6Ci0gW01lZGl1bV0gZG0tcGxvb3A6IHVu dmFsaWRhdGVkIG1fRm9ybWF0RXh0ZW5zaW9uT2Zmc2V0IGNhbiB0cnVuY2F0ZSBkZWx0YSB0byB1 bmFsaWduZWQgc2l6ZQotIFtNZWRpdW1dIGRtLXBsb29wOiBHRlBfS0VSTkVMIEJBVCByZWFkIGlu IHBvc3RzdXNwZW5kKCkgY2FuIGRlYWRsb2NrIHZpYSByZWNsYWltIElPCi0gW0xvd10gZG0tcGxv b3A6IFdBUk5fT05fT05DRSBpbiBwbG9vcF9jYWxjX3VzZWRfZW5kKCkgY2FuIGZpcmUgb24gYSBi ZW5pZ24gaW5mbGlnaHRfbWQgcmFjZQotIFtMb3ddIGRtLXBsb29wOiB0YWlsIHRydW5jYXRpb24g YXNzdW1lcyBDQlQgaGVhZGVyIGlzIHRoZSBsYXN0IGV4dGVuc2lvbiBjbHVzdGVyCi0tCgpjb21t aXQgMjA5Y2IxNzEyNGQ0Y2Y3MjM2Y2IxZDNkOWUyOGVhNWNjNDM2MWJiZgpBdXRob3I6IEFsZXhh bmRlciBJdmFub3YgPGFsZXhhbmRlci5pdmFub3ZAdmlydHVvenpvLmNvbT4KCmRtLXBsb29wOiB0 cnVuY2F0ZSB1bnVzZWQgdGFpbCBvZiB0b3AgZGVsdGEgb24gc3VzcGVuZAoKVGhpcyBwYXRjaCBh ZGRzIHBsb29wX2NhbGNfdXNlZF9lbmQoKSwgd2hpY2ggcmVhZHMgdGhlIG9uLWRpc2sgQkFUIGFu ZCB0aGUKZm9ybWF0IGV4dGVuc2lvbiBvZmZzZXQgdG8gZmluZCB0aGUgZW5kIG9mIHRoZSB1c2Vk IHBhcnQgb2YgdGhlIHRvcCBkZWx0YS4KcGxvb3BfcG9zdHN1c3BlbmQoKSBub3cgdHJ1bmNhdGVz IHRoZSB0b3AgZGVsdGEgdG8gdGhhdCBlbmQgdW5kZXIKY3RsX3J3c2VtLiBUaGUgaGVhZGVyIGZp ZWxkIG1fUmVzZXJ2ZWQgaXMgcmVuYW1lZCB0byBtX0Zvcm1hdEV4dGVuc2lvbk9mZnNldC4KCkxp bms6IGh0dHBzOi8vdmlydHVvenpvLmF0bGFzc2lhbi5uZXQvYnJvd3NlL1ZTVE9SLTE0ODE3MQoK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZC9kbS1wbG9vcC1iYXQuYyBiL2RyaXZlcnMvbWQvZG0t cGxvb3AtYmF0LmMKPiAtLS0gYS9kcml2ZXJzL21kL2RtLXBsb29wLWJhdC5jCj4gKysrIGIvZHJp dmVycy9tZC9kbS1wbG9vcC1iYXQuYwoKWyAuLi4gXQoKPiArbG9mZl90IHBsb29wX2NhbGNfdXNl ZF9lbmQoc3RydWN0IHBsb29wICpwbG9vcCwgc3RydWN0IGZpbGUgKmZpbGUpCj4gK3sKClsgLi4u IF0KCj4gKwkvKiBCQVQgb24gZGlzayBtYXkgbWlzcyBhbGxvY2F0ZWQgY2x1c3RlcnMgdW50aWwg d3JpdGViYWNrIGlzIGRvbmUgKi8KPiArCWlmIChXQVJOX09OX09OQ0UoIXBsb29wX21kX3BhZ2Vz X2FyZV9jbGVhbihwbG9vcCkpKQo+ICsJCXJldHVybiAtRUJVU1k7CgpbU2V2ZXJpdHk6IExvd10K Q2FuIHRoaXMgV0FSTl9PTl9PTkNFKCkgZmlyZSBvbiBhIGJlbmlnbiByYWNlPyBUaGUgY29tbWl0 IG1lc3NhZ2UKZGVzY3JpYmVzIHRoZSBub3QtY2xlYW4gY2FzZSBhcyBzb21ldGhpbmcgdG8gc2tp cCwgYnV0IGhlcmUgaXQgcmFpc2VzIGEKd2FybmluZyBiYWNrdHJhY2UgKGFuZCB3b3VsZCBwYW5p YyB3aXRoIHBhbmljX29uX3dhcm4pLgoKSW4gcGxvb3BfcHV0X3Bpd2IoKSwgdGhlIGRhdGEgcGlv cyBhcmUgZW5kZWQgZmlyc3QsIGFuZCBpbmZsaWdodF9tZCBpcwpkZWNyZW1lbnRlZCBvbmx5IGFm dGVyd2FyZHM6CgogICAgcGxvb3BfYmF0X3dyaXRlX2ZpbmlzaChwaXdiLT5waW8sIHBpd2IsIHBp d2ItPmJpX3N0YXR1cyk7CiAgICAuLi4KICAgIGlmIChhdG9taWNfZGVjX2FuZF90ZXN0KCZwaXdi LT5wbG9vcC0+aW5mbGlnaHRfbWQpKQogICAgICAgICAgICB3YWtlX3VwX2ludGVycnVwdGlibGUo JnBpd2ItPnBsb29wLT5pbmZsaWdodF9tZF93cSk7CgpkbSBzdXNwZW5kIGNhbiBzZWUgdGhvc2Ug YmlvcyBjb21wbGV0ZSBhbmQgcmVhY2ggcGxvb3BfcG9zdHN1c3BlbmQoKQp3aGlsZSBpbmZsaWdo dF9tZCBpcyBzdGlsbCAxLiBwbG9vcF9wb3N0c3VzcGVuZCgpIG9ubHkgY2FsbHMKcGxvb3Bfd2Fp dF9wcmVhbGxvYygpLCBhbmQgZG9lcyBub3Qgd2FpdCBvbiBpbmZsaWdodF9tZF93cS4gU28KcGxv b3BfbWRfcGFnZXNfYXJlX2NsZWFuKCkgY2FuIHJldHVybiBmYWxzZSB3aXRoIG5vIEkvTyBlcnJv ciBpbnZvbHZlZC4KCnBsb29wX3RydW5jYXRlX3VudXNlZF90YWlsKCkgdGhlbiBhbHNvIHByaW50 cyAiQ2FuJ3QgZmluZCB1c2VkIGVuZCBvZiB0b3AKZGVsdGE6IC0xNiIgYW5kIHNraXBzIHRoZSB0 cnVuY2F0aW9uLiBTaG91bGQgdGhpcyBiZSBhIHBsYWluIGNvbmRpdGlvbiwKb3Igc2hvdWxkIHBs b29wX3Bvc3RzdXNwZW5kKCkgd2FpdCBvbiBpbmZsaWdodF9tZF93cSBmaXJzdD8gVGhlIHNhbWUK cGF0dGVybiBpcyBhbHJlYWR5IGluIHBsb29wX3JlbG9hZF9tZXRhZGF0YSgpLCBidXQgdGhpcyBh ZGRzIGEgc2Vjb25kCnNpdGUuCgpbIC4uLiBdCgo+ICsJcmV0ID0gcGxvb3BfcmVhZF9kZWx0YV9t ZXRhZGF0YShwbG9vcCwgZmlsZSwgJm1kX3Jvb3QsICZucl9iZSk7Cj4gKwlpZiAocmV0KQo+ICsJ CXJldHVybiByZXQ7CgpbU2V2ZXJpdHk6IE1lZGl1bV0KQ2FuIHRoaXMgZnVsbCBCQVQgcmVhZCBk ZWFkbG9jayB3aGVuIGNhbGxlZCBmcm9tIHBsb29wX3Bvc3RzdXNwZW5kKCk/CgpwbG9vcF9yZWFk X2RlbHRhX21ldGFkYXRhKCkgYWxsb2NhdGVzIHdpdGggR0ZQX0tFUk5FTCwgYm90aCB0aHJvdWdo CnBsb29wX3ByZWFsbG9jX21kX3BhZ2VzKCkgKGFsbG9jX3BhZ2UoKSkgYW5kIGluOgoKICAgIGJ2 ZWMgPSBrdm1hbGxvYyhzaXplb2YoKmJ2ZWMpICogbnJfc2VncywgR0ZQX0tFUk5FTCk7CgpkbV9z dXNwZW5kKCkgY2FsbHMgZG1fdGFibGVfcG9zdHN1c3BlbmRfdGFyZ2V0cygpIGFmdGVyIElPIHRv IHRoZSBkZXZpY2UKaGFzIGJlZW4gc3RvcHBlZCwgd2l0aCBzdXNwZW5kX2xvY2sgaGVsZCBhbmQg bm8gbWVtYWxsb2Nfbm9pbyBzY29wZS4KRGlyZWN0IHJlY2xhaW0gaGVyZSBjb3VsZCB3cml0ZSBi YWNrIGRpcnR5IHBhZ2VzIG9mIGEgZmlsZXN5c3RlbSBvbiB0aGUKcGxvb3AgZGV2aWNlLCBvciBz d2FwIG91dCB0byBpdC4gVGhvc2UgYmlvcyBhcmUgZGVmZXJyZWQgYmVjYXVzZSB0aGUKZGV2aWNl IGlzIHN1c3BlbmRlZCwgc28gdGhlIHJlY2xhaW1pbmcgdGFzayB3YWl0cyBmb3IgYSByZXN1bWUu IFRoZQpyZXN1bWUgbmVlZHMgbWQtPnN1c3BlbmRfbG9jaywgd2hpY2ggdGhlIHN1c3BlbmRpbmcg dGFzayBzdGlsbCBob2xkcy4KClRoZSBvbGQgcGxvb3BfcG9zdHN1c3BlbmQoKSBkaWQgbm8gYWxs b2NhdGlvbnMuIFdvdWxkIHdyYXBwaW5nIHRoZSBjYWxsCmluIG1lbWFsbG9jX25vaW9fc2F2ZSgp L21lbWFsbG9jX25vaW9fcmVzdG9yZSgpIGJlIGFwcHJvcHJpYXRlPyBUaGUgc2FtZQpoYXphcmQg YWxyZWFkeSBleGlzdHMgaW4gcGxvb3BfcmVsb2FkX21ldGFkYXRhKCkgZnJvbSBwbG9vcF9wcmVy ZXN1bWUoKSwKYnV0IHRoaXMgcGF0Y2ggYWRkcyB0aGUgcG9zdHN1c3BlbmQgc2l0ZS4KClsgLi4u IF0KCj4gKwkvKiBGb3JtYXQgZXh0ZW5zaW9uIGhlYWRlciBpcyB0aGUgbGFzdCBjbHVzdGVyIG9m IGV4dGVuc2lvbiAqLwo+ICsJaGRyID0gcGxvb3BfbWRfZmlyc3RfZW50cnkoJm1kX3Jvb3QpLT5r bXBhZ2U7Cj4gKwlleHRfb2ZmID0gbGU2NF90b19jcHUoaGRyLT5tX0Zvcm1hdEV4dGVuc2lvbk9m ZnNldCk7Cj4gKwlpZiAoZXh0X29mZikgewo+ICsJCWV4dF9lbmQgPSB0b19ieXRlcyhleHRfb2Zm KSArIENMVV9TSVpFKHBsb29wKTsKCltTZXZlcml0eTogTWVkaXVtXQpDYW4gYW4gdW52YWxpZGF0 ZWQgbV9Gb3JtYXRFeHRlbnNpb25PZmZzZXQgbGVhZCB0byBhbiB1bmFsaWduZWQKdHJ1bmNhdGlv bj8gVGhpcyBmaWVsZCB1c2VkIHRvIGJlIG1fUmVzZXJ2ZWRbOF0gYW5kIHdhcyBuZXZlcgppbnRl cnByZXRlZC4gcGxvb3BfZGVsdGFfY2hlY2tfaGVhZGVyKCkgYW5kIHBsb29wX3NldHVwX21ldGFk YXRhKCkgZG8gbm90Cmxvb2sgYXQgaXQuCgpJZiBleHRfb2ZmIGlzIHNlY3Rvci1hbGlnbmVkIGJ1 dCBub3QgY2x1c3Rlci1hbGlnbmVkLCBleHRfZW5kIGlzIG5vdApjbHVzdGVyLWFsaWduZWQuIElm IGl0IGlzIGFsc28gYWJvdmUgdGhlIEJBVC1kZXJpdmVkIHVzZWRfZW5kIGFuZCBiZWxvdwp0b3At PmZpbGVfc2l6ZSwgcGxvb3BfdHJ1bmNhdGVfdW51c2VkX3RhaWwoKSBwYXNzZXMgaXQgdG8gZG9f ZnRydW5jYXRlKCkuCgpUaGUgbmV4dCBwbG9vcF9wcmVyZXN1bWUoKSAtPiBwbG9vcF9yZWxvYWRf bWV0YWRhdGEoKSAtPgpwbG9vcF9yZWFkX2RlbHRhKCkgLT4gcGxvb3BfY2hlY2tfZGVsdGFfbGVu Z3RoKCkgdGhlbiBoaXRzOgoKICAgIGlmIChsb2ZmICYgKENMVV9TSVpFKHBsb29wKSAtIDEpKQog ICAgICAgICAgICByZXR1cm4gLUVQUk9UTzsKCmFuZCB0aGUgZGV2aWNlIGNhbm5vdCBiZSByZXN1 bWVkLgoKQWxzbywgdG9fYnl0ZXMoKSBpcyBhbiB1bnNpZ25lZCBsb25nIHNoaWZ0IGJ5IDksIHNv IGEgbGFyZ2UgZXh0X29mZiBzdWNoCmFzIDJeNTUgb3IgbW9yZSB3cmFwcywgYW5kIHRoZSB3cmFw cGVkIHZhbHVlIGNhbiBsYW5kIGluIHRoZSBzYW1lIHJhbmdlLgoKU2hvdWxkIGV4dF9vZmYgYmUg cmVxdWlyZWQgdG8gYmUgY2x1c3Rlci1hbGlnbmVkIGFuZCBjaGVja2VkIGZvcgpvdmVyZmxvdywg d2l0aCB0cnVuY2F0aW9uIHNraXBwZWQgd2hlbiBpdCBpcyBvdXQgb2YgcmFuZ2U/Cgo+ICsJCWlm IChleHRfZW5kID4gdXNlZF9lbmQpCj4gKwkJCXVzZWRfZW5kID0gZXh0X2VuZDsKPiArCX0KCltT ZXZlcml0eTogTG93XQpJcyBpdCBndWFyYW50ZWVkIHRoYXQgdGhlIGZvcm1hdCBleHRlbnNpb24g aGVhZGVyIGlzIHRoZSBsYXN0IGNsdXN0ZXIgb2YKdGhlIGV4dGVuc2lvbj8gVGhlIGNvZGUgYXNz dW1lcyB0aGUgZXh0ZW5zaW9uIGVuZHMgb25lIGNsdXN0ZXIgYWZ0ZXIgaXRzCm9mZnNldDoKCiAg ICBleHRfZW5kID0gdG9fYnl0ZXMoZXh0X29mZikgKyBDTFVfU0laRShwbG9vcCk7CgpJZiBhIENC VCBleHRlbnNpb24gZXZlciBoYXMgZGF0YSBhZnRlciBpdHMgaGVhZGVyIGNsdXN0ZXIsIGFueXRo aW5nIGJleW9uZApleHRfZW5kIHRoYXQgbGllcyBwYXN0IHRoZSBsYXN0IEJBVC1yZWZlcmVuY2Vk IGNsdXN0ZXIgaXMgY3V0IG9mZiBieQpkb19mdHJ1bmNhdGUoKSBpbiBwbG9vcF90cnVuY2F0ZV91 bnVzZWRfdGFpbCgpLiBUaGF0IGxvc3MgaXMgaXJyZXZlcnNpYmxlLgoKVGhlIG9ubHkgc3VwcG9y dCBmb3IgdGhpcyBsYXlvdXQgaXMgdGhlIGNvbW1pdCBtZXNzYWdlICgiYXMgdXNlcnNwYWNlCmRv ZXMiKSBhbmQgdGhlIGNvZGUgY29tbWVudC4gQ291bGQgdGhlIGxheW91dCBiZSBkb2N1bWVudGVk IGluIHRoZSBjb2RlIG9yCmluIGEgaGVhZGVyIGNvbW1lbnQ/CgpbIC4uLiBdCgo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL21kL2RtLXBsb29wLXRhcmdldC5jIGIvZHJpdmVycy9tZC9kbS1wbG9vcC10 YXJnZXQuYwo+IC0tLSBhL2RyaXZlcnMvbWQvZG0tcGxvb3AtdGFyZ2V0LmMKPiArKysgYi9kcml2 ZXJzL21kL2RtLXBsb29wLXRhcmdldC5jCgpbIC4uLiBdCgo+ICsJZW5kID0gcGxvb3BfY2FsY191 c2VkX2VuZChwbG9vcCwgdG9wLT5maWxlKTsKPiArCWlmIChlbmQgPCAwKSB7Cj4gKwkJUExfRVJS KCJDYW4ndCBmaW5kIHVzZWQgZW5kIG9mIHRvcCBkZWx0YTogJWxsZCIsIGVuZCk7Cj4gKwkJcmV0 dXJuOwo+ICsJfQoKW1NldmVyaXR5OiBMb3ddClRoaXMgaXNuJ3QgYSBidWcsIGJ1dCB3aGVuIHBs b29wX2NhbGNfdXNlZF9lbmQoKSByZXR1cm5zIC1FQlVTWSBmb3IgdGhlCm5vdC1jbGVhbiBza2lw IGNhc2UsIHRoaXMgcGF0aCByZXBvcnRzIGl0IGFzIGFuIGVycm9yIG9uIHRvcCBvZiB0aGUKV0FS Tl9PTl9PTkNFKCkgaW4gcGxvb3BfY2FsY191c2VkX2VuZCgpLiBTaG91bGQgdGhlIHNraXAgY2Fz ZSBiZSBzaWxlbnQ/CgpbIC4uLiBdCgo+ICsJcmV0ID0gZG9fZnRydW5jYXRlKHRvcC0+ZmlsZSwg ZW5kLCAwKTsKClsgLi4uIF0KCj4gKwlwbG9vcF93YWl0X3ByZWFsbG9jKHBsb29wKTsKPiArCXBs b29wX3RydW5jYXRlX3VudXNlZF90YWlsKHBsb29wKTsKPiArCXBsb29wLT5zdXNwZW5kZWQgPSB0 cnVlOwo+ICsJdXBfd3JpdGUoJnBsb29wLT5jdGxfcndzZW0pOwoKLS0gClNhc2hpa28gQUkgcmV2 aWV3IMK3IGh0dHBzOi8vc2FzaGlrby52emludC5kZXYvIy9wYXRjaHNldC8yMDI2MTAwODA3Mzgz Ny41MTA2NzgtMS1hbGV4YW5kZXIuaXZhbm92QHZpcnR1b3p6by5jb20/cGFydD02CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpEZXZlbCBtYWlsaW5nIGxp c3QKRGV2ZWxAb3BlbnZ6Lm9yZwpodHRwczovL2xpc3RzLm9wZW52ei5vcmcvbWFpbG1hbi9saXN0 aW5mby9kZXZlbAo=