Em Fri, Dec 09, 2022 at 12:04:18PM +0530, Athira Rajeev escreveu: > > > > On 09-Dec-2022, at 4:02 AM, Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote: > > > > Em Thu, Dec 08, 2022 at 07:04:52PM -0300, Arnaldo Carvalho de Melo escreveu: > >> Em Thu, Dec 08, 2022 at 12:21:20PM +0530, Athira Rajeev escreveu: > >>>> On 07-Dec-2022, at 10:57 PM, Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote: > >>>> Can you try again? tmp.perf/core? That "tmp." part means its a force > >>>> pushed branch, so I just force pushed with some arch specific fixes, now > >>>> I'm down to (removing the successful builds and unrelated failures, now > >>>> related to libbpf's F_DUPFD_CLOEXEC kaboom): > >> > >>> Ok Arnaldo, Sure, I will check with updated branch > >> > >>>> 5 7.38 fedora:34 : FAIL gcc version 11.3.1 20220421 (Red Hat 11.3.1-2) (GCC) > >>>> /git/perf-6.1.0-rc6/tools/perf/util/evsel.c: In function ‘evsel__rawptr’: > >>>> /git/perf-6.1.0-rc6/tools/perf/util/evsel.c:2787:36: error: ‘TEP_FIELD_IS_RELATIVE’ undeclared (first use in this function); did you mean ‘TEP_FIELD_IS_FLAG’? > >>>> 2787 | if (field->flags & TEP_FIELD_IS_RELATIVE) > >>>> | ^~~~~~~~~~~~~~~~~~~~~ > >>>> | TEP_FIELD_IS_FLAG > >> > >>> I observed same issue as updated here: > >>> https://lore.kernel.org/lkml/10476A85-3F75-4C91-AB5B-E5B136F31297@xxxxxxxxxxxxxxxxxx/ > >> > >>> Looks like TEP_FIELD_IS_RELATIVE is not defined in header file of the system installed version. > >>> whereas it is there in header file in tools/lib/traceevent > >> > >>> # grep TEP_FIELD_IS_RELATIVE /usr/include/traceevent/event-parse.h > >>> # grep TEP_FIELD_IS_RELATIVE ../lib/traceevent/event-parse.h > >>> TEP_FIELD_IS_RELATIVE = 256, > >> > >> Right, I had noticed that as well, so as a prep patch I'm adding the > >> patch below, before Ian's. Please check and provide an > >> Acked-by/Tested-by/Reviewed-by if possible. > > > > I ended up with the one below, _after_ Ian's patch as I had some trouble grafting > > it before and had already tested it this way multiple times, I'm pushing > > this to tmp/perf.core. > > > > - Arnaldo > > > Hi Arnaldo, Ian > > Thanks for the fixes. > > Since we changed “CONFIG_TRACEEVENT” to “CONFIG_LIBTRACEEVENT”, > below change is also needed in “arch/powerpc/util/Build” > > diff --git a/tools/perf/arch/powerpc/util/Build b/tools/perf/arch/powerpc/util/Build > index 71e57f28abda..9889245c555c 100644 > --- a/tools/perf/arch/powerpc/util/Build > +++ b/tools/perf/arch/powerpc/util/Build > @@ -1,5 +1,5 @@ > perf-y += header.o > -perf-$(CONFIG_TRACEEVENT) += kvm-stat.o > +perf-$(CONFIG_LIBTRACEEVENT) += kvm-stat.o > perf-y += perf_regs.o > perf-y += mem-events.o > perf-y += sym-handling.o > > With this change, I could successfully compile in these environment: > - Without libtraceevent-devel installed > - With libtraceevent-devel installed > - With “make NO_LIBTRACEEVENT=1” > > With above change, > Acked-by: Athira Rajeev <atrajeev@xxxxxxxxxxxxxxxxxx> I did that and the same thing for other architectures, thanks for testing! I'll now give a try at implementing it without tools/build/feature/test-libtraceevent-tep_field_is_relative.c, using just the version of libtraceevent, as Ian suggested. It would be great if you could test it again then, Thanks, - Arnaldo diff --git a/tools/perf/arch/arm64/util/Build b/tools/perf/arch/arm64/util/Build index 88553c578ed7a1c4..78ef7115be3d91a7 100644 --- a/tools/perf/arch/arm64/util/Build +++ b/tools/perf/arch/arm64/util/Build @@ -3,7 +3,7 @@ perf-y += machine.o perf-y += perf_regs.o perf-y += tsc.o perf-y += pmu.o -perf-$(CONFIG_TRACEEVENT) += kvm-stat.o +perf-$(CONFIG_LIBTRACEEVENT) += kvm-stat.o perf-$(CONFIG_DWARF) += dwarf-regs.o perf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o perf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o diff --git a/tools/perf/arch/powerpc/util/Build b/tools/perf/arch/powerpc/util/Build index 71e57f28abdac7e9..9889245c555c4cfb 100644 --- a/tools/perf/arch/powerpc/util/Build +++ b/tools/perf/arch/powerpc/util/Build @@ -1,5 +1,5 @@ perf-y += header.o -perf-$(CONFIG_TRACEEVENT) += kvm-stat.o +perf-$(CONFIG_LIBTRACEEVENT) += kvm-stat.o perf-y += perf_regs.o perf-y += mem-events.o perf-y += sym-handling.o diff --git a/tools/perf/arch/s390/util/Build b/tools/perf/arch/s390/util/Build index aa8a5f05c9cb4706..db68840869979f2c 100644 --- a/tools/perf/arch/s390/util/Build +++ b/tools/perf/arch/s390/util/Build @@ -1,5 +1,5 @@ perf-y += header.o -perf-$(CONFIG_TRACEEVENT) += kvm-stat.o +perf-$(CONFIG_LIBTRACEEVENT) += kvm-stat.o perf-y += perf_regs.o perf-$(CONFIG_DWARF) += dwarf-regs.o