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 4280DA0350 for ; Mon, 11 May 2020 04:54:39 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 15CFB1C10B; Mon, 11 May 2020 04:54:39 +0200 (CEST) Received: from dish-sg.nttdocomo.co.jp (dish-sg.nttdocomo.co.jp [202.19.227.74]) by dpdk.org (Postfix) with ESMTP id A97331C10B for ; Mon, 11 May 2020 04:54:33 +0200 (CEST) X-dD-Source: Outbound Received: from zssg-mailmd103.ddreams.local (zssg-mailmd900.ddreams.local [10.160.172.63]) by zssg-mailou101.ddreams.local (Postfix) with ESMTP id 6498D120141; Mon, 11 May 2020 11:54:32 +0900 (JST) Received: from t131sg-mailcc11.ddreams.local (t131sg-mailcc11.ddreams.local [100.66.31.86]) by zssg-mailmd103.ddreams.local (dDREAMS) with ESMTP id <0QA500IERC2W7R50@dDREAMS>; Mon, 11 May 2020 11:54:32 +0900 (JST) Received: from t131sg-mailcc11 (localhost [127.0.0.1]) by t131sg-mailcc11.ddreams.local (unknown) with SMTP id 04B2sW89029661; Mon, 11 May 2020 11:54:32 +0900 Received: from zssg-mailmf101.ddreams.local (unknown [127.0.0.1]) by zssg-mailmf101.ddreams.local (Postfix) with ESMTP id 91E827E6034; Mon, 11 May 2020 11:53:18 +0900 (JST) Received: from zssg-mailmf101.ddreams.local (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 906818E6058; Mon, 11 May 2020 11:53:18 +0900 (JST) Received: from localhost (unknown [127.0.0.1]) by IMSVA (Postfix) with SMTP id 854118E605B; Mon, 11 May 2020 11:53:18 +0900 (JST) X-IMSS-HAND-OFF-DIRECTIVE: localhost:10026 Received: from zssg-mailmf101.ddreams.local (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4883E8E6054; Mon, 11 May 2020 11:53:18 +0900 (JST) Received: from zssg-mailua101.ddreams.local (unknown [10.160.172.62]) by zssg-mailmf101.ddreams.local (Postfix) with ESMTP; Mon, 11 May 2020 11:53:18 +0900 (JST) Received: from [10.87.198.18] (unknown [10.160.183.129]) by zssg-mailua101.ddreams.local (dDREAMS) with ESMTPA id <0QA5012NZC0OOOA0@dDREAMS>; Mon, 11 May 2020 11:53:12 +0900 (JST) Date: Mon, 11 May 2020 11:53:11 +0900 From: Hideyuki Yamashita In-reply-to: <20200510234339.28011-1-oda@valinux.co.jp> References: <20200412230210.28685-1-oda@valinux.co.jp> <20200510234339.28011-1-oda@valinux.co.jp> Message-id: <20200511115311.3800.17218CA3@ntt-tx.co.jp_1> MIME-version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit X-Mailer: Becky! ver. 2.74.02 [ja] X-TM-AS-GCONF: 00 To: Itsuro Oda Cc: spp@dpdk.org, ferruh.yigit@intel.com, yasufum.o@gmail.com Subject: Re: [spp] (x-fn-spp-ml 744) [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" Reviewed-by: Hideyuki Yamashita > This patch adds a document of vdev_test tool. > > 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. > -- > 2.17.0