Thank you for the info.

On Mon, Oct 23, 2023 at 8:19 PM Stephen Hemminger <
step...@networkplumber.org> wrote:

> On Mon, 23 Oct 2023 18:32:48 +0300
> Pavel Vazharov <frea...@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 via email to