[PATCH v5 0/7] add mbuf debug capabilities
Thomas Monjalon
thomas at monjalon.net
Tue Oct 14 08:58:28 CEST 2025
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.
---
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 | 340 ++++++++++++++------
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 | 227 +++++++++++++
lib/mbuf/mbuf_log.h | 2 +
lib/mbuf/meson.build | 2 +
lib/mbuf/rte_mbuf.c | 7 +-
lib/mbuf/rte_mbuf.h | 13 +-
lib/mbuf/rte_mbuf_dyn.h | 18 ++
lib/mbuf/rte_mbuf_history.h | 206 ++++++++++++
usertools/dpdk-mbuf-history-parser.py | 166 ++++++++++
15 files changed, 950 insertions(+), 108 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
More information about the dev
mailing list