perf cs-etm: Move definition of 'traceid_list' global variable from header file
authorLeo Yan <leo.yan@linaro.org>
Tue, 5 May 2020 13:36:42 +0000 (21:36 +0800)
committerSalvatore Bonaccorso <carnil@debian.org>
Sun, 26 Jul 2020 06:40:40 +0000 (07:40 +0100)
Origin: https://git.kernel.org/linus/168200b6d6ea0cb5765943ec5da5b8149701f36a
Bug-Debian: https://bugs.debian.org/957491

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 <tmb@mageia.org>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Reviewed-by: Mike Leach <mike.leach@linaro.org>
Tested-by: Mike Leach <mike.leach@linaro.org>
Tested-by: Thomas Backlund <tmb@mageia.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
Cc: Tor Jeremiassen <tor@ti.com>
Cc: linux-arm-kernel@lists.infradead.org
Link: http://lore.kernel.org/lkml/20200505133642.4756-1-leo.yan@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name perf-cs-etm-Move-definition-of-traceid_list-global-v.patch

tools/perf/util/cs-etm.c
tools/perf/util/cs-etm.h

index 62d2f9b9ce1b5e14d5987978c4dff61fc9152047..381d9708e9bd89fdf83c320cd7b5c06f6b7cf611 100644 (file)
@@ -94,6 +94,9 @@ struct cs_etm_queue {
        struct cs_etm_traceid_queue **traceid_queues;
 };
 
+/* 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_queues(struct cs_etm_auxtrace *etm);
 static int cs_etm__process_timeless_queues(struct cs_etm_auxtrace *etm,
index 650ecc2a63492a63b457e8d23e53c49d3f3cc20c..4ad925d6d79966aa913e30cbccf80ccbef70abaa 100644 (file)
@@ -114,9 +114,6 @@ enum cs_etm_isa {
        CS_ETM_ISA_T32,
 };
 
-/* RB tree for quick conversion between traceID and metadata pointers */
-struct intlist *traceid_list;
-
 struct cs_etm_queue;
 
 struct cs_etm_packet {