<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
h1
{mso-style-link:"Heading 1 Char";
margin-top:12.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:.3in;
text-indent:-.3in;
page-break-after:avoid;
mso-list:l2 level1 lfo1;
font-size:16.0pt;
font-family:"Arial",sans-serif;}
h2
{mso-style-link:"Heading 2 Char";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:.4in;
text-indent:-.4in;
page-break-after:avoid;
mso-list:l2 level2 lfo1;
font-size:14.0pt;
font-family:"Arial",sans-serif;}
h3
{mso-style-link:"Heading 3 Char";
margin-top:3.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:.5in;
text-indent:-.5in;
page-break-after:avoid;
mso-list:l2 level3 lfo1;
font-size:12.0pt;
font-family:"Arial",sans-serif;}
h4
{mso-style-link:"Heading 4 Char";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:.6in;
text-indent:-.6in;
page-break-after:avoid;
mso-list:l2 level4 lfo1;
font-size:11.0pt;
font-family:"Arial",sans-serif;}
h5
{mso-style-link:"Heading 5 Char";
margin-top:6.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:.7in;
text-indent:-.7in;
page-break-after:avoid;
mso-list:l2 level5 lfo1;
font-size:10.0pt;
font-family:"Arial",sans-serif;}
h6
{mso-style-link:"Heading 6 Char";
margin-top:12.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:.8in;
text-indent:-.8in;
mso-list:l2 level6 lfo1;
font-size:11.0pt;
font-family:"Times New Roman",serif;}
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
{mso-style-link:"Heading 7 Char";
margin-top:12.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:.9in;
text-indent:-.9in;
mso-list:l2 level7 lfo1;
font-size:12.0pt;
font-family:"Times New Roman",serif;}
p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
{mso-style-link:"Heading 8 Char";
margin-top:12.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:1.0in;
text-indent:-1.0in;
mso-list:l2 level8 lfo1;
font-size:12.0pt;
font-family:"Times New Roman",serif;
font-style:italic;}
p.MsoHeading9, li.MsoHeading9, div.MsoHeading9
{mso-style-link:"Heading 9 Char";
margin-top:12.0pt;
margin-right:0in;
margin-bottom:3.0pt;
margin-left:1.1in;
text-indent:-1.1in;
mso-list:l2 level9 lfo1;
font-size:11.0pt;
font-family:"Arial",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.BodyChar
{mso-style-name:"Body Char";
mso-style-link:Body;
font-family:"Arial",sans-serif;}
p.Body, li.Body, div.Body
{mso-style-name:Body;
mso-style-link:"Body Char";
margin-top:0in;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:0in;
font-size:11.0pt;
font-family:"Arial",sans-serif;}
span.Heading1Char
{mso-style-name:"Heading 1 Char";
mso-style-link:"Heading 1";
font-family:"Arial",sans-serif;
font-weight:bold;}
span.Heading2Char
{mso-style-name:"Heading 2 Char";
mso-style-link:"Heading 2";
font-family:"Arial",sans-serif;
font-weight:bold;}
span.Heading3Char
{mso-style-name:"Heading 3 Char";
mso-style-link:"Heading 3";
font-family:"Arial",sans-serif;
font-weight:bold;}
span.Heading4Char
{mso-style-name:"Heading 4 Char";
mso-style-link:"Heading 4";
font-family:"Arial",sans-serif;
font-weight:bold;}
span.Heading5Char
{mso-style-name:"Heading 5 Char";
mso-style-link:"Heading 5";
font-family:"Arial",sans-serif;
font-weight:bold;}
span.Heading6Char
{mso-style-name:"Heading 6 Char";
mso-style-link:"Heading 6";
font-family:"Times New Roman",serif;
font-weight:bold;}
span.Heading7Char
{mso-style-name:"Heading 7 Char";
mso-style-link:"Heading 7";
font-family:"Times New Roman",serif;}
span.Heading8Char
{mso-style-name:"Heading 8 Char";
mso-style-link:"Heading 8";
font-family:"Times New Roman",serif;
font-style:italic;}
span.Heading9Char
{mso-style-name:"Heading 9 Char";
mso-style-link:"Heading 9";
font-family:"Arial",sans-serif;}
span.Arial-10
{mso-style-name:Arial-10;
mso-style-priority:1;
font-family:"Arial",sans-serif;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:784079685;
mso-list-type:hybrid;
mso-list-template-ids:-1063865224 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l1
{mso-list-id:1028146691;
mso-list-type:hybrid;
mso-list-template-ids:-138631826 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l1:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l2
{mso-list-id:1943612052;
mso-list-template-ids:1105095828;}
@list l2:level1
{mso-level-style-link:"Heading 1";
mso-level-text:%1;
mso-level-tab-stop:.3in;
mso-level-number-position:left;
margin-left:.3in;
text-indent:-.3in;}
@list l2:level2
{mso-level-style-link:"Heading 2";
mso-level-text:"%1\.%2";
mso-level-tab-stop:.4in;
mso-level-number-position:left;
margin-left:.4in;
text-indent:-.4in;}
@list l2:level3
{mso-level-style-link:"Heading 3";
mso-level-text:"%1\.%2\.%3";
mso-level-tab-stop:.5in;
mso-level-number-position:left;
margin-left:.5in;
text-indent:-.5in;}
@list l2:level4
{mso-level-style-link:"Heading 4";
mso-level-text:"%1\.%2\.%3\.%4";
mso-level-tab-stop:.6in;
mso-level-number-position:left;
margin-left:.6in;
text-indent:-.6in;}
@list l2:level5
{mso-level-style-link:"Heading 5";
mso-level-text:"%1\.%2\.%3\.%4\.%5";
mso-level-tab-stop:.7in;
mso-level-number-position:left;
margin-left:.7in;
text-indent:-.7in;}
@list l2:level6
{mso-level-style-link:"Heading 6";
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6";
mso-level-tab-stop:.8in;
mso-level-number-position:left;
margin-left:.8in;
text-indent:-.8in;}
@list l2:level7
{mso-level-style-link:"Heading 7";
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7";
mso-level-tab-stop:.9in;
mso-level-number-position:left;
margin-left:.9in;
text-indent:-.9in;}
@list l2:level8
{mso-level-style-link:"Heading 8";
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8";
mso-level-tab-stop:1.0in;
mso-level-number-position:left;
margin-left:1.0in;
text-indent:-1.0in;}
@list l2:level9
{mso-level-style-link:"Heading 9";
mso-level-text:"%1\.%2\.%3\.%4\.%5\.%6\.%7\.%8\.%9";
mso-level-tab-stop:1.1in;
mso-level-number-position:left;
margin-left:1.1in;
text-indent:-1.1in;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1030" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi Team,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The issue we are facing: <o:p></o:p></p>
<p class="MsoNormal">We have a telecom product called “Session Boarder Controller(SBC)” version 6400 in which we are using DPDK version 22.11.1.
<o:p></o:p></p>
<p class="Body" style="text-align:justify"><span style="font-family:"Calibri",sans-serif">Users have encountered instances where the activation of ASLR in the Linux Kernel results in DPDK initialization failures on the SBC 6400 platform. As ASLR is needed for
FIPS, this issue poses a challenge for users seeking to benefit from both enhanced security through ASLR and the high-performance packet processing capabilities offered by DPDK.
<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<h2 style="mso-list:none"><a name="_Toc154494816">Problem analysis</a><o:p></o:p></h2>
<h3 style="text-indent:-.1in;mso-list:none"><a name="_Toc154494817"><span class="Arial-10"><span style="font-size:10.0pt;font-weight:normal">The</span></span></a><span style="mso-bookmark:_Toc154494817"><span class="Arial-10"><span style="font-size:10.0pt">
</span></span></span><span style="mso-bookmark:_Toc154494817"><span class="Arial-10"><span style="font-size:10.0pt;font-weight:normal">DPDK defines the memory type in the following way:</span></span></span><span style="mso-bookmark:_Toc154494817"></span><span class="Arial-10"><span style="font-size:10.0pt;font-weight:normal"><o:p></o:p></span></span></h3>
<p class="MsoNormal" style="margin-left:.4in"><span class="Arial-10"><span style="font-size:10.0pt">The number of huge page types * the number of NUMA nodes present in the system i.e. 2 * 1 = 2, which means that there are two memory types (two huge pages 1GB
and 2MB) with one NUMA node.</span></span><span class="Arial-10"><span style="font-size:10.0pt"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.4in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">Deciding the amount of memory going towards each memory type is a balancing act between maximum segments per type, maximum memory per type,
and number of detected NUMA nodes. The goal is to make sure each memory type gets at least one memseg list.<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.5in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify;text-indent:.4in"><span class="Arial-10"><span style="font-size:10.0pt">The total amount of memory is limited by RTE_MAX_MEM_MB value.
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.5in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.4in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">The total amount of memory per type is limited by either RTE_MAX_MEM_MB_PER_TYPE, or by RTE_MAX_MEM_MB divided by the number of detected NUMA
nodes. Additionally, maximum number of segments per type is also limited by RTE_MAX_MEMSEG_PER_TYPE. This is because for smaller page sizes, it can take hundreds of thousands of segments to reach the above specified per-type memory limits.<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.5in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.4in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">Additionally, each type may have multiple memseg lists associated with it, each limited by either RTE_MAX_MEM_MB_PER_LIST for bigger page
sizes, or RTE_MAX_MEMSEG_PER_LIST segments for smaller ones. The number of memseg lists per type is decided based on the above limits, and also take number of detected NUMA nodes, to make sure that doesn't run out of memseg lists before we populate all NUMA
nodes with memory.<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.5in;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> #define RTE_MAX_MEM_MB 524288 defined in rte_build_config.h file.
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> #define RTE_MAX_MEM_MB_PER_TYPE 65536 defined in rte_config.h file.<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> #define RTE_MAX_MEMSEG_PER_LIST 32768<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> #define RTE_MAX_MEM_MB_PER_LIST 65536<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> #define RTE_MAX_MEMSEG_PER_TYPE 32768
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> max_mem = (uint64_t)RTE_MAX_MEM_MB << 20;<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> max_mem_per_type = RTE_MIN((uint64_t)RTE_MAX_MEM_MB_PER_TYPE << 20,
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> max_mem / n_memtypes);<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">
<b>The following logs are captured from 6400 during boot-up time: <o:p></o:p></b></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> </span></span><span class="Arial-10"><span style="font-size:10.0pt"> EAL: eal_dynmem_memseg_lists_init:117 n_memtypes = 2!!!!!<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> EAL: eal_dynmem_memseg_lists_init:124 max_mem:549755813888 max_mem_per_type :68719476736<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> EAL: eal_dynmem_memseg_lists_init:132 max_seglists_per_type = 64!!!!!
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> EAL: eal_dynmem_memseg_lists_init:175 max_segs_per_type = 64!!!!!<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"> <span class="Arial-10"><span style="font-size:10.0pt">EAL: eal_dynmem_memseg_lists_init:179 max_segs_per_list = 64!!!!!<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> EAL: eal_dynmem_memseg_lists_init:184 max_mem_per_list = 68719476736!!!!!<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify;text-indent:.4in"><span class="Arial-10"><span style="font-size:10.0pt">EAL: eal_dynmem_memseg_lists_init:188 n_segs = 64!!!!!
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> <o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-indent:.4in"><span class="Arial-10"><span style="font-size:10.0pt">Each memory type is created the following named memseg lists:
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:1.0in;text-indent:-.25in;mso-list:l0 level1 lfo2">
<![if !supportLists]><span class="Arial-10"><span style="font-size:10.0pt;font-family:Symbol"><span style="mso-list:Ignore">·<span style="font:7.0pt "Times New Roman"">
</span></span></span></span><![endif]><span class="Arial-10"><span style="font-size:10.0pt">memseg-1048576k-0-0(1GB) with 64 segments:
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:1.0in;text-indent:-.25in;mso-list:l0 level1 lfo2">
<![if !supportLists]><span class="Arial-10"><span style="font-size:10.0pt;font-family:Symbol"><span style="mso-list:Ignore">·<span style="font:7.0pt "Times New Roman"">
</span></span></span></span><![endif]><span class="Arial-10"><span style="font-size:10.0pt">memseg-2048k-0-0(2MB) with 32768 segments.
<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">During SBC 6400 initialization, requesting the system to create 64 huge pages of 1GB size. DPDK allocates all these 64 huge pages of 1
GB size in a contiguous physical memory location. If all these pages are allocated in a contiguous memory location, no issue has been observed while remapping the huge pages into the memory segment list of size 64. But with ASLR enabled, it is not guaranteed
that the memory for huge pages will always be allocated in contiguous memory locations. When ASLR is enabled, if DPDK creates the memory for huge pages in a contiguous memory location, remapping the huge page memory into the memory segment list will be done
at once in one step. This is the default behavior. <o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">The issue is happening while remapping the 64 huge pages, not created in contiguous physical memory, into the memory segment list. When
huge pages are not contiguous, the remapping will be done in two steps:<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><b><span style="font-size:10.0pt">1<sup>st</sup> step:<o:p></o:p></span></b></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">Huge page memory layout:<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> 0 1 2 3 4 5 6 7 8 9……………………………………………………………………..63<o:p></o:p></span></span></p>
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="margin-left:27.75pt;border-collapse:collapse;border:none">
<tbody>
<tr>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> <o:p></o:p></span></span></p>
<p class="Body" style="margin-left:.4in;text-align:justify">For example, if 0-9 pages are contiguous, and the rest of the huge pages are stored in different physical memory locations, only 0-9 huge pages will be remapped into the memory segment list.<o:p></o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><o:p> </o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify">Memory segment list:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> 0 1 2 3 4 5 6 7 8 9……………………………………………………………………..63<o:p></o:p></span></span></p>
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="margin-left:27.75pt;border-collapse:collapse;border:none">
<tbody>
<tr>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
</tr>
</tbody>
</table>
<p class="Body" style="margin-left:.4in;text-align:justify"><span style="font-size:10.0pt"><o:p> </o:p></span></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><b><o:p> </o:p></b></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><b>2<sup>nd</sup> Step:<o:p></o:p></b></p>
<p class="Body" style="margin-left:.4in;text-align:justify">Remapping will be done again for the rest of the huge pages, this time, as the memory segment list is not empty (as it is already having 9 segments), DPDK is leaving a space for one segment in the
memory segment list and try to remap the huge pages into the rest of the segments in the memory segment list. As both huge pages and memory segment list are equal in size 64, DPDK is failing to get the enough memory from the memory segment list as it is already
left the space for one segment in the memory segment list. <o:p></o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt">Huge page memory layout:<o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> 0 1 2 3 4 5 6 7 8 9 10 11 …………………………………………..63<o:p></o:p></span></span></p>
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="margin-left:27.75pt;border-collapse:collapse;border:none">
<tbody>
<tr>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:#8496B0;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> <o:p></o:p></span></span></p>
<p class="Body" style="margin-left:.4in;text-align:justify">The remaining huge pages are 54. DPDK tries to remap the 54 huge pages into the memory segment list.
<o:p></o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify">But the memory segment list is having 53 segments as it is left one segment for a hole. Hence, the memory allocation would be failed and initialization of DPDK would also be failed.<o:p></o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify">Memory segment list:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:27.75pt;text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"> 0 1 2 3 4 5 6 7 8 9 10 11 12 13 ……………………………………………..63<o:p></o:p></span></span></p>
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="margin-left:27.75pt;border-collapse:collapse;border:none">
<tbody>
<tr>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#8496B0"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;background:#7B7B7B;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.55pt;border:solid windowtext 1.0pt;border-left:none;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter" />
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0" />
<v:f eqn="sum @0 1 0" />
<v:f eqn="sum 0 0 @1" />
<v:f eqn="prod @2 1 2" />
<v:f eqn="prod @3 21600 pixelWidth" />
<v:f eqn="prod @3 21600 pixelHeight" />
<v:f eqn="sum @0 0 1" />
<v:f eqn="prod @6 1 2" />
<v:f eqn="prod @7 21600 pixelWidth" />
<v:f eqn="sum @8 21600 0" />
<v:f eqn="prod @7 21600 pixelHeight" />
<v:f eqn="sum @10 21600 0" />
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" />
<o:lock v:ext="edit" aspectratio="t" />
</v:shapetype><v:shape id="Straight_x0020_Arrow_x0020_Connector_x0020_3" o:spid="_x0000_s1029" type="#_x0000_t75" style='position:absolute;left:0;text-align:left;margin-left:1.5pt;margin-top:10.35pt;width:8.25pt;height:36.75pt;z-index:251659264;visibility:visible;mso-width-percent:0;mso-height-percent:0;mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;mso-position-horizontal:absolute;mso-position-horizontal-relative:text;mso-position-vertical:absolute;mso-position-vertical-relative:text;mso-width-percent:0;mso-height-percent:0;mso-width-relative:page;mso-height-relative:page'>
<v:imagedata src="cid:image001.png@01DA4D47.AE9DB9C0" o:title="" />
<o:lock v:ext="edit" aspectratio="f" />
</v:shape><![endif]--><![if !vml]><span style="mso-ignore:vglayout;position:absolute;z-index:251659264;left:0px;margin-left:2px;margin-top:14px;width:11px;height:49px"><img width="11" height="49" style="width:.1145in;height:.5104in" src="cid:image001.png@01DA4D47.AE9DB9C0" v:shapes="Straight_x0020_Arrow_x0020_Connector_x0020_3"></span><![endif]><span class="Arial-10"><span style="font-size:10.0pt;color:#5B9BD5"><o:p></o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
<td width="26" valign="top" style="width:19.5pt;border:solid windowtext 1.0pt;border-left:none;background:red;padding:0in 5.4pt 0in 5.4pt">
<p class="MsoNormal" style="text-align:justify"><span class="Arial-10"><span style="font-size:10.0pt"><o:p> </o:p></span></span></p>
</td>
</tr>
</tbody>
</table>
<p class="Body" style="margin-left:.4in;text-align:justify"><!--[if gte vml 1]><v:shape id="Straight_x0020_Arrow_x0020_Connector_x0020_5" o:spid="_x0000_s1028" type="#_x0000_t75" style='position:absolute;left:0;text-align:left;margin-left:249.1pt;margin-top:2.6pt;width:243pt;height:13.5pt;z-index:251660288;visibility:visible;mso-width-percent:0;mso-height-percent:0;mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;mso-position-horizontal:absolute;mso-position-horizontal-relative:text;mso-position-vertical:absolute;mso-position-vertical-relative:text;mso-width-percent:0;mso-height-percent:0;mso-width-relative:page;mso-height-relative:page'>
<v:imagedata src="cid:image002.png@01DA4D47.AE9DB9C0" o:title="" />
<o:lock v:ext="edit" aspectratio="f" />
</v:shape><![endif]--><![if !vml]><span style="mso-ignore:vglayout;position:absolute;z-index:251660288;left:0px;margin-left:332px;margin-top:3px;width:324px;height:18px"><img width="324" height="18" style="width:3.375in;height:.1875in" src="cid:image002.png@01DA4D47.AE9DB9C0" v:shapes="Straight_x0020_Arrow_x0020_Connector_x0020_5"></span><![endif]><!--[if gte vml 1]><v:shape id="_x0000_s1027" type="#_x0000_t75" alt="Leave space for a hole if memory segment list is not empty" style='position:absolute;left:0;text-align:left;margin-left:148.65pt;margin-top:32.55pt;width:177pt;height:40.5pt;z-index:251661312;visibility:visible;mso-width-percent:0;mso-height-percent:0;mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;mso-position-horizontal:absolute;mso-position-horizontal-relative:text;mso-position-vertical:absolute;mso-position-vertical-relative:text;mso-width-percent:0;mso-height-percent:0;mso-width-relative:margin;mso-height-relative:margin'>
<v:imagedata src="cid:image003.emz@01DA4D47.AE9DB9C0" o:title="" />
</v:shape><![endif]--><![if !vml]><span style="mso-ignore:vglayout;position:absolute;z-index:251661312;left:0px;margin-left:198px;margin-top:43px;width:236px;height:54px"><img width="236" height="54" style="width:2.4583in;height:.5625in" src="cid:image004.png@01DA4D47.AE9DB9C0" alt="Leave space for a hole if memory segment list is not empty" v:shapes="_x0000_s1027"></span><![endif]><!--[if gte vml 1]><v:shape id="_x0000_s1026" type="#_x0000_t75" alt="The space is having only for 53 segments." style='position:absolute;left:0;text-align:left;margin-left:336.15pt;margin-top:19.05pt;width:123pt;height:40.5pt;z-index:251658240;visibility:visible;mso-width-percent:0;mso-height-percent:0;mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;mso-position-horizontal:absolute;mso-position-horizontal-relative:text;mso-position-vertical:absolute;mso-position-vertical-relative:text;mso-width-percent:0;mso-height-percent:0;mso-width-relative:margin;mso-height-relative:margin'>
<v:imagedata src="cid:image005.emz@01DA4D47.AE9DB9C0" o:title="" />
</v:shape><![endif]--><![if !vml]><span style="mso-ignore:vglayout;position:absolute;z-index:251658240;left:0px;margin-left:448px;margin-top:25px;width:164px;height:54px"><img width="164" height="54" style="width:1.7083in;height:.5625in" src="cid:image006.png@01DA4D47.AE9DB9C0" alt="The space is having only for 53 segments." v:shapes="_x0000_s1026"></span><![endif]><b><span style="font-size:10.0pt"><o:p></o:p></span></b></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><b><o:p> </o:p></b></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><b><o:p> </o:p></b></p>
<p class="Body" style="margin-left:.4in;text-align:justify"> <o:p></o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><o:p> </o:p></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><b><span style="background:yellow;mso-highlight:yellow">Note: Why DPDK is leaving a space for a hole in a memory segment list?<o:p></o:p></span></b></p>
<p class="Body" style="margin-left:.4in;text-align:justify"><b><span style="background:yellow;mso-highlight:yellow">Basically, DPDK is leaving the space to know how many segments there are in order to map all pages into one address space, and leave appropriate
holes between segments so that rte_malloc does not concatenate them into one big segment.</span>
<span style="background:yellow;mso-highlight:yellow">But in this case, all the 64 pages are belongs to one address space and leaving space for a hole is not required.</span><o:p></o:p></b></p>
<p class="Body" style="text-align:justify"><o:p> </o:p></p>
<p class="Body" style="text-align:justify">The following are my queries:<o:p></o:p></p>
<p class="Body" style="margin-left:.5in;text-align:justify;text-indent:-.25in;mso-list:l1 level1 lfo3">
<![if !supportLists]><span style="mso-list:Ignore">1.<span style="font:7.0pt "Times New Roman"">
</span></span><![endif]>Why the space is leaving in the memseg list? And what is the significance of the hole?
<o:p></o:p></p>
<p class="Body" style="margin-left:.5in;text-align:justify;text-indent:-.25in;mso-list:l1 level1 lfo3">
<![if !supportLists]><span style="mso-list:Ignore">2.<span style="font:7.0pt "Times New Roman"">
</span></span><![endif]>Can I scale up the size of the memory segment list to greater than the 64?<o:p></o:p></p>
<p class="Body" style="margin-left:.5in;text-align:justify"><o:p> </o:p></p>
<p class="Body" style="text-align:justify">Regards,<o:p></o:p></p>
<p class="Body" style="text-align:justify">Sudhakar<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</body>
</html>