<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=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@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;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0in;
font-size:10.0pt;
font-family:"Courier New";}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:Consolas;}
span.moz-txt-tag
{mso-style-name:moz-txt-tag;}
span.EmailStyle22
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
mso-ligatures:none;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</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-IE" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Maryam Tahhan <mtahhan@redhat.com>
<br>
<b>Sent:</b> Tuesday, December 5, 2023 11:31 AM<br>
<b>To:</b> Koikkara Reeny, Shibin <shibin.koikkara.reeny@intel.com>; ferruh.yigit@amd.com; stephen@networkplumber.org; lihuisong@huawei.com; fengchengwen@huawei.com; liuyonglong@huawei.com<br>
<b>Cc:</b> dev@dpdk.org<br>
<b>Subject:</b> Re: [v2] net/af_xdp: enable a sock path alongside use_cni<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On 04/12/2023 17:18, Koikkara Reeny, Shibin wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre><span style="color:#007CFF"> Prerequisites<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">@@ -223,8 +224,7 @@ Howto run dpdk-testpmd with CNI plugin:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"> securityContext:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"> capabilities:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"> add:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">- - CAP_NET_RAW<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">- - CAP_BPF<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+ - NET_RAW<o:p></o:p></span></pre>
</blockquote>
<pre>Need to update the 1.3. Prerequisites.<o:p></o:p></pre>
</blockquote>
<p><o:p> </o:p></p>
<p>Sorry, what are you referring to?<o:p></o:p></p>
<p><o:p> </o:p></p>
<p>You are removing the CAP_NET_RAW and CAP_BPF. So you will need to update the doc section 1.3 Prerequisites.[1]<o:p></o:p></p>
<p>[1] <a href="https://doc.dpdk.org/guides/howto/af_xdp_cni.html">https://doc.dpdk.org/guides/howto/af_xdp_cni.html</a>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre><o:p> </o:p></pre>
<pre><o:p> </o:p></pre>
<pre><o:p> </o:p></pre>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<pre><span style="color:#007CFF"> resources:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"> requests:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"> hugepages-2Mi: 2Gi<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">@@ -239,14 +239,20 @@ Howto run dpdk-testpmd with CNI plugin:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"><o:p> </o:p></span></pre>
<pre><span style="color:#007CFF"> .. _pod.yaml: <a href="https://github.com/intel/afxdp-plugins-for">https://github.com/intel/afxdp-plugins-for</a>-<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">kubernetes/blob/v0.0.2/test/e2e/pod-1c1d.yaml<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"><o:p> </o:p></span></pre>
<pre><span style="color:#007CFF">+.. note::<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+ For Kernel versions older than 5.19 `CAP_BPF` is also required in<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+ the container capabilities stanza.<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"> * Run DPDK with a command like the following:<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"><o:p> </o:p></span></pre>
<pre><span style="color:#007CFF"> .. code-block:: console<o:p></o:p></span></pre>
<pre><span style="color:#007CFF"><o:p> </o:p></span></pre>
<pre><span style="color:#007CFF"> kubectl exec -i <Pod name> --container <containers name> -- \<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">- /<Path>/dpdk-testpmd -l 0,1 --no-pci \<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">- --vdev=net_af_xdp0,use_cni=1,iface=<interface name> \<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">- -- --no-mlockall --in-memory<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+ /<Path>/dpdk-testpmd -l 0-2 --no-pci --main-lcore=2 \<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+ --vdev net_af_xdp0,iface=<interface<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">name>,use_cni=1,uds_path=<span class="moz-txt-tag"><i>/</i></span><i>tmp/afxdp_dp<span class="moz-txt-tag">/</span></i><interface name>/afxdp.sock<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">\<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">+ --vdev net_af_xdp1,iface=e<interface<o:p></o:p></span></pre>
<pre><span style="color:#007CFF">name>,use_cni=1,uds_path=<span class="moz-txt-tag"><i>/</i></span><i>tmp/afxdp_dp<span class="moz-txt-tag">/</span></i><interface name>/afxdp.sock<o:p></o:p></span></pre>
</blockquote>
<pre>There is a typo " iface=e<interface " == "iface=<interface"<o:p></o:p></pre>
</blockquote>
<p><o:p> </o:p></p>
<p>Ack<o:p></o:p></p>
<p><o:p> </o:p></p>
</div>
</div>
</body>
</html>