Re: [PATCH] Revert "perf cs-etm: Move definition of 'traceid_list' global variable from header file"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Nov 20, 2020 at 8:39 AM Salvatore Bonaccorso <carnil@xxxxxxxxxx> wrote:
>
> This reverts commit 168200b6d6ea0cb5765943ec5da5b8149701f36a upstream.
> (but only from 4.19.y)

This revert would fail the build of 4.19.y with gcc10, I believe the
original commit was introduced to address exactly this case. If this
is intended behavior that 4.19.y is not compiled with newer gcc
versions - then this revert is OK.

>
> The original commit introduces a build failure as seen on Debian buster
> when compiled with gcc (Debian 8.3.0-6) 8.3.0:
>
>   $ LC_ALL=C.UTF-8 ARCH=x86 make perf
>   [...]
>   Warning: Kernel ABI header at 'tools/include/uapi/linux/bpf.h' differs from latest version at 'include/uapi/linux/bpf.h'
>     CC       util/cs-etm-decoder/cs-etm-decoder.o
>     CC       util/intel-pt.o
>   util/cs-etm-decoder/cs-etm-decoder.c: In function 'cs_etm_decoder__buffer_packet':
>   util/cs-etm-decoder/cs-etm-decoder.c:287:24: error: 'traceid_list' undeclared (first use in this function); did you mean 'trace_event'?
>     inode = intlist__find(traceid_list, trace_chan_id);
>                           ^~~~~~~~~~~~
>                           trace_event
>   util/cs-etm-decoder/cs-etm-decoder.c:287:24: note: each undeclared identifier is reported only once for each function it appears in
>   make[6]: *** [/build/linux-stable/tools/build/Makefile.build:97: util/cs-etm-decoder/cs-etm-decoder.o] Error 1
>   make[5]: *** [/build/linux-stable/tools/build/Makefile.build:139: cs-etm-decoder] Error 2
>   make[5]: *** Waiting for unfinished jobs....
>   make[4]: *** [/build/linux-stable/tools/build/Makefile.build:139: util] Error 2
>   make[3]: *** [Makefile.perf:633: libperf-in.o] Error 2
>   make[2]: *** [Makefile.perf:206: sub-make] Error 2
>   make[1]: *** [Makefile:70: all] Error 2
>   make: *** [Makefile:77: perf] Error 2
>
> Link: https://lore.kernel.org/stable/20201114083501.GA468764@xxxxxxxxxxx/
> Cc: Leo Yan <leo.yan@xxxxxxxxxx>
> Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
> Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
> Cc: Mark Rutland <mark.rutland@xxxxxxx>
> Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Cc: Suzuki Poulouse <suzuki.poulose@xxxxxxx>
> Cc: Tor Jeremiassen <tor@xxxxxx>
> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
> Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Cc: <stable@xxxxxxxxxxxxxxx> # 4.19.y
> Signed-off-by: Salvatore Bonaccorso <carnil@xxxxxxxxxx>
> ---
>  tools/perf/util/cs-etm.c | 3 ---
>  tools/perf/util/cs-etm.h | 3 +++
>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
> index ad33b99f5d21..7b5e15cc6b71 100644
> --- a/tools/perf/util/cs-etm.c
> +++ b/tools/perf/util/cs-etm.c
> @@ -87,9 +87,6 @@ struct cs_etm_queue {
>         struct cs_etm_packet *packet;
>  };
>
> -/* RB tree for quick conversion between traceID and metadata pointers */
> -static struct intlist *traceid_list;
> -
>  static int cs_etm__update_queues(struct cs_etm_auxtrace *etm);
>  static int cs_etm__process_timeless_queues(struct cs_etm_auxtrace *etm,
>                                            pid_t tid, u64 time_);
> diff --git a/tools/perf/util/cs-etm.h b/tools/perf/util/cs-etm.h
> index c7ef97b198c7..37f8d48179ca 100644
> --- a/tools/perf/util/cs-etm.h
> +++ b/tools/perf/util/cs-etm.h
> @@ -53,6 +53,9 @@ enum {
>         CS_ETMV4_PRIV_MAX,
>  };
>
> +/* RB tree for quick conversion between traceID and CPUs */
> +struct intlist *traceid_list;
> +
>  #define KiB(x) ((x) * 1024)
>  #define MiB(x) ((x) * 1024 * 1024)
>
> --
> 2.29.2
>


-- 
Regards,
Andrey.



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux