<div dir="ltr"><div>Hi Stephen,<br><br>Thank you for the quick response!<br><br>I was going to use this network card just for testing.<br><br>laptop :: ~ % sudo lspci -n -s 00:1f.6 <br>00:1f.6 0200: 8086:0d4f<br><br></div>I will check dpdk and kernel sources.<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Mar 8, 2024 at 10:14 PM Stephen Hemminger <<a href="mailto:stephen@networkplumber.org">stephen@networkplumber.org</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">On Fri, 8 Mar 2024 21:19:08 +0000<br>
sonntex <<a href="mailto:sonntex@gmail.com" target="_blank">sonntex@gmail.com</a>> wrote:<br>
<br>
> Hi,<br>
> <br>
> I am trying to configure dpdk on my laptop and get "no probed ethernet<br>
> devices" in dpdk-testpmd utility:<br>
> <br>
> laptop :: ~ % sudo dpdk-testpmd -l 0-1 -n 4 --log-level=debug -- -i<br>
> EAL: Detected CPU lcores: 8<br>
> EAL: Detected NUMA nodes: 1<br>
> EAL: Detected static linkage of DPDK<br>
> EAL: Multi-process socket /var/run/dpdk/rte/mp_socket<br>
> EAL: Selected IOVA mode 'VA'<br>
> EAL: VFIO support initialized<br>
> testpmd: No probed ethernet devices<br>
> Interactive-mode selected<br>
> testpmd: create a new mbuf pool <mb_pool_0>: n=155456, size=2176, socket=0<br>
> testpmd: preferred mempool ops selected: ring_mp_mc<br>
> Done<br>
> testpmd> ... <br>
> <br>
> Checked that dpdk 23.07 supports this my NIC at<br>
> <a href="http://doc.dpdk.org/guides/rel_notes/release_23_07.html" rel="noreferrer" target="_blank">http://doc.dpdk.org/guides/rel_notes/release_23_07.html</a>:<br>
> <br>
> Intel Corporation Ethernet Connection (16) I219-V<br>
> Firmware version: 0.6-4<br>
> Device id (pf): 8086:1a1f<br>
> Driver version(in-tree): 5.15.113-rt64 (Ubuntu22.04.2)(e1000)<br>
> <br>
> Configuration:<br>
> <br>
> laptop :: ~ % pacman -Ss dpdk<br>
> extra/dpdk 23.07-1 [installed]<br>
> A set of libraries and drivers for fast packet processing<br>
> <br>
> laptop :: ~ % sudo ethtool -i enp0s31f6<br>
> driver: e1000e<br>
> version: 6.7.8-arch1-1<br>
> firmware-version: 0.6-4<br>
> expansion-rom-version:<br>
> bus-info: 0000:00:1f.6<br>
> supports-statistics: yes<br>
> supports-test: yes<br>
> supports-eeprom-access: yes<br>
> supports-register-dump: yes<br>
> supports-priv-flags: yes<br>
> <br>
> laptop :: ~ % sudo modprobe vfio-pci<br>
> laptop :: ~ % sudo lsmod | grep vfio<br>
> vfio_pci 16384 0<br>
> vfio_pci_core 86016 1 vfio_pci<br>
> vfio_iommu_type1 45056 0<br>
> vfio 73728 3 vfio_pci_core,vfio_iommu_type1,vfio_pci<br>
> iommufd 106496 1 vfio<br>
> irqbypass 12288 2 vfio_pci_core,kvm<br>
> <br>
> laptop :: ~ % sudo dpdk-hugepages.py -m<br>
> laptop :: ~ % sudo dpdk-hugepages.py -p 2M --setup 1G<br>
> laptop :: ~ % sudo dpdk-hugepages.py -s<br>
> Node Pages Size Total<br>
> 0 512 2Mb 1Gb<br>
> Hugepages mounted on /dev/hugepages<br>
> <br>
> laptop :: ~ % sudo dpdk-devbind.py --status-dev net<br>
> Network devices using kernel driver<br>
> ===================================<br>
> 0000:00:14.3 'Comet Lake PCH-LP CNVi WiFi 02f0' if=wlan0 drv=iwlwifi<br>
> unused= *Active*<br>
> 0000:00:1f.6 'Ethernet Connection (10) I219-V 0d4f' if=enp0s31f6 drv=e1000e<br>
> unused=<br>
> <br>
> laptop :: ~ % sudo dpdk-devbind.py -b vfio-pci 0000:00:1f.6<br>
> laptop :: ~ % sudo dpdk-devbind.py --status-dev net<br>
> Network devices using DPDK-compatible driver<br>
> ============================================<br>
> 0000:00:1f.6 'Ethernet Connection (10) I219-V 0d4f' drv=vfio-pci<br>
> unused=e1000e<br>
> Network devices using kernel driver<br>
> ===================================<br>
> 0000:00:14.3 'Comet Lake PCH-LP CNVi WiFi 02f0' if=wlan0 drv=iwlwifi<br>
> unused=vfio-pci *Active<br>
> <br>
> Any suggestions on what might be missing here?<br>
> <br>
> Thanks!<br>
<br>
Most likely the DPDK E1000 driver doesn't support the full range of PCI device<br>
id's as the kernel driver. What is PCI information for you? I have similar<br>
device on this machine.<br>
<br>
$ lspci -n -s 00:1f.6<br>
00:1f.6 0200: 8086:15fc (rev 20)<br>
<br>
In my case the part that matters is the 15fc.<br>
Looking in DPDK drivers/net/e1000/base/e1000_hw.h, there is no #define for that<br>
type and no entry in drivers/net/e1000/em_ethdev.c:pci_id_em_map[]<br>
<br>
In linux kernel the entry is:<br>
drivers/net/ethernet/intel/e1000e/hw.h:#define E1000_DEV_ID_PCH_TGP_I219_V13 0x15FC<br>
<br>
The Intel drivers are not in sync. It is up to the E1000 DPDK<br>
maintainers to solve.<br>
<br>
Note: this older E1000 hardware is not fast, and using DPDK<br>
except as a test bed is really not worth it.<br>
</blockquote></div>