[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <24733178-7c63-2841-13e7-d4c68ae7efe2@huawei.com>
Date: Wed, 1 Nov 2017 22:44:18 +0800
From: "Wangnan (F)" <wangnan0@...wei.com>
To: "Liang, Kan" <kan.liang@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"acme@...nel.org" <acme@...nel.org>,
"jolsa@...hat.com" <jolsa@...hat.com>,
"namhyung@...nel.org" <namhyung@...nel.org>
Subject: Re: [PATCH 2/2] perf record: Replace 'overwrite' by 'flightrecorder'
for better naming
On 2017/11/1 22:22, Liang, Kan wrote:
>> On 2017/11/1 21:26, Liang, Kan wrote:
>>>> The meaning of perf record's "overwrite" option and many "overwrite"
>>>> in source code are not clear. In perf's code, the 'overwrite' has 2 meanings:
>>>> 1. Make ringbuffer readonly (perf_evlist__mmap_ex's argument).
>>>> 2. Set evsel's "backward" attribute (in apply_config_terms).
>>>>
>>>> perf record doesn't use meaning 1 at all, but have a overwrite
>>>> option, its real meaning is setting backward.
>>>>
>>> I don't understand here.
>>> 'overwrite' has 2 meanings. perf record only support 1.
>>> It should be a bug, and need to be fixed.
>> Not a bug, but ambiguous.
>>
>> Perf record doesn't need overwrite main channel (we have two channels:
>> evlist->mmap is main channel and evlist->backward_mmap is backward
>> evlist->channel),
>> but some testcases require it, and your new patchset may require it.
>> 'perf record --overwrite' doesn't set main channel overwrite. What it does is
>> moving all evsels to backward channel, and we can move some evsels back to
>> the main channel by /no-overwrite/ setting. This behavior is hard to
>> understand.
>>
> As my understanding, the 'main channel' should depends on what user sets.
> If --overwrite is applied, then evlist->backward_mmap should be the
> 'main channel'. evlist->overwrite should be set to true as well.
Then it introduces a main channel switching mechanism, and we need
checking evlist->overwrite and another factor to determine which
one is the main channel. Make things more complex.
> /no-overwrite/ setting is per-event setting.
> Only when we finish the global setting, then the per-event setting will be
> considered. You may refer to apply_config_terms.
Yes.
> Thanks,
> Kan
>
>
>
>
Powered by blists - more mailing lists