perf env: Adopt perf_env__arch() from the annotate code
authorArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 11 Dec 2017 17:47:49 +0000 (14:47 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 27 Dec 2017 15:15:52 +0000 (12:15 -0300)
commit4e8fbc1c975c667c61a3073da81b338b9bf61c37
treee4a27eb5ee86c43a49e898ac8416487f5c68a6e5
parent3285debaf5992f9729ba33e3f31eff5253d29dc4
perf env: Adopt perf_env__arch() from the annotate code

And use it in the libunwind case, with both passing a valid perf_env to
extract the arch to be normalized from and passing NULL with the same
semantic as in the annotate code: to get it from uname() uts.machine.

Now the code to generate per arch errno translation tables (int/string)
can use it to decode perf.data files recorded in a different arch than
that where 'perf trace' (or any other analysis tool) runs.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Thomas Richter <tmricht@linux.vnet.ibm.com>
Cc: Wang Nan <wangnan0@huawei.com>
Link: https://lkml.kernel.org/n/tip-p2epffgash69w38kvj3ntpc9@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/arch/common.c
tools/perf/arch/common.h
tools/perf/util/annotate.c
tools/perf/util/env.c
tools/perf/util/env.h
tools/perf/util/unwind-libunwind.c