From: Leo Yan <leo....@linaro.org> commit 168200b6d6ea0cb5765943ec5da5b8149701f36a upstream.
The variable 'traceid_list' is defined in the header file cs-etm.h, if multiple C files include cs-etm.h the compiler might complaint for multiple definition of 'traceid_list'. To fix multiple definition error, move the definition of 'traceid_list' into cs-etm.c. Fixes: cd8bfd8c973e ("perf tools: Add processing of coresight metadata") Reported-by: Thomas Backlund <t...@mageia.org> Signed-off-by: Leo Yan <leo....@linaro.org> Reviewed-by: Mathieu Poirier <mathieu.poir...@linaro.org> Reviewed-by: Mike Leach <mike.le...@linaro.org> Tested-by: Mike Leach <mike.le...@linaro.org> Tested-by: Thomas Backlund <t...@mageia.org> Cc: Alexander Shishkin <alexander.shish...@linux.intel.com> Cc: Jiri Olsa <jo...@redhat.com> Cc: Mark Rutland <mark.rutl...@arm.com> Cc: Namhyung Kim <namhy...@kernel.org> Cc: Peter Zijlstra <pet...@infradead.org> Cc: Suzuki Poulouse <suzuki.poul...@arm.com> Cc: Tor Jeremiassen <t...@ti.com> Cc: linux-arm-ker...@lists.infradead.org Link: http://lore.kernel.org/lkml/20200505133642.4756-1-leo....@linaro.org Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com> Cc: Paul Barker <pbar...@konsulko.com> Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> --- tools/perf/util/cs-etm.c | 3 +++ tools/perf/util/cs-etm.h | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) --- a/tools/perf/util/cs-etm.c +++ b/tools/perf/util/cs-etm.c @@ -87,6 +87,9 @@ 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_); --- a/tools/perf/util/cs-etm.h +++ b/tools/perf/util/cs-etm.h @@ -53,9 +53,6 @@ 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)