I recently ran the skeleton example on window 10: https://doc.dpdk.org/guides/sample_app_ug/skeleton.html I got the following error: [image: image.png] C:\dpdk\build\examples>dpdk-skeleton.exe EAL: Detected CPU lcores: 4 EAL: Detected NUMA nodes: 1 EAL: Multi-process support is requested, but not available. EAL: Requested device 0000:00:1f.6 cannot be used EAL: Probe PCI driver: net_ice (8086:159b) device: 0000:01:00.0 (socket -1) ice_flow_init(): Failed to initialize DDP parser, raw packet filter will not be supported EAL: Probe PCI driver: net_ice (8086:159b) device: 0000:01:00.1 (socket -1) ice_flow_init(): Failed to initialize DDP parser, raw packet filter will not be supported ice_program_hw_rx_queue(): currently package doesn't support RXDID (22) ice_rx_queue_start(): fail to program RX queue 0 ice_dev_start(): fail to start Rx queue 0 EAL: Error - exiting with code: 1 Cause: Cannot init port 0 I ran the l2fwd example and got the following error: https://doc.dpdk.org/guides/sample_app_ug/l2_forward_real_virtual.html [image: image.png] C:\dpdk\build\examples>dpdk-l2fwd.exe -l 0-3 -n 4 -- -q 8 -p 3 EAL: Detected CPU lcores: 4 EAL: Detected NUMA nodes: 1 EAL: Multi-process support is requested, but not available. EAL: Requested device 0000:00:1f.6 cannot be used EAL: Probe PCI driver: net_ice (8086:159b) device: 0000:01:00.0 (socket -1) ice_flow_init(): Failed to initialize DDP parser, raw packet filter will not be supported EAL: Probe PCI driver: net_ice (8086:159b) device: 0000:01:00.1 (socket -1) ice_flow_init(): Failed to initialize DDP parser, raw packet filter will not be supported MAC updating enabled Lcore 0: RX port 0 TX port 1 Lcore 0: RX port 1 TX port 0 Initializing port 0... ice_program_hw_rx_queue(): currently package doesn't support RXDID (22) ice_rx_queue_start(): fail to program RX queue 0 ice_dev_start(): fail to start Rx queue 0 EAL: Error - exiting with code: 1 Cause: rte_eth_dev_start:err=-5, port=0 ************************************************************************************************************************************************************************************* *Issue:* How can I resolve this issue for window 10: Initializing port 0... ice_program_hw_rx_queue(): currently package doesn't support RXDID (22) ice_rx_queue_start(): fail to program RX queue 0 ice_dev_start(): fail to start Rx queue 0 EAL: Error - exiting with code: 1 *Responses:* /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// I search the error log and found this in dpdk mail archive: https://www.mail-archive.com/users@dpdk.org/msg05761.html It has the same error but on linux. And the entire solution was also provided w.r.t linux. So I have no idea what would be the solution for window 10. As per the solution, *ice.pkg* files need to be installed but those files only work on linux i guess. and so there is no solution for window 10, i believe. /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Recently @Dmitry Kozlyuk mentioned on the same error that: " I'm afraid this might be a big limitation of E810 (net/ice): https://doc.dpdk.org/guides/nics/ice.html#limitations-or-known-issues The page says DPP (ice.pkg) loading is required for the NIC to work, but loading it is not yet supported on Windows, so I'm not even sure that this NIC is currently usable for DPDK on Windows. The best next step is to wait for replies from Intel people (I've replied to your message in users@dpdk.org to invite them). They enabled this PMD on Windows, so they probably tested it--- maybe there's some extra option required. " /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// I also contacted someone from microsoft and he said that: " These aren’t really Windows specific errors so I’m not sure I have any useful insight. Based on the mail thread you linked though it looks like you might try getting Intel’s latest driver package for the E810, I guess the driver package probably also includes a firmware update that might bring it into alignment with what the ice pmd expects. I have recently used E810 devices in our laboratory and I do recall they did upgrade the adapters to the latest firmware when the machines were provisioned for me but I don’t know which firmware or where they downloaded it from. " /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// *Notes:* Now based on the above I have made the following notes: (correct or not can be argued...) 1. DPDK is not supported with full capacity on Windows 10 for the E810 card. 2. Based on Intel guide (617015), I can see that they have mentioned that without DDP there are very little capabilities available but without the DDP the card can still process data. Good thing is that I only need UDP for now and I guess it is supported: " A general purpose DDP package is automatically installed with all supported 800 Series drivers on Windows, ESX, FreeBSD, and Linux operating systems, including those provided by the Data Plane Development Kit (DPDK). This general purpose DDP package is known as the OS-Default package. Additional DDP packages will be available to address packet processing needs for specific market segments. For example, a telecommunications (Comms) DDP package has been developed to support GTP and PPPoE protocols in addition to the protocols in the OS-Default package. The Comms DDP package is available with DPDK 19.11 and will also be supported by the 800 Series ice driver on Linux operating systems." *-- Introduction, Page 5, 617015, Intel Document* [image: image.png] * -- How DDP Works, Page 7, 617015, Intel Document* 3. The E810 limitation is not on windows but because of the firmware installed on the E810 card. And that E810 firmware can be updated but HOW and form WHERE (files)? I fformware can be updated by the end user, I can get the full capabilities working on Windows 10 I assume? 4. I am sure that there is a work around this problem but I am very new to DPDK and hence can not proceed without an expert agreeing on it. *Questions:* 1. Is there any way to proceed with E810 without DDP even for the basic functionality such as UDP? 2. Is there a way to update the E810 firmware so that DDP can be supported on window 10? Or may be any other software approach on Windows 10 that can solve this issue? 3. What card should I use next that supports DDP on Windows 10 and I can get to achieve the required results? 4. Can anyone who has run DPDK on window 10 suggest some NIC cards? 5. I have a doubt that I might be doing something wrong in the installation. Such as; I have not installed the E810 card drivers and just installed the Netuio and Virt2Phy drivers. (Maybe in the default E810 window drivers, some DDP files are available that I can use for DPDK)? Waiting for some good news.... Thanks On Thu, Nov 16, 2023 at 2:30 PM Zhang, Qi Z wrote: > > > > -----Original Message----- > > From: Dmitry Kozlyuk > > Sent: Thursday, November 16, 2023 3:12 PM > > To: Im Groot > > Cc: users@dpdk.org; Yang, Qiming ; Zhang, Qi Z > > ; Kadam, Pallavi > > Subject: Re: DPDK Window 10: Hello World example Error: Failed to > initialize > > DDP parser > > > > + net/ice and Windows maintainers from Intel. > > > > 2023-11-15 17:16 (UTC+0500), Im Groot: > > > Hi > > > > > > I recently started building a DPDK for window 10 22H2. I was able to > > > build the virt2phy and netuio driver successfully. I am using DPDK > > > DPDK 22.11.3 (LTS). > > > > > > - I used visual studio 2019 community edition with WDK and SDK > > > 10.0.22000 as recommended by you. And both drivers were built and > > > installed successfully. Device manager looks like this: > > > [image: image.png] > > > > > > > > > > > > - I have granted lock pages in memory on window 10. I guess this is > > > supported. > > > [image: image.png] > > > > > > > > > > > > - Now I am running the hello world example and I am getting the > > > following message on cmd. I want to know how I can debug this issue: > > > [image: image.png] > > > > > > > > > C:\dpdk\build\examples>dpdk-helloworld.exe -l 0-3 > > > EAL: Detected CPU lcores: 4 > > > EAL: Detected NUMA nodes: 1 > > > EAL: Multi-process support is requested, but not available. > > > EAL: Requested device 0000:00:1f.6 cannot be used > > > EAL: Probe PCI driver: net_ice (8086:159b) device: 0000:01:00.0 > > > (socket -1) > > > ice_flow_init(): Failed to initialize DDP parser, raw packet filter > > > will not be supported > > > EAL: Probe PCI driver: net_ice (8086:159b) device: 0000:01:00.1 > > > (socket -1) > > > ice_flow_init(): Failed to initialize DDP parser, raw packet filter > > > will not be supported hello from core 1 hello from core 2 hello from > > > core 3 hello from core 0 > > > > > > > > > > > > *Questions:* > > > I have the following queries: > > > > > > 1. What does this error say (hello world example). Is there some > issue > > > with the installation? How can I resolve this issue? > > > - *EAL: Probe PCI driver: net_ice (8086:159b) device: > 0000:01:00.0 > > > (socket -1)* > > > *ice_flow_init(): Failed to initialize DDP parser, raw packet > filter > > > will not be supported* > > Raw packet filter is a specific flow offloading feature only be supported > when the PMD will be able to load the DDP package, I guess in windows this > will not happen and this warning can be ignored. > > > > 2. Does the driver in the device manager look alright? > > > 3. I am using DPDK DPDK 22.11.3 (LTS). Is this the correct version > to > > > use? > > > > > > > > > Thanks > >