aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tools/perf/util/header.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2015-09-09 12:25:00 -0300
committerArnaldo Carvalho de Melo <acme@redhat.com>2015-09-14 12:50:29 -0300
commit4cde998d205894705b534878122631142a3eefe4 (patch)
tree707d60ab80953e31d045bd66bcad600dac2ac90a /tools/perf/util/header.c
parentperf env: Introduce read_cpu_topology_map() method (diff)
downloadwireguard-linux-4cde998d205894705b534878122631142a3eefe4.tar.xz
wireguard-linux-4cde998d205894705b534878122631142a3eefe4.zip
perf machine: Add pointer to sample's environment
The 'struct machine' represents the machine where the samples were/are being collected, and we also have a 'struct perf_env' with extra details about such machine, that we were collecting at 'perf.data' creation time but we also needed when no perf.data file is being used, such as in 'perf top'. So, get those structs closer together, as they provide a bigger picture of the sample's environment. In 'perf session', when the file argument is NULL, we can assume that the tool is sampling the running machine, so point machine->env to the global put in place in previous patches, while set it to the perf_header.env one when reading from a file. This paves the way for machine->env to be used in perf_event__preprocess_sample to populate addr_location.socket. Tested-by: Wang Nan <wangnan0@huawei.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Borislav Petkov <bp@suse.de> Cc: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Kan Liang <kan.liang@intel.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/n/tip-2ajotl0khscutm68exictoy9@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/header.c')
-rw-r--r--tools/perf/util/header.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
index 46ec6c5ca47f..6d8fa543dcff 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -2564,6 +2564,7 @@ int perf_session__read_header(struct perf_session *session)
return -ENOMEM;
session->evlist->env = &header->env;
+ session->machines.host.env = &header->env;
if (perf_data_file__is_pipe(file))
return perf_header__read_pipe(session);