On 21.10.2020 9:54, Namhyung Kim wrote:
> Hi,
> 
> On Tue, Oct 13, 2020 at 8:30 PM Alexey Budankov
> <alexey.budan...@linux.intel.com> wrote:
>> On 12.10.2020 19:49, Alexey Budankov wrote:
>>> On 12.10.2020 19:09, Andi Kleen wrote:
>>>> On Mon, Oct 12, 2020 at 11:58:58AM +0300, Alexey Budankov wrote:
>>>>> diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
>>>>> index 6afc670fdf0c..0752eec19813 100644
>>>>> --- a/tools/perf/util/session.c
>>>>> +++ b/tools/perf/util/session.c
>>>>> @@ -2212,6 +2212,17 @@ reader__process_events(struct reader *rd, struct 
>>>>> perf_session *session,
>>>>>             goto more;
>>>>>
>>>>>  out:
>>>>> +   if (rd->unmap_file) {
>>>>> +           int i;
>>>>> +
>>>>> +           for (i = 0; i < NUM_MMAPS; i++) {
>>>>> +                   if (mmaps[i]) {
>>>>> +                           munmap(mmaps[i], mmap_size);
>>>>> +                           mmaps[i] = NULL;
>>>>
>>>> Okay so where is the mmap? Would make more sense to put that
>>>> into the same patch as who adds the mmap. Or is the mmap
>>>> code already in the perf source? In that case it should
>>>> probably be some common helper with the existing users.
>>>
>>> That mmap is already in the code. Agree, this part of the patch
>>> can be applied prior the whole patch set.
>>
>> I take it back. Single trace file can't be unmapped yet since it also
>> contains not only compressed records but also other records backing
>> the data for aggregated analysis.
> 
> Are you talking about the auxtrace?
> 
> I thought everything will be compressed when it's enabled.
> But if it's only for the auxtrace, maybe we can unmap them
> with checking it as it's not the common case?

I am about primary trace file. Together with PERF_RECORD_COMPRESSED
records it contains the other records with uncompressed data (MMAP,
FORk, COMM etc.) so it is still unsafe to unmap the trace file after
loading.

Alexei

Reply via email to