• Arnaldo Carvalho de Melo's avatar
    perf machine: Add pointer to sample's environment · 4cde998d
    Arnaldo Carvalho de Melo authored
    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: default avatarWang 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.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    4cde998d
session.c 54.5 KB