This series does some cleanup and refactoring around the rc1 code like: trimming unused headers, switching to callbacks for per-arch handling, and adding trace support. It also re-enables existing base test to help catch reported issues on some architectures.
v10: - fix build without ALLOW_EXPERIMENTAL_API - move rte_pmu_tread_read() registration to avoid MSVC linker issues v9: - properly rebase patch integrating pmu and trace v8: - export __rte_pmu_trace_read from library itself to avoid build issues with msvc linker v7: - change test return value v6: - add more logs to functional test - skip test in case of setup failure, user must make sure system is properly configured to get valid results v5: - add missing patch that quiesces chincs check v4: - change fast test so that it won't fail on misconfigured system - fix compilation on windows v3: - do not export __rte_pmu_trace_read because that breaks compilation on windows - script generating map files does not handle conditional compilation - skip testing if paranoia is at wrong level v2: - explicitly check against NULL - make pmu lib optional by checking if dpdk config has RTE_LIB_PMU Tomasz Duszynski (10): trace: change scope of conditional block lib/pmu: fix build error if ALLOW_EXPERIMENAL_API is undefined lib/pmu: quiesce rte_pmu_read deprecation warning in chkincs lib/pmu: export only necessary arch headers lib/pmu: reimplement per-arch ops as callbacks lib/pmu: do not try enabling perf counter access on arm64 lib/pmu: use build system defined RTE_LIB_PMU macro test/pmu: enable test trace: add PMU lib/pmu: fix out-of-bound access MAINTAINERS | 1 + app/test/test_pmu.c | 60 +++++++++++-- app/test/test_trace_perf.c | 10 +++ doc/guides/prog_guide/profile_app.rst | 5 ++ doc/guides/prog_guide/trace_lib.rst | 31 +++++++ lib/eal/common/eal_common_trace.c | 6 +- lib/eal/common/eal_common_trace_pmu.c | 45 ++++++++++ lib/eal/common/eal_trace_pmu.h | 12 +++ lib/eal/common/meson.build | 1 + lib/eal/include/rte_eal_trace.h | 16 ++++ lib/eal/include/rte_trace_point.h | 10 ++- lib/eal/include/rte_trace_point_register.h | 2 + lib/eal/meson.build | 3 + lib/meson.build | 2 +- lib/pmu/meson.build | 10 +-- lib/pmu/pmu.c | 97 +++++++++++++++++----- lib/pmu/pmu_arm64.c | 59 +++++-------- lib/pmu/pmu_private.h | 51 ++++++++++-- lib/pmu/rte_pmu.h | 32 ++++++- 19 files changed, 369 insertions(+), 84 deletions(-) create mode 100644 lib/eal/common/eal_common_trace_pmu.c create mode 100644 lib/eal/common/eal_trace_pmu.h -- 2.34.1