<div dir="ltr"><div dir="ltr">Hi Thomas,<div><br></div><div>I was doing some more testing and wanted to increase the RX queues for the CX5 but was wondering how I could do that. I see in the usage example in the docs, I could pass in --rxq=2 --txq=2 to set the queues to 2 each but I don't see that in my output when I run the command. Below is the output from running the command in <a href="https://doc.dpdk.org/guides/nics/mlx5.html#usage-example">https://doc.dpdk.org/guides/nics/mlx5.html#usage-example</a>. Does this mean that the MCX515A-CCAT I have can't support more than 1 queue or am I supposed to configure another setting?</div><div><br></div><div>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: Detected 80 lcore(s)</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: Detected 2 NUMA nodes</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: Multi-process socket /var/run/dpdk/rte/mp_socket</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: Selected IOVA mode 'PA'</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: Probing VFIO support...</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: VFIO support initialized</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:af:00.0 (socket 1)</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">mlx5_pci: Size 0xFFFF is not power of 2, will be aligned to 0x10000.</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">EAL: No legacy callbacks, legacy socket not created</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">Interactive-mode selected</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">testpmd: create a new mbuf pool <mb_pool_0>: n=203456, size=2176, socket=0</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">testpmd: preferred mempool ops selected: ring_mp_mc</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">testpmd: create a new mbuf pool <mb_pool_1>: n=203456, size=2176, socket=1</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">testpmd: preferred mempool ops selected: ring_mp_mc</span></p>
<p class="gmail-p2" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0);min-height:13px"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures"></span><br></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">Warning! port-topology=paired and odd forward ports number, the last port will pair with itself.</span></p>
<p class="gmail-p2" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0);min-height:13px"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures"></span><br></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">Configuring Port 0 (socket 1)</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">mlx5_pci: Failed to init cache list FDB_ingress_0_matcher_cache entry (nil).</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">mlx5_pci: Failed to init cache list FDB_ingress_0_matcher_cache entry (nil).</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">mlx5_pci: Failed to init cache list FDB_ingress_0_matcher_cache entry (nil).</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">mlx5_pci: Failed to init cache list FDB_ingress_0_matcher_cache entry (nil).</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">Port 0: EC:0D:9A:68:21:A8</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">Checking link statuses...</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">Done</span></p>
<p class="gmail-p1" style="margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span class="gmail-s1" style="font-variant-ligatures:no-common-ligatures">mlx5_pci: Failed to init cache list FDB_ingress_0_matcher_cache entry (nil).</span></p></div><div><br></div><div>Best,</div><div>Aaron</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Feb 21, 2022 at 11:10 PM Thomas Monjalon <<a href="mailto:thomas@monjalon.net">thomas@monjalon.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">21/02/2022 21:10, Aaron Lee:<br>
> Hi Thomas,<br>
> <br>
> Actually I remembered in my previous setup I had run dpdk-devbind.py to<br>
> bind the mlx5 NIC to igb_uio. I read somewhere that you don't need to do<br>
> this and just wanted to confirm that this is correct.<br>
<br>
Indeed, mlx5 PMD runs on top of mlx5 kernel driver.<br>
We don't need UIO or VFIO drivers.<br>
The kernel modules must remain loaded and can be used in the same time.<br>
When DPDK is working, the traffic goes to the userspace PMD by default,<br>
but it is possible to configure some flows to go directly to the kernel driver.<br>
This behaviour is called "bifurcated model".<br>
<br>
<br>
> On Mon, Feb 21, 2022 at 11:45 AM Aaron Lee <<a href="mailto:acl049@ucsd.edu" target="_blank">acl049@ucsd.edu</a>> wrote:<br>
> <br>
> > Hi Thomas,<br>
> ><br>
> > I tried installing things from scratch two days ago and have gotten<br>
> > things working! I think part of the problem was figuring out the correct<br>
> > hugepage allocation for my system. If I recall correctly, I tried setting<br>
> > up my system with default page size 1G but perhaps didn't have enough pages<br>
> > allocated at the time. Currently have the following which gives me the<br>
> > output you've shown previously.<br>
> ><br>
> > root@yeti-04:~/dpdk-21.11# usertools/dpdk-hugepages.py -s<br>
> > Node Pages Size Total<br>
> > 0 16 1Gb 16Gb<br>
> > 1 16 1Gb 16Gb<br>
> ><br>
> > root@yeti-04:~/dpdk-21.11# echo show port summary all |<br>
> > build/app/dpdk-testpmd --in-memory -- -i<br>
> > EAL: Detected CPU lcores: 80<br>
> > EAL: Detected NUMA nodes: 2<br>
> > EAL: Detected static linkage of DPDK<br>
> > EAL: Selected IOVA mode 'PA'<br>
> > EAL: No free 2048 kB hugepages reported on node 0<br>
> > EAL: No free 2048 kB hugepages reported on node 1<br>
> > EAL: No available 2048 kB hugepages reported<br>
> > EAL: VFIO support initialized<br>
> > EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:af:00.0 (socket 1)<br>
> > TELEMETRY: No legacy callbacks, legacy socket not created<br>
> > Interactive-mode selected<br>
> > testpmd: create a new mbuf pool <mb_pool_0>: n=779456, size=2176, socket=0<br>
> > testpmd: preferred mempool ops selected: ring_mp_mc<br>
> > testpmd: create a new mbuf pool <mb_pool_1>: n=779456, size=2176, socket=1<br>
> > testpmd: preferred mempool ops selected: ring_mp_mc<br>
> ><br>
> > Warning! port-topology=paired and odd forward ports number, the last port<br>
> > will pair with itself.<br>
> ><br>
> > Configuring Port 0 (socket 1)<br>
> > Port 0: EC:0D:9A:68:21:A8<br>
> > Checking link statuses...<br>
> > Done<br>
> > testpmd> show port summary all<br>
> > Number of available ports: 1<br>
> > Port MAC Address Name Driver Status Link<br>
> > 0 EC:0D:9A:68:21:A8 0000:af:00.0 mlx5_pci up 100 Gbps<br>
> ><br>
> > Best,<br>
> > Aaron<br>
> ><br>
> > On Mon, Feb 21, 2022 at 11:03 AM Thomas Monjalon <<a href="mailto:thomas@monjalon.net" target="_blank">thomas@monjalon.net</a>><br>
> > wrote:<br>
> ><br>
> >> 21/02/2022 19:52, Thomas Monjalon:<br>
> >> > 18/02/2022 22:12, Aaron Lee:<br>
> >> > > Hello,<br>
> >> > ><br>
> >> > > I'm trying to get my ConnectX5 NIC working with DPDK v21.11 but I'm<br>
> >> > > wondering if the card I have simply isn't compatible. I first noticed<br>
> >> that<br>
> >> > > the model I was given is MCX515A-CCA_Ax_Bx. Below are some of the<br>
> >> error<br>
> >> > > logs when running dpdk-pdump.<br>
> >> ><br>
> >> > When testing a NIC, it is more convenient to use dpdk-testpmd.<br>
> >> ><br>
> >> > > EAL: Detected CPU lcores: 80<br>
> >> > > EAL: Detected NUMA nodes: 2<br>
> >> > > EAL: Detected static linkage of DPDK<br>
> >> > > EAL: Multi-process socket<br>
> >> /var/run/dpdk/rte/mp_socket_383403_1ac7441297c92<br>
> >> > > EAL: failed to send to (/var/run/dpdk/rte/mp_socket) due to No such<br>
> >> file or<br>
> >> > > directory<br>
> >> > > EAL: Fail to send request /var/run/dpdk/rte/mp_socket:bus_vdev_mp<br>
> >> > > vdev_scan(): Failed to request vdev from primary<br>
> >> > > EAL: Selected IOVA mode 'PA'<br>
> >> > > EAL: failed to send to (/var/run/dpdk/rte/mp_socket) due to No such<br>
> >> file or<br>
> >> > > directory<br>
> >> > > EAL: Fail to send request /var/run/dpdk/rte/mp_socket:eal_vfio_mp_sync<br>
> >> > > EAL: Cannot request default VFIO container fd<br>
> >> > > EAL: VFIO support could not be initialized<br>
> >> > > EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:af:00.0<br>
> >> (socket 1)<br>
> >> > > EAL: failed to send to (/var/run/dpdk/rte/mp_socket) due to No such<br>
> >> file or<br>
> >> > > directory<br>
> >> > > EAL: Fail to send request /var/run/dpdk/rte/mp_socket:common_mlx5_mp<br>
> >> > > mlx5_common: port 0 request to primary process failed<br>
> >> > > mlx5_net: probe of PCI device 0000:af:00.0 aborted after encountering<br>
> >> an<br>
> >> > > error: No such file or directory<br>
> >> > > mlx5_common: Failed to load driver mlx5_eth<br>
> >> > > EAL: Requested device 0000:af:00.0 cannot be used<br>
> >> > > EAL: Error - exiting with code: 1<br>
> >> > > Cause: No Ethernet ports - bye<br>
> >> ><br>
> >> > From this log, we miss the previous steps before running the<br>
> >> application.<br>
> >> ><br>
> >> > Please check these simple steps:<br>
> >> > - install rdma-core<br>
> >> > - build dpdk (meson build && ninja -C build)<br>
> >> > - reserve hugepages (usertools/dpdk-hugepages.py -r 1G)<br>
> >> > - run testpmd (echo show port summary all | build/app/dpdk-testpmd<br>
> >> --in-memory -- -i)<br>
> >> ><br>
> >> > EAL: Detected CPU lcores: 10<br>
> >> > EAL: Detected NUMA nodes: 1<br>
> >> > EAL: Detected static linkage of DPDK<br>
> >> > EAL: Selected IOVA mode 'PA'<br>
> >> > EAL: Probe PCI driver: mlx5_pci (15b3:101f) device: 0000:08:00.0<br>
> >> (socket 0)<br>
> >> > Interactive-mode selected<br>
> >> > testpmd: create a new mbuf pool <mb_pool_0>: n=219456, size=2176,<br>
> >> socket=0<br>
> >> > testpmd: preferred mempool ops selected: ring_mp_mc<br>
> >> > Configuring Port 0 (socket 0)<br>
> >> > Port 0: 0C:42:A1:D6:E0:00<br>
> >> > Checking link statuses...<br>
> >> > Done<br>
> >> > testpmd> show port summary all<br>
> >> > Number of available ports: 1<br>
> >> > Port MAC Address Name Driver Status Link<br>
> >> > 0 0C:42:A1:D6:E0:00 08:00.0 mlx5_pci up 25 Gbps<br>
> >> ><br>
> >> > > I noticed that the pci id of the card I was given is 15b3:1017 as<br>
> >> below.<br>
> >> > > This sort of indicates to me that the PMD driver isn't supported on<br>
> >> this<br>
> >> > > card.<br>
> >> ><br>
> >> > This card is well supported and even officially tested with DPDK 21.11,<br>
> >> > as you can see in the release notes:<br>
> >> ><br>
> >> <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__doc.dpdk.org_guides_rel-5Fnotes_release-5F21-5F11.html-23tested-2Dplatforms&d=DwICAg&c=-35OiAkTchMrZOngvJPOeA&r=hV5L_ta1W9AMUIlRhnTmeA&m=Sjlw2sMlSxVzIY1zsNBhZueu7hv1__H7yXdaC5vzGYswqkAc_F9-SOmlhbM-J6yO&s=ioqgYPqVWdF2XE0iOZ4AZn5Vw_NGmtr5m9fYCf_TY9A&e=" rel="noreferrer" target="_blank">https://urldefense.proofpoint.com/v2/url?u=https-3A__doc.dpdk.org_guides_rel-5Fnotes_release-5F21-5F11.html-23tested-2Dplatforms&d=DwICAg&c=-35OiAkTchMrZOngvJPOeA&r=hV5L_ta1W9AMUIlRhnTmeA&m=Sjlw2sMlSxVzIY1zsNBhZueu7hv1__H7yXdaC5vzGYswqkAc_F9-SOmlhbM-J6yO&s=ioqgYPqVWdF2XE0iOZ4AZn5Vw_NGmtr5m9fYCf_TY9A&e=</a><br>
> >> ><br>
> >> > > af:00.0 Ethernet controller [0200]: Mellanox Technologies MT27800<br>
> >> Family<br>
> >> > > [ConnectX-5] [15b3:1017]<br>
> >> > ><br>
> >> > > I'd appreciate it if someone has gotten this card to work with DPDK to<br>
> >> > > point me in the right direction or if my suspicions were correct that<br>
> >> this<br>
> >> > > card doesn't work with the PMD.<br>
> >><br>
> >> If you want to check which hardware is supported by a PMD,<br>
> >> you can use this command:<br>
> >><br>
> >> usertools/dpdk-pmdinfo.py build/drivers/librte_net_mlx5.so<br>
> >> PMD NAME: mlx5_eth<br>
> >> PMD KMOD DEPENDENCIES: * ib_uverbs & mlx5_core & mlx5_ib<br>
> >> PMD HW SUPPORT:<br>
> >> Mellanox Technologies (15b3) : MT27700 Family [ConnectX-4] (1013) (All<br>
> >> Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT27700 Family [ConnectX-4 Virtual<br>
> >> Function] (1014) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT27710 Family [ConnectX-4 Lx] (1015)<br>
> >> (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT27710 Family [ConnectX-4 Lx Virtual<br>
> >> Function] (1016) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT27800 Family [ConnectX-5] (1017) (All<br>
> >> Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT27800 Family [ConnectX-5 Virtual<br>
> >> Function] (1018) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT28800 Family [ConnectX-5 Ex] (1019)<br>
> >> (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT28800 Family [ConnectX-5 Ex Virtual<br>
> >> Function] (101a) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT416842 BlueField integrated ConnectX-5<br>
> >> network controller (a2d2) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT416842 BlueField multicore SoC family<br>
> >> VF (a2d3) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT28908 Family [ConnectX-6] (101b) (All<br>
> >> Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT28908 Family [ConnectX-6 Virtual<br>
> >> Function] (101c) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT2892 Family [ConnectX-6 Dx] (101d) (All<br>
> >> Subdevices)<br>
> >> Mellanox Technologies (15b3) : ConnectX Family mlx5Gen Virtual Function<br>
> >> (101e) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT42822 BlueField-2 integrated ConnectX-6<br>
> >> Dx network controller (a2d6) (All Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT2894 Family [ConnectX-6 Lx] (101f) (All<br>
> >> Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT2910 Family [ConnectX-7] (1021) (All<br>
> >> Subdevices)<br>
> >> Mellanox Technologies (15b3) : MT43244 BlueField-3 integrated ConnectX-7<br>
> >> network controller (a2dc) (All Subdevices)<br>
> >><br>
> >> > Please tell me what drove you into the wrong direction,<br>
> >> > because I really would like to improve the documentation & tools.<br>
> >><br>
> >><br>
> >><br>
> >><br>
> <br>
<br>
<br>
<br>
<br>
<br>
</blockquote></div></div>