lkml.org 
[lkml]   [2015]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] perf record: Add snapshot mode support for perf's regular events
From
Date
On 11/24/15 8:20 AM, Arnaldo Carvalho de Melo wrote:
> Em Tue, Nov 24, 2015 at 08:06:41AM -0700, David Ahern escreveu:
>> On 11/24/15 7:00 AM, Yunlong Song wrote:
>>> +static int record__write(struct record *rec, void *bf, size_t size)
>>> +{
>>> + if (rec->memory.size && memory_enabled) {
>>> + if (perf_memory__write(&rec->memory, bf, size) < 0) {
>>> + pr_err("failed to write memory data, error: %m\n");
>>> + return -1;
>>> + }
>>> + } else {
>>> + if (perf_data_file__write(rec->session->file, bf, size) < 0) {
>>> + pr_err("failed to write perf data, error: %m\n");
>>> + return -1;
>>> + }
>>> + rec->bytes_written += size;
>>> }
>>>
>>> - rec->bytes_written += size;
>>> return 0;
>>> }
>>>
>>> @@ -86,6 +214,8 @@ static int record__mmap_read(struct record *rec, int idx)
>>> if (old == head)
>>> return 0;
>>>
>>> + memory_enabled = 1;
>>> +
>>> rec->samples++;
>>>
>>> size = head - old;
>>> @@ -113,6 +243,7 @@ static int record__mmap_read(struct record *rec, int idx)
>>> md->prev = old;
>>> perf_evlist__mmap_consume(rec->evlist, idx);
>>> out:
>>> + memory_enabled = 0;
>>> return rc;
>>> }
>>>
>>
>> So you are basically ignoring all samples until SIGUSR2 is received. That
>
> No, he is not, its just that his code is difficult to follow, has to be
> rewritten, but he is ignoring just PERF_RECORD_SAMPLE events, so it
> will..
>
>> means the resulting data file will have limited history of task events for
>
> ... have a complete history of task events, since PERF_RECORD_FORK, etc
> are not being ignored.
>
> No?

perf-record does not process events, it only writes to a file. If that
is skipped then it skips all events regardless of type.

David



\
 
 \ /
  Last update: 2015-11-24 16:41    [W:0.103 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site