Re: [PATCH v1 08/15] perf record: write trace data into mmap trace files

From: Alexey Budankov
Date: Wed Oct 14 2020 - 08:09:20 EST


Hi,

On 14.10.2020 13:52, Namhyung Kim wrote:
> Hi,
>
> On Mon, Oct 12, 2020 at 6:01 PM Alexey Budankov
> <alexey.budankov@xxxxxxxxxxxxxxx> wrote:
>>
>>
>> Write trace data into per mmap trace files located
>> at data directory. Streaming thread adjusts its affinity
>> according to mask of the buffer being processed.
>>
>> Signed-off-by: Alexey Budankov <alexey.budankov@xxxxxxxxxxxxxxx>
>> ---
> [SNIP]
>> @@ -1184,8 +1203,12 @@ static int record__mmap_read_evlist(struct record *rec, struct evlist *evlist,
>> /*
>> * Mark the round finished in case we wrote
>> * at least one event.
>> + *
>> + * No need for round events in directory mode,
>> + * because per-cpu maps and files have data
>> + * sorted by kernel.
>> */
>> - if (bytes_written != rec->bytes_written)
>> + if (!record__threads_enabled(rec) && bytes_written != rec->bytes_written)
>> rc = record__write(rec, NULL, &finished_round_event, sizeof(finished_round_event));
>
> This means it needs to keep all events in the ordered events queue
> when perf report processes the data, right?

Looks so.

Alexei