From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4C65BA04EF for ; Mon, 25 May 2020 05:09:00 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3BB6A1D69D; Mon, 25 May 2020 05:09:00 +0200 (CEST) Received: from mail-pg1-f193.google.com (mail-pg1-f193.google.com [209.85.215.193]) by dpdk.org (Postfix) with ESMTP id A58E21D6A4 for ; Mon, 25 May 2020 05:08:57 +0200 (CEST) Received: by mail-pg1-f193.google.com with SMTP id c75so8089716pga.3 for ; Sun, 24 May 2020 20:08:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-language:content-transfer-encoding; bh=aKiyFh5D8EPaeLGOn5NeZXGBCvtSvd5NEDNv1iwb598=; b=jbceeB0MUHrSr3DPfRgUMJeiBGkMkiIIr5USM4CS/QquMTRCeHbbr2bXGIuXHIUWFS jEijpmq+chF5j6KUPD0rKPVIyKzqbKddhofwv9FgHxiekKFCNfmHkVVNWLjifwRqwuMJ VLHSOaeMuij1iB77JiZHG9MCV6XSWqkzNIOsCH1gFCONQ0G78UiHpMimPlKt9vqYUZUb hq4avok8jkuBVVNBllaWVKJZwnBu1lIBvwf2NbaQJNs9qUrnOqMTdzBl4g7ZKHZN1B+V YZSXOtUSB/tnARBz7eRifB2g7BbIT34XGAK+IYKi3fJGKwOapReOO9QficwDt58aonKI lnnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=aKiyFh5D8EPaeLGOn5NeZXGBCvtSvd5NEDNv1iwb598=; b=FvYnjbWMKPO233/zCdjcDvBvNC5LIrE40L2XAUGmoHPcWJV6RQJOxS/3TH7poxXSD8 DxftVk5Sv+km24MnSur1d48Yy7riSlzrpDNcohf4j/QC0dKFnFWhRSod/ooGf8OHsxbm iHhwtEyrIcCH2Q2AMiRQHJGAkHNiUGojLbF1EQ65+cDV4UG6tPPsk9tYANRHPJg2JELg +uUWdGlcTBzjPHBhbYIeMHqs4LplY+Y8xXlvq0Jq4z7e1cL6PikMa7e3VbQ5NjghL6df EOvfasd0KhDJGH0/4JltOIJAhyGOiOLSL70Yr5j54DzMA0IQJ00nDIotjK0gdFhpYw5a FJ7w== X-Gm-Message-State: AOAM530UV/hkU7quJXEJbEsTQLFeqIPzyewOCLYx67qYKa6p7K8KUYvH UWxsu88Vz4oN9jqB7RFxcNxN4u0Q X-Google-Smtp-Source: ABdhPJziEHG967FJTUax2/qN8NhCs/Z7xe2djKCmf/hNUGJcRzdsNGYisb0et6clod5A0BM3QyElfw== X-Received: by 2002:a63:6605:: with SMTP id a5mr16757312pgc.50.1590376136485; Sun, 24 May 2020 20:08:56 -0700 (PDT) Received: from mugwort.local ([192.47.164.146]) by smtp.gmail.com with ESMTPSA id q5sm11845536pfl.199.2020.05.24.20.08.55 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 24 May 2020 20:08:56 -0700 (PDT) To: Itsuro Oda , spp@dpdk.org References: <20200412230210.28685-1-oda@valinux.co.jp> <20200510234339.28011-1-oda@valinux.co.jp> From: Yasufumi Ogawa Message-ID: Date: Mon, 25 May 2020 12:08:53 +0900 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: <20200510234339.28011-1-oda@valinux.co.jp> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [spp] [PATCH v2] docs: add document of vdev_test tool X-BeenThere: spp@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Soft Patch Panel List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: spp-bounces@dpdk.org Sender: "spp" > This patch adds a document of vdev_test tool. Acked-by: Yasufumi Ogawa > > Signed-off-by: Itsuro Oda > --- > v2: > * remove a blank line at EOF > > .../vdev_test/vdev_test_example_pipe.svg | 611 ++++++++++++++++++ > .../vdev_test/vdev_test_example_vhost.svg | 564 ++++++++++++++++ > docs/guides/tools/index.rst | 1 + > docs/guides/tools/vdev_test.rst | 85 +++ > 4 files changed, 1261 insertions(+) > create mode 100644 docs/guides/images/tools/vdev_test/vdev_test_example_pipe.svg > create mode 100644 docs/guides/images/tools/vdev_test/vdev_test_example_vhost.svg > create mode 100644 docs/guides/tools/vdev_test.rst > > diff --git a/docs/guides/images/tools/vdev_test/vdev_test_example_pipe.svg b/docs/guides/images/tools/vdev_test/vdev_test_example_pipe.svg > new file mode 100644 > index 0000000..72f5919 > --- /dev/null > +++ b/docs/guides/images/tools/vdev_test/vdev_test_example_pipe.svg > @@ -0,0 +1,611 @@ > + > + > + > + + xmlns:dc="http://purl.org/dc/elements/1.1/" > + xmlns:cc="http://creativecommons.org/ns#" > + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > + xmlns:svg="http://www.w3.org/2000/svg" > + xmlns="http://www.w3.org/2000/svg" > + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" > + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" > + width="152.58044mm" > + height="117.89329mm" > + viewBox="0 0 540.63939 417.73222" > + id="svg2" > + version="1.1" > + inkscape:version="0.92.4 (5da689c313, 2019-01-14)" > + sodipodi:docname="vdev_test_example_pipe.svg"> > + + id="defs4"> > + + inkscape:stockid="Arrow1Lstart" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow1Lstart" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path6666" > + d="M 0,0 5,-5 -12.5,0 5,5 Z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" > + transform="matrix(0.8,0,0,0.8,10,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="marker6505" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path6503" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker4627" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend" > + inkscape:collect="always"> > + + inkscape:connector-curvature="0" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path4629" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="marker4479" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4481" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="marker1450" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path1448" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow2Lend" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4411" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5907" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5909" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5813" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5815" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5725" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5727" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5643" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5645" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5567" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5569" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5421" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5423" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5137" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5139" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5091" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5093" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5051" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5053" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5017" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5019" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker4989" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path4991" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow1Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow1Lend" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4462" > + d="M 0,0 5,-5 -12.5,0 5,5 Z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" > + transform="matrix(-0.8,0,0,-0.8,-10,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5567-3" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5569-6" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow2Lend-7" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4411-5" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker4627-1" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + inkscape:connector-curvature="0" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path4629-2" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5091-0" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5093-6" > + inkscape:connector-curvature="0" /> > + > + > + + id="base" > + pagecolor="#ffffff" > + bordercolor="#666666" > + borderopacity="1.0" > + inkscape:pageopacity="0.0" > + inkscape:pageshadow="2" > + inkscape:zoom="0.7" > + inkscape:cx="421.5718" > + inkscape:cy="86.005928" > + inkscape:document-units="px" > + inkscape:current-layer="layer5" > + showgrid="false" > + inkscape:window-width="1643" > + inkscape:window-height="854" > + inkscape:window-x="167" > + inkscape:window-y="74" > + inkscape:window-maximized="0" > + units="mm" > + width="230mm" > + fit-margin-top="0" > + fit-margin-left="0" > + fit-margin-right="0" > + fit-margin-bottom="0" > + inkscape:snap-global="true" > + inkscape:snap-bbox="true" > + inkscape:snap-nodes="true" > + inkscape:snap-others="false" > + inkscape:bbox-paths="true" > + inkscape:snap-intersection-paths="false" > + inkscape:object-nodes="false" > + inkscape:object-paths="true" > + inkscape:lockguides="true" /> > + + id="metadata7"> > + > + + rdf:about=""> > + image/svg+xml > + + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> > + > + > + > + > + + inkscape:label="Host" > + inkscape:groupmode="layer" > + id="layer1" > + transform="translate(-10.358874,-474.54075)" > + style="display:inline"> > + + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.48551643;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4136" > + width="539.15393" > + height="380.94302" > + x="11.101632" > + y="475.28351" /> > + > + + inkscape:groupmode="layer" > + id="layer7" > + inkscape:label="Host-Resource" > + style="display:inline" > + transform="translate(-10.358874,-474.54075)"> > + + style="opacity:1;fill:#cbffce;fill-opacity:1;stroke:#000000;stroke-width:0.78720933;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="path4297" > + cx="273.89044" > + cy="724.98724" > + rx="39.606403" > + ry="19.606396" /> > + + style="opacity:1;fill:#cbffce;fill-opacity:1;stroke:#000000;stroke-width:0.74310595;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="path4301" > + cx="273.89044" > + cy="666.16315" > + rx="39.628456" > + ry="18.699877" /> > + > + + inkscape:groupmode="layer" > + id="layer3" > + inkscape:label="Container" > + style="display:inline" > + transform="translate(-10.358874,-474.54075)"> > + + style="opacity:1;fill:#ffff6e;fill-opacity:1;stroke:#000000;stroke-width:0.88022333;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4391" > + width="89.119804" > + height="29.11978" > + x="119.70796" > + y="599.95844" /> > + + style="fill:none;stroke:#000000;stroke-width:1.03222072px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 311.77952,662.6264 44.12544,-0.80843" > + id="path7074" > + inkscape:connector-curvature="0" /> > + > + + inkscape:groupmode="layer" > + id="layer5" > + inkscape:label="App" > + transform="translate(-10.358874,-474.54075)" > + style="display:inline"> > + + style="opacity:1;fill:#ffffd3;fill-opacity:1;stroke:#000000;stroke-width:0.9541887;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4223" > + width="163.33151" > + height="39.045811" > + x="87.209244" > + y="562.58478" > + ry="19.522905" /> > + + style="fill:none;stroke:#000000;stroke-width:1.10747123px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker4627)" > + d="M 140.0893,722.99672 V 633.28751" > + id="path162" > + inkscape:connector-curvature="0" /> > + + style="display:inline;opacity:1;fill:#ffff6e;fill-opacity:1;stroke:#000000;stroke-width:0.88022333;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4391-6" > + width="89.119804" > + height="29.11978" > + x="337.61874" > + y="599.95844" /> > + + style="display:inline;opacity:1;fill:#ffffd3;fill-opacity:1;stroke:#000000;stroke-width:0.9541887;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4223-6" > + width="163.3315" > + height="39.045807" > + x="301.37003" > + y="562.58484" > + ry="19.522903" /> > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="384.5358" > + y="588.19415" > + id="text4225-6"> + sodipodi:role="line" > + id="tspan4227-0" > + x="384.5358" > + y="588.19415" > + style="font-size:22.50000381px;line-height:1.25;stroke-width:0.99999994px">vdev_test > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="381.96436" > + y="620.48944" > + id="text4407-8"> + sodipodi:role="line" > + x="381.96436" > + y="620.48944" > + id="tspan4411-7" > + style="font-size:22.50000381px;line-height:1.25;stroke-width:0.99999994px">pipe:1 > + + xml:space="preserve" > + id="flowRoot6464" > + style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"> + id="flowRegion6466"> + id="rect6468" > + width="187.14285" > + height="97.14286" > + x="722.85712" > + y="131.09111" /> + id="flowPara6470" /> + style="fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 193.82777,631.047 0.36869,31.583" > + id="path6472" > + inkscape:connector-curvature="0" /> > + + style="display:inline;fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart)" > + d="m 355.53003,630.23137 0.36869,31.583" > + id="path6472-0" > + inkscape:connector-curvature="0" /> > + + style="fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 194.19646,662.63 41.20492,0.09" > + id="path1432" > + inkscape:connector-curvature="0" /> > + + style="fill:none;stroke:#000000;stroke-width:0.80901474px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 140.2696,723.5229 c 93.75001,0 93.75001,0 93.75001,0" > + id="path8467" > + inkscape:connector-curvature="0" /> > + + style="display:inline;fill:none;stroke:#000000;stroke-width:0.80901468px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 313.03748,722.98723 c 93.75001,0 93.75001,0 93.75001,0" > + id="path8467-2" > + inkscape:connector-curvature="0" /> > + + style="fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="M 406.78749,722.98723 V 629.07821" > + id="path8486" > + inkscape:connector-curvature="0" /> > + > + + inkscape:groupmode="layer" > + id="layer4" > + inkscape:label="Label" > + style="display:inline" > + transform="translate(-10.358874,-474.54075)"> > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="170.37502" > + y="588.05133" > + id="text4225"> + sodipodi:role="line" > + id="tspan4227" > + x="170.37502" > + y="588.05133" > + style="font-size:22.50000572px;line-height:1.25">vdev_test > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="45.571438" > + y="506.36221" > + id="text4327"> + sodipodi:role="line" > + id="tspan4329" > + x="45.571438" > + y="506.36221" > + style="font-size:22.50000572px;line-height:1.25">host > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="273.62674" > + y="730.41583" > + id="text4351"> + sodipodi:role="line" > + id="tspan4353" > + x="273.62674" > + y="730.41583" > + style="font-size:22.50000572px;line-height:1.25">ring:0 > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="274.08267" > + y="671.30603" > + id="text4359"> + sodipodi:role="line" > + id="tspan4361" > + x="274.08267" > + y="671.30603" > + style="font-size:22.50000572px;line-height:1.25">ring:1 > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="167.80359" > + y="620.5993" > + id="text4407"> + sodipodi:role="line" > + x="167.80359" > + y="620.5993" > + id="tspan4411" > + style="font-size:22.50000572px;line-height:1.25">pipe:0 > + > + > diff --git a/docs/guides/images/tools/vdev_test/vdev_test_example_vhost.svg b/docs/guides/images/tools/vdev_test/vdev_test_example_vhost.svg > new file mode 100644 > index 0000000..924e7bf > --- /dev/null > +++ b/docs/guides/images/tools/vdev_test/vdev_test_example_vhost.svg > @@ -0,0 +1,564 @@ > + > + > + > + + xmlns:dc="http://purl.org/dc/elements/1.1/" > + xmlns:cc="http://creativecommons.org/ns#" > + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > + xmlns:svg="http://www.w3.org/2000/svg" > + xmlns="http://www.w3.org/2000/svg" > + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" > + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" > + width="152.58044mm" > + height="117.89329mm" > + viewBox="0 0 540.63939 417.73222" > + id="svg2" > + version="1.1" > + inkscape:version="0.92.4 (5da689c313, 2019-01-14)" > + sodipodi:docname="vdev_test_example_vhost.svg"> > + + id="defs4"> > + + inkscape:stockid="Arrow1Lstart" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow1Lstart" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path6666" > + d="M 0,0 5,-5 -12.5,0 5,5 Z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" > + transform="matrix(0.8,0,0,0.8,10,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="marker6505" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path6503" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker4627" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend" > + inkscape:collect="always"> > + + inkscape:connector-curvature="0" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path4629" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="marker4479" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4481" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="marker1450" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path1448" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow2Lend" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4411" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5907" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5909" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5813" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5815" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5725" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5727" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5643" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5645" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5567" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5569" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5421" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5423" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5137" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5139" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5091" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5093" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5051" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5053" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5017" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5019" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker4989" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path4991" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow1Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow1Lend" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4462" > + d="M 0,0 5,-5 -12.5,0 5,5 Z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" > + transform="matrix(-0.8,0,0,-0.8,-10,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5567-3" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5569-6" > + inkscape:connector-curvature="0" /> > + > + + inkscape:stockid="Arrow2Lend" > + orient="auto" > + refY="0" > + refX="0" > + id="Arrow2Lend-7" > + style="overflow:visible" > + inkscape:isstock="true"> > + + id="path4411-5" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + inkscape:connector-curvature="0" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker4627-1" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + inkscape:connector-curvature="0" > + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path4629-2" /> > + > + + inkscape:isstock="true" > + style="overflow:visible" > + id="marker5091-0" > + refX="0" > + refY="0" > + orient="auto" > + inkscape:stockid="Arrow2Lend"> > + + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" > + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" > + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" > + id="path5093-6" > + inkscape:connector-curvature="0" /> > + > + > + + id="base" > + pagecolor="#ffffff" > + bordercolor="#666666" > + borderopacity="1.0" > + inkscape:pageopacity="0.0" > + inkscape:pageshadow="2" > + inkscape:zoom="0.7" > + inkscape:cx="183.00037" > + inkscape:cy="86.005928" > + inkscape:document-units="px" > + inkscape:current-layer="layer5" > + showgrid="false" > + inkscape:window-width="1643" > + inkscape:window-height="854" > + inkscape:window-x="167" > + inkscape:window-y="74" > + inkscape:window-maximized="0" > + units="mm" > + width="230mm" > + fit-margin-top="0" > + fit-margin-left="0" > + fit-margin-right="0" > + fit-margin-bottom="0" > + inkscape:snap-global="true" > + inkscape:snap-bbox="true" > + inkscape:snap-nodes="true" > + inkscape:snap-others="false" > + inkscape:bbox-paths="true" > + inkscape:snap-intersection-paths="false" > + inkscape:object-nodes="false" > + inkscape:object-paths="true" > + inkscape:lockguides="true" /> > + + id="metadata7"> > + > + + rdf:about=""> > + image/svg+xml > + + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> > + > + > + > + > + + inkscape:label="Host" > + inkscape:groupmode="layer" > + id="layer1" > + transform="translate(-10.358874,-474.54075)" > + style="display:inline"> > + + style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.48551643;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4136" > + width="539.15393" > + height="380.94302" > + x="11.101632" > + y="475.28351" /> > + > + + inkscape:groupmode="layer" > + id="layer7" > + inkscape:label="Host-Resource" > + style="display:inline" > + transform="translate(-10.358874,-474.54075)" /> > + + inkscape:groupmode="layer" > + id="layer3" > + inkscape:label="Container" > + style="display:inline" > + transform="translate(-10.358874,-474.54075)"> > + + style="opacity:1;fill:#ffff6e;fill-opacity:1;stroke:#000000;stroke-width:1.05093229;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4391" > + width="127.7884" > + height="28.949072" > + x="105.06117" > + y="600.04376" /> > + > + + inkscape:groupmode="layer" > + id="layer5" > + inkscape:label="App" > + transform="translate(-10.358874,-474.54075)" > + style="display:inline"> > + + style="opacity:1;fill:#ffffd3;fill-opacity:1;stroke:#000000;stroke-width:0.9541887;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4223" > + width="163.33151" > + height="39.045811" > + x="87.209244" > + y="562.58478" > + ry="19.522905" /> > + + style="fill:none;stroke:#000000;stroke-width:1.10747123px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker4627)" > + d="M 140.0893,722.99672 V 633.28751" > + id="path162" > + inkscape:connector-curvature="0" /> > + + style="display:inline;opacity:1;fill:#ffff6e;fill-opacity:1;stroke:#000000;stroke-width:1.09829414;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4391-6" > + width="139.79459" > + height="28.901709" > + x="314.95993" > + y="600.0675" /> > + + style="display:inline;opacity:1;fill:#ffffd3;fill-opacity:1;stroke:#000000;stroke-width:0.9541887;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" > + id="rect4223-6" > + width="163.3315" > + height="39.045807" > + x="301.37003" > + y="562.58484" > + ry="19.522903" /> > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="384.5358" > + y="588.19415" > + id="text4225-6"> + sodipodi:role="line" > + id="tspan4227-0" > + x="384.5358" > + y="588.19415" > + style="font-size:22.50000381px;line-height:1.25;stroke-width:0.99999994px">vdev_test > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="383.83936" > + y="620.48944" > + id="text4407-8"> + sodipodi:role="line" > + x="383.83936" > + y="620.48944" > + id="tspan4411-7" > + style="font-size:22.50000381px;line-height:1.25;stroke-width:0.99999994px">virtio_user0 > + + xml:space="preserve" > + id="flowRoot6464" > + style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"> + id="flowRegion6466"> + id="rect6468" > + width="187.14285" > + height="97.14286" > + x="722.85712" > + y="131.09111" /> + id="flowPara6470" /> + style="fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 193.82777,631.047 0.36869,31.583" > + id="path6472" > + inkscape:connector-curvature="0" /> > + + style="display:inline;fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Lstart)" > + d="m 353.65503,630.23137 0.36869,31.583" > + id="path6472-0" > + inkscape:connector-curvature="0" /> > + + style="fill:none;stroke:#000000;stroke-width:1.81228518px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 194.15811,662.63183 160.47807,0.0864" > + id="path1432" > + inkscape:connector-curvature="0" /> > + + style="fill:none;stroke:#000000;stroke-width:1.36748445px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="m 140.2696,723.5229 c 267.85717,0 267.85717,0 267.85717,0" > + id="path8467" > + inkscape:connector-curvature="0" /> > + + style="fill:none;stroke:#000000;stroke-width:0.93750012px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + d="M 406.78749,722.98723 V 629.07821" > + id="path8486" > + inkscape:connector-curvature="0" /> > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="167.47279" > + y="621.73688" > + id="text4407-8-2"> + sodipodi:role="line" > + x="167.47279" > + y="621.73688" > + id="tspan4411-7-7" > + style="font-size:22.50000191px;line-height:1.25;stroke-width:0.99999994px">eth_vhost0 > + > + + inkscape:groupmode="layer" > + id="layer4" > + inkscape:label="Label" > + style="display:inline" > + transform="translate(-10.358874,-474.54075)"> > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="170.37502" > + y="588.05133" > + id="text4225"> + sodipodi:role="line" > + id="tspan4227" > + x="170.37502" > + y="588.05133" > + style="font-size:22.50000572px;line-height:1.25">vdev_test > + + xml:space="preserve" > + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';text-align:center;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" > + x="45.571438" > + y="506.36221" > + id="text4327"> + sodipodi:role="line" > + id="tspan4329" > + x="45.571438" > + y="506.36221" > + style="font-size:22.50000572px;line-height:1.25">host > + > + > diff --git a/docs/guides/tools/index.rst b/docs/guides/tools/index.rst > index c739d79..495b9a8 100644 > --- a/docs/guides/tools/index.rst > +++ b/docs/guides/tools/index.rst > @@ -12,3 +12,4 @@ Tools > > sppc/index > helpers/index > + vdev_test.rst > diff --git a/docs/guides/tools/vdev_test.rst b/docs/guides/tools/vdev_test.rst > new file mode 100644 > index 0000000..90a2647 > --- /dev/null > +++ b/docs/guides/tools/vdev_test.rst > @@ -0,0 +1,85 @@ > +.. SPDX-License-Identifier: BSD-3-Clause > + Copyright(c) 2020 Nippon Telegraph and Telephone Corporation > + > +.. _spp_tools_vdev_test: > + > +Vdev_test > +========= > + > +Vdev_test is a simple application that it forwards packets received > +from rx queue to tx queue on the main core. It can become a secondary > +process of the spp_primary. It is mainly used for testing spp_pipe > +but it can be used to test any virtual Ethernet devices as well. > + > +Usage > +----- > + > +.. code-block:: none > + > + vdev_test [EAL options] -- [--send] [--create devargs] device-name > + > +Vdev_test runs foreground and stops when Ctrl-C is pressed. If ``--send`` > +option specified a packet is sent first. The virtual Ethernet device can > +be created to specify ``--create`` option. > + > +.. note:: > + > + Since the device can be created by EAL ``--vdev`` option for a > + primary process, ``--create`` option mainly used by a secondary > + process. > + > +Examples > +-------- > + > +Examining spp_pipe > +~~~~~~~~~~~~~~~~~~ > + > +.. _figure_vdev_test_example_pipe: > + > +.. figure:: ../images/tools/vdev_test/vdev_test_example_pipe.* > + :width: 50% > + > +It is assumed that pipe ports were created beforehand. First run vdev_test > +without ``--send`` option. > + > +.. code-block:: console > + > + # terminal 1 > + $ sudo vdev_test -l 8 -n 4 --proc-type secondary -- spp_pipe0 > + > +Then run vdev_test with ``--send`` option on another terminal. > + > +.. code-block:: console > + > + # terminal 2 > + $ sudo vdev_test -l 9 -n 4 --proc-type secondary -- --send spp_pipe1 > + > +Press Ctrl-C to stop processes on both terminals after for a while. > + > +Examining vhost > +~~~~~~~~~~~~~~~ > + > +.. _figure_vdev_test_example_vhost: > + > +.. figure:: ../images/tools/vdev_test/vdev_test_example_vhost.* > + :width: 50% > + > +This example is independent of SPP. First run vdev_test using eth_vhost0 > +without ``--send`` option. > + > +.. code-block:: console > + > + # terminal 1 > + $ sudo vdev_test -l 8 -n 4 --vdev eht_vhost0,iface=/tmp/sock0,client=1 \ > + --file-prefix=app1 -- eth_vhost0 > + > +Then run vdev_test using virtio_user0 with ``--send`` option on another > +terminal. > + > +.. code-block:: console > + > + # terminal 1 > + $ sudo vdev_test -l 9 -n 4 --vdev virtio_user0,path=/tmp/sock0,server=1 \ > + --file-prefix=app2 --single-file-segments -- --send virtio_user0 > + > +Press Ctrl-C to stop processes on both terminals after for a while. >