Add necessary infra to build selftests with ASAN (or any other sanitizer). Fix a bunch of found memory leaks and other memory access issues. v1->v2: - don't add ASAN flavor, but allow extra flags for build (Alexei); - fix few more found issues, which somehow were missed first time. Andrii Nakryiko (11): selftests/bpf: ensure test flavors use correct skeletons selftests/bpf: add SAN_CFLAGS param to selftests build to allow sanitizers selftests/bpf: convert test_hashmap into test_progs test libbpf: fix memory leak and possible double-free in hashmap__clear selftests/bpf: fix memory leak in test selector selftests/bpf: fix memory leak in extract_build_id() selftests/bpf: fix invalid memory reads in core_relo selftest libbpf: fix huge memory leak in libbpf_find_vmlinux_btf_id() selftests/bpf: disable ASAN instrumentation for mmap()'ed memory read selftests/bpf: fix bpf_link leak in ns_current_pid_tgid selftest selftests/bpf: add runqslower binary to .gitignore tools/lib/bpf/hashmap.c | 7 + tools/lib/bpf/libbpf.c | 5 +- tools/testing/selftests/bpf/.gitignore | 4 +- tools/testing/selftests/bpf/Makefile | 11 +- .../selftests/bpf/prog_tests/core_reloc.c | 2 +- .../{test_hashmap.c => prog_tests/hashmap.c} | 280 +++++++++--------- .../bpf/prog_tests/ns_current_pid_tgid.c | 5 +- .../selftests/bpf/prog_tests/perf_buffer.c | 5 + tools/testing/selftests/bpf/test_progs.c | 21 +- 9 files changed, 181 insertions(+), 159 deletions(-) rename tools/testing/selftests/bpf/{test_hashmap.c => prog_tests/hashmap.c} (53%) -- 2.24.1