DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide
@ 2017-10-12 13:45 Mark Kavanagh
  2017-10-12 15:28 ` Mcnamara, John
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Mark Kavanagh @ 2017-10-12 13:45 UTC (permalink / raw)
  To: dev
  Cc: jiayu.hu, jianfeng.tan, konstantin.ananyev, ferruh.yigit, thomas,
	Mark Kavanagh

Correct two minor issues in the GSO programmer's guide:
- a note is rendered incorrectly in the middle of an unordered list;
  this results in the remainder of the list appearing inside the note.
  Move note to end of the list to resolve same.
- two minor visual artifacts are present in the 'three-part-output-segment'
  diagram. Remove same.

Fixes: f6010c7 ("doc: add GSO programmer's guide")

Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
---
 .../generic_segmentation_offload_lib.rst           |  18 ++--
 doc/guides/prog_guide/img/gso-three-seg-mbuf.svg   | 116 ++++++++++-----------
 2 files changed, 68 insertions(+), 66 deletions(-)

diff --git a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
index 5e78f16..1c5a048 100644
--- a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
+++ b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
@@ -195,14 +195,8 @@ To segment an outgoing packet, an application must:
      used to store the GSO segments' packet headers.
 
    - a pointer to the mbuf pool for allocating indirect buffers, which are
-     used to locate GSO segments' packet payloads.
-
-.. note::
-
-     An application may use the same pool for both direct and indirect
-     buffers. However, since each indirect mbuf simply stores a pointer, the
-     application may reduce its memory consumption by creating a separate memory
-     pool, containing smaller elements, for the indirect pool.
+     used to locate GSO segments' packet payloads. See note_ below for
+     additional details regarding this mempool.
 
    - the size of each output segment, including packet headers and payload,
      measured in bytes.
@@ -219,6 +213,14 @@ To segment an outgoing packet, an application must:
    - a flag, that indicates whether the IPv4 headers of output segments should
      contain fixed or incremental ID values.
 
+.. _note:
+.. note::
+
+     An application may use the same pool for both direct and indirect
+     buffers. However, since indirect mbufs simply store a pointer, the
+     application may reduce its memory consumption by creating a separate memory
+     pool, containing smaller elements, for the indirect pool.
+
 2. Set the appropriate ol_flags in the mbuf.
 
    - The GSO library use the value of an mbuf's ``ol_flags`` attribute to
diff --git a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
index f18a327..0431012 100644
--- a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
+++ b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf.svg Page-1 -->
+<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf_new.svg Page-1 -->
 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
-		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="21.8589in" height="9.63966in"
-		viewBox="0 0 1573.84 694.055" xml:space="preserve" color-interpolation-filters="sRGB" class="st23">
+		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="25.5895in" height="9.63966in"
+		viewBox="0 0 1842.44 694.055" xml:space="preserve" color-interpolation-filters="sRGB" class="st23">
 	<title>GSO three-part output segment</title>
 	<v:documentProperties v:langID="1033" v:metric="true" v:viewMarkup="false"/>
 
@@ -132,7 +132,7 @@
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="87.5716" cy="673.065" width="175.15" height="41.9798"/>
 			<path d="M175.14 652.08 L0 652.08 L0 694.06 L175.14 694.06 L175.14 652.08" class="st8"/>
-			<text x="37" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
+			<text x="22.61" y="680.57" class="st9" v:langID="1033"><v:paragraph/><v:tabList/>Payload 1</text>		</g>
 		<g id="shape15-27" v:mID="15" v:groupContext="shape" transform="translate(2.2377,-522.82)">
 			<title>Sheet.15</title>
 			<path d="M0 597.01 L0 694.06 L154.68 694.06 L154.68 597.01 L0 597.01 L0 597.01 Z" class="st4"/>
@@ -178,21 +178,14 @@
 			<v:textRect cx="97.4929" cy="673.065" width="194.99" height="41.9798"/>
 			<path d="M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08" class="st8"/>
 			<text x="16.99" y="683.56" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
-		<g id="shape35-54" v:mID="35" v:groupContext="shape" transform="translate(1199.29,-21.1708)">
+		<g id="shape35-54" v:mID="35" v:groupContext="shape" transform="translate(1190.48,-32.2189)">
 			<title>Sheet.35</title>
 			<desc>Logical output segment</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="164.662" cy="678.273" width="329.33" height="31.5648"/>
 			<path d="M329.32 662.49 L0 662.49 L0 694.06 L329.32 694.06 L329.32 662.49" class="st8"/>
-			<text x="24.69" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Logical output segment</text>		</g>
-		<g id="shape38-58" v:mID="38" v:groupContext="shape" transform="translate(1204.65,-254.446)">
-			<title>Sheet.38</title>
-			<desc>Three-part output segment</desc>
-			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
-			<v:textRect cx="181.707" cy="678.273" width="363.42" height="31.5648"/>
-			<path d="M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49" class="st8"/>
-			<text x="19.51" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Three-part output segment</text>		</g>
-		<g id="shape39-62" v:mID="39" v:groupContext="shape" transform="translate(546.25,-529.921)">
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Logical output segment</text>		</g>
+		<g id="shape39-58" v:mID="39" v:groupContext="shape" transform="translate(546.25,-529.921)">
 			<title>Sheet.39</title>
 			<path d="M3.43 529.94 L3.46 543.61 L0.03 543.61 L0 529.94 L3.43 529.94 L3.43 529.94 ZM3.46 553.87 L3.46 557.29 L0.03
 						 557.29 L0.03 553.87 L3.46 553.87 L3.46 553.87 ZM3.46 567.55 L3.46 581.22 L0.03 581.22 L0.03 567.55 L3.46
@@ -202,7 +195,7 @@
 						 642.77 L3.46 642.77 ZM3.46 666.7 L3.46 670.12 L0.03 670.12 L0.03 666.7 L3.46 666.7 L3.46 666.7 ZM3.46 680.38
 						 L3.46 694.06 L0.03 694.06 L0.03 680.38 L3.46 680.38 L3.46 680.38 Z" class="st1"/>
 		</g>
-		<g id="shape40-64" v:mID="40" v:groupContext="shape" transform="translate(549.097,-223.749)">
+		<g id="shape40-60" v:mID="40" v:groupContext="shape" transform="translate(549.097,-223.749)">
 			<title>Sheet.40</title>
 			<path d="M6.65 402.61 L13.01 414.71 L9.98 416.32 L3.62 404.22 L6.65 402.61 L6.65 402.61 ZM17.82 423.78 L19.4 426.81 L16.37
 						 428.42 L14.79 425.39 L17.82 423.78 L17.82 423.78 ZM24.21 435.91 L30.57 448.01 L27.54 449.59 L21.18 437.49
@@ -221,59 +214,59 @@
 						 L155.17 691.66 L158.2 690.04 L158.2 690.04 ZM0.33 408.43 L0 393.7 L11.99 402.28 L0.33 408.43 L0.33 408.43
 						 Z" class="st1"/>
 		</g>
-		<g id="shape46-66" v:mID="46" v:groupContext="shape" transform="translate(66.8445,-221.499)">
+		<g id="shape46-62" v:mID="46" v:groupContext="shape" transform="translate(66.8445,-221.499)">
 			<title>Sheet.46</title>
 			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86
 						 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87
 						 Z" class="st4"/>
 		</g>
-		<g id="shape47-68" v:mID="47" v:groupContext="shape" transform="translate(66.8445,-221.499)">
+		<g id="shape47-64" v:mID="47" v:groupContext="shape" transform="translate(66.8445,-221.499)">
 			<title>Sheet.47</title>
 			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86
 						 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape48-70" v:mID="48" v:groupContext="shape" transform="translate(113.27,-263.667)">
+		<g id="shape48-66" v:mID="48" v:groupContext="shape" transform="translate(113.27,-263.667)">
 			<title>Sheet.48</title>
 			<desc>Direct mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="98.5041" cy="675.59" width="197.01" height="36.9302"/>
 			<path d="M197.01 657.13 L0 657.13 L0 694.06 L197.01 694.06 L197.01 657.13" class="st8"/>
 			<text x="18.66" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Direct mbuf</text>		</g>
-		<g id="shape51-74" v:mID="51" v:groupContext="shape" transform="translate(85.817,-233.439)">
+		<g id="shape51-70" v:mID="51" v:groupContext="shape" transform="translate(85.817,-233.439)">
 			<title>Sheet.51</title>
 			<desc>(copy of headers)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="127.916" cy="678.273" width="255.84" height="31.5648"/>
 			<path d="M255.83 662.49 L0 662.49 L0 694.06 L255.83 694.06 L255.83 662.49" class="st8"/>
 			<text x="34.33" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(copy of headers)</text>		</g>
-		<g id="shape53-78" v:mID="53" v:groupContext="shape" transform="translate(371.944,-275.998)">
+		<g id="shape53-74" v:mID="53" v:groupContext="shape" transform="translate(371.944,-275.998)">
 			<title>Sheet.53</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="7.56" y="686.16" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape54-82" v:mID="54" v:groupContext="shape" transform="translate(695.132,-646.04)">
+		<g id="shape54-78" v:mID="54" v:groupContext="shape" transform="translate(695.132,-646.04)">
 			<title>Sheet.54</title>
 			<path d="M0 655.39 L0 694.06 L100.4 694.06 L100.4 655.39 L0 655.39 L0 655.39 Z" class="st16"/>
 		</g>
-		<g id="shape55-84" v:mID="55" v:groupContext="shape" transform="translate(709.033,-648.946)">
+		<g id="shape55-80" v:mID="55" v:groupContext="shape" transform="translate(709.033,-648.946)">
 			<title>Sheet.55</title>
 			<desc>segsz</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="36.6265" cy="680.167" width="73.26" height="27.7775"/>
 			<path d="M73.25 666.28 L0 666.28 L0 694.06 L73.25 694.06 L73.25 666.28" class="st8"/>
 			<text x="7.6" y="687.11" class="st17" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>segsz</text>		</g>
-		<g id="shape56-88" v:mID="56" v:groupContext="shape" transform="translate(785.874,-521.182)">
+		<g id="shape56-84" v:mID="56" v:groupContext="shape" transform="translate(785.874,-521.182)">
 			<title>Sheet.56</title>
 			<path d="M0 597.27 L0 694.06 L363.41 694.06 L363.41 597.27 L0 597.27 L0 597.27 Z" class="st6"/>
 		</g>
-		<g id="shape57-90" v:mID="57" v:groupContext="shape" transform="translate(785.874,-521.182)">
+		<g id="shape57-86" v:mID="57" v:groupContext="shape" transform="translate(785.874,-521.182)">
 			<title>Sheet.57</title>
 			<path d="M0 597.27 L363.41 597.27 L363.41 694.06 L0 694.06 L0 597.27" class="st7"/>
 		</g>
-		<g id="shape58-93" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(943.158,-529.889)">
+		<g id="shape58-89" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(943.158,-529.889)">
 			<title>Sheet.58</title>
 			<path d="M1.35 529.91 L1.25 543.58 L4.68 543.61 L4.78 529.94 L1.35 529.91 L1.35 529.91 ZM1.15 553.84 L1.12 557.26 L4.55
 						 557.29 L4.58 553.87 L1.15 553.84 L1.15 553.84 ZM1.05 567.52 L0.92 581.19 L4.35 581.22 L4.48 567.55 L1.05
@@ -283,61 +276,61 @@
 						 642.74 L0.43 642.74 ZM0.23 666.67 L0.2 670.09 L3.62 670.12 L3.66 666.7 L0.23 666.67 L0.23 666.67 ZM0.13
 						 680.35 L0 694.02 L3.43 694.06 L3.56 680.38 L0.13 680.35 L0.13 680.35 Z" class="st18"/>
 		</g>
-		<g id="shape59-95" v:mID="59" v:groupContext="shape" transform="translate(785.874,-549.473)">
+		<g id="shape59-91" v:mID="59" v:groupContext="shape" transform="translate(785.874,-549.473)">
 			<title>Sheet.59</title>
 			<desc>Payload 1</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="77.3395" cy="673.065" width="154.68" height="41.9798"/>
 			<path d="M154.68 652.08 L0 652.08 L0 694.06 L154.68 694.06 L154.68 652.08" class="st8"/>
-			<text x="26.77" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
-		<g id="shape60-99" v:mID="60" v:groupContext="shape" transform="translate(952.97,-548.822)">
+			<text x="16.96" y="680.57" class="st9" v:langID="1033"><v:paragraph/><v:tabList/>Payload 1</text>		</g>
+		<g id="shape60-95" v:mID="60" v:groupContext="shape" transform="translate(952.97,-548.822)">
 			<title>Sheet.60</title>
 			<desc>Payload 2</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="97.4929" cy="673.065" width="194.99" height="41.9798"/>
 			<path d="M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08" class="st8"/>
 			<text x="46.92" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 2</text>		</g>
-		<g id="shape63-103" v:mID="63" v:groupContext="shape" transform="translate(1210.43,-551.684)">
+		<g id="shape63-99" v:mID="63" v:groupContext="shape" transform="translate(1190.48,-552.568)">
 			<title>Sheet.63</title>
 			<desc>Multi-segment input packet</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="181.707" cy="678.273" width="363.42" height="31.5648"/>
 			<path d="M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49" class="st8"/>
-			<text x="17.75" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Multi-segment input packet</text>		</g>
-		<g id="shape70-107" v:mID="70" v:groupContext="shape" v:layerMember="1" transform="translate(455.049,-221.499)">
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Multi-segment input packet</text>		</g>
+		<g id="shape70-103" v:mID="70" v:groupContext="shape" v:layerMember="1" transform="translate(455.049,-221.499)">
 			<title>Sheet.70</title>
 			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
 						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st6"/>
 		</g>
-		<g id="shape71-109" v:mID="71" v:groupContext="shape" transform="translate(455.049,-221.499)">
+		<g id="shape71-105" v:mID="71" v:groupContext="shape" transform="translate(455.049,-221.499)">
 			<title>Sheet.71</title>
-			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44
-						 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87
+			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
+						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape72-111" v:mID="72" v:groupContext="shape" transform="translate(489.065,-263.434)">
+		<g id="shape72-107" v:mID="72" v:groupContext="shape" transform="translate(489.065,-263.434)">
 			<title>Sheet.72</title>
 			<desc>Indirect mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="112.128" cy="675.59" width="224.26" height="36.9302"/>
 			<path d="M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13" class="st8"/>
 			<text x="20.73" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Indirect mbuf</text>		</g>
-		<g id="shape75-115" v:mID="75" v:groupContext="shape" transform="translate(849.065,-281.435)">
+		<g id="shape75-111" v:mID="75" v:groupContext="shape" transform="translate(849.065,-281.435)">
 			<title>Sheet.75</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="4.49" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
-		<g id="shape77-119" v:mID="77" v:groupContext="shape" transform="translate(717.742,-563.523)">
+		<g id="shape77-115" v:mID="77" v:groupContext="shape" transform="translate(717.742,-563.523)">
 			<title>Sheet.77</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="15.71" y="683.67" class="st19" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape78-123" v:mID="78" v:groupContext="shape" transform="translate(1148.17,-529.067)">
+		<g id="shape78-119" v:mID="78" v:groupContext="shape" transform="translate(1148.17,-529.067)">
 			<title>Sheet.78</title>
 			<path d="M1.38 529.87 L1.25 543.55 L4.68 543.61 L4.81 529.94 L1.38 529.87 L1.38 529.87 ZM1.19 553.81 L1.12 557.23 L4.55
 						 557.29 L4.61 553.87 L1.19 553.81 L1.19 553.81 ZM1.05 567.48 L0.92 581.16 L4.35 581.22 L4.48 567.55 L1.05
@@ -347,7 +340,7 @@
 						 642.7 L0.46 642.7 ZM0.26 666.64 L0.2 670.06 L3.62 670.12 L3.69 666.7 L0.26 666.64 L0.26 666.64 ZM0.13 680.31
 						 L0 693.99 L3.43 694.06 L3.56 680.38 L0.13 680.31 L0.13 680.31 Z" class="st20"/>
 		</g>
-		<g id="shape79-125" v:mID="79" v:groupContext="shape" transform="translate(946.254,-657.81)">
+		<g id="shape79-121" v:mID="79" v:groupContext="shape" transform="translate(946.254,-657.81)">
 			<title>Sheet.79</title>
 			<path d="M11 686.69 L17.33 686.69 L17.33 688.27 L11 688.27 L11 686.69 L11 686.69 ZM22.07 686.69 L23.65 686.69 L23.65
 						 688.27 L22.07 688.27 L22.07 686.69 L22.07 686.69 ZM28.39 686.69 L34.72 686.69 L34.72 688.27 L28.39 688.27
@@ -369,109 +362,116 @@
 						 686.69 ZM13.18 694.06 L0 687.41 L13.18 680.9 L13.18 694.06 L13.18 694.06 ZM187.22 680.9 L200.4 687.48 L187.22
 						 694.06 L187.22 680.9 L187.22 680.9 Z" class="st20"/>
 		</g>
-		<g id="shape80-127" v:mID="80" v:groupContext="shape" transform="translate(982.882,-643.673)">
+		<g id="shape80-123" v:mID="80" v:groupContext="shape" transform="translate(982.882,-643.673)">
 			<title>Sheet.80</title>
 			<path d="M0 655.13 L0 694.06 L127.01 694.06 L127.01 655.13 L0 655.13 L0 655.13 Z" class="st16"/>
 		</g>
-		<g id="shape81-129" v:mID="81" v:groupContext="shape" transform="translate(1003.39,-660.621)">
+		<g id="shape81-125" v:mID="81" v:groupContext="shape" transform="translate(1003.39,-660.621)">
 			<title>Sheet.81</title>
 			<desc>pkt_len</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="48.6041" cy="680.956" width="97.21" height="26.1994"/>
 			<path d="M97.21 667.86 L0 667.86 L0 694.06 L97.21 694.06 L97.21 667.86" class="st8"/>
 			<text x="11.67" y="687.5" class="st21" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>pkt_len  </text>		</g>
-		<g id="shape82-133" v:mID="82" v:groupContext="shape" transform="translate(1001.18,-634.321)">
+		<g id="shape82-129" v:mID="82" v:groupContext="shape" transform="translate(1001.18,-634.321)">
 			<title>Sheet.82</title>
 			<desc>% segsz</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="49.2945" cy="680.956" width="98.59" height="26.1994"/>
 			<path d="M98.59 667.86 L0 667.86 L0 694.06 L98.59 694.06 L98.59 667.86" class="st8"/>
 			<text x="9.09" y="687.5" class="st21" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>% segsz</text>		</g>
-		<g id="shape34-137" v:mID="34" v:groupContext="shape" v:layerMember="0" transform="translate(356.703,-264.106)">
+		<g id="shape34-133" v:mID="34" v:groupContext="shape" v:layerMember="0" transform="translate(356.703,-264.106)">
 			<title>Sheet.34</title>
 			<path d="M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06
 						 L89.36 680.9 L89.36 680.9 Z" class="st2"/>
 		</g>
-		<g id="shape85-139" v:mID="85" v:groupContext="shape" v:layerMember="0" transform="translate(78.5359,-282.66)">
+		<g id="shape85-135" v:mID="85" v:groupContext="shape" v:layerMember="0" transform="translate(78.5359,-282.66)">
 			<title>Sheet.85</title>
 			<path d="M0 680.87 C-0 673.59 6.88 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.88 694.06 0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape87-141" v:mID="87" v:groupContext="shape" v:layerMember="0" transform="translate(85.4791,-284.062)">
+		<g id="shape87-137" v:mID="87" v:groupContext="shape" v:layerMember="0" transform="translate(85.4791,-284.062)">
 			<title>Sheet.87</title>
 			<desc>1</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>1</text>		</g>
-		<g id="shape88-145" v:mID="88" v:groupContext="shape" v:layerMember="0" transform="translate(468.906,-282.66)">
+		<g id="shape88-141" v:mID="88" v:groupContext="shape" v:layerMember="0" transform="translate(468.906,-282.66)">
 			<title>Sheet.88</title>
 			<path d="M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape90-147" v:mID="90" v:groupContext="shape" v:layerMember="0" transform="translate(474.575,-284.062)">
+		<g id="shape90-143" v:mID="90" v:groupContext="shape" v:layerMember="0" transform="translate(474.575,-284.062)">
 			<title>Sheet.90</title>
 			<desc>2</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>2</text>		</g>
-		<g id="shape95-151" v:mID="95" v:groupContext="shape" v:layerMember="0" transform="translate(764.026,-275.998)">
+		<g id="shape95-147" v:mID="95" v:groupContext="shape" v:layerMember="0" transform="translate(764.026,-275.998)">
 			<title>Sheet.95</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="7.56" y="686.16" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape97-155" v:mID="97" v:groupContext="shape" v:layerMember="0" transform="translate(889.755,-220.915)">
+		<g id="shape97-151" v:mID="97" v:groupContext="shape" v:layerMember="0" transform="translate(844.524,-219.79)">
 			<title>Sheet.97</title>
-			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44
-						 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87
+			<path d="M0 611.87 C0 602.79 5.45 595.43 12.17 595.43 L289.54 595.43 C296.31 595.43 301.71 602.79 301.71 611.87 L301.71
+						 677.62 C301.71 686.76 296.31 694.06 289.54 694.06 L12.17 694.06 C5.45 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape100-157" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(751.857,-262.528)">
+		<g id="shape100-153" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(751.857,-262.528)">
 			<title>Sheet.100</title>
 			<path d="M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06
 						 L89.36 680.9 L89.36 680.9 Z" class="st2"/>
 		</g>
-		<g id="shape104-159" v:mID="104" v:groupContext="shape" v:layerMember="1" transform="translate(851.429,-218.08)">
+		<g id="shape104-155" v:mID="104" v:groupContext="shape" v:layerMember="1" transform="translate(851.429,-218.08)">
 			<title>Sheet.104</title>
 			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
 						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st6"/>
 		</g>
-		<g id="shape105-161" v:mID="105" v:groupContext="shape" v:layerMember="0" transform="translate(885.444,-260.015)">
+		<g id="shape105-157" v:mID="105" v:groupContext="shape" v:layerMember="0" transform="translate(885.444,-260.015)">
 			<title>Sheet.105</title>
 			<desc>Indirect mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="112.128" cy="675.59" width="224.26" height="36.9302"/>
 			<path d="M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13" class="st8"/>
 			<text x="20.73" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Indirect mbuf</text>		</g>
-		<g id="shape106-165" v:mID="106" v:groupContext="shape" v:layerMember="0" transform="translate(895.672,-229.419)">
+		<g id="shape106-161" v:mID="106" v:groupContext="shape" v:layerMember="0" transform="translate(895.672,-229.419)">
 			<title>Sheet.106</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="12.86" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
-		<g id="shape107-169" v:mID="107" v:groupContext="shape" v:layerMember="0" transform="translate(863.297,-280.442)">
+		<g id="shape107-165" v:mID="107" v:groupContext="shape" v:layerMember="0" transform="translate(863.297,-280.442)">
 			<title>Sheet.107</title>
 			<path d="M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape108-171" v:mID="108" v:groupContext="shape" v:layerMember="0" transform="translate(870.001,-281.547)">
+		<g id="shape108-167" v:mID="108" v:groupContext="shape" v:layerMember="0" transform="translate(870.001,-281.547)">
 			<title>Sheet.108</title>
 			<desc>3</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>3</text>		</g>
-		<g id="shape109-175" v:mID="109" v:groupContext="shape" v:layerMember="0" transform="translate(500.959,-231.87)">
+		<g id="shape109-171" v:mID="109" v:groupContext="shape" v:layerMember="0" transform="translate(500.959,-231.87)">
 			<title>Sheet.109</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="12.86" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
+		<g id="shape113-175" v:mID="113" v:groupContext="shape" v:layerMember="0" transform="translate(1187.64,-251.712)">
+			<title>Sheet.113</title>
+			<desc>Three-part output segment</desc>
+			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
+			<v:textRect cx="327.402" cy="678.273" width="654.81" height="31.5648"/>
+			<path d="M654.8 662.49 L0 662.49 L0 694.06 L654.8 694.06 L654.8 662.49" class="st8"/>
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Three-part output segment</text>		</g>
 	</g>
 </svg>
-- 
1.9.3

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide
  2017-10-12 13:45 [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide Mark Kavanagh
@ 2017-10-12 15:28 ` Mcnamara, John
  2017-10-12 15:56   ` Kavanagh, Mark B
  2017-10-12 15:59 ` [dpdk-dev] [PATCH V2] " Mark Kavanagh
  2017-10-12 16:05 ` [dpdk-dev] [PATCH V3] " Mark Kavanagh
  2 siblings, 1 reply; 6+ messages in thread
From: Mcnamara, John @ 2017-10-12 15:28 UTC (permalink / raw)
  To: Kavanagh, Mark B, dev
  Cc: Hu, Jiayu, Tan, Jianfeng, Ananyev, Konstantin, Yigit, Ferruh,
	thomas, Kavanagh, Mark B



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Mark Kavanagh
> Sent: Thursday, October 12, 2017 2:46 PM
> To: dev@dpdk.org
> Cc: Hu, Jiayu <jiayu.hu@intel.com>; Tan, Jianfeng
> <jianfeng.tan@intel.com>; Ananyev, Konstantin
> <konstantin.ananyev@intel.com>; Yigit, Ferruh <ferruh.yigit@intel.com>;
> thomas@monjalon.net; Kavanagh, Mark B <mark.b.kavanagh@intel.com>
> Subject: [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide
> 
> Correct two minor issues in the GSO programmer's guide:
> - a note is rendered incorrectly in the middle of an unordered list;
>   this results in the remainder of the list appearing inside the note.
>   Move note to end of the list to resolve same.
> - two minor visual artifacts are present in the 'three-part-output-
> segment'
>   diagram. Remove same.
> 
> Fixes: f6010c7 ("doc: add GSO programmer's guide")
> 
> Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>



> +.. _note:
> +.. note::
> +
> +     An application may use the same pool for both direct and indirect
> +     buffers. However, since indirect mbufs simply store a pointer, the

Hi Mark,

The _note target should be more specific since the these targets are used
across all the documentation. So something like _gso_note would be better.
Or alternatively leave out the target and just say something in the text
like "See the note below.", without the link, since the note is quite close
to the referring text.

Also, the note isn't indented to the level of the bullet point. I don't know
if that is intentional or not but I would say there should be an additional
3 spaces indentation from ..note:: to the end of the note.

With or without these changes:

Acked-by: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide
  2017-10-12 15:28 ` Mcnamara, John
@ 2017-10-12 15:56   ` Kavanagh, Mark B
  0 siblings, 0 replies; 6+ messages in thread
From: Kavanagh, Mark B @ 2017-10-12 15:56 UTC (permalink / raw)
  To: Mcnamara, John, dev
  Cc: Hu, Jiayu, Tan, Jianfeng, Ananyev, Konstantin, Yigit, Ferruh, thomas

>From: Mcnamara, John
>Sent: Thursday, October 12, 2017 4:29 PM
>To: Kavanagh, Mark B <mark.b.kavanagh@intel.com>; dev@dpdk.org
>Cc: Hu, Jiayu <jiayu.hu@intel.com>; Tan, Jianfeng <jianfeng.tan@intel.com>;
>Ananyev, Konstantin <konstantin.ananyev@intel.com>; Yigit, Ferruh
><ferruh.yigit@intel.com>; thomas@monjalon.net; Kavanagh, Mark B
><mark.b.kavanagh@intel.com>
>Subject: RE: [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide
>
>
>
>> -----Original Message-----
>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Mark Kavanagh
>> Sent: Thursday, October 12, 2017 2:46 PM
>> To: dev@dpdk.org
>> Cc: Hu, Jiayu <jiayu.hu@intel.com>; Tan, Jianfeng
>> <jianfeng.tan@intel.com>; Ananyev, Konstantin
>> <konstantin.ananyev@intel.com>; Yigit, Ferruh <ferruh.yigit@intel.com>;
>> thomas@monjalon.net; Kavanagh, Mark B <mark.b.kavanagh@intel.com>
>> Subject: [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide
>>
>> Correct two minor issues in the GSO programmer's guide:
>> - a note is rendered incorrectly in the middle of an unordered list;
>>   this results in the remainder of the list appearing inside the note.
>>   Move note to end of the list to resolve same.
>> - two minor visual artifacts are present in the 'three-part-output-
>> segment'
>>   diagram. Remove same.
>>
>> Fixes: f6010c7 ("doc: add GSO programmer's guide")
>>
>> Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
>
>
>
>> +.. _note:
>> +.. note::
>> +
>> +     An application may use the same pool for both direct and indirect
>> +     buffers. However, since indirect mbufs simply store a pointer, the
>
>Hi Mark,

Hey John,

Thanks for the feedback - responses inline.

I'll post v2 now, and carry forward your Ack.

Cheers,
Mark 

>
>The _note target should be more specific since the these targets are used
>across all the documentation. So something like _gso_note would be better.
>Or alternatively leave out the target and just say something in the text
>like "See the note below.", without the link, since the note is quite close
>to the referring text.

I've moved the note back to its original position, but corrected the indentation, so this target can be removed.

>
>Also, the note isn't indented to the level of the bullet point. I don't know
>if that is intentional or not but I would say there should be an additional
>3 spaces indentation from ..note:: to the end of the note.

As above (the syntax highlighting of my editor shows indented 'note' tags as incorrect, which is why indentation was incorrect in the first place!).

>
>With or without these changes:
>
>Acked-by: John McNamara <john.mcnamara@intel.com>
>
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [dpdk-dev] [PATCH V2] doc: minor fixes for GSO prog_guide
  2017-10-12 13:45 [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide Mark Kavanagh
  2017-10-12 15:28 ` Mcnamara, John
@ 2017-10-12 15:59 ` Mark Kavanagh
  2017-10-12 16:05 ` [dpdk-dev] [PATCH V3] " Mark Kavanagh
  2 siblings, 0 replies; 6+ messages in thread
From: Mark Kavanagh @ 2017-10-12 15:59 UTC (permalink / raw)
  To: dev
  Cc: jiayu.hu, jianfeng.tan, konstantin.ananyev, ferruh.yigit, thomas,
	Mark Kavanagh

Correct two minor issues in the GSO programmer's guide:
- a note is rendered incorrectly in the middle of an unordered list;
  this results in the remainder of the list appearing inside the note.
  Correct indentation of the note to resolve same.
- two minor visual artifacts are present in the 'three-part-output-segment'
  diagram. Remove same.

Fixes: f6010c7 ("doc: add GSO programmer's guide")

Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
---

v2:
- Move note back to original position.
- Remove link to note, as it is no longer needed.
- Correct note's indentation, inline with text.


 .../generic_segmentation_offload_lib.rst           |  18 ++--
 doc/guides/prog_guide/img/gso-three-seg-mbuf.svg   | 116 ++++++++++-----------
 2 files changed, 68 insertions(+), 66 deletions(-)

diff --git a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
index 5e78f16..1c5a048 100644
--- a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
+++ b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
@@ -195,14 +195,8 @@ To segment an outgoing packet, an application must:
      used to store the GSO segments' packet headers.
 
    - a pointer to the mbuf pool for allocating indirect buffers, which are
-     used to locate GSO segments' packet payloads.
-
-.. note::
-
-     An application may use the same pool for both direct and indirect
-     buffers. However, since each indirect mbuf simply stores a pointer, the
-     application may reduce its memory consumption by creating a separate memory
-     pool, containing smaller elements, for the indirect pool.
+     used to locate GSO segments' packet payloads. See note_ below for
+     additional details regarding this mempool.
 
    - the size of each output segment, including packet headers and payload,
      measured in bytes.
@@ -219,6 +213,14 @@ To segment an outgoing packet, an application must:
    - a flag, that indicates whether the IPv4 headers of output segments should
      contain fixed or incremental ID values.
 
+.. _note:
+.. note::
+
+     An application may use the same pool for both direct and indirect
+     buffers. However, since indirect mbufs simply store a pointer, the
+     application may reduce its memory consumption by creating a separate memory
+     pool, containing smaller elements, for the indirect pool.
+
 2. Set the appropriate ol_flags in the mbuf.
 
    - The GSO library use the value of an mbuf's ``ol_flags`` attribute to
diff --git a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
index f18a327..0431012 100644
--- a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
+++ b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf.svg Page-1 -->
+<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf_new.svg Page-1 -->
 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
-		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="21.8589in" height="9.63966in"
-		viewBox="0 0 1573.84 694.055" xml:space="preserve" color-interpolation-filters="sRGB" class="st23">
+		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="25.5895in" height="9.63966in"
+		viewBox="0 0 1842.44 694.055" xml:space="preserve" color-interpolation-filters="sRGB" class="st23">
 	<title>GSO three-part output segment</title>
 	<v:documentProperties v:langID="1033" v:metric="true" v:viewMarkup="false"/>
 
@@ -132,7 +132,7 @@
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="87.5716" cy="673.065" width="175.15" height="41.9798"/>
 			<path d="M175.14 652.08 L0 652.08 L0 694.06 L175.14 694.06 L175.14 652.08" class="st8"/>
-			<text x="37" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
+			<text x="22.61" y="680.57" class="st9" v:langID="1033"><v:paragraph/><v:tabList/>Payload 1</text>		</g>
 		<g id="shape15-27" v:mID="15" v:groupContext="shape" transform="translate(2.2377,-522.82)">
 			<title>Sheet.15</title>
 			<path d="M0 597.01 L0 694.06 L154.68 694.06 L154.68 597.01 L0 597.01 L0 597.01 Z" class="st4"/>
@@ -178,21 +178,14 @@
 			<v:textRect cx="97.4929" cy="673.065" width="194.99" height="41.9798"/>
 			<path d="M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08" class="st8"/>
 			<text x="16.99" y="683.56" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
-		<g id="shape35-54" v:mID="35" v:groupContext="shape" transform="translate(1199.29,-21.1708)">
+		<g id="shape35-54" v:mID="35" v:groupContext="shape" transform="translate(1190.48,-32.2189)">
 			<title>Sheet.35</title>
 			<desc>Logical output segment</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="164.662" cy="678.273" width="329.33" height="31.5648"/>
 			<path d="M329.32 662.49 L0 662.49 L0 694.06 L329.32 694.06 L329.32 662.49" class="st8"/>
-			<text x="24.69" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Logical output segment</text>		</g>
-		<g id="shape38-58" v:mID="38" v:groupContext="shape" transform="translate(1204.65,-254.446)">
-			<title>Sheet.38</title>
-			<desc>Three-part output segment</desc>
-			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
-			<v:textRect cx="181.707" cy="678.273" width="363.42" height="31.5648"/>
-			<path d="M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49" class="st8"/>
-			<text x="19.51" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Three-part output segment</text>		</g>
-		<g id="shape39-62" v:mID="39" v:groupContext="shape" transform="translate(546.25,-529.921)">
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Logical output segment</text>		</g>
+		<g id="shape39-58" v:mID="39" v:groupContext="shape" transform="translate(546.25,-529.921)">
 			<title>Sheet.39</title>
 			<path d="M3.43 529.94 L3.46 543.61 L0.03 543.61 L0 529.94 L3.43 529.94 L3.43 529.94 ZM3.46 553.87 L3.46 557.29 L0.03
 						 557.29 L0.03 553.87 L3.46 553.87 L3.46 553.87 ZM3.46 567.55 L3.46 581.22 L0.03 581.22 L0.03 567.55 L3.46
@@ -202,7 +195,7 @@
 						 642.77 L3.46 642.77 ZM3.46 666.7 L3.46 670.12 L0.03 670.12 L0.03 666.7 L3.46 666.7 L3.46 666.7 ZM3.46 680.38
 						 L3.46 694.06 L0.03 694.06 L0.03 680.38 L3.46 680.38 L3.46 680.38 Z" class="st1"/>
 		</g>
-		<g id="shape40-64" v:mID="40" v:groupContext="shape" transform="translate(549.097,-223.749)">
+		<g id="shape40-60" v:mID="40" v:groupContext="shape" transform="translate(549.097,-223.749)">
 			<title>Sheet.40</title>
 			<path d="M6.65 402.61 L13.01 414.71 L9.98 416.32 L3.62 404.22 L6.65 402.61 L6.65 402.61 ZM17.82 423.78 L19.4 426.81 L16.37
 						 428.42 L14.79 425.39 L17.82 423.78 L17.82 423.78 ZM24.21 435.91 L30.57 448.01 L27.54 449.59 L21.18 437.49
@@ -221,59 +214,59 @@
 						 L155.17 691.66 L158.2 690.04 L158.2 690.04 ZM0.33 408.43 L0 393.7 L11.99 402.28 L0.33 408.43 L0.33 408.43
 						 Z" class="st1"/>
 		</g>
-		<g id="shape46-66" v:mID="46" v:groupContext="shape" transform="translate(66.8445,-221.499)">
+		<g id="shape46-62" v:mID="46" v:groupContext="shape" transform="translate(66.8445,-221.499)">
 			<title>Sheet.46</title>
 			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86
 						 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87
 						 Z" class="st4"/>
 		</g>
-		<g id="shape47-68" v:mID="47" v:groupContext="shape" transform="translate(66.8445,-221.499)">
+		<g id="shape47-64" v:mID="47" v:groupContext="shape" transform="translate(66.8445,-221.499)">
 			<title>Sheet.47</title>
 			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86
 						 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape48-70" v:mID="48" v:groupContext="shape" transform="translate(113.27,-263.667)">
+		<g id="shape48-66" v:mID="48" v:groupContext="shape" transform="translate(113.27,-263.667)">
 			<title>Sheet.48</title>
 			<desc>Direct mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="98.5041" cy="675.59" width="197.01" height="36.9302"/>
 			<path d="M197.01 657.13 L0 657.13 L0 694.06 L197.01 694.06 L197.01 657.13" class="st8"/>
 			<text x="18.66" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Direct mbuf</text>		</g>
-		<g id="shape51-74" v:mID="51" v:groupContext="shape" transform="translate(85.817,-233.439)">
+		<g id="shape51-70" v:mID="51" v:groupContext="shape" transform="translate(85.817,-233.439)">
 			<title>Sheet.51</title>
 			<desc>(copy of headers)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="127.916" cy="678.273" width="255.84" height="31.5648"/>
 			<path d="M255.83 662.49 L0 662.49 L0 694.06 L255.83 694.06 L255.83 662.49" class="st8"/>
 			<text x="34.33" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(copy of headers)</text>		</g>
-		<g id="shape53-78" v:mID="53" v:groupContext="shape" transform="translate(371.944,-275.998)">
+		<g id="shape53-74" v:mID="53" v:groupContext="shape" transform="translate(371.944,-275.998)">
 			<title>Sheet.53</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="7.56" y="686.16" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape54-82" v:mID="54" v:groupContext="shape" transform="translate(695.132,-646.04)">
+		<g id="shape54-78" v:mID="54" v:groupContext="shape" transform="translate(695.132,-646.04)">
 			<title>Sheet.54</title>
 			<path d="M0 655.39 L0 694.06 L100.4 694.06 L100.4 655.39 L0 655.39 L0 655.39 Z" class="st16"/>
 		</g>
-		<g id="shape55-84" v:mID="55" v:groupContext="shape" transform="translate(709.033,-648.946)">
+		<g id="shape55-80" v:mID="55" v:groupContext="shape" transform="translate(709.033,-648.946)">
 			<title>Sheet.55</title>
 			<desc>segsz</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="36.6265" cy="680.167" width="73.26" height="27.7775"/>
 			<path d="M73.25 666.28 L0 666.28 L0 694.06 L73.25 694.06 L73.25 666.28" class="st8"/>
 			<text x="7.6" y="687.11" class="st17" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>segsz</text>		</g>
-		<g id="shape56-88" v:mID="56" v:groupContext="shape" transform="translate(785.874,-521.182)">
+		<g id="shape56-84" v:mID="56" v:groupContext="shape" transform="translate(785.874,-521.182)">
 			<title>Sheet.56</title>
 			<path d="M0 597.27 L0 694.06 L363.41 694.06 L363.41 597.27 L0 597.27 L0 597.27 Z" class="st6"/>
 		</g>
-		<g id="shape57-90" v:mID="57" v:groupContext="shape" transform="translate(785.874,-521.182)">
+		<g id="shape57-86" v:mID="57" v:groupContext="shape" transform="translate(785.874,-521.182)">
 			<title>Sheet.57</title>
 			<path d="M0 597.27 L363.41 597.27 L363.41 694.06 L0 694.06 L0 597.27" class="st7"/>
 		</g>
-		<g id="shape58-93" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(943.158,-529.889)">
+		<g id="shape58-89" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(943.158,-529.889)">
 			<title>Sheet.58</title>
 			<path d="M1.35 529.91 L1.25 543.58 L4.68 543.61 L4.78 529.94 L1.35 529.91 L1.35 529.91 ZM1.15 553.84 L1.12 557.26 L4.55
 						 557.29 L4.58 553.87 L1.15 553.84 L1.15 553.84 ZM1.05 567.52 L0.92 581.19 L4.35 581.22 L4.48 567.55 L1.05
@@ -283,61 +276,61 @@
 						 642.74 L0.43 642.74 ZM0.23 666.67 L0.2 670.09 L3.62 670.12 L3.66 666.7 L0.23 666.67 L0.23 666.67 ZM0.13
 						 680.35 L0 694.02 L3.43 694.06 L3.56 680.38 L0.13 680.35 L0.13 680.35 Z" class="st18"/>
 		</g>
-		<g id="shape59-95" v:mID="59" v:groupContext="shape" transform="translate(785.874,-549.473)">
+		<g id="shape59-91" v:mID="59" v:groupContext="shape" transform="translate(785.874,-549.473)">
 			<title>Sheet.59</title>
 			<desc>Payload 1</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="77.3395" cy="673.065" width="154.68" height="41.9798"/>
 			<path d="M154.68 652.08 L0 652.08 L0 694.06 L154.68 694.06 L154.68 652.08" class="st8"/>
-			<text x="26.77" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
-		<g id="shape60-99" v:mID="60" v:groupContext="shape" transform="translate(952.97,-548.822)">
+			<text x="16.96" y="680.57" class="st9" v:langID="1033"><v:paragraph/><v:tabList/>Payload 1</text>		</g>
+		<g id="shape60-95" v:mID="60" v:groupContext="shape" transform="translate(952.97,-548.822)">
 			<title>Sheet.60</title>
 			<desc>Payload 2</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="97.4929" cy="673.065" width="194.99" height="41.9798"/>
 			<path d="M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08" class="st8"/>
 			<text x="46.92" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 2</text>		</g>
-		<g id="shape63-103" v:mID="63" v:groupContext="shape" transform="translate(1210.43,-551.684)">
+		<g id="shape63-99" v:mID="63" v:groupContext="shape" transform="translate(1190.48,-552.568)">
 			<title>Sheet.63</title>
 			<desc>Multi-segment input packet</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="181.707" cy="678.273" width="363.42" height="31.5648"/>
 			<path d="M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49" class="st8"/>
-			<text x="17.75" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Multi-segment input packet</text>		</g>
-		<g id="shape70-107" v:mID="70" v:groupContext="shape" v:layerMember="1" transform="translate(455.049,-221.499)">
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Multi-segment input packet</text>		</g>
+		<g id="shape70-103" v:mID="70" v:groupContext="shape" v:layerMember="1" transform="translate(455.049,-221.499)">
 			<title>Sheet.70</title>
 			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
 						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st6"/>
 		</g>
-		<g id="shape71-109" v:mID="71" v:groupContext="shape" transform="translate(455.049,-221.499)">
+		<g id="shape71-105" v:mID="71" v:groupContext="shape" transform="translate(455.049,-221.499)">
 			<title>Sheet.71</title>
-			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44
-						 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87
+			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
+						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape72-111" v:mID="72" v:groupContext="shape" transform="translate(489.065,-263.434)">
+		<g id="shape72-107" v:mID="72" v:groupContext="shape" transform="translate(489.065,-263.434)">
 			<title>Sheet.72</title>
 			<desc>Indirect mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="112.128" cy="675.59" width="224.26" height="36.9302"/>
 			<path d="M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13" class="st8"/>
 			<text x="20.73" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Indirect mbuf</text>		</g>
-		<g id="shape75-115" v:mID="75" v:groupContext="shape" transform="translate(849.065,-281.435)">
+		<g id="shape75-111" v:mID="75" v:groupContext="shape" transform="translate(849.065,-281.435)">
 			<title>Sheet.75</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="4.49" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
-		<g id="shape77-119" v:mID="77" v:groupContext="shape" transform="translate(717.742,-563.523)">
+		<g id="shape77-115" v:mID="77" v:groupContext="shape" transform="translate(717.742,-563.523)">
 			<title>Sheet.77</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="15.71" y="683.67" class="st19" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape78-123" v:mID="78" v:groupContext="shape" transform="translate(1148.17,-529.067)">
+		<g id="shape78-119" v:mID="78" v:groupContext="shape" transform="translate(1148.17,-529.067)">
 			<title>Sheet.78</title>
 			<path d="M1.38 529.87 L1.25 543.55 L4.68 543.61 L4.81 529.94 L1.38 529.87 L1.38 529.87 ZM1.19 553.81 L1.12 557.23 L4.55
 						 557.29 L4.61 553.87 L1.19 553.81 L1.19 553.81 ZM1.05 567.48 L0.92 581.16 L4.35 581.22 L4.48 567.55 L1.05
@@ -347,7 +340,7 @@
 						 642.7 L0.46 642.7 ZM0.26 666.64 L0.2 670.06 L3.62 670.12 L3.69 666.7 L0.26 666.64 L0.26 666.64 ZM0.13 680.31
 						 L0 693.99 L3.43 694.06 L3.56 680.38 L0.13 680.31 L0.13 680.31 Z" class="st20"/>
 		</g>
-		<g id="shape79-125" v:mID="79" v:groupContext="shape" transform="translate(946.254,-657.81)">
+		<g id="shape79-121" v:mID="79" v:groupContext="shape" transform="translate(946.254,-657.81)">
 			<title>Sheet.79</title>
 			<path d="M11 686.69 L17.33 686.69 L17.33 688.27 L11 688.27 L11 686.69 L11 686.69 ZM22.07 686.69 L23.65 686.69 L23.65
 						 688.27 L22.07 688.27 L22.07 686.69 L22.07 686.69 ZM28.39 686.69 L34.72 686.69 L34.72 688.27 L28.39 688.27
@@ -369,109 +362,116 @@
 						 686.69 ZM13.18 694.06 L0 687.41 L13.18 680.9 L13.18 694.06 L13.18 694.06 ZM187.22 680.9 L200.4 687.48 L187.22
 						 694.06 L187.22 680.9 L187.22 680.9 Z" class="st20"/>
 		</g>
-		<g id="shape80-127" v:mID="80" v:groupContext="shape" transform="translate(982.882,-643.673)">
+		<g id="shape80-123" v:mID="80" v:groupContext="shape" transform="translate(982.882,-643.673)">
 			<title>Sheet.80</title>
 			<path d="M0 655.13 L0 694.06 L127.01 694.06 L127.01 655.13 L0 655.13 L0 655.13 Z" class="st16"/>
 		</g>
-		<g id="shape81-129" v:mID="81" v:groupContext="shape" transform="translate(1003.39,-660.621)">
+		<g id="shape81-125" v:mID="81" v:groupContext="shape" transform="translate(1003.39,-660.621)">
 			<title>Sheet.81</title>
 			<desc>pkt_len</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="48.6041" cy="680.956" width="97.21" height="26.1994"/>
 			<path d="M97.21 667.86 L0 667.86 L0 694.06 L97.21 694.06 L97.21 667.86" class="st8"/>
 			<text x="11.67" y="687.5" class="st21" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>pkt_len  </text>		</g>
-		<g id="shape82-133" v:mID="82" v:groupContext="shape" transform="translate(1001.18,-634.321)">
+		<g id="shape82-129" v:mID="82" v:groupContext="shape" transform="translate(1001.18,-634.321)">
 			<title>Sheet.82</title>
 			<desc>% segsz</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="49.2945" cy="680.956" width="98.59" height="26.1994"/>
 			<path d="M98.59 667.86 L0 667.86 L0 694.06 L98.59 694.06 L98.59 667.86" class="st8"/>
 			<text x="9.09" y="687.5" class="st21" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>% segsz</text>		</g>
-		<g id="shape34-137" v:mID="34" v:groupContext="shape" v:layerMember="0" transform="translate(356.703,-264.106)">
+		<g id="shape34-133" v:mID="34" v:groupContext="shape" v:layerMember="0" transform="translate(356.703,-264.106)">
 			<title>Sheet.34</title>
 			<path d="M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06
 						 L89.36 680.9 L89.36 680.9 Z" class="st2"/>
 		</g>
-		<g id="shape85-139" v:mID="85" v:groupContext="shape" v:layerMember="0" transform="translate(78.5359,-282.66)">
+		<g id="shape85-135" v:mID="85" v:groupContext="shape" v:layerMember="0" transform="translate(78.5359,-282.66)">
 			<title>Sheet.85</title>
 			<path d="M0 680.87 C-0 673.59 6.88 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.88 694.06 0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape87-141" v:mID="87" v:groupContext="shape" v:layerMember="0" transform="translate(85.4791,-284.062)">
+		<g id="shape87-137" v:mID="87" v:groupContext="shape" v:layerMember="0" transform="translate(85.4791,-284.062)">
 			<title>Sheet.87</title>
 			<desc>1</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>1</text>		</g>
-		<g id="shape88-145" v:mID="88" v:groupContext="shape" v:layerMember="0" transform="translate(468.906,-282.66)">
+		<g id="shape88-141" v:mID="88" v:groupContext="shape" v:layerMember="0" transform="translate(468.906,-282.66)">
 			<title>Sheet.88</title>
 			<path d="M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape90-147" v:mID="90" v:groupContext="shape" v:layerMember="0" transform="translate(474.575,-284.062)">
+		<g id="shape90-143" v:mID="90" v:groupContext="shape" v:layerMember="0" transform="translate(474.575,-284.062)">
 			<title>Sheet.90</title>
 			<desc>2</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>2</text>		</g>
-		<g id="shape95-151" v:mID="95" v:groupContext="shape" v:layerMember="0" transform="translate(764.026,-275.998)">
+		<g id="shape95-147" v:mID="95" v:groupContext="shape" v:layerMember="0" transform="translate(764.026,-275.998)">
 			<title>Sheet.95</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="7.56" y="686.16" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape97-155" v:mID="97" v:groupContext="shape" v:layerMember="0" transform="translate(889.755,-220.915)">
+		<g id="shape97-151" v:mID="97" v:groupContext="shape" v:layerMember="0" transform="translate(844.524,-219.79)">
 			<title>Sheet.97</title>
-			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44
-						 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87
+			<path d="M0 611.87 C0 602.79 5.45 595.43 12.17 595.43 L289.54 595.43 C296.31 595.43 301.71 602.79 301.71 611.87 L301.71
+						 677.62 C301.71 686.76 296.31 694.06 289.54 694.06 L12.17 694.06 C5.45 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape100-157" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(751.857,-262.528)">
+		<g id="shape100-153" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(751.857,-262.528)">
 			<title>Sheet.100</title>
 			<path d="M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06
 						 L89.36 680.9 L89.36 680.9 Z" class="st2"/>
 		</g>
-		<g id="shape104-159" v:mID="104" v:groupContext="shape" v:layerMember="1" transform="translate(851.429,-218.08)">
+		<g id="shape104-155" v:mID="104" v:groupContext="shape" v:layerMember="1" transform="translate(851.429,-218.08)">
 			<title>Sheet.104</title>
 			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
 						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st6"/>
 		</g>
-		<g id="shape105-161" v:mID="105" v:groupContext="shape" v:layerMember="0" transform="translate(885.444,-260.015)">
+		<g id="shape105-157" v:mID="105" v:groupContext="shape" v:layerMember="0" transform="translate(885.444,-260.015)">
 			<title>Sheet.105</title>
 			<desc>Indirect mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="112.128" cy="675.59" width="224.26" height="36.9302"/>
 			<path d="M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13" class="st8"/>
 			<text x="20.73" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Indirect mbuf</text>		</g>
-		<g id="shape106-165" v:mID="106" v:groupContext="shape" v:layerMember="0" transform="translate(895.672,-229.419)">
+		<g id="shape106-161" v:mID="106" v:groupContext="shape" v:layerMember="0" transform="translate(895.672,-229.419)">
 			<title>Sheet.106</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="12.86" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
-		<g id="shape107-169" v:mID="107" v:groupContext="shape" v:layerMember="0" transform="translate(863.297,-280.442)">
+		<g id="shape107-165" v:mID="107" v:groupContext="shape" v:layerMember="0" transform="translate(863.297,-280.442)">
 			<title>Sheet.107</title>
 			<path d="M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape108-171" v:mID="108" v:groupContext="shape" v:layerMember="0" transform="translate(870.001,-281.547)">
+		<g id="shape108-167" v:mID="108" v:groupContext="shape" v:layerMember="0" transform="translate(870.001,-281.547)">
 			<title>Sheet.108</title>
 			<desc>3</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>3</text>		</g>
-		<g id="shape109-175" v:mID="109" v:groupContext="shape" v:layerMember="0" transform="translate(500.959,-231.87)">
+		<g id="shape109-171" v:mID="109" v:groupContext="shape" v:layerMember="0" transform="translate(500.959,-231.87)">
 			<title>Sheet.109</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="12.86" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
+		<g id="shape113-175" v:mID="113" v:groupContext="shape" v:layerMember="0" transform="translate(1187.64,-251.712)">
+			<title>Sheet.113</title>
+			<desc>Three-part output segment</desc>
+			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
+			<v:textRect cx="327.402" cy="678.273" width="654.81" height="31.5648"/>
+			<path d="M654.8 662.49 L0 662.49 L0 694.06 L654.8 694.06 L654.8 662.49" class="st8"/>
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Three-part output segment</text>		</g>
 	</g>
 </svg>
-- 
1.9.3

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [dpdk-dev] [PATCH V3] doc: minor fixes for GSO prog_guide
  2017-10-12 13:45 [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide Mark Kavanagh
  2017-10-12 15:28 ` Mcnamara, John
  2017-10-12 15:59 ` [dpdk-dev] [PATCH V2] " Mark Kavanagh
@ 2017-10-12 16:05 ` Mark Kavanagh
  2017-10-14  0:08   ` Ferruh Yigit
  2 siblings, 1 reply; 6+ messages in thread
From: Mark Kavanagh @ 2017-10-12 16:05 UTC (permalink / raw)
  To: dev
  Cc: jiayu.hu, jianfeng.tan, konstantin.ananyev, ferruh.yigit, thomas,
	Mark Kavanagh

Correct two minor issues in the GSO programmer's guide:
- a note is rendered incorrectly in the middle of an unordered list;
  this results in the remainder of the list appearing inside the note.
  Correct indentation of the note to resolve same.
- two minor visual artifacts are present in the 'three-part-output-segment'
  diagram. Remove same.

Fixes: f6010c7 ("doc: add GSO programmer's guide")

Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
---
v3:
- Move note back to original position.
- Remove link to note, as it is no longer needed.
- Correct note's indentation, inline with text.

v2:
- Disregard - sent in error.

 .../generic_segmentation_offload_lib.rst           |  11 +-
 doc/guides/prog_guide/img/gso-three-seg-mbuf.svg   | 116 ++++++++++-----------
 2 files changed, 64 insertions(+), 63 deletions(-)

diff --git a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
index 5e78f16..4bbf01a 100644
--- a/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
+++ b/doc/guides/prog_guide/generic_segmentation_offload_lib.rst
@@ -197,12 +197,13 @@ To segment an outgoing packet, an application must:
    - a pointer to the mbuf pool for allocating indirect buffers, which are
      used to locate GSO segments' packet payloads.
 
-.. note::
+     .. note::
+
+       An application may use the same pool for both direct and indirect
+       buffers. However, since indirect mbufs simply store a pointer, the
+       application may reduce its memory consumption by creating a separate memory
+       pool, containing smaller elements, for the indirect pool.
 
-     An application may use the same pool for both direct and indirect
-     buffers. However, since each indirect mbuf simply stores a pointer, the
-     application may reduce its memory consumption by creating a separate memory
-     pool, containing smaller elements, for the indirect pool.
 
    - the size of each output segment, including packet headers and payload,
      measured in bytes.
diff --git a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
index f18a327..0431012 100644
--- a/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
+++ b/doc/guides/prog_guide/img/gso-three-seg-mbuf.svg
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf.svg Page-1 -->
+<!-- Generated by Microsoft Visio, SVG Export gso-three-seg-mbuf_new.svg Page-1 -->
 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
-		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="21.8589in" height="9.63966in"
-		viewBox="0 0 1573.84 694.055" xml:space="preserve" color-interpolation-filters="sRGB" class="st23">
+		xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="25.5895in" height="9.63966in"
+		viewBox="0 0 1842.44 694.055" xml:space="preserve" color-interpolation-filters="sRGB" class="st23">
 	<title>GSO three-part output segment</title>
 	<v:documentProperties v:langID="1033" v:metric="true" v:viewMarkup="false"/>
 
@@ -132,7 +132,7 @@
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="87.5716" cy="673.065" width="175.15" height="41.9798"/>
 			<path d="M175.14 652.08 L0 652.08 L0 694.06 L175.14 694.06 L175.14 652.08" class="st8"/>
-			<text x="37" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
+			<text x="22.61" y="680.57" class="st9" v:langID="1033"><v:paragraph/><v:tabList/>Payload 1</text>		</g>
 		<g id="shape15-27" v:mID="15" v:groupContext="shape" transform="translate(2.2377,-522.82)">
 			<title>Sheet.15</title>
 			<path d="M0 597.01 L0 694.06 L154.68 694.06 L154.68 597.01 L0 597.01 L0 597.01 Z" class="st4"/>
@@ -178,21 +178,14 @@
 			<v:textRect cx="97.4929" cy="673.065" width="194.99" height="41.9798"/>
 			<path d="M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08" class="st8"/>
 			<text x="16.99" y="683.56" class="st10" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
-		<g id="shape35-54" v:mID="35" v:groupContext="shape" transform="translate(1199.29,-21.1708)">
+		<g id="shape35-54" v:mID="35" v:groupContext="shape" transform="translate(1190.48,-32.2189)">
 			<title>Sheet.35</title>
 			<desc>Logical output segment</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="164.662" cy="678.273" width="329.33" height="31.5648"/>
 			<path d="M329.32 662.49 L0 662.49 L0 694.06 L329.32 694.06 L329.32 662.49" class="st8"/>
-			<text x="24.69" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Logical output segment</text>		</g>
-		<g id="shape38-58" v:mID="38" v:groupContext="shape" transform="translate(1204.65,-254.446)">
-			<title>Sheet.38</title>
-			<desc>Three-part output segment</desc>
-			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
-			<v:textRect cx="181.707" cy="678.273" width="363.42" height="31.5648"/>
-			<path d="M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49" class="st8"/>
-			<text x="19.51" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Three-part output segment</text>		</g>
-		<g id="shape39-62" v:mID="39" v:groupContext="shape" transform="translate(546.25,-529.921)">
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Logical output segment</text>		</g>
+		<g id="shape39-58" v:mID="39" v:groupContext="shape" transform="translate(546.25,-529.921)">
 			<title>Sheet.39</title>
 			<path d="M3.43 529.94 L3.46 543.61 L0.03 543.61 L0 529.94 L3.43 529.94 L3.43 529.94 ZM3.46 553.87 L3.46 557.29 L0.03
 						 557.29 L0.03 553.87 L3.46 553.87 L3.46 553.87 ZM3.46 567.55 L3.46 581.22 L0.03 581.22 L0.03 567.55 L3.46
@@ -202,7 +195,7 @@
 						 642.77 L3.46 642.77 ZM3.46 666.7 L3.46 670.12 L0.03 670.12 L0.03 666.7 L3.46 666.7 L3.46 666.7 ZM3.46 680.38
 						 L3.46 694.06 L0.03 694.06 L0.03 680.38 L3.46 680.38 L3.46 680.38 Z" class="st1"/>
 		</g>
-		<g id="shape40-64" v:mID="40" v:groupContext="shape" transform="translate(549.097,-223.749)">
+		<g id="shape40-60" v:mID="40" v:groupContext="shape" transform="translate(549.097,-223.749)">
 			<title>Sheet.40</title>
 			<path d="M6.65 402.61 L13.01 414.71 L9.98 416.32 L3.62 404.22 L6.65 402.61 L6.65 402.61 ZM17.82 423.78 L19.4 426.81 L16.37
 						 428.42 L14.79 425.39 L17.82 423.78 L17.82 423.78 ZM24.21 435.91 L30.57 448.01 L27.54 449.59 L21.18 437.49
@@ -221,59 +214,59 @@
 						 L155.17 691.66 L158.2 690.04 L158.2 690.04 ZM0.33 408.43 L0 393.7 L11.99 402.28 L0.33 408.43 L0.33 408.43
 						 Z" class="st1"/>
 		</g>
-		<g id="shape46-66" v:mID="46" v:groupContext="shape" transform="translate(66.8445,-221.499)">
+		<g id="shape46-62" v:mID="46" v:groupContext="shape" transform="translate(66.8445,-221.499)">
 			<title>Sheet.46</title>
 			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86
 						 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87
 						 Z" class="st4"/>
 		</g>
-		<g id="shape47-68" v:mID="47" v:groupContext="shape" transform="translate(66.8445,-221.499)">
+		<g id="shape47-64" v:mID="47" v:groupContext="shape" transform="translate(66.8445,-221.499)">
 			<title>Sheet.47</title>
 			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L273.39 595.43 C282.51 595.43 289.86 602.79 289.86 611.87 L289.86
 						 677.62 C289.86 686.72 282.51 694.06 273.39 694.06 L16.47 694.06 C7.38 694.06 -0 686.72 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape48-70" v:mID="48" v:groupContext="shape" transform="translate(113.27,-263.667)">
+		<g id="shape48-66" v:mID="48" v:groupContext="shape" transform="translate(113.27,-263.667)">
 			<title>Sheet.48</title>
 			<desc>Direct mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="98.5041" cy="675.59" width="197.01" height="36.9302"/>
 			<path d="M197.01 657.13 L0 657.13 L0 694.06 L197.01 694.06 L197.01 657.13" class="st8"/>
 			<text x="18.66" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Direct mbuf</text>		</g>
-		<g id="shape51-74" v:mID="51" v:groupContext="shape" transform="translate(85.817,-233.439)">
+		<g id="shape51-70" v:mID="51" v:groupContext="shape" transform="translate(85.817,-233.439)">
 			<title>Sheet.51</title>
 			<desc>(copy of headers)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="127.916" cy="678.273" width="255.84" height="31.5648"/>
 			<path d="M255.83 662.49 L0 662.49 L0 694.06 L255.83 694.06 L255.83 662.49" class="st8"/>
 			<text x="34.33" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(copy of headers)</text>		</g>
-		<g id="shape53-78" v:mID="53" v:groupContext="shape" transform="translate(371.944,-275.998)">
+		<g id="shape53-74" v:mID="53" v:groupContext="shape" transform="translate(371.944,-275.998)">
 			<title>Sheet.53</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="7.56" y="686.16" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape54-82" v:mID="54" v:groupContext="shape" transform="translate(695.132,-646.04)">
+		<g id="shape54-78" v:mID="54" v:groupContext="shape" transform="translate(695.132,-646.04)">
 			<title>Sheet.54</title>
 			<path d="M0 655.39 L0 694.06 L100.4 694.06 L100.4 655.39 L0 655.39 L0 655.39 Z" class="st16"/>
 		</g>
-		<g id="shape55-84" v:mID="55" v:groupContext="shape" transform="translate(709.033,-648.946)">
+		<g id="shape55-80" v:mID="55" v:groupContext="shape" transform="translate(709.033,-648.946)">
 			<title>Sheet.55</title>
 			<desc>segsz</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="36.6265" cy="680.167" width="73.26" height="27.7775"/>
 			<path d="M73.25 666.28 L0 666.28 L0 694.06 L73.25 694.06 L73.25 666.28" class="st8"/>
 			<text x="7.6" y="687.11" class="st17" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>segsz</text>		</g>
-		<g id="shape56-88" v:mID="56" v:groupContext="shape" transform="translate(785.874,-521.182)">
+		<g id="shape56-84" v:mID="56" v:groupContext="shape" transform="translate(785.874,-521.182)">
 			<title>Sheet.56</title>
 			<path d="M0 597.27 L0 694.06 L363.41 694.06 L363.41 597.27 L0 597.27 L0 597.27 Z" class="st6"/>
 		</g>
-		<g id="shape57-90" v:mID="57" v:groupContext="shape" transform="translate(785.874,-521.182)">
+		<g id="shape57-86" v:mID="57" v:groupContext="shape" transform="translate(785.874,-521.182)">
 			<title>Sheet.57</title>
 			<path d="M0 597.27 L363.41 597.27 L363.41 694.06 L0 694.06 L0 597.27" class="st7"/>
 		</g>
-		<g id="shape58-93" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(943.158,-529.889)">
+		<g id="shape58-89" v:mID="58" v:groupContext="shape" v:layerMember="0" transform="translate(943.158,-529.889)">
 			<title>Sheet.58</title>
 			<path d="M1.35 529.91 L1.25 543.58 L4.68 543.61 L4.78 529.94 L1.35 529.91 L1.35 529.91 ZM1.15 553.84 L1.12 557.26 L4.55
 						 557.29 L4.58 553.87 L1.15 553.84 L1.15 553.84 ZM1.05 567.52 L0.92 581.19 L4.35 581.22 L4.48 567.55 L1.05
@@ -283,61 +276,61 @@
 						 642.74 L0.43 642.74 ZM0.23 666.67 L0.2 670.09 L3.62 670.12 L3.66 666.7 L0.23 666.67 L0.23 666.67 ZM0.13
 						 680.35 L0 694.02 L3.43 694.06 L3.56 680.38 L0.13 680.35 L0.13 680.35 Z" class="st18"/>
 		</g>
-		<g id="shape59-95" v:mID="59" v:groupContext="shape" transform="translate(785.874,-549.473)">
+		<g id="shape59-91" v:mID="59" v:groupContext="shape" transform="translate(785.874,-549.473)">
 			<title>Sheet.59</title>
 			<desc>Payload 1</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="77.3395" cy="673.065" width="154.68" height="41.9798"/>
 			<path d="M154.68 652.08 L0 652.08 L0 694.06 L154.68 694.06 L154.68 652.08" class="st8"/>
-			<text x="26.77" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 1</text>		</g>
-		<g id="shape60-99" v:mID="60" v:groupContext="shape" transform="translate(952.97,-548.822)">
+			<text x="16.96" y="680.57" class="st9" v:langID="1033"><v:paragraph/><v:tabList/>Payload 1</text>		</g>
+		<g id="shape60-95" v:mID="60" v:groupContext="shape" transform="translate(952.97,-548.822)">
 			<title>Sheet.60</title>
 			<desc>Payload 2</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="97.4929" cy="673.065" width="194.99" height="41.9798"/>
 			<path d="M194.99 652.08 L0 652.08 L0 694.06 L194.99 694.06 L194.99 652.08" class="st8"/>
 			<text x="46.92" y="680.57" class="st9" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Payload 2</text>		</g>
-		<g id="shape63-103" v:mID="63" v:groupContext="shape" transform="translate(1210.43,-551.684)">
+		<g id="shape63-99" v:mID="63" v:groupContext="shape" transform="translate(1190.48,-552.568)">
 			<title>Sheet.63</title>
 			<desc>Multi-segment input packet</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="181.707" cy="678.273" width="363.42" height="31.5648"/>
 			<path d="M363.41 662.49 L0 662.49 L0 694.06 L363.41 694.06 L363.41 662.49" class="st8"/>
-			<text x="17.75" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Multi-segment input packet</text>		</g>
-		<g id="shape70-107" v:mID="70" v:groupContext="shape" v:layerMember="1" transform="translate(455.049,-221.499)">
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Multi-segment input packet</text>		</g>
+		<g id="shape70-103" v:mID="70" v:groupContext="shape" v:layerMember="1" transform="translate(455.049,-221.499)">
 			<title>Sheet.70</title>
 			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
 						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st6"/>
 		</g>
-		<g id="shape71-109" v:mID="71" v:groupContext="shape" transform="translate(455.049,-221.499)">
+		<g id="shape71-105" v:mID="71" v:groupContext="shape" transform="translate(455.049,-221.499)">
 			<title>Sheet.71</title>
-			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44
-						 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87
+			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
+						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape72-111" v:mID="72" v:groupContext="shape" transform="translate(489.065,-263.434)">
+		<g id="shape72-107" v:mID="72" v:groupContext="shape" transform="translate(489.065,-263.434)">
 			<title>Sheet.72</title>
 			<desc>Indirect mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="112.128" cy="675.59" width="224.26" height="36.9302"/>
 			<path d="M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13" class="st8"/>
 			<text x="20.73" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Indirect mbuf</text>		</g>
-		<g id="shape75-115" v:mID="75" v:groupContext="shape" transform="translate(849.065,-281.435)">
+		<g id="shape75-111" v:mID="75" v:groupContext="shape" transform="translate(849.065,-281.435)">
 			<title>Sheet.75</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="4.49" y="686.16" class="st11" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
-		<g id="shape77-119" v:mID="77" v:groupContext="shape" transform="translate(717.742,-563.523)">
+		<g id="shape77-115" v:mID="77" v:groupContext="shape" transform="translate(717.742,-563.523)">
 			<title>Sheet.77</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="15.71" y="683.67" class="st19" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape78-123" v:mID="78" v:groupContext="shape" transform="translate(1148.17,-529.067)">
+		<g id="shape78-119" v:mID="78" v:groupContext="shape" transform="translate(1148.17,-529.067)">
 			<title>Sheet.78</title>
 			<path d="M1.38 529.87 L1.25 543.55 L4.68 543.61 L4.81 529.94 L1.38 529.87 L1.38 529.87 ZM1.19 553.81 L1.12 557.23 L4.55
 						 557.29 L4.61 553.87 L1.19 553.81 L1.19 553.81 ZM1.05 567.48 L0.92 581.16 L4.35 581.22 L4.48 567.55 L1.05
@@ -347,7 +340,7 @@
 						 642.7 L0.46 642.7 ZM0.26 666.64 L0.2 670.06 L3.62 670.12 L3.69 666.7 L0.26 666.64 L0.26 666.64 ZM0.13 680.31
 						 L0 693.99 L3.43 694.06 L3.56 680.38 L0.13 680.31 L0.13 680.31 Z" class="st20"/>
 		</g>
-		<g id="shape79-125" v:mID="79" v:groupContext="shape" transform="translate(946.254,-657.81)">
+		<g id="shape79-121" v:mID="79" v:groupContext="shape" transform="translate(946.254,-657.81)">
 			<title>Sheet.79</title>
 			<path d="M11 686.69 L17.33 686.69 L17.33 688.27 L11 688.27 L11 686.69 L11 686.69 ZM22.07 686.69 L23.65 686.69 L23.65
 						 688.27 L22.07 688.27 L22.07 686.69 L22.07 686.69 ZM28.39 686.69 L34.72 686.69 L34.72 688.27 L28.39 688.27
@@ -369,109 +362,116 @@
 						 686.69 ZM13.18 694.06 L0 687.41 L13.18 680.9 L13.18 694.06 L13.18 694.06 ZM187.22 680.9 L200.4 687.48 L187.22
 						 694.06 L187.22 680.9 L187.22 680.9 Z" class="st20"/>
 		</g>
-		<g id="shape80-127" v:mID="80" v:groupContext="shape" transform="translate(982.882,-643.673)">
+		<g id="shape80-123" v:mID="80" v:groupContext="shape" transform="translate(982.882,-643.673)">
 			<title>Sheet.80</title>
 			<path d="M0 655.13 L0 694.06 L127.01 694.06 L127.01 655.13 L0 655.13 L0 655.13 Z" class="st16"/>
 		</g>
-		<g id="shape81-129" v:mID="81" v:groupContext="shape" transform="translate(1003.39,-660.621)">
+		<g id="shape81-125" v:mID="81" v:groupContext="shape" transform="translate(1003.39,-660.621)">
 			<title>Sheet.81</title>
 			<desc>pkt_len</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="48.6041" cy="680.956" width="97.21" height="26.1994"/>
 			<path d="M97.21 667.86 L0 667.86 L0 694.06 L97.21 694.06 L97.21 667.86" class="st8"/>
 			<text x="11.67" y="687.5" class="st21" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>pkt_len  </text>		</g>
-		<g id="shape82-133" v:mID="82" v:groupContext="shape" transform="translate(1001.18,-634.321)">
+		<g id="shape82-129" v:mID="82" v:groupContext="shape" transform="translate(1001.18,-634.321)">
 			<title>Sheet.82</title>
 			<desc>% segsz</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="49.2945" cy="680.956" width="98.59" height="26.1994"/>
 			<path d="M98.59 667.86 L0 667.86 L0 694.06 L98.59 694.06 L98.59 667.86" class="st8"/>
 			<text x="9.09" y="687.5" class="st21" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>% segsz</text>		</g>
-		<g id="shape34-137" v:mID="34" v:groupContext="shape" v:layerMember="0" transform="translate(356.703,-264.106)">
+		<g id="shape34-133" v:mID="34" v:groupContext="shape" v:layerMember="0" transform="translate(356.703,-264.106)">
 			<title>Sheet.34</title>
 			<path d="M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06
 						 L89.36 680.9 L89.36 680.9 Z" class="st2"/>
 		</g>
-		<g id="shape85-139" v:mID="85" v:groupContext="shape" v:layerMember="0" transform="translate(78.5359,-282.66)">
+		<g id="shape85-135" v:mID="85" v:groupContext="shape" v:layerMember="0" transform="translate(78.5359,-282.66)">
 			<title>Sheet.85</title>
 			<path d="M0 680.87 C-0 673.59 6.88 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.88 694.06 0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape87-141" v:mID="87" v:groupContext="shape" v:layerMember="0" transform="translate(85.4791,-284.062)">
+		<g id="shape87-137" v:mID="87" v:groupContext="shape" v:layerMember="0" transform="translate(85.4791,-284.062)">
 			<title>Sheet.87</title>
 			<desc>1</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>1</text>		</g>
-		<g id="shape88-145" v:mID="88" v:groupContext="shape" v:layerMember="0" transform="translate(468.906,-282.66)">
+		<g id="shape88-141" v:mID="88" v:groupContext="shape" v:layerMember="0" transform="translate(468.906,-282.66)">
 			<title>Sheet.88</title>
 			<path d="M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape90-147" v:mID="90" v:groupContext="shape" v:layerMember="0" transform="translate(474.575,-284.062)">
+		<g id="shape90-143" v:mID="90" v:groupContext="shape" v:layerMember="0" transform="translate(474.575,-284.062)">
 			<title>Sheet.90</title>
 			<desc>2</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>2</text>		</g>
-		<g id="shape95-151" v:mID="95" v:groupContext="shape" v:layerMember="0" transform="translate(764.026,-275.998)">
+		<g id="shape95-147" v:mID="95" v:groupContext="shape" v:layerMember="0" transform="translate(764.026,-275.998)">
 			<title>Sheet.95</title>
 			<desc>next</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="33.3635" cy="678.273" width="66.73" height="31.5648"/>
 			<path d="M66.73 662.49 L0 662.49 L0 694.06 L66.73 694.06 L66.73 662.49" class="st8"/>
 			<text x="7.56" y="686.16" class="st15" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>next</text>		</g>
-		<g id="shape97-155" v:mID="97" v:groupContext="shape" v:layerMember="0" transform="translate(889.755,-220.915)">
+		<g id="shape97-151" v:mID="97" v:groupContext="shape" v:layerMember="0" transform="translate(844.524,-219.79)">
 			<title>Sheet.97</title>
-			<path d="M0 611.87 C0 602.79 7.38 595.43 16.47 595.43 L391.97 595.43 C401.12 595.43 408.44 602.79 408.44 611.87 L408.44
-						 677.62 C408.44 686.76 401.12 694.06 391.97 694.06 L16.47 694.06 C7.38 694.06 0 686.76 0 677.62 L0 611.87
+			<path d="M0 611.87 C0 602.79 5.45 595.43 12.17 595.43 L289.54 595.43 C296.31 595.43 301.71 602.79 301.71 611.87 L301.71
+						 677.62 C301.71 686.76 296.31 694.06 289.54 694.06 L12.17 694.06 C5.45 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st12"/>
 		</g>
-		<g id="shape100-157" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(751.857,-262.528)">
+		<g id="shape100-153" v:mID="100" v:groupContext="shape" v:layerMember="0" transform="translate(751.857,-262.528)">
 			<title>Sheet.100</title>
 			<path d="M0 685.77 L90.67 685.77 L90.67 689.19 L0 689.19 L0 685.77 L0 685.77 ZM89.36 680.9 L97.21 687.48 L89.36 694.06
 						 L89.36 680.9 L89.36 680.9 Z" class="st2"/>
 		</g>
-		<g id="shape104-159" v:mID="104" v:groupContext="shape" v:layerMember="1" transform="translate(851.429,-218.08)">
+		<g id="shape104-155" v:mID="104" v:groupContext="shape" v:layerMember="1" transform="translate(851.429,-218.08)">
 			<title>Sheet.104</title>
 			<path d="M0 611.87 C0 602.79 5.33 595.43 11.89 595.43 L282.92 595.43 C289.53 595.43 294.8 602.79 294.8 611.87 L294.8
 						 677.62 C294.8 686.76 289.53 694.06 282.92 694.06 L11.89 694.06 C5.33 694.06 0 686.76 0 677.62 L0 611.87
 						 Z" class="st6"/>
 		</g>
-		<g id="shape105-161" v:mID="105" v:groupContext="shape" v:layerMember="0" transform="translate(885.444,-260.015)">
+		<g id="shape105-157" v:mID="105" v:groupContext="shape" v:layerMember="0" transform="translate(885.444,-260.015)">
 			<title>Sheet.105</title>
 			<desc>Indirect mbuf</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="112.128" cy="675.59" width="224.26" height="36.9302"/>
 			<path d="M224.26 657.13 L0 657.13 L0 694.06 L224.26 694.06 L224.26 657.13" class="st8"/>
 			<text x="20.73" y="684.59" class="st13" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>Indirect mbuf</text>		</g>
-		<g id="shape106-165" v:mID="106" v:groupContext="shape" v:layerMember="0" transform="translate(895.672,-229.419)">
+		<g id="shape106-161" v:mID="106" v:groupContext="shape" v:layerMember="0" transform="translate(895.672,-229.419)">
 			<title>Sheet.106</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="12.86" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
-		<g id="shape107-169" v:mID="107" v:groupContext="shape" v:layerMember="0" transform="translate(863.297,-280.442)">
+		<g id="shape107-165" v:mID="107" v:groupContext="shape" v:layerMember="0" transform="translate(863.297,-280.442)">
 			<title>Sheet.107</title>
 			<path d="M0 680.87 C-0 673.59 6.89 667.69 15.37 667.69 C23.86 667.69 30.73 673.59 30.73 680.87 C30.73 688.15 23.86 694.06
 						 15.37 694.06 C6.89 694.06 -0 688.15 0 680.87 Z" class="st16"/>
 		</g>
-		<g id="shape108-171" v:mID="108" v:groupContext="shape" v:layerMember="0" transform="translate(870.001,-281.547)">
+		<g id="shape108-167" v:mID="108" v:groupContext="shape" v:layerMember="0" transform="translate(870.001,-281.547)">
 			<title>Sheet.108</title>
 			<desc>3</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="8.66303" cy="683.269" width="17.33" height="21.5726"/>
 			<path d="M17.33 672.48 L0 672.48 L0 694.06 L17.33 694.06 L17.33 672.48" class="st8"/>
 			<text x="3.32" y="688.66" class="st22" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>3</text>		</g>
-		<g id="shape109-175" v:mID="109" v:groupContext="shape" v:layerMember="0" transform="translate(500.959,-231.87)">
+		<g id="shape109-171" v:mID="109" v:groupContext="shape" v:layerMember="0" transform="translate(500.959,-231.87)">
 			<title>Sheet.109</title>
 			<desc>(pointer to data)</desc>
 			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
 			<v:textRect cx="100.199" cy="678.273" width="200.4" height="31.5648"/>
 			<path d="M200.4 662.49 L0 662.49 L0 694.06 L200.4 694.06 L200.4 662.49" class="st8"/>
 			<text x="12.86" y="685.47" class="st14" v:langID="1033"><v:paragraph v:horizAlign="1"/><v:tabList/>(pointer to data)</text>		</g>
+		<g id="shape113-175" v:mID="113" v:groupContext="shape" v:layerMember="0" transform="translate(1187.64,-251.712)">
+			<title>Sheet.113</title>
+			<desc>Three-part output segment</desc>
+			<v:textBlock v:margins="rect(0,0,0,0)" v:tabSpace="42.5197"/>
+			<v:textRect cx="327.402" cy="678.273" width="654.81" height="31.5648"/>
+			<path d="M654.8 662.49 L0 662.49 L0 694.06 L654.8 694.06 L654.8 662.49" class="st8"/>
+			<text x="0" y="686.16" class="st11" v:langID="1033"><v:paragraph/><v:tabList/>Three-part output segment</text>		</g>
 	</g>
 </svg>
-- 
1.9.3

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [dpdk-dev] [PATCH V3] doc: minor fixes for GSO prog_guide
  2017-10-12 16:05 ` [dpdk-dev] [PATCH V3] " Mark Kavanagh
@ 2017-10-14  0:08   ` Ferruh Yigit
  0 siblings, 0 replies; 6+ messages in thread
From: Ferruh Yigit @ 2017-10-14  0:08 UTC (permalink / raw)
  To: Mark Kavanagh, dev; +Cc: jiayu.hu, jianfeng.tan, konstantin.ananyev, thomas

On 10/12/2017 5:05 PM, Mark Kavanagh wrote:
> Correct two minor issues in the GSO programmer's guide:
> - a note is rendered incorrectly in the middle of an unordered list;
>   this results in the remainder of the list appearing inside the note.
>   Correct indentation of the note to resolve same.
> - two minor visual artifacts are present in the 'three-part-output-segment'
>   diagram. Remove same.
> 
> Fixes: f6010c7 ("doc: add GSO programmer's guide")
> 
> Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
> Acked-by: John McNamara <john.mcnamara@intel.com>

Applied to dpdk-next-net/master, thanks.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-10-14  0:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-12 13:45 [dpdk-dev] [PATCH] doc: minor fixes for GSO prog_guide Mark Kavanagh
2017-10-12 15:28 ` Mcnamara, John
2017-10-12 15:56   ` Kavanagh, Mark B
2017-10-12 15:59 ` [dpdk-dev] [PATCH V2] " Mark Kavanagh
2017-10-12 16:05 ` [dpdk-dev] [PATCH V3] " Mark Kavanagh
2017-10-14  0:08   ` Ferruh Yigit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).