[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <44645529-0ee6-fe69-bc03-fefbc6f73d4d@huawei.com>
Date: Tue, 18 Jul 2023 17:30:48 +0800
From: Yang Jihong <yangjihong1@...wei.com>
To: Adrian Hunter <adrian.hunter@...el.com>, <peterz@...radead.org>,
<mingo@...hat.com>, <acme@...nel.org>, <mark.rutland@....com>,
<alexander.shishkin@...ux.intel.com>, <jolsa@...nel.org>,
<namhyung@...nel.org>, <irogers@...gle.com>,
<kan.liang@...ux.intel.com>, <james.clark@....com>,
<tmricht@...ux.ibm.com>, <ak@...ux.intel.com>,
<anshuman.khandual@....com>, <linux-kernel@...r.kernel.org>,
<linux-perf-users@...r.kernel.org>
Subject: Re: [PATCH v2 5/7] perf evlist: Skip dummy event sample_type check
for evlist_config
Hello,
On 2023/7/17 22:41, Adrian Hunter wrote:
> On 15/07/23 06:29, Yang Jihong wrote:
>> The dummp event does not contain sampls data. Therefore, sample_type does
>> not need to be checked.
>>
>> Currently, the sample id format of the actual sampling event may be changed
>> after the dummy event is added.
>>
>> Signed-off-by: Yang Jihong <yangjihong1@...wei.com>
>> ---
>> tools/perf/util/record.c | 7 +++++++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/tools/perf/util/record.c b/tools/perf/util/record.c
>> index 9eb5c6a08999..0240be3b340f 100644
>> --- a/tools/perf/util/record.c
>> +++ b/tools/perf/util/record.c
>> @@ -128,6 +128,13 @@ void evlist__config(struct evlist *evlist, struct record_opts *opts, struct call
>> evlist__for_each_entry(evlist, evsel) {
>> if (evsel->core.attr.sample_type == first->core.attr.sample_type)
>> continue;
>> +
>> + /*
>> + * Skip the sample_type check for the dummy event
>> + * because it does not have any samples anyway.
>> + */
>> + if (evsel__is_dummy_event(evsel))
>> + continue;
>
> Sideband event records have "ID samples" so the sample type still matters.
>
Okay, will remove this patch in next version.
Can I ask a little more about this?
Use PERF_SAMPLE_IDENTIFICATION instead of PERF_SAMPLE_ID because for
samples of type PERF_RECORD_SAMPLE, there may be different record
formats due to different *sample_type* settings, so the fixed SAMPLE_ID
location mode PERF_SAMPLE_NAME is required here.
However, for the sideband event, the samples of the PERF_RECORD_SAMPLE
type is not recorded (only PERF_RECORD_MMAP, PERF_RECORD_COMM, and so
on). Therefore, the "use sample identifier "check can be skipped here.
That's my understanding of PERF_SAMPLE_IDENTIFICATION . If there is any
error, please help to correct it.
*Sideband event records have "ID samples" so the sample type still matters.*
Does this mean that sideband will also record samples of type
PERF_RECORD_SAMPLE? What exactly is the sampling data?
Thanks,
Yang
Powered by blists - more mailing lists