The goal of this patch is to clarify the public/private status of the eBPF definitions and prevent name conflicts. It achieves this by moving the required public symbols into the public ``rte_bpf.h`` header with a proper ``RTE_`` prefix, and making the remaining ``bpf_def.h`` header private.
v4: reposting verbatim after additional tests involving external apps. v3: * Dropped part 2 (renaming macros) as there was no consensus on it. * Added a release notes entry detailing the API change (bpf_def.h becoming private and public symbols moved to rte_bpf.h). v2: * Following the AI suggestion renamed `RTE_EBPF_FUNC_MAX_ARGS` to `RTE_BPF_FUNC_MAX_ARGS`. * Rebased on fresh main hoping to overcome the unrelated CI issues. * Cautiously re-posting without the RFC label. Marat Khalili (1): bpf: make bpf_def.h private app/test/test_bpf.c | 79 +++++++++++++------------- app/test/test_bpf_validate.c | 74 ++++++++++++------------ doc/guides/rel_notes/release_26_11.rst | 6 ++ lib/bpf/bpf_convert.c | 38 ++++++------- lib/bpf/bpf_def.h | 15 ----- lib/bpf/bpf_dump.c | 13 +++-- lib/bpf/bpf_exec.c | 8 +-- lib/bpf/bpf_impl.h | 3 +- lib/bpf/bpf_jit_arm64.c | 4 +- lib/bpf/bpf_jit_x86.c | 2 +- lib/bpf/bpf_load.c | 2 +- lib/bpf/bpf_load_elf.c | 10 ++-- lib/bpf/bpf_validate.c | 44 +++++++------- lib/bpf/bpf_validate.h | 6 +- lib/bpf/bpf_validate_debug.c | 6 +- lib/bpf/meson.build | 1 - lib/bpf/rte_bpf.h | 33 ++++++++--- lib/bpf/rte_bpf_validate_debug.h | 8 +-- 18 files changed, 180 insertions(+), 172 deletions(-) -- 2.43.0

