[RFC 2/5] common/mlx5: introduce tracepoints for mlx5 drivers

Slava Ovsiienko viacheslavo at nvidia.com
Tue Jun 27 08:15:32 CEST 2023


> -----Original Message-----
> From: Thomas Monjalon <thomas at monjalon.net>
> Sent: Tuesday, June 27, 2023 3:40 AM
> To: Slava Ovsiienko <viacheslavo at nvidia.com>
> Cc: dev at dpdk.org; Jerin Jacob <jerinjacobk at gmail.com>; Raslan Darawsheh
> <rasland at nvidia.com>
> Subject: Re: [RFC 2/5] common/mlx5: introduce tracepoints for mlx5 drivers
> 
> 13/06/2023 18:01, Jerin Jacob:
> > On Tue, Jun 13, 2023 at 9:29 PM Slava Ovsiienko <viacheslavo at nvidia.com>
> wrote:
> > > From: Jerin Jacob <jerinjacobk at gmail.com>
> > > > On Tue, Jun 13, 2023 at 9:20 PM Slava Ovsiienko
> > > > <viacheslavo at nvidia.com>
> > > > wrote:
> > > > >
> > > > > Hi,
> > > > >
> > > > > <..snip..>
> > > > > > >
> > > > > > >         mlx5_os_interrupt_handler_create; # WINDOWS_NO_EXPORT
> > > > > > >         mlx5_os_interrupt_handler_destroy; #
> > > > > > > WINDOWS_NO_EXPORT
> > > > > > > +
> > > > > > > +       __rte_pmd_mlx5_trace_tx_entry;
> > > > > > > +       __rte_pmd_mlx5_trace_tx_exit;
> > > > > > > +       __rte_pmd_mlx5_trace_tx_wqe;
> > > > > > > +       __rte_pmd_mlx5_trace_tx_wait;
> > > > > > > +       __rte_pmd_mlx5_trace_tx_push;
> > > > > > > +       __rte_pmd_mlx5_trace_tx_complete;
> > > > > >
> > > > > > No need to expose these symbols. It is getting removed from rest of
> DPDK.
> > > > > > Application can do rte_trace_lookup() to get this address.
> > > > > >
> > > > > >
> > > > > It is not for application, it is for PMD itself, w/o exposing
> > > > > the symbols build
> > > > failed.
> > > >
> > > > PMD is implementing this trace endpoints, not consuming this trace
> point.
> > > > Right? If so, Why to expose these symbols?
> > >
> > > As far as understand:
> > > The tracepoint routines are defined in dedicated common/mlx5_trace.c
> file.
> > > The tx_burst in mlx5 is implemented as template in header file, and
> > > this template is used in multiple .c files under net/mlx5 filder.
> > > So, common/mlx5 should expose its symbols to net/mlx5 to allow
> > > successful linkage.
> >
> > OK. I missed the fact the these are in common code and net driver is
> > depened on that.
> > So changes makes sense.
> 
> It does not make sense to me.
> These are tracepoints for the ethdev driver.
> Why declaring them in the common library?

Just to gather all mlx5 traces in the single file, to see all available tracing caps in single view.

With best regards,
Slava
 



More information about the dev mailing list