DPDK usage discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Pavel Vazharov <freakpv@gmail.com>
Cc: users <users@dpdk.org>
Subject: Re: Questions about the the pdump functionality
Date: Mon, 23 Oct 2023 10:19:34 -0700	[thread overview]
Message-ID: <20231023101934.19d96421@hermes.local> (raw)
In-Reply-To: <CAK9EM1-OtXU7zb-p9eknNScKehySVzYCSHMz2jfVHj1mngsQAg@mail.gmail.com>

On Mon, 23 Oct 2023 18:32:48 +0300
Pavel Vazharov <freakpv@gmail.com> wrote:

> Hi there,
> 
> We've a DPDK based application from which we need to take packet dumps from
> time to time when problems arise. We are planning to use librte_pdump
> functions and the dpdk-dumppcap tool.
> I've few questions in related to the pdump functionality which we want to
> use:
> - Is calling `rte_pdump_init` at the startup of the main application
> causing some overhead for the packet processing during its run if there is
> no actual packet capturing enabled by the dpdk-dumppcap tool? I suppose
> there should be some check in place but is it something like a single `if`
> condition on a boolean flag or something heavier?
> - Is it possible then to call `rte_pdump_init` during the runtime of the
> main application only when I know that I'm about to start the dpdk-dumppcap
> tool? I mean, is it supported and safe to call `rte_pdump_init` and
> `rte_pdump_uninit` while the main application is running and processing
> packets or these functions are supposed to be called only at application
> startup and application stop.
> 
> Thanks in advance,
> Pavel.

Short answer:
The overhead only happens when the dump application is running.

Long answer:
Running rte_pdump_init() tells adds an additional service to the
multi-process (primary/secondary) communication mechanism.
Secondary and primary process connect with each other over Unix
domain socket, and the services are handled by the multi-process
thread in the primary process. Adding a service does not interact
with fast path at all.

The best way (as always) to discover this yourself is to read
the source code and follow along.

  reply	other threads:[~2023-10-23 17:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-23 15:32 Pavel Vazharov
2023-10-23 17:19 ` Stephen Hemminger [this message]
2023-10-24  5:37   ` Pavel Vazharov

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=20231023101934.19d96421@hermes.local \
    --to=stephen@networkplumber.org \
    --cc=freakpv@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).