DPDK usage discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: "Kyle.Gagnon@gd-ms.com" <Kyle.Gagnon@gd-ms.com>
Cc: "users@dpdk.org" <users@dpdk.org>, Kyle Gagnon <kmgagnon99@gmail.com>
Subject: Re: DPDK Non-Supported Hardware Usage Question - Kyle Gagnon GDMS
Date: Thu, 1 Dec 2022 08:50:02 -0800	[thread overview]
Message-ID: <20221201085002.742b6098@hermes.local> (raw)
In-Reply-To: <BN0P110MB16274BB834A0A8E0A21F8CDBBE159@BN0P110MB1627.NAMP110.PROD.OUTLOOK.COM>

On Wed, 30 Nov 2022 13:35:26 +0000
"Kyle.Gagnon@gd-ms.com" <Kyle.Gagnon@gd-ms.com> wrote:

> Hello!
> 
> My name is Kyle Gagnon and I work at General Dynamics Mission Systems. We are evaluating DPDK and its use. I am currently trying to get DPDK to work on a Xilinx ZCU102 evaluation board. The problem is that the NIC is an onboard ethernet interface so it does not go through any PCI. I won't be able to use an external NIC card so I have to work with what I have. I understand that I can use the PCAP library PMD. Here is my question if you don't mind helping me out!

That will be really slow and limiting. Why use DPDK if there is no native driver support?

> 
> I am compiling DPDK through meson and then in a custom application I am writing myself I have to use Makefiles. I need to statically link all of the libraries. So I did that and wrote an extremely basic program that doesn't do much at all. Here it is (I am copying from another computer. This is a C++ application and I am building it for ARM on an x86_64 Ubuntu WSL machine)
> 
> DpdkEntry.cpp
> 
> #include <iostream>
> #include <string>
> 
> #include <rte_eal.h>
> #include <rte_ethdev.h>
> #include <rte_cycles.h>
> #include <rte_lcore.h>
> #include <rte_mbuf.h>
> 
> Int main(int argc, char **argv) {
> 
>                int returnVal;
> 
>                std::cout << "Setting up EAL environment\n";
> 
>                returnVal = rte_eal_init(argc, argv);
>                if (returnVal < 0) {
>                               rte_exit(EXIT_FAILURE, "Error with initializing EAL\n");
>                }
> 
>                rte_eal_cleanup();
> 
>                return 0;
> }
> 
> When I run this application through a QEMU emulation of the ZCU102 board I use the following command
> 
> dpdk-test -l 0-3 -n 4 -vdev 'net_pcap0,iface=eth0'
> 
> I have built librte_net_pcap and linked it in so it is in the application. When I run the above command (using the above source code) I get the following:
> 
> EAL: Detected CPU lcores: 4
> EALL Detected NUMA nodes: 1
> EAL: Detected static linkage of DPDK
> EAL: failed to parse device "net_pcap0"
> EAL: Unable to parse device 'net_pcap0,iface=eth0'
> EAL: Error - exiting with code: 1
>   Cause: Error with initializing EAL
> 
> When I run a testpmd with the same parameters on the same emulated board I am able to use the ethernet port so what am I doing wrong with my custom code? I am going to forward this to my personal email in case I need to follow up with more information (the source code and building is on my personal computer rather than my work computer).

Try adding printfs inside the pcap poll mode driver.
It may not be getting loaded.


      reply	other threads:[~2022-12-01 16:50 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-30 13:35 Kyle.Gagnon
2022-12-01 16:50 ` Stephen Hemminger [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221201085002.742b6098@hermes.local \
    --to=stephen@networkplumber.org \
    --cc=Kyle.Gagnon@gd-ms.com \
    --cc=kmgagnon99@gmail.com \
    --cc=users@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).