This patch adds build-time optional backing storage for the Dynamic Mbuf Fields allocator.
The new mbuf_dynfield3_cnt Meson option reserves an additional cache-line-aligned area at the end of struct rte_mbuf. The default value is zero, so the default mbuf layout is unchanged. A non-zero value makes the area available to the dynamic mbuf field allocator and to the normal dynamic-field copy path. The enabled configuration increases sizeof(struct rte_mbuf). The release note calls out mempool/octeontx as a known fixed-size assumption that needs follow-up before that driver can be built with a non-zero setting. Validation: - devtools/check-git-log.sh -n1 - devtools/checkpatches.sh -n1 - devtools/checkpatches.sh on exported patch - devtools/get-maintainer.sh on exported patch - Meson setup with default mbuf_dynfield3_cnt - Meson setup with invalid -Dmbuf_dynfield3_cnt=1, which failed at configure time with the expected cache-line multiple error - native Meson/Ninja build with default mbuf_dynfield3_cnt - native Meson/Ninja build with -Dmbuf_dynfield3_cnt=0 - native Meson/Ninja build with -Dmbuf_dynfield3_cnt=8 and -Ddisable_drivers=mempool/octeontx Randy Tice (1): mbuf: add optional dynfield3 storage app/test/test_mbuf.c | 5 +++-- config/meson.build | 10 ++++++++++ doc/guides/rel_notes/release_26_11.rst | 15 +++++++++++++++ lib/mbuf/rte_mbuf.h | 3 +++ lib/mbuf/rte_mbuf_core.h | 16 ++++++++++++++++ lib/mbuf/rte_mbuf_dyn.c | 3 +++ meson_options.txt | 2 ++ 7 files changed, 52 insertions(+), 2 deletions(-) -- 2.35.6

