diff mbox series

[bpf-next] samples: bpf: don't run probes at the local make stage

Message ID 20190607171116.19173-1-jakub.kicinski@netronome.com
State Accepted
Delegated to: BPF Maintainers
Headers show
Series [bpf-next] samples: bpf: don't run probes at the local make stage | expand

Commit Message

Jakub Kicinski June 7, 2019, 5:11 p.m. UTC
Quentin reports that commit 07c3bbdb1a9b ("samples: bpf: print
a warning about headers_install") is producing the false
positive when make is invoked locally, from the samples/bpf/
directory.

When make is run locally it hits the "all" target, which
will recursively invoke make through the full build system.

Speed up the "local" run which doesn't actually build anything,
and avoid false positives by skipping all the probes if not in
kbuild environment (cover both the new warning and the BTF
probes).

Reported-by: Quentin Monnet <quentin.monnet@netronome.com>
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com>
---
 samples/bpf/Makefile | 3 +++
 1 file changed, 3 insertions(+)

Comments

Alexei Starovoitov June 11, 2019, 6:38 a.m. UTC | #1
On Fri, Jun 7, 2019 at 10:11 AM Jakub Kicinski
<jakub.kicinski@netronome.com> wrote:
>
> Quentin reports that commit 07c3bbdb1a9b ("samples: bpf: print
> a warning about headers_install") is producing the false
> positive when make is invoked locally, from the samples/bpf/
> directory.
>
> When make is run locally it hits the "all" target, which
> will recursively invoke make through the full build system.
>
> Speed up the "local" run which doesn't actually build anything,
> and avoid false positives by skipping all the probes if not in
> kbuild environment (cover both the new warning and the BTF
> probes).
>
> Reported-by: Quentin Monnet <quentin.monnet@netronome.com>
> Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
> Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com>

Applied. Thanks
diff mbox series

Patch

diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile
index 4074a66a70ca..9eb5d733f575 100644
--- a/samples/bpf/Makefile
+++ b/samples/bpf/Makefile
@@ -206,6 +206,8 @@  HOSTCC = $(CROSS_COMPILE)gcc
 CLANG_ARCH_ARGS = -target $(ARCH)
 endif
 
+# Don't evaluate probes and warnings if we need to run make recursively
+ifneq ($(src),)
 HDR_PROBE := $(shell echo "\#include <linux/types.h>\n struct list_head { int a; }; int main() { return 0; }" | \
 	$(HOSTCC) $(KBUILD_HOSTCFLAGS) -x c - -o /dev/null 2>/dev/null && \
 	echo okay)
@@ -232,6 +234,7 @@  ifneq ($(and $(BTF_LLC_PROBE),$(BTF_PAHOLE_PROBE),$(BTF_OBJCOPY_PROBE)),)
 	DWARF2BTF = y
 endif
 endif
+endif
 
 # Trick to allow make to be run from this directory
 all: