tools/perf/Makefile.config | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-)
Done as a warning as I'm not fully confident of the test's robustness
of comparing the macro definition of __BYTE_ORDER__.
Signed-off-by: Ian Rogers <irogers@google.com>
v2. Is a rebase following patch 1 being merged.
---
tools/perf/Makefile.config | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
index 16bea51f0bcd..71442c54c25f 100644
--- a/tools/perf/Makefile.config
+++ b/tools/perf/Makefile.config
@@ -663,14 +663,17 @@ ifndef NO_BPF_SKEL
$(call feature_check,clang-bpf-co-re)
ifeq ($(feature-clang-bpf-co-re), 0)
dummy := $(error: ERROR: BPF skeletons unsupported. clang too old/not installed or build with NO_BPF_SKEL=1.)
- else
- ifeq ($(filter -DHAVE_LIBBPF_SUPPORT, $(CFLAGS)),)
- dummy := $(error: ERROR: BPF skeletons unsupported. BPF skeleton support requires libbpf or build with NO_BPF_SKEL=1.)
- else
- $(call detected,CONFIG_PERF_BPF_SKEL)
- CFLAGS += -DHAVE_BPF_SKEL
- endif
endif
+ ifeq ($(filter -DHAVE_LIBBPF_SUPPORT, $(CFLAGS)),)
+ dummy := $(error: ERROR: BPF skeletons unsupported. BPF skeleton support requires libbpf or build with NO_BPF_SKEL=1.)
+ endif
+ host_byte_order=$(echo ""|$(HOSTCC) -dM -E -|grep __BYTE_ORDER__)
+ target_byte_order=$(echo ""|$(CC) -dM -E -|grep __BYTE_ORDER__)
+ ifneq ($(host_byte_order), $(target_byte_order))
+ $(warning Possibly mismatched host and target endianness may break BPF skeletons)
+ endif
+ $(call detected,CONFIG_PERF_BPF_SKEL)
+ CFLAGS += -DHAVE_BPF_SKEL
endif
dwarf-post-unwind := 1
--
2.40.0.577.gac1e443424-goog
Em Mon, Apr 10, 2023 at 09:09:05AM -0700, Ian Rogers escreveu: > Done as a warning as I'm not fully confident of the test's robustness > of comparing the macro definition of __BYTE_ORDER__. > > Signed-off-by: Ian Rogers <irogers@google.com> > > v2. Is a rebase following patch 1 being merged. Thanks, applied. - Arnaldo > --- > tools/perf/Makefile.config | 17 ++++++++++------- > 1 file changed, 10 insertions(+), 7 deletions(-) > > diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config > index 16bea51f0bcd..71442c54c25f 100644 > --- a/tools/perf/Makefile.config > +++ b/tools/perf/Makefile.config > @@ -663,14 +663,17 @@ ifndef NO_BPF_SKEL > $(call feature_check,clang-bpf-co-re) > ifeq ($(feature-clang-bpf-co-re), 0) > dummy := $(error: ERROR: BPF skeletons unsupported. clang too old/not installed or build with NO_BPF_SKEL=1.) > - else > - ifeq ($(filter -DHAVE_LIBBPF_SUPPORT, $(CFLAGS)),) > - dummy := $(error: ERROR: BPF skeletons unsupported. BPF skeleton support requires libbpf or build with NO_BPF_SKEL=1.) > - else > - $(call detected,CONFIG_PERF_BPF_SKEL) > - CFLAGS += -DHAVE_BPF_SKEL > - endif > endif > + ifeq ($(filter -DHAVE_LIBBPF_SUPPORT, $(CFLAGS)),) > + dummy := $(error: ERROR: BPF skeletons unsupported. BPF skeleton support requires libbpf or build with NO_BPF_SKEL=1.) > + endif > + host_byte_order=$(echo ""|$(HOSTCC) -dM -E -|grep __BYTE_ORDER__) > + target_byte_order=$(echo ""|$(CC) -dM -E -|grep __BYTE_ORDER__) > + ifneq ($(host_byte_order), $(target_byte_order)) > + $(warning Possibly mismatched host and target endianness may break BPF skeletons) > + endif > + $(call detected,CONFIG_PERF_BPF_SKEL) > + CFLAGS += -DHAVE_BPF_SKEL > endif > > dwarf-post-unwind := 1 > -- > 2.40.0.577.gac1e443424-goog > -- - Arnaldo
© 2016 - 2026 Red Hat, Inc.