[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Z90D4DaG93BfHi8g@google.com>
Date: Thu, 20 Mar 2025 23:14:56 -0700
From: Namhyung Kim <namhyung@...nel.org>
To: Holger Hoffstätte <holger@...lied-asynchrony.com>
Cc: linux-perf-users@...r.kernel.org,
linux-kernel <linux-kernel@...r.kernel.org>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...nel.org>, Ian Rogers <irogers@...gle.com>,
Adrian Hunter <adrian.hunter@...el.com>,
"Liang, Kan" <kan.liang@...ux.intel.com>,
Guilherme Amadio <amadio@...too.org>
Subject: Re: [PATCH RESEND] perf build: filter all combinations of -flto for
libperl
Hello,
On Wed, Mar 19, 2025 at 12:10:59AM +0100, Holger Hoffstätte wrote:
> [Not a peep of feedback - if I'm doing something wrong here please let me know;
> the patch fixes a real bug someone reported in Gentoo.]
>
> When enabling the libperl feature the build uses perl's build flags
> (ccopts) but filters out various flags, e.g. for LTO.
> While this is conceptually correct, it is insufficient in practice,
> since only "-flto=auto" is filtered out. When perl itself is built with
> "-flto" this can cause parts of perf being built with LTO and others
> without, giving exciting build errors like e.g.:
>
> ../tools/perf/pmu-events/pmu-events.c:72851:(.text+0xb79): undefined
> reference to `strcmp_cpuid_str' collect2: error: ld returned 1 exit status
>
> Fix this by filtering all matching flag values of -flto{=n,auto,..}.
>
> Signed-off-by: Holger Hoffstätte <holger@...lied-asynchrony.com>
Thanks for the fix but the patch is not applying. Can you please check
and resend?
Thanks,
Namhyung
> ---
> tools/perf/Makefile.config | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
> index a148ca9ef..4f5a40ab8 100644
> --- a/tools/perf/Makefile.config
> +++ b/tools/perf/Makefile.config
> @@ -820,7 +820,7 @@ else
> PERL_EMBED_LIBADD = $(call grep-libs,$(PERL_EMBED_LDOPTS))
> PERL_EMBED_CCOPTS = $(shell perl -MExtUtils::Embed -e ccopts 2>/dev/null)
> PERL_EMBED_CCOPTS := $(filter-out -specs=%,$(PERL_EMBED_CCOPTS))
> - PERL_EMBED_CCOPTS := $(filter-out -flto=auto -ffat-lto-objects, $(PERL_EMBED_CCOPTS))
> + PERL_EMBED_CCOPTS := $(filter-out -flto% -ffat-lto-objects, $(PERL_EMBED_CCOPTS))
> PERL_EMBED_LDOPTS := $(filter-out -specs=%,$(PERL_EMBED_LDOPTS))
> FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS)
> --
> 2.48.1
>
Powered by blists - more mailing lists