History is added to mbuf for debugging. This series set some marks in mbuf allocation/freeing and ethdev Rx/Tx. More marks could be added in other libraries. Drivers could benefit a finer debugging by marking alloc/free calls, in addition to marks already done in the mbuf library. Even better, the application could add its own marks.
As part of this series, mbuf statistics can be dumped, and a Python script will help to parse mbuf history. --- v6 changes: - simplify testpmd commands - use enum op type - rename Tx ops - mark free before freeing - mark out of sanity check loop v5 change: - fix MSVC build in testpmd v4 changes: - fix/rewrite testpmd commands - fix python script - fix thread safety - fix checks - fix logs - change config (no Meson option) - add documentation v3 changes: - use atomic - fix prefix - add asserts - reformat dump - remove #ifdef clutter - remove mlx5 patch v2 changes: - move to mbuf in dynamic field v1: - mempool feature --- Shani Peretz (3): mbuf: record mbuf operations history ethdev: mark mbufs in burst functions usertools/mbuf: parse mbuf history dump Thomas Monjalon (4): doc: explain debug options in mbuf guide mbuf: move header include for logs app/testpmd: use space separator in dump commands app/testpmd: add commands to dump mbuf history app/test-pmd/cmdline.c | 309 ++++++++++++++------ config/rte_config.h | 1 + doc/guides/howto/debug_troubleshoot.rst | 7 + doc/guides/prog_guide/mbuf_lib.rst | 18 +- doc/guides/rel_notes/release_25_11.rst | 7 + doc/guides/testpmd_app_ug/testpmd_funcs.rst | 33 ++- lib/ethdev/rte_ethdev.h | 11 + lib/mbuf/mbuf_history.c | 229 +++++++++++++++ lib/mbuf/mbuf_log.h | 2 + lib/mbuf/meson.build | 2 + lib/mbuf/rte_mbuf.c | 5 +- lib/mbuf/rte_mbuf.h | 15 +- lib/mbuf/rte_mbuf_dyn.h | 18 ++ lib/mbuf/rte_mbuf_history.h | 206 +++++++++++++ usertools/dpdk-mbuf-history-parser.py | 166 +++++++++++ 15 files changed, 923 insertions(+), 106 deletions(-) create mode 100644 lib/mbuf/mbuf_history.c create mode 100644 lib/mbuf/rte_mbuf_history.h create mode 100755 usertools/dpdk-mbuf-history-parser.py -- 2.51.0

