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  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 5 Oct 2014 21:08:02 +0200
From:	Jiri Olsa <jolsa@...hat.com>
To:	kan.liang@...el.com
Cc:	linux-kernel@...r.kernel.org, ak@...ux.intel.com, acme@...nel.org
Subject: Re: [PATCH V7 0/4] perf tools: pmu event new style format fix

On Fri, Oct 03, 2014 at 12:09:04PM -0400, kan.liang@...el.com wrote:
> From: Kan Liang <kan.liang@...el.com>
> 
> There are two types of pmu event stytle formats, "pmu_event_name"
> or "cpu/pmu_event_name/". However, there is a bug on supporting these
> two formats, especially when they mixed with other perf events.
> The patch set intends to fix this issue.
> 
> The patch set has been tested on my haswell.
> Here is the test script I used for this issue.
> (Note: please make sure that your test system support TSX and
> L1-dcache-loads events. Otherwise, you may want to change the events
> to other pmu events.)
> 
> [lk@...alhost ~]$ cat perf_style_test.sh
> #hardware events + kernel pmu event with different style
> perf stat -x, -e cycles,mem-stores,tx-start sleep 2
> perf stat -x, -e cpu-cycles,cycles-ct,cycles-t sleep 2
> perf stat -x, -e cycles,cpu/cycles-ct/,cpu/cycles-t/ sleep 2
> perf stat -x, -e instructions,cpu/tx-start/ sleep 2
> perf stat -x, -e '{cycles,tx-start}' sleep 2
> perf stat -x, -e '{cycles,cpu/tx-start/}' sleep 2
> 
> #HW Cache event + kernel pmu event with different style
> perf stat -x, -e L1-dcache-loads,cpu/mem-stores/,tx-start sleep 2
> perf stat -x, -e L1-dcache-loads,mem-stores,cpu/tx-start/ sleep 2
> perf stat -x, -e '{L1-dcache-loads,mem-stores}' sleep 2
> perf stat -x, -e '{L1-dcache-loads,cpu/tx-start/}' sleep 2
> 
> #Raw event + kernel pmu event with different style:
> perf stat -x, -e cpu/event=0xc0,umask=0x00/,mem-loads,cpu/mem-stores/ sleep 2
> perf stat -x, -e cpu/event=0xc0,umask=0x00/,tx-start,cpu/el-start/ sleep 2
> perf stat -x, -e '{cpu/event=0xc0,umask=0x00/,tx-start}' sleep 2
> 
> Changes since V1:
> Read kernel PMU events from sysfs at runtime
> 
> Changes since V2:
> Use strlcpy to replace strncpy
> 
> Changes since V3:
> rebase to git.kernel.org/pub/scm/linux/kernel/git/acme/linux perf/core
> 
> Changes since V4:
> scan kernel pmu events from sysfs only needed
> rename the init/check/clenup functions and related struct.
> allocate each symbol string separatelly
> Use ALLOC_LIST
> 
> Changes since V5:
> Using perf_pmu__find to instead of perf_pmu__scan
> Don't scan all the time if the system doesn't support kernel pmu events
> 
> Changes since V6:
> Add test case in automated tests suite
> Use strdup and macro to refine the code
> Add sep_dc for PMU event to support PE_MODIFIER_EVENT
> Some minor changes for code style
> 
> Kan Liang (4):
>   Revert "perf tools: Default to cpu// for events v5"
>   perf tools: parse the pmu event prefix and suffix
>   perf tools: Add support to new style format of kernel PMU event
>   perf tools: Add test case for pmu event new style format

got test failure with your patchset:

[jolsa@...va perf]$ sudo ./perf test parse -v
 5: parse events tests                                     :
--- start ---
test child forked, pid 9972
running test 0 'syscalls:sys_enter_open'
registering plugin: /root/.traceevent/plugins/plugin_kvm.so
registering plugin: /root/.traceevent/plugins/plugin_scsi.so
registering plugin: /root/.traceevent/plugins/plugin_mac80211.so
registering plugin: /root/.traceevent/plugins/plugin_hrtimer.so

SNIP

running test 6 'faults'
running test 7 'L1-dcache-load-miss'
running test 8 'mem:0'
running test 9 'mem:0:x'
running test 10 'mem:0:r'
running test 11 'mem:0:w'
running test 12 'syscalls:sys_enter_open:k'
running test 13 'syscalls:*:u'
test child interrupted
---- end ----
parse events tests: FAILED!


jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists