-- -proposed kernel testing -- ubuntu@helo:~$ uname -a Linux helo 4.15.0-39-generic #42-Ubuntu SMP Tue Oct 23 15:43:48 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux ubuntu@helo:~$
ubuntu@helo:~$ apt policy linux-image-generic linux-image-generic: Installed: 4.15.0.39.41 Candidate: 4.15.0.39.41 Version table: *** 4.15.0.39.41 500 500 http://ports.ubuntu.com/ubuntu-ports bionic-proposed/main arm64 Packages 100 /var/lib/dpkg/status 4.15.0.38.40 500 500 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 Packages 4.15.0.36.38 500 500 http://ports.ubuntu.com/ubuntu-ports bionic-security/main arm64 Packages 4.15.0.20.23 500 500 http://ports.ubuntu.com/ubuntu-ports bionic/main arm64 Packages ubuntu@helo:~$ ubuntu@helo:~$ perf list List of pre-defined events (to be used in -e): armv8_pmuv3_0/br_immed_retired/ [Kernel PMU event] armv8_pmuv3_0/br_mis_pred/ [Kernel PMU event] armv8_pmuv3_0/br_mis_pred_retired/ [Kernel PMU event] armv8_pmuv3_0/br_pred/ [Kernel PMU event] armv8_pmuv3_0/br_retired/ [Kernel PMU event] armv8_pmuv3_0/br_return_retired/ [Kernel PMU event] armv8_pmuv3_0/bus_access/ [Kernel PMU event] armv8_pmuv3_0/bus_cycles/ [Kernel PMU event] armv8_pmuv3_0/cid_write_retired/ [Kernel PMU event] armv8_pmuv3_0/cpu_cycles/ [Kernel PMU event] armv8_pmuv3_0/exc_return/ [Kernel PMU event] armv8_pmuv3_0/exc_taken/ [Kernel PMU event] armv8_pmuv3_0/inst_retired/ [Kernel PMU event] armv8_pmuv3_0/inst_spec/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache_allocate/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache_refill/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache_wb/ [Kernel PMU event] armv8_pmuv3_0/l1d_tlb/ [Kernel PMU event] armv8_pmuv3_0/l1d_tlb_refill/ [Kernel PMU event] armv8_pmuv3_0/l1i_cache/ [Kernel PMU event] armv8_pmuv3_0/l1i_cache_refill/ [Kernel PMU event] armv8_pmuv3_0/l1i_tlb/ [Kernel PMU event] armv8_pmuv3_0/l1i_tlb_refill/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache_allocate/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache_refill/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache_wb/ [Kernel PMU event] armv8_pmuv3_0/l2d_tlb/ [Kernel PMU event] armv8_pmuv3_0/l2d_tlb_refill/ [Kernel PMU event] armv8_pmuv3_0/ld_retired/ [Kernel PMU event] armv8_pmuv3_0/mem_access/ [Kernel PMU event] armv8_pmuv3_0/st_retired/ [Kernel PMU event] armv8_pmuv3_0/stall_backend/ [Kernel PMU event] armv8_pmuv3_0/stall_frontend/ [Kernel PMU event] armv8_pmuv3_0/sw_incr/ [Kernel PMU event] armv8_pmuv3_0/ttbr_write_retired/ [Kernel PMU event] armv8_pmuv3_0/unaligned_ldst_retired/ [Kernel PMU event] core imp def: bus_access_rd [Bus access read] bus_access_wr [Bus access write] exc_dabort [Exception taken, Data Abort and SError] exc_fiq [Exception taken, FIQ] exc_hvc [Exception taken, Hypervisor Call] exc_irq [Exception taken, IRQ] exc_pabort [Exception taken, Instruction Abort] exc_smc [Exception taken, Secure Monitor Call] exc_svc [Exception taken, Supervisor Call] exc_trap_dabort [Exception taken, Data Abort or SError not taken locally] exc_trap_fiq [Exception taken, FIQ not taken locally] exc_trap_irq [Exception taken, IRQ not taken locally] exc_trap_other [Exception taken, Other traps not taken locally] exc_trap_pabort [Exception taken, Instruction Abort not taken locally] exc_undef [Exception taken, Other synchronous] l1d_cache_inval [L1D cache invalidate] l1d_cache_rd [L1D cache access, read] l1d_cache_refill_inner [L1D cache refill, inner] l1d_cache_refill_outer [L1D cache refill, outer] l1d_cache_refill_rd [L1D cache refill, read] l1d_cache_refill_wr [L1D cache refill, write] l1d_cache_wb_clean [L1D cache Write-Back, cleaning and coherency] l1d_cache_wb_victim [L1D cache Write-Back, victim] l1d_cache_wr [L1D cache access, write] l1d_tlb_rd [L1D tlb access, read] l1d_tlb_refill_rd [L1D tlb refill, read] l1d_tlb_refill_wr [L1D tlb refill, write] l1d_tlb_wr [L1D tlb access, write] l2d_tlb_rd [L2D cache access, read] l2d_tlb_refill_rd [L2D cache refill, read] l2d_tlb_refill_wr [L2D cache refill, write] l2d_tlb_wr [L2D cache access, write] mem_access_rd [Data memory access, read] mem_access_wr [Data memory access, write] unaligned_ld_spec [Unaligned access, read] unaligned_ldst_spec [Unaligned access] unaligned_st_spec [Unaligned access, write] rNNN [Raw hardware event descrip cpu/t1=v1[,t2=v2,t3 ...]/modifier [Raw hardware event descrip (see 'man perf-list' on how to encode it) mem:<addr>[/len][:access] [Hardware breakpoint] ubuntu@helo:~$ ubuntu@helo:~$ sudo perf stat -e l1d_cache_refill_rd,l1d_cache_refill_wr,armv8_pmuv3_0/l1d_cache_refill/ stress-ng -c 2 -i 1 -m 1 --vm-bytes 128M -t 10s stress-ng: info: [6096] dispatching hogs: 2 cpu, 1 io, 1 vm stress-ng: info: [6096] successful run completed in 10.86s Performance counter stats for 'stress-ng -c 2 -i 1 -m 1 --vm-bytes 128M -t 10s': 215192996 l1d_cache_refill_rd 68057599 l1d_cache_refill_wr 283250595 armv8_pmuv3_0/l1d_cache_refill/ 11.080157375 seconds time elapsed ubuntu@helo:~$ ubuntu@helo:~$ sudo perf stat -e unaligned_ld_spec,unaligned_st_spec,unaligned_ldst_spec,mem_access_rd,mem_access_wr,armv8_pmuv3_0/mem_access/ stress-ng -c 2 -i 1 -m 1 --vm-bytes 128M -t 10s stress-ng: info: [6107] dispatching hogs: 2 cpu, 1 io, 1 vm stress-ng: info: [6107] successful run completed in 10.28s Performance counter stats for 'stress-ng -c 2 -i 1 -m 1 --vm-bytes 128M -t 10s': 2925792 unaligned_ld_spec 4271379 unaligned_st_spec 7197171 unaligned_ldst_spec 2748840198 mem_access_rd 2108536216 mem_access_wr 4857376384 armv8_pmuv3_0/mem_access/ 10.609944930 seconds time elapsed ubuntu@helo:~$ ** Tags removed: verification-needed-bionic ** Tags added: verification-done-bionic -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1796904 Title: [Bionic] Update ThunderX2 implementation defined pmu core events Status in linux package in Ubuntu: Triaged Status in linux source package in Bionic: Fix Committed Bug description: [IMPACT] ======= The ARM architecture defines several events as part of the Performance Monitor Unit (PMU) Extension. In addition, Cavium has added "implementation defined" pmu core events, which Cavium deems most useful for analyzing performance. Currently perf does not list these "implementation defined" events. [FIX] ==== b9b77222d4ff perf vendor events arm64: Update ThunderX2 implementation defined pmu core events [TEST] ==== With the patch applied perf lists the additional PMU events. ubuntu@starbuck:~$ perf list List of pre-defined events (to be used in -e): armv8_pmuv3_0/br_immed_retired/ [Kernel PMU event] armv8_pmuv3_0/br_mis_pred/ [Kernel PMU event] armv8_pmuv3_0/br_mis_pred_retired/ [Kernel PMU event] armv8_pmuv3_0/br_pred/ [Kernel PMU event] armv8_pmuv3_0/br_retired/ [Kernel PMU event] armv8_pmuv3_0/br_return_retired/ [Kernel PMU event] armv8_pmuv3_0/bus_access/ [Kernel PMU event] armv8_pmuv3_0/bus_cycles/ [Kernel PMU event] armv8_pmuv3_0/cid_write_retired/ [Kernel PMU event] armv8_pmuv3_0/cpu_cycles/ [Kernel PMU event] armv8_pmuv3_0/exc_return/ [Kernel PMU event] armv8_pmuv3_0/exc_taken/ [Kernel PMU event] armv8_pmuv3_0/inst_retired/ [Kernel PMU event] armv8_pmuv3_0/inst_spec/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache_allocate/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache_refill/ [Kernel PMU event] armv8_pmuv3_0/l1d_cache_wb/ [Kernel PMU event] armv8_pmuv3_0/l1d_tlb/ [Kernel PMU event] armv8_pmuv3_0/l1d_tlb_refill/ [Kernel PMU event] armv8_pmuv3_0/l1i_cache/ [Kernel PMU event] armv8_pmuv3_0/l1i_cache_refill/ [Kernel PMU event] armv8_pmuv3_0/l1i_tlb/ [Kernel PMU event] armv8_pmuv3_0/l1i_tlb_refill/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache_allocate/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache_refill/ [Kernel PMU event] armv8_pmuv3_0/l2d_cache_wb/ [Kernel PMU event] armv8_pmuv3_0/l2d_tlb/ [Kernel PMU event] armv8_pmuv3_0/l2d_tlb_refill/ [Kernel PMU event] armv8_pmuv3_0/ld_retired/ [Kernel PMU event] armv8_pmuv3_0/mem_access/ [Kernel PMU event] armv8_pmuv3_0/st_retired/ [Kernel PMU event] armv8_pmuv3_0/stall_backend/ [Kernel PMU event] armv8_pmuv3_0/stall_frontend/ [Kernel PMU event] armv8_pmuv3_0/sw_incr/ [Kernel PMU event] armv8_pmuv3_0/ttbr_write_retired/ [Kernel PMU event] armv8_pmuv3_0/unaligned_ldst_retired/ [Kernel PMU event] core imp def: bus_access_rd [Bus access read] bus_access_wr [Bus access write] exc_dabort [Exception taken, Data Abort and SError] exc_fiq [Exception taken, FIQ] exc_hvc [Exception taken, Hypervisor Call] exc_irq [Exception taken, IRQ] exc_pabort [Exception taken, Instruction Abort] exc_smc [Exception taken, Secure Monitor Call] exc_svc [Exception taken, Supervisor Call] exc_trap_dabort [Exception taken, Data Abort or SError not taken locally] exc_trap_fiq [Exception taken, FIQ not taken locally] exc_trap_irq [Exception taken, IRQ not taken locally] exc_trap_other [Exception taken, Other traps not taken locally] exc_trap_pabort [Exception taken, Instruction Abort not taken locally] exc_undef [Exception taken, Other synchronous] l1d_cache_inval [L1D cache invalidate] l1d_cache_rd [L1D cache access, read] l1d_cache_refill_inner [L1D cache refill, inner] l1d_cache_refill_outer [L1D cache refill, outer] l1d_cache_refill_rd [L1D cache refill, read] l1d_cache_refill_wr [L1D cache refill, write] l1d_cache_wb_clean [L1D cache Write-Back, cleaning and coherency] l1d_cache_wb_victim [L1D cache Write-Back, victim] l1d_cache_wr [L1D cache access, write] l1d_tlb_rd [L1D tlb access, read] l1d_tlb_refill_rd [L1D tlb refill, read] l1d_tlb_refill_wr [L1D tlb refill, write] l1d_tlb_wr [L1D tlb access, write] l2d_tlb_rd [L2D cache access, read] l2d_tlb_refill_rd [L2D cache refill, read] l2d_tlb_refill_wr [L2D cache refill, write] l2d_tlb_wr [L2D cache access, write] mem_access_rd [Data memory access, read] mem_access_wr [Data memory access, write] unaligned_ld_spec [Unaligned access, read] unaligned_ldst_spec [Unaligned access] unaligned_st_spec [Unaligned access, write] rNNN [Raw hardware event descrip cpu/t1=v1[,t2=v2,t3 ...]/modifier [Raw hardware event descrip (see 'man perf-list' on how to encode it) mem:<addr>[/len][:access] [Hardware breakpoint] ubuntu@starbuck:~$ [REGRESSION POTENTIAL] ====================== The patch is limited to ARM64, ThunderX2 PMU core definitions json file. No regression potential for any kernel subsystems. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1796904/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp