libbpf: Reject legacy 'maps' ELF section
authorAndrii Nakryiko <andrii@kernel.org>
Wed, 3 Aug 2022 21:42:02 +0000 (14:42 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Mon, 8 Aug 2022 13:44:11 +0000 (15:44 +0200)
commite19db6762c18ab1ddf7a3ef4d0023780c24dc1e8
tree3b0c1bfae771fcbfc8e74e03da22c5a71b428912
parent5653f55ebd767b4ef47414ee7f852517993eda6f
libbpf: Reject legacy 'maps' ELF section

Add explicit error message if BPF object file is still using legacy BPF
map definitions in SEC("maps"). Before this change, if BPF object file
is still using legacy map definition user will see a bit confusing:

  libbpf: elf: skipping unrecognized data section(4) maps
  libbpf: prog 'handler': bad map relo against 'server_map' in section 'maps'

Now libbpf will be explicit about rejecting "maps" ELF section:

  libbpf: elf: legacy map definitions in 'maps' section are not supported by libbpf v1.0+

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220803214202.23750-1-andrii@kernel.org
tools/lib/bpf/libbpf.c