On 2023-05-11 4:50 p.m., Stephen Hemminger wrote:
On Thu, 11 May 2023 20:16:28 +0000
Arnaud Fiorini <arnaud.fior...@polymtl.ca> wrote:
+The service core library is instrumented with tracepoints using the DPDK Trace
+Library. These tracepoints allow you to track the service and logical cores
+state. The tracepoints that are on the fast path are compiled out by default.
+To activate the fast path tracepoints, it is necessary to add the
+``enable_trace_fp`` option when building DPDK using meson.
+
+To activate tracing when launching a DPDK program it is necessary to use the
+``--trace`` option to specify a regular expression to select which tracepoints
+to enable. Here is an example if you want to only specify service core
tracing::
+
+ ./dpdk/examples/service_cores/build/service_cores --trace="lib.eal.thread*"
--trace="lib.eal.service*"
+
These state changes are not in the hot path. So they should always be available?
Some of the tracepoints (rte_eal_trace_thread_lcore_running,
rte_eal_trace_thread_lcore_stopped, rte_eal_trace_service_run_begin) are
defined as fast path tracepoints. If these changes do not need to be in
the fast path, I can change their definition.