Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tools/bpf: build: Make sure resolve_btfids cleans up after itself

The new resolve_btfids tool did not clean up the feature detection folder
on 'make clean', and also was not called properly from the clean rule in
tools/make/ folder on its 'make clean'. This lead to stale objects being
left around, which could cause feature detection to fail on subsequent
builds.

Fixes: fbbb68de80a4 ("bpf: Add resolve_btfids tool to resolve BTF IDs in ELF object")
Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Jiri Olsa <jolsa@redhat.com>
Link: https://lore.kernel.org/bpf/20200901144343.179552-1-toke@redhat.com

authored by

Toke Høiland-Jørgensen and committed by
Daniel Borkmann
1eb832ac 3168c158

+3 -2
+2 -2
tools/bpf/Makefile
··· 38 38 FEATURE_DISPLAY = libbfd disassembler-four-args 39 39 40 40 check_feat := 1 41 - NON_CHECK_FEAT_TARGETS := clean bpftool_clean runqslower_clean 41 + NON_CHECK_FEAT_TARGETS := clean bpftool_clean runqslower_clean resolve_btfids_clean 42 42 ifdef MAKECMDGOALS 43 43 ifeq ($(filter-out $(NON_CHECK_FEAT_TARGETS),$(MAKECMDGOALS)),) 44 44 check_feat := 0 ··· 89 89 $(OUTPUT)bpf_exp.yacc.o: $(OUTPUT)bpf_exp.yacc.c 90 90 $(OUTPUT)bpf_exp.lex.o: $(OUTPUT)bpf_exp.lex.c 91 91 92 - clean: bpftool_clean runqslower_clean 92 + clean: bpftool_clean runqslower_clean resolve_btfids_clean 93 93 $(call QUIET_CLEAN, bpf-progs) 94 94 $(Q)$(RM) -r -- $(OUTPUT)*.o $(OUTPUT)bpf_jit_disasm $(OUTPUT)bpf_dbg \ 95 95 $(OUTPUT)bpf_asm $(OUTPUT)bpf_exp.yacc.* $(OUTPUT)bpf_exp.lex.*
+1
tools/bpf/resolve_btfids/Makefile
··· 80 80 clean: libsubcmd-clean libbpf-clean fixdep-clean 81 81 $(call msg,CLEAN,$(BINARY)) 82 82 $(Q)$(RM) -f $(BINARY); \ 83 + $(RM) -rf $(if $(OUTPUT),$(OUTPUT),.)/feature; \ 83 84 find $(if $(OUTPUT),$(OUTPUT),.) -name \*.o -or -name \*.o.cmd -or -name \*.o.d | xargs $(RM) 84 85 85 86 tags: