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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 692F9C433EF for ; Sat, 7 May 2022 18:21:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=Bvw0aCLrIdJ2hQoqII22ZGZGXjvyEvvdMsud7OyYRCg=; b=nycNm5XQ93mxdu r40w+eZGR2Cj/u9EKw6bSHwZbV6b4D9QyPpBjnsMAlcIde5vCnhX+MSkyJYaXq0b9yXMRwF7srz2O al4+DYM+c6UZVsykXTCsXxjjGH+ZRPaV94WllTV9FLP1sJmNp8agovzFED7nIqQPMKqNoN3uUJStF tPVDIyi6e3F/27+gcf9XR8HvMOZmCrVdcXo3t+3ypOc6+iEKB7xPUmz2G6aaR7FkmrYkUZFv7ch/E 7ffcQq5EzyUyZV/rBc8YymrwCtMbnya0XyKxM1cUhYXytGHLc/0/Qtegq1iSwN6uzFuajezYuFqh9 B2vu+DzvylBGSs31F3zg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nnP1z-007vTf-4K; Sat, 07 May 2022 18:19:51 +0000 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nnP1Y-007vCH-Fc for linux-arm-kernel@lists.infradead.org; Sat, 07 May 2022 18:19:26 +0000 Received: by mail-wm1-x32c.google.com with SMTP id l62-20020a1c2541000000b0038e4570af2fso6114770wml.5 for ; Sat, 07 May 2022 11:19:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=XX78GWwMd1nia7nwVqcpbwaGJYOhbuMkDsq/dHRQm1Y=; b=NMekUxOk5A9I52CMEmMbtbPh5mza3hWVxCElP9ubE0KvS685lAQ6mzs2uEPkqTYBK5 FOtr+BdB6ua9HG1LiAdwO4OQ/ebkBrNvHN1d0E5RgAetlfcCL9tAiR43Og6zAlRYW55W 88r+oBoEZNEYeE4R4NV8LEcDnq8OEteXHou8aU/wrzVABEqgAjc7i4hhEk2ZK2u1/oZ5 tgrOFy5uwz0lMPGxrMtC90bOEVjYYOCBCs8FlIuoyp4LB7p3QuIBSKqqtl6lhwkMVfIP 03ZEu+ufqYvoSDN/C1JgVRCqUCkWH+mdS79q9RnfT6RP+tvDiP45mUuKhqCYaxTE2DLc JP4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=XX78GWwMd1nia7nwVqcpbwaGJYOhbuMkDsq/dHRQm1Y=; b=0rvz2Xdc6oPsEJD1GEfXBMSmRTwwTy7MT2bzYgKiiNhUdbksMzJQC1qFw7uCnUuzip a2ibPefmiZHRw8EVIw/jBIPbaF26/sgs1flr9f0OuiWG9iAMzCCM2/neX9pglrhTDsXL G9MVOKKU4XQrUS0NNesQ0I2+Giha9N7zYEvvTGYUNxFndT8xJA/UcXSucWU+jA9vMD/B HnkMWUcC4GHl/gsPYEdJxpS11M2X1/dn2jFmhgam/iJq0dYOVENAgFaiHqLVjbQ7h/DQ Q9aZv1y/gjqNZ7old/HgbFhMshnsO3N5yYMGwYVq4EgeJ2opbvVzzLDfMIUnvWezKqjH FbgA== X-Gm-Message-State: AOAM530TpSgVGcxDR4b+3ybzRyCCiM5pWs01u601QCpLeRiZJ45K/yel vZNLgjmJ5Ty9/C8+fGuiSDE= X-Google-Smtp-Source: ABdhPJwccDv2hxVU9RUi+xr7GLJPabMJIGyT1Ic0dLKzlXNKKB7nSQ4aD1yIw6UH2GBRi7PQazSapw== X-Received: by 2002:a05:600c:2112:b0:393:ff25:fb92 with SMTP id u18-20020a05600c211200b00393ff25fb92mr8827389wml.194.1651947557846; Sat, 07 May 2022 11:19:17 -0700 (PDT) Received: from otyshchenko.router ([212.22.223.21]) by smtp.gmail.com with ESMTPSA id b10-20020a5d4d8a000000b0020c5253d8f3sm8198457wru.63.2022.05.07.11.19.15 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 07 May 2022 11:19:16 -0700 (PDT) From: Oleksandr Tyshchenko To: xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, virtualization@lists.linux-foundation.org, x86@kernel.org Cc: Oleksandr Tyshchenko , "Michael S. Tsirkin" , Christoph Hellwig , Stefano Stabellini , Boris Ostrovsky , Juergen Gross , Julien Grall , Bertrand Marquis , Wei Chen , Henry Wang , Kaly Xin , Jiamei Xie , =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PATCH V2 0/7] virtio: Solution to restrict memory access under Xen using xen-grant DMA-mapping layer Date: Sat, 7 May 2022 21:19:01 +0300 Message-Id: <1651947548-4055-1-git-send-email-olekstysh@gmail.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220507_111924_550261_648E8377 X-CRM114-Status: GOOD ( 24.27 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RnJvbTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29t PgoKSGVsbG8gYWxsLgoKVGhlIHB1cnBvc2Ugb2YgdGhpcyBwYXRjaCBzZXJpZXMgaXMgdG8gYWRk IHN1cHBvcnQgZm9yIHJlc3RyaWN0aW5nIG1lbW9yeSBhY2Nlc3MgdW5kZXIgWGVuIHVzaW5nIHNw ZWNpZmljCmdyYW50IHRhYmxlIFsxXSBiYXNlZCBETUEtbWFwcGluZyBsYXllci4gUGF0Y2ggc2Vy aWVzIGlzIGJhc2VkIG9uIEp1ZXJnZW4gR3Jvc3PigJkgaW5pdGlhbCB3b3JrIFsyXSB3aGljaCBp bXBsaWVzCnVzaW5nIGdyYW50IHJlZmVyZW5jZXMgaW5zdGVhZCBvZiByYXcgZ3Vlc3QgcGh5c2lj YWwgYWRkcmVzc2VzIChHUEEpIGZvciB0aGUgdmlydGlvIGNvbW11bmljYXRpb25zIChzb21lCmtp bmQgb2YgdGhlIHNvZnR3YXJlIElPTU1VKS4KCllvdSBjYW4gZmluZCBSRkMtVjEgcGF0Y2ggc2Vy aWVzIChhbmQgcHJldmlvdXMgZGlzY3Vzc2lvbnMpIGF0IFszXS4KClRoZSBoaWdoIGxldmVsIGlk ZWEgaXMgdG8gY3JlYXRlIG5ldyBYZW7igJlzIGdyYW50IHRhYmxlIGJhc2VkIERNQS1tYXBwaW5n IGxheWVyIGZvciB0aGUgZ3Vlc3QgTGludXggd2hvc2UgbWFpbgpwdXJwb3NlIGlzIHRvIHByb3Zp ZGUgYSBzcGVjaWFsIDY0LWJpdCBETUEgYWRkcmVzcyB3aGljaCBpcyBmb3JtZWQgYnkgdXNpbmcg dGhlIGdyYW50IHJlZmVyZW5jZSAoZm9yIGEgcGFnZQp0byBiZSBzaGFyZWQgd2l0aCB0aGUgYmFj a2VuZCkgd2l0aCBvZmZzZXQgYW5kIHNldHRpbmcgdGhlIGhpZ2hlc3QgYWRkcmVzcyBiaXQgKHRo aXMgaXMgZm9yIHRoZSBiYWNrZW5kIHRvCmJlIGFibGUgdG8gZGlzdGluZ3Vpc2ggZ3JhbnQgcmVm IGJhc2VkIERNQSBhZGRyZXNzIGZyb20gbm9ybWFsIEdQQSkuIEZvciB0aGlzIHRvIHdvcmsgd2Ug bmVlZCB0aGUgYWJpbGl0eQp0byBhbGxvY2F0ZSBjb250aWd1b3VzIChjb25zZWN1dGl2ZSkgZ3Jh bnQgcmVmZXJlbmNlcyBmb3IgbXVsdGktcGFnZSBhbGxvY2F0aW9ucy4gQW5kIHRoZSBiYWNrZW5k IHRoZW4gbmVlZHMKdG8gb2ZmZXIgVklSVElPX0ZfQUNDRVNTX1BMQVRGT1JNIGFuZCBWSVJUSU9f Rl9WRVJTSU9OXzEgZmVhdHVyZSBiaXRzIChpdCBtdXN0IHN1cHBvcnQgdmlydGlvLW1taW8gbW9k ZXJuCnRyYW5zcG9ydCBmb3IgNjQtYml0IGFkZHJlc3NlcyBpbiB0aGUgdmlydHF1ZXVlKS4KClhl bidzIGdyYW50IG1hcHBpbmcgbWVjaGFuaXNtIGlzIHRoZSBzZWN1cmUgYW5kIHNhZmUgc29sdXRp b24gdG8gc2hhcmUgcGFnZXMgYmV0d2VlbiBkb21haW5zIHdoaWNoIHByb3Zlbgp0byB3b3JrIGFu ZCB3b3JrcyBmb3IgeWVhcnMgKGluIHRoZSBjb250ZXh0IG9mIHRyYWRpdGlvbmFsIFhlbiBQViBk cml2ZXJzIGZvciBleGFtcGxlKS4gU28gZmFyLCB0aGUgZm9yZWlnbgptYXBwaW5nIGlzIHVzZWQg Zm9yIHRoZSB2aXJ0aW8gYmFja2VuZCB0byBtYXAgYW5kIGFjY2VzcyBndWVzdCBtZW1vcnkuIFdp dGggdGhlIGZvcmVpZ24gbWFwcGluZywgdGhlIGJhY2tlbmQKaXMgYWJsZSB0byBtYXAgYXJiaXRy YXJ5IHBhZ2VzIGZyb20gdGhlIGd1ZXN0IG1lbW9yeSAob3IgZXZlbiBmcm9tIERvbTAgbWVtb3J5 KS4gQW5kIGFzIHRoZSByZXN1bHQsIHRoZSBtYWxpY2lvdXMKYmFja2VuZCB3aGljaCBydW5zIGlu IGEgbm9uLXRydXN0ZWQgZG9tYWluIGNhbiB0YWtlIGFkdmFudGFnZSBvZiB0aGlzLiBJbnN0ZWFk LCB3aXRoIHRoZSBncmFudCBtYXBwaW5nCnRoZSBiYWNrZW5kIGlzIG9ubHkgYWxsb3dlZCB0byBt YXAgcGFnZXMgd2hpY2ggd2VyZSBleHBsaWNpdGx5IGdyYW50ZWQgYnkgdGhlIGd1ZXN0IGJlZm9y ZSBhbmQgbm90aGluZyBlbHNlLgpBY2NvcmRpbmcgdG8gdGhlIGRpc2N1c3Npb25zIGluIHZhcmlv dXMgbWFpbmxpbmUgdGhyZWFkcyB0aGlzIHNvbHV0aW9uIHdvdWxkIGxpa2VseSBiZSB3ZWxjb21l IGJlY2F1c2UgaXQKcGVyZmVjdGx5IGZpdHMgaW4gdGhlIHNlY3VyaXR5IG1vZGVsIFhlbiBwcm92 aWRlcy4KCldoYXQgaXMgbW9yZSwgdGhlIGdyYW50IHRhYmxlIGJhc2VkIHNvbHV0aW9uIHJlcXVp cmVzIHplcm8gY2hhbmdlcyB0byB0aGUgWGVuIGh5cGVydmlzb3IgaXRzZWxmIGF0IGxlYXN0Cndp dGggdmlydGlvLW1taW8gYW5kIERUIChpbiBjb21wYXJpc29uLCBmb3IgZXhhbXBsZSwgd2l0aCAi Zm9yZWlnbiBtYXBwaW5nICsgdmlydGlvLWlvbW11IiBzb2x1dGlvbiB3aGljaCB3b3VsZApyZXF1 aXJlIHRoZSB3aG9sZSBuZXcgY29tcGxleCBlbXVsYXRvciBpbiBoeXBlcnZpc29yIGluIGFkZGl0 aW9uIHRvIG5ldyBmdW5jdGlvbmFsaXR5L2h5cGVyY2FsbCB0byBwYXNzIElPVkEKZnJvbSB0aGUg dmlydGlvIGJhY2tlbmQgcnVubmluZyBlbHNld2hlcmUgdG8gdGhlIGh5cGVydmlzb3IgYW5kIHRy YW5zbGF0ZSBpdCB0byB0aGUgR1BBIGJlZm9yZSBtYXBwaW5nIGludG8KUDJNIG9yIGRlbnlpbmcg dGhlIGZvcmVpZ24gbWFwcGluZyByZXF1ZXN0IGlmIG5vIGNvcnJlc3BvbmRpbmcgSU9WQS1HUEEg bWFwcGluZyBwcmVzZW50IGluIHRoZSBJT01NVSBwYWdlIHRhYmxlCmZvciB0aGF0IHBhcnRpY3Vs YXIgZGV2aWNlKS4gV2Ugb25seSBuZWVkIHRvIHVwZGF0ZSB0b29sc3RhY2sgdG8gaW5zZXJ0IGEg bmV3ICJ4ZW4sZGV2LWRvbWlkIiBwcm9wZXJ0eSB0bwp0aGUgdmlydGlvLW1taW8gZGV2aWNlIG5v ZGUgd2hlbiBjcmVhdGluZyBhIGd1ZXN0IGRldmljZS10cmVlICh0aGlzIGlzIGFuIGluZGljYXRv ciBmb3IgdGhlIGd1ZXN0IHRvIHVzZSBncmFudHMKYW5kIHRoZSBJRCBvZiBYZW4gZG9tYWluIHdo ZXJlIHRoZSBjb3JyZXNwb25kaW5nIGJhY2tlbmQgcmVzaWRlcywgaXQgaXMgdXNlZCBhcyBhbiBh cmd1bWVudCB0byB0aGUgZ3JhbnQgbWFwcGluZwpBUElzKS4gSXQgd29ydGggbWVudGlvbmluZyB0 aGF0IHRvb2xzdGFjayBwYXRjaCBpcyBiYXNlZCBvbiBub24gdXBzdHJlYW1lZCB5ZXQg4oCcVmly dGlvIHN1cHBvcnQgZm9yIHRvb2xzdGFjawpvbiBBcm3igJ0gc2VyaWVzIHdoaWNoIGlzIG9uIHJl dmlldyBub3cgWzRdLgoKUGxlYXNlIG5vdGUgdGhlIGZvbGxvd2luZzoKLSBQYXRjaCBzZXJpZXMg b25seSBjb3ZlcnMgQXJtIGFuZCB2aXJ0aW8tbW1pbyAoZGV2aWNlLXRyZWUpIGZvciBub3cuIFRv IGVuYWJsZSB0aGUgcmVzdHJpY3RlZCBtZW1vcnkgYWNjZXNzCiAgZmVhdHVyZSBvbiBBcm0gdGhl IGZvbGxvd2luZyBvcHRpb24gc2hvdWxkIGJlIHNldDoKICBDT05GSUdfWEVOX1ZJUlRJTyA9IHkK LSBQYXRjaCBzZXJpZXMgaXMgYmFzZWQgb24gInBsYXRmb3JtX2hhcygpIiBwYXRjaCBzZXJpZXMg d2hpY2ggaXMgb24gcmV2aWV3IG5vdyBbNV0KLSBYZW4gc2hvdWxkIGJlIGJ1aWx0IHdpdGggdGhl IGZvbGxvd2luZyBvcHRpb25zOgogIENPTkZJR19JT1JFUV9TRVJWRVI9eQogIENPTkZJR19FWFBF UlQ9eQoKUGF0Y2ggc2VyaWVzIGlzIHJlYmFzZWQgb24gTGludXggNS4xOC1yYzQgdGFnIHdpdGgg InBsYXRmb3JtX2hhcygpIiBzZXJpZXMgYXBwbGllZCBhbmQgdGVzdGVkIG9uIFJlbmVzYXMKU2Fs dmF0b3ItWCBib2FyZCArIEgzIEVTMy4wIFNvQyAoQXJtNjQpIHdpdGggc3RhbmRhbG9uZSB1c2Vy c3BhY2UgKG5vbi1RZW11KSB2aXJ0aW8tbW1pbyBiYXNlZCB2aXJ0aW8tZGlzawpiYWNrZW5kIHJ1 bm5pbmcgaW4gRHJpdmVyIGRvbWFpbiBhbmQgTGludXggZ3Vlc3QgcnVubmluZyBvbiBleGlzdGlu ZyB2aXJ0aW8tYmxrIGRyaXZlciAoZnJvbnRlbmQpLgpObyBpc3N1ZXMgd2VyZSBvYnNlcnZlZC4g R3Vlc3QgZG9tYWluICdyZWJvb3QvZGVzdHJveScgdXNlLWNhc2VzIHdvcmsgcHJvcGVybHkuIEkg aGF2ZSBhbHNvIHRlc3RlZCBvdGhlcgp1c2UtY2FzZXMgc3VjaCBhcyBhc3NpZ25pbmcgc2V2ZXJh bCB2aXJ0aW8gYmxvY2sgZGV2aWNlcyBvciBhIG1peCBvZiB2aXJ0aW8gYW5kIFhlbiBQViBibG9j ayBkZXZpY2VzCnRvIHRoZSBndWVzdC4gUGF0Y2ggc2VyaWVzIHdhcyBidWlsZC10ZXN0ZWQgb24g QXJtMzIgYW5kIHg4Ni4KCjEuIFhlbiBjaGFuZ2VzIGxvY2F0ZWQgYXQgKGxhc3QgcGF0Y2gpOgpo dHRwczovL2dpdGh1Yi5jb20vb3R5c2hjaGVua28xL3hlbi9jb21taXRzL2xpYnhsX3ZpcnRpb19u ZXh0MQoyLiBMaW51eCBjaGFuZ2VzIGxvY2F0ZWQgYXQgKGxhc3QgNyBwYXRjaGVzKToKaHR0cHM6 Ly9naXRodWIuY29tL290eXNoY2hlbmtvMS9saW51eC9jb21taXRzL3ZpcnRpb19ncmFudDcKMy4g dmlydGlvLWRpc2sgY2hhbmdlcyBsb2NhdGVkIGF0OgpodHRwczovL2dpdGh1Yi5jb20vb3R5c2hj aGVua28xL3ZpcnRpby1kaXNrL2NvbW1pdHMvdmlydGlvX2dyYW50CgpBbnkgZmVlZGJhY2svaGVs cCB3b3VsZCBiZSBoaWdobHkgYXBwcmVjaWF0ZWQuCgpbMV0gaHR0cHM6Ly94ZW5iaXRzLnhlbnBy b2plY3Qub3JnL2RvY3MvNC4xNi10ZXN0aW5nL21pc2MvZ3JhbnQtdGFibGVzLnR4dApbMl0gaHR0 cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj1JcmxFZGFJVURQawpbM10gaHR0cHM6Ly9sb3Jl Lmtlcm5lbC5vcmcveGVuLWRldmVsLzE2NDk5NjM5NzMtMjI4NzktMS1naXQtc2VuZC1lbWFpbC1v bGVrc3R5c2hAZ21haWwuY29tLwogICAgaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcveGVuLWRldmVs LzE2NTA2NDYyNjMtMjIwNDctMS1naXQtc2VuZC1lbWFpbC1vbGVrc3R5c2hAZ21haWwuY29tLwpb NF0gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcveGVuLWRldmVsLzE2NTE1OTg3NjMtMTIxNjItMS1n aXQtc2VuZC1lbWFpbC1vbGVrc3R5c2hAZ21haWwuY29tLwpbNV0gaHR0cHM6Ly9sb3JlLmtlcm5l bC5vcmcveGVuLWRldmVsLzIwMjIwNTA0MTU1NzAzLjEzMzM2LTEtamdyb3NzQHN1c2UuY29tLwoK SnVlcmdlbiBHcm9zcyAoMyk6CiAgeGVuL2dyYW50czogc3VwcG9ydCBhbGxvY2F0aW5nIGNvbnNl Y3V0aXZlIGdyYW50cwogIHhlbi9ncmFudC1kbWEtb3BzOiBBZGQgb3B0aW9uIHRvIHJlc3RyaWN0 IG1lbW9yeSBhY2Nlc3MgdW5kZXIgWGVuCiAgeGVuL3ZpcnRpbzogRW5hYmxlIHJlc3RyaWN0ZWQg bWVtb3J5IGFjY2VzcyB1c2luZyBYZW4gZ3JhbnQgbWFwcGluZ3MKCk9sZWtzYW5kciBUeXNoY2hl bmtvICg0KToKICBhcm0veGVuOiBJbnRyb2R1Y2UgeGVuX3NldHVwX2RtYV9vcHMoKQogIGR0LWJp bmRpbmdzOiBBZGQgeGVuLGRldi1kb21pZCBwcm9wZXJ0eSBkZXNjcmlwdGlvbiBmb3IgeGVuLWdy YW50IERNQQogICAgb3BzCiAgeGVuL2dyYW50LWRtYS1vcHM6IFJldHJpZXZlIHRoZSBJRCBvZiBi YWNrZW5kJ3MgZG9tYWluIGZvciBEVCBkZXZpY2VzCiAgYXJtL3hlbjogQXNzaWduIHhlbi1ncmFu dCBETUEgb3BzIGZvciB4ZW4tZ3JhbnQgRE1BIGRldmljZXMKCiAuLi4vZGV2aWNldHJlZS9iaW5k aW5ncy9hcm0veGVuLGRldi1kb21pZC55YW1sICAgICB8ICAzNyArKysKIERvY3VtZW50YXRpb24v ZGV2aWNldHJlZS9iaW5kaW5ncy92aXJ0aW8vbW1pby55YW1sIHwgICA3ICsKIGFyY2gvYXJtL2lu Y2x1ZGUvYXNtL3hlbi94ZW4tb3BzLmggICAgICAgICAgICAgICAgIHwgICAyICsKIGFyY2gvYXJt L21tL2RtYS1tYXBwaW5nLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA3ICstCiBhcmNo L2FybS94ZW4vZW5saWdodGVuLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBh cmNoL2FybTY0L2luY2x1ZGUvYXNtL3hlbi94ZW4tb3BzLmggICAgICAgICAgICAgICB8ICAgMiAr CiBhcmNoL2FybTY0L21tL2RtYS1tYXBwaW5nLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAg NyArLQogYXJjaC94ODYveGVuL2VubGlnaHRlbl9odm0uYyAgICAgICAgICAgICAgICAgICAgICAg fCAgIDIgKwogYXJjaC94ODYveGVuL2VubGlnaHRlbl9wdi5jICAgICAgICAgICAgICAgICAgICAg ICAgfCAgIDIgKwogZHJpdmVycy94ZW4vS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMTUgKwogZHJpdmVycy94ZW4vTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKwogZHJpdmVycy94ZW4vZ3JhbnQtZG1hLW9wcy5jICAgICAgICAgICAg ICAgICAgICAgICAgfCAzMjQgKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL3hlbi9ncmFu dC10YWJsZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIzOCArKysrKysrKysrKysrLS0K IGluY2x1ZGUveGVuL2FybS94ZW4tb3BzLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE4 ICsrCiBpbmNsdWRlL3hlbi9ncmFudF90YWJsZS5oICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAgNCArCiBpbmNsdWRlL3hlbi94ZW4tb3BzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAxMyArCiBpbmNsdWRlL3hlbi94ZW4uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgOCArCiAxNyBmaWxlcyBjaGFuZ2VkLCA2NDcgaW5zZXJ0aW9ucygrKSwgNDIgZGVs ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2Jp bmRpbmdzL2FybS94ZW4sZGV2LWRvbWlkLnlhbWwKIGNyZWF0ZSBtb2RlIDEwMDY0NCBhcmNoL2Fy bS9pbmNsdWRlL2FzbS94ZW4veGVuLW9wcy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgYXJjaC9hcm02 NC9pbmNsdWRlL2FzbS94ZW4veGVuLW9wcy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy94 ZW4vZ3JhbnQtZG1hLW9wcy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS94ZW4vYXJtL3hl bi1vcHMuaAoKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5l bEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=