Re: [PATCH 5/5] perf record: Put a copy of kcore into the perf.data directory

From: Adrian Hunter
Date: Mon Oct 07 2019 - 08:16:19 EST


On 7/10/19 2:20 PM, Jiri Olsa wrote:
> On Fri, Oct 04, 2019 at 11:31:21AM +0300, Adrian Hunter wrote:
>
> SNIP
>
>> bool strict_freq;
>> bool sample_id;
>> bool no_bpf_event;
>> + bool kcore;
>> unsigned int freq;
>> unsigned int mmap_pages;
>> unsigned int auxtrace_mmap_pages;
>> diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
>> index 061bb4d6a3f5..bfa80fe8d369 100644
>> --- a/tools/perf/util/session.c
>> +++ b/tools/perf/util/session.c
>> @@ -230,6 +230,10 @@ struct perf_session *perf_session__new(struct perf_data *data,
>> if (ret)
>> goto out_delete;
>> }
>> +
>> + if (!symbol_conf.kallsyms_name &&
>> + !symbol_conf.vmlinux_name)
>> + symbol_conf.kallsyms_name = perf_data__kallsyms_name(data);
>
> hum, should this also depend on rec->opts.kcore ?

This is the bit that makes 'perf script' work. It has the same affect as
though the --kallsyms option was used. i.e. it makes 'perf script' behave
the same as:

perf script --kallsyms perf.data/kcore_dir/kallsyms

Which works because perf looks for kcore in the same directory as kallsyms.