Officially deprecate legacy BPF map definitions in libbpf. They've been slated for deprecation for a while in favor of more powerful BTF-defined map definitions and this patch set adds warnings and a way to enforce this in libbpf through LIBBPF_STRICT_MAP_DEFINITIONS strict mode flag. Selftests are fixed up and updated, BPF documentation is updated, bpftool's strict mode usage is adjusted to avoid breaking users unnecessarily. v1->v2: - replace missed bpf_map_def case in Documentation/bpf/btf.rst (Alexei). Andrii Nakryiko (4): selftests/bpf: fail build on compilation warning selftests/bpf: convert remaining legacy map definitions libbpf: deprecate legacy BPF map definitions docs/bpf: update BPF map definition example Documentation/bpf/btf.rst | 32 ++++++++----------- tools/bpf/bpftool/main.c | 9 +++++- tools/lib/bpf/bpf_helpers.h | 2 +- tools/lib/bpf/libbpf.c | 8 +++++ tools/lib/bpf/libbpf_legacy.h | 5 +++ tools/testing/selftests/bpf/Makefile | 4 +-- tools/testing/selftests/bpf/prog_tests/btf.c | 4 +++ .../bpf/progs/freplace_cls_redirect.c | 12 +++---- .../selftests/bpf/progs/sample_map_ret0.c | 24 +++++++------- .../selftests/bpf/progs/test_btf_haskv.c | 3 ++ .../selftests/bpf/progs/test_btf_newkv.c | 3 ++ .../selftests/bpf/progs/test_btf_nokv.c | 12 +++---- .../bpf/progs/test_skb_cgroup_id_kern.c | 12 +++---- .../testing/selftests/bpf/progs/test_tc_edt.c | 12 +++---- .../bpf/progs/test_tcp_check_syncookie_kern.c | 12 +++---- 15 files changed, 90 insertions(+), 64 deletions(-) -- 2.30.2