[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZDSMeui7IEk+D/SO@kernel.org>
Date: Mon, 10 Apr 2023 19:23:54 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>,
linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org,
Andrii Nakryiko <andrii@...nel.org>
Subject: Re: [PATCH v2] perf build: Warn for BPF skeletons if endian
mismatches
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@...gle.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
Powered by blists - more mailing lists