| From 168200b6d6ea0cb5765943ec5da5b8149701f36a Mon Sep 17 00:00:00 2001 |
| From: Leo Yan <leo.yan@linaro.org> |
| Date: Tue, 5 May 2020 21:36:42 +0800 |
| Subject: perf cs-etm: Move definition of 'traceid_list' global variable from header file |
| |
| From: Leo Yan <leo.yan@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 <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> |
| Cc: Paul Barker <pbarker@konsulko.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@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) |
| |