lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <520952d1-334b-d385-7e64-b8c963e01846@huawei.com>
Date:   Fri, 10 Nov 2017 15:56:17 +0800
From:   zhangmengting <zhangmengting@...wei.com>
To:     Namhyung Kim <namhyung@...nel.org>
CC:     <jolsa@...hat.com>, <alexander.shishkin@...ux.intel.com>,
        <acme@...nel.org>, <Linux-kernel@...r.kernel.org>,
        <linux-perf-users@...r.kernel.org>, <huawei.libin@...wei.com>,
        <wangnan0@...wei.com>, <kernel-team@....com>
Subject: Re: [PATCH] perf evsel: Fix incorrect precise_ip in default event
 name

Hi Namhyung,

Yeah, you are right. I'll send a new patch later.

Thanks,

Mengting Zhang


On 2017/11/10 14:30, Namhyung Kim wrote:
> Hello,
>
> On Fri, Nov 10, 2017 at 01:49:06PM +0800, Mengting Zhang wrote:
>> When no event is specified with -e option, perf will specify a
>> "cycles" event with the highest level of precision available in
>> perf_event_attr.precise_ip as the default event. But the evsel name
>> shows an incorrect precise ip, fix it.
>>
>> For example, with a highest precision perf_event_attr.precise_ip = 2,
>> the evsel name "cycles:ppp" shows a wrong precision available.
>>
>> Before:
>> $./perf record sleep 1
>> [ perf record: Woken up 1 times to write data ]
>> [ perf record: Captured and wrote 0.014 MB perf.data (21 samples) ]
>> $./perf evlist -v
>> cycles:ppp: size: 112, { sample_period, sample_freq }: 4000,
>> sample_type: IP|TID|TIME|PERIOD, disabled: 1, inherit: 1, mmap: 1,
>> comm: 1, freq: 1, enable_on_exec: 1, task: 1, precise_ip: 2,
>> sample_id_all: 1, exclude_guest: 1, mmap2: 1, comm_exec: 1
>>
>> After:
>> $./perf record sleep 1
>> [ perf record: Woken up 1 times to write data ]
>> [ perf record: Captured and wrote 0.014 MB perf.data (16 samples) ]
>> $./perf evlist -v
>> cycles:pp: size: 112, { sample_period, sample_freq }: 4000,
>> sample_type: IP|TID|TIME|PERIOD, disabled: 1, inherit: 1, mmap: 1,
>> comm: 1, freq: 1, enable_on_exec: 1, task: 1, precise_ip: 2,
>> sample_id_all: 1, exclude_guest: 1, mmap2: 1, comm_exec: 1
>>
>> Signed-off-by: Mengting Zhang <zhangmengting@...wei.com>
>> ---
>>   tools/perf/util/evsel.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
>> index 0dccdb8..94cf11d 100644
>> --- a/tools/perf/util/evsel.c
>> +++ b/tools/perf/util/evsel.c
>> @@ -312,7 +312,7 @@ struct perf_evsel *perf_evsel__new_cycles(bool precise)
>>   	if (asprintf(&evsel->name, "cycles%s%s%.*s",
>>   		     (attr.precise_ip || attr.exclude_kernel) ? ":" : "",
>>   		     attr.exclude_kernel ? "u" : "",
>> -		     attr.precise_ip ? attr.precise_ip + 1 : 0, "ppp") < 0)
>> +		     attr.precise_ip ? attr.precise_ip : 0, "ppp") < 0)
> I think you don't need to check value of the precise_ip anymore.
> The following should be ok:
>
> 		     attr.precise_ip, "ppp") < 0)
>
> Thanks,
> Namhyung
>
>
> .
>


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ