From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5217DA59; Mon, 23 Mar 2026 14:21:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774275712; cv=none; b=hWcekB3+Sm9ZP9sZ6sBTZfhM8R21UOK2tRJqLhLqquWlsOSiAT2JeEEnHqumssJnuWSGXvmkI0Qiz3YE9lZhYTQSoAKSyyXskibTY57ARyKv9nxqNblVvn02wowILPRD7hpxDmdkZVjCjDB/ms4/Lgw310S5AQPMrRswocm2E/M= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774275712; c=relaxed/simple; bh=iwnP7u4GpYIG1azkDF8VcrNtHSmZgqBH/CCajmCfGD4=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=cHo/d25u0xhWeCYEZdTAQQpdgWQtTdYKhm6LburSb8LvoS15nZ6LiwXhDdB2ds+j4K03PHjNHAfAYZMM/c+0fUovxuWJ/QfKya9leRkEcR6kd+HoaYQpfwDTMpHQgXNKOXiivOgcSYO1gxbWkJSXcvJZq7rY2iayEu8MlwcB+nU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=HjpG0pzW; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="HjpG0pzW" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B5A0CC4CEF7; Mon, 23 Mar 2026 14:21:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1774275712; bh=iwnP7u4GpYIG1azkDF8VcrNtHSmZgqBH/CCajmCfGD4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=HjpG0pzW2aM6asx+Mq8RMw3xT8l7EOcO0dlPte0aWj7T8T2cEdn2ZPG5fUlXb5ZhX S+Y3ae0atiE+8YiB4tJqRTTuGYnf0K4wEeM+GhSayAc05Kmi6EBIot2ufzR6JrornZ chINwhEZ1XHTWQ7hpmKLyn+xhbaD1Whc9pF6w1TfV5dtb8dgIPw1gEWzHZvylXBowF JNK9704qhIS56jcC54+o10mSBAJxGHb9S4w1DS2aUcqoPYJM/ABLpwzkcAru//cDKP v6UWmJPHGv1T1FbMuzY2sz0wz/2l693+7BRVz4dZDORd0EUa+rXcDMctnv1mjMZ4WX s1ev29kLMrt6g== Date: Mon, 23 Mar 2026 11:21:48 -0300 From: Arnaldo Carvalho de Melo To: Leo Yan Cc: Breno Leitao , Ian Rogers , Peter Zijlstra , Ingo Molnar , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Adrian Hunter , James Clark , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-team@meta.com, Denis Yaroshevskiy Subject: Re: [PATCH] perf stat: Fix crash on arm64 Message-ID: References: <20260205-perf_stat-v1-1-e433b0c918af@debian.org> <20260205173918.GB3529712@e132581.arm.com> <20260205175250.GC3529712@e132581.arm.com> <20260311115011.GJ4153946@e132581.arm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260311115011.GJ4153946@e132581.arm.com> On Wed, Mar 11, 2026 at 11:50:11AM +0000, Leo Yan wrote: > On Wed, Mar 11, 2026 at 03:21:00AM -0700, Breno Leitao wrote: > > On Thu, Feb 05, 2026 at 10:22:27AM -0800, Ian Rogers wrote: > > > I think it is a different issue, they have metrics while you don't. > > > Your report does highlight we're missing a NO_JEVENTS=1 build-test, > > > but the build is working for me. I'll send out two patches for these > > > issues. > > I wanted to follow up on this. Are there any next steps I should take? > I can reproduce the issue on my Orion6 with setting a _dummy_ CPUID: > $ export PERF_CPUID=0x00000000410fd490 > $ perf stat -C 5 -vvv > ... > Aborted > perf: util/evsel.c:2156: get_group_fd: Assertion `!(!leader->core.fd)' failed > Because we are working on different hardwares, I am a bit suspect I > reproduced the issue with difference sequence as yours. Anyway, I do > see that an event can be opened prior to its leader event, see the log > below. > Thus, your patch seems make sense to me as we need to ensure the leader > event to be opened first. Ian, how about you think? > I have a side question (maybe this is for James :): why other arch (or > platforms) don't have reproduce the issue? I am wandering if any error > or special stuffs in Arm CPU's json files. I managed to reproduce using Leo's method: (gdb) run stat -C 1 Starting program: /root/bin/perf stat -C 1 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/aarch64-linux-gnu/libthread_db.so.1". Failure to read '#slots'Failure to read '#slots'Failure to read '#slots'Failure to read '#slots' Program received signal SIGSEGV, Segmentation fault. metricgroup__copy_metric_events (evlist=0x555555c85790, cgrp=0x0, new_metric_events=0x555555c86250, old_metric_events=0x555555c86d60) at util/metricgroup.c:1662 1662 evsel = evlist__find_evsel(evlist, old_me->evsel->core.idx); (gdb) bt #0 metricgroup__copy_metric_events (evlist=0x555555c85790, cgrp=0x0, new_metric_events=0x555555c86250, old_metric_events=0x555555c86d60) at util/metricgroup.c:1662 #1 0x00005555555db404 in add_default_events () at builtin-stat.c:2102 #2 0x00005555555de000 in cmd_stat (argc=0, argv=0x7ffffffffc30) at builtin-stat.c:2830 #3 0x00005555556778e0 in run_builtin (p=0x555555bd5558 , argc=3, argv=0x7ffffffffc30) at perf.c:348 #4 0x0000555555677b5c in handle_internal_command (argc=3, argv=0x7ffffffffc30) at perf.c:398 #5 0x0000555555677d20 in run_argv (argcp=0x7ffffffffa4c, argv=0x7ffffffffa40) at perf.c:442 #6 0x0000555555678064 in main (argc=3, argv=0x7ffffffffc30) at perf.c:549 (gdb) acme@raspberrypi:~/git/perf-tools $ git log --no-merges --oneline -15 tools/ 493ad070cbcb (HEAD -> perf-tools, tag: perf-tools-fixes-for-v7.0-2-2026-03-23, x1/perf-tools, number/perf-tools) tools headers: Synchronize linux/build_bug.h with the kernel sources 0a8b2a0857ed tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources 3c71ae8ec9ad tools headers UAPI: Sync linux/kvm.h with the kernel sources 4ddd7588fae6 tools arch x86: Sync the msr-index.h copy with the kernel sources 563d39928db6 perf kvm stat: Fix relative paths for including headers 72a8b9c060d3 perf parse-events: Fix big-endian 'overwrite' by writing correct union member 8dd1d9a33532 perf metricgroup: Fix metricgroup__has_metric_or_groups() 5d4c6c132ea9 selftests/hid: fix compilation when bpf_wq and hid_device are not exported 81f86728a980 tools headers: Skip arm64 cputype.h check e2715ea5fb35 bootconfig: Add bootconfig tests about braces d2ea4ff1ce50 KVM: selftests: Verify SEV+ guests can read and write EFER, CR0, CR4, and CR8 146c9ab38b48 powerpc/selftests/copyloops: extend selftest to exercise __copy_tofrom_user_power7_vmx 68e76fc12df0 selftests: rtnetlink: add neighbour update test 35b16a7a2c4f (tag: perf-tools-fixes-for-v7.0-1-2026-03-13, five/perf-tools) perf synthetic-events: Fix stale build ID in module MMAP2 records 3e745694b032 selftests: kvm: add a test that VMX validates controls on RSM acme@raspberrypi:~/git/perf-tools $ Below goes the full -vvv log FWIW. - Arnaldo root@raspberrypi:~# export PERF_CPUID=0x00000000410fd490 root@raspberrypi:~# perf stat -C 1 -vvv Using CPUID 0x00000000410fd490 metric expr 100 * (STALL_SLOT_BACKEND / (CPU_CYCLES * #slots) - BR_MIS_PRED * 3 / CPU_CYCLES) for backend_bound parsing metric: 100 * (STALL_SLOT_BACKEND / (CPU_CYCLES * #slots) - BR_MIS_PRED * 3 / CPU_CYCLES) Failure to read '#slots'literal: #slots = nan syntax error metric expr 100 * ((1 - OP_RETIRED / OP_SPEC) * (1 - (STALL_SLOT if strcmp_cpuid_str(0x410fd493) | strcmp_cpuid_str(0x410fd490) ^ 1 else STALL_SLOT - CPU_CYCLES) / (CPU_CYCLES * #slots)) + BR_MIS_PRED * 4 / CPU_CYCLES) for bad_speculation parsing metric: 100 * ((1 - OP_RETIRED / OP_SPEC) * (1 - (STALL_SLOT if strcmp_cpuid_str(0x410fd493) | strcmp_cpuid_str(0x410fd490) ^ 1 else STALL_SLOT - CPU_CYCLES) / (CPU_CYCLES * #slots)) + BR_MIS_PRED * 4 / CPU_CYCLES) Failure to read '#slots'literal: #slots = nan syntax error metric expr 100 * ((STALL_SLOT_FRONTEND if strcmp_cpuid_str(0x410fd493) | strcmp_cpuid_str(0x410fd490) ^ 1 else STALL_SLOT_FRONTEND - CPU_CYCLES) / (CPU_CYCLES * #slots) - BR_MIS_PRED / CPU_CYCLES) for frontend_bound parsing metric: 100 * ((STALL_SLOT_FRONTEND if strcmp_cpuid_str(0x410fd493) | strcmp_cpuid_str(0x410fd490) ^ 1 else STALL_SLOT_FRONTEND - CPU_CYCLES) / (CPU_CYCLES * #slots) - BR_MIS_PRED / CPU_CYCLES) Failure to read '#slots'literal: #slots = nan syntax error metric expr 100 * (OP_RETIRED / OP_SPEC * (1 - (STALL_SLOT if strcmp_cpuid_str(0x410fd493) | strcmp_cpuid_str(0x410fd490) ^ 1 else STALL_SLOT - CPU_CYCLES) / (CPU_CYCLES * #slots))) for retiring parsing metric: 100 * (OP_RETIRED / OP_SPEC * (1 - (STALL_SLOT if strcmp_cpuid_str(0x410fd493) | strcmp_cpuid_str(0x410fd490) ^ 1 else STALL_SLOT - CPU_CYCLES) / (CPU_CYCLES * #slots))) Failure to read '#slots'literal: #slots = nan syntax error metric expr (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) / (duration_time * 1e9) for CPUs_utilized parsing metric: (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) / (duration_time * 1e9) literal: #target_cpu = 1.000000 metric expr stalled\-cycles\-backend / cpu\-cycles for backend_cycles_idle parsing metric: backend_cycles_idle metric expr stalled\-cycles\-backend / cpu\-cycles for backend_cycles_idle parsing metric: stalled\-cycles\-backend / cpu\-cycles metric expr branches / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) for branch_frequency parsing metric: branches / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) literal: #target_cpu = 1.000000 metric expr branch\-misses / branches for branch_miss_rate parsing metric: branch_miss_rate metric expr branch\-misses / branches for branch_miss_rate parsing metric: branch\-misses / branches metric expr software@context\-switches\,name\=context\-switches@ * 1e9 / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) for cs_per_second parsing metric: software@context\-switches\,name\=context\-switches@ * 1e9 / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) literal: #target_cpu = 1.000000 metric expr cpu\-cycles / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) for cycles_frequency parsing metric: cpu\-cycles / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) literal: #target_cpu = 1.000000 metric expr stalled\-cycles\-frontend / cpu\-cycles for frontend_cycles_idle parsing metric: frontend_cycles_idle metric expr stalled\-cycles\-frontend / cpu\-cycles for frontend_cycles_idle parsing metric: stalled\-cycles\-frontend / cpu\-cycles metric expr instructions / cpu\-cycles for insn_per_cycle parsing metric: insn_per_cycle metric expr instructions / cpu\-cycles for insn_per_cycle parsing metric: instructions / cpu\-cycles metric expr software@cpu\-migrations\,name\=cpu\-migrations@ * 1e9 / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) for migrations_per_second parsing metric: software@cpu\-migrations\,name\=cpu\-migrations@ * 1e9 / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) literal: #target_cpu = 1.000000 metric expr software@page\-faults\,name\=page\-faults@ * 1e9 / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) for page_faults_per_second parsing metric: software@page\-faults\,name\=page\-faults@ * 1e9 / (software@cpu\-clock\,name\=cpu\-clock@ if #target_cpu else software@task\-clock\,name\=task\-clock@) literal: #target_cpu = 1.000000 metric expr max(stalled\-cycles\-frontend, stalled\-cycles\-backend) / instructions for stalled_cycles_per_instruction parsing metric: max(stalled\-cycles\-frontend, stalled\-cycles\-backend) / instructions found event software@context-switches,name=context-switches@ found event duration_time found event software@page-faults,name=page-faults@ found event cpu-cycles found event branches found event software@cpu-migrations,name=cpu-migrations@ found event software@cpu-clock,name=cpu-clock@ Parsing metric events 'software/context-switches,name=context-switches,metric-id=software!3context!1switches!0name!2context!1switches!3/,software/page-faults,name=page-faults,metric-id=software!3page!1faults!0name!2page!1faults!3/,cpu-cycles/metric-id=cpu!1cycles/,branches/metric-id=branches/,software/cpu-migrations,name=cpu-migrations,metric-id=software!3cpu!1migrations!0name!2cpu!1migrations!3/,software/cpu-clock,name=cpu-clock,metric-id=software!3cpu!1clock!0name!2cpu!1clock!3/,duration_time' Attempt to add: software/context-switches,name=context-switches,metric-id=software!3context!1switches!0name!2context!1switches!3/ ..after resolving event: software/config=0x3,name=context-switches,metric-id=software!3context!1switches!0name!2context!1switches!3/ Attempt to add: software/page-faults,name=page-faults,metric-id=software!3page!1faults!0name!2page!1faults!3/ ..after resolving event: software/config=0x2,name=page-faults,metric-id=software!3page!1faults!0name!2page!1faults!3/ hwmon_pmu: not a hwmon file 'cpu-cycles' Attempt to add: armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ ..after resolving event: armv8_cortex_a76/metric-id=cpu!1cycles,legacy-hardware-config=0/ cpu-cycles -> armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'branches' Attempt to add: armv8_cortex_a76/metric-id=branches,branches/ ..after resolving event: armv8_cortex_a76/metric-id=branches,legacy-hardware-config=0x4/ branches -> armv8_cortex_a76/metric-id=branches,branches/ hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' Attempt to add: software/cpu-migrations,name=cpu-migrations,metric-id=software!3cpu!1migrations!0name!2cpu!1migrations!3/ ..after resolving event: software/config=0x4,name=cpu-migrations,metric-id=software!3cpu!1migrations!0name!2cpu!1migrations!3/ Attempt to add: software/cpu-clock,name=cpu-clock,metric-id=software!3cpu!1clock!0name!2cpu!1clock!3/ ..after resolving event: software/config=0,name=cpu-clock,metric-id=software!3cpu!1clock!0name!2cpu!1clock!3/ hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ found event duration_time Parsing metric events 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ Matched metric-id duration_time to duration_time Events in 'frontend_bound' fully contained within 'retiring' Events in 'bad_speculation' fully contained within 'retiring' Events in 'backend_bound' fully contained within 'retiring' found event duration_time found event stalled-cycles-backend found event instructions found event stalled-cycles-frontend Parsing metric events '{stalled-cycles-backend/metric-id=stalled!1cycles!1backend/,instructions/metric-id=instructions/,stalled-cycles-frontend/metric-id=stalled!1cycles!1frontend/}:W,duration_time' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' Attempt to add: armv8_cortex_a76/metric-id=stalled!1cycles!1backend,stalled-cycles-backend/ ..after resolving event: armv8_cortex_a76/metric-id=stalled!1cycles!1backend,legacy-hardware-config=0x8/ stalled-cycles-backend -> armv8_cortex_a76/metric-id=stalled!1cycles!1backend,stalled-cycles-backend/ hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'instructions' Attempt to add: armv8_cortex_a76/metric-id=instructions,instructions/ ..after resolving event: armv8_cortex_a76/metric-id=instructions,legacy-hardware-config=0x1/ instructions -> armv8_cortex_a76/metric-id=instructions,instructions/ hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' Attempt to add: armv8_cortex_a76/metric-id=stalled!1cycles!1frontend,stalled-cycles-frontend/ ..after resolving event: armv8_cortex_a76/metric-id=stalled!1cycles!1frontend,legacy-hardware-config=0x7/ stalled-cycles-frontend -> armv8_cortex_a76/metric-id=stalled!1cycles!1frontend,stalled-cycles-frontend/ hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ Matched metric-id stalled-cycles-backend to stalled-cycles-backend Matched metric-id instructions to instructions Matched metric-id stalled-cycles-frontend to stalled-cycles-frontend Matched metric-id duration_time to duration_time Matched metric-id software@page-faults,name=page-faults@ to page-faults Matched metric-id software@cpu-clock,name=cpu-clock@ to cpu-clock Matched metric-id software@cpu-migrations,name=cpu-migrations@ to cpu-migrations Matched metric-id software@cpu-clock,name=cpu-clock@ to cpu-clock found event duration_time found event cpu-cycles found event instructions Parsing metric events '{cpu-cycles/metric-id=cpu!1cycles/,instructions/metric-id=instructions/}:W,duration_time' hwmon_pmu: not a hwmon file 'cpu-cycles' Attempt to add: armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ ..after resolving event: armv8_cortex_a76/metric-id=cpu!1cycles,legacy-hardware-config=0/ cpu-cycles -> armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'instructions' Attempt to add: armv8_cortex_a76/metric-id=instructions,instructions/ ..after resolving event: armv8_cortex_a76/metric-id=instructions,legacy-hardware-config=0x1/ instructions -> armv8_cortex_a76/metric-id=instructions,instructions/ hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon file 'instructions' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ Matched metric-id cpu-cycles to cpu-cycles Matched metric-id instructions to instructions Matched metric-id duration_time to duration_time found event duration_time found event cpu-cycles found event stalled-cycles-frontend Parsing metric events '{cpu-cycles/metric-id=cpu!1cycles/,stalled-cycles-frontend/metric-id=stalled!1cycles!1frontend/}:W,duration_time' hwmon_pmu: not a hwmon file 'cpu-cycles' Attempt to add: armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ ..after resolving event: armv8_cortex_a76/metric-id=cpu!1cycles,legacy-hardware-config=0/ cpu-cycles -> armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' Attempt to add: armv8_cortex_a76/metric-id=stalled!1cycles!1frontend,stalled-cycles-frontend/ ..after resolving event: armv8_cortex_a76/metric-id=stalled!1cycles!1frontend,legacy-hardware-config=0x7/ stalled-cycles-frontend -> armv8_cortex_a76/metric-id=stalled!1cycles!1frontend,stalled-cycles-frontend/ hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon file 'stalled-cycles-frontend' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ Matched metric-id cpu-cycles to cpu-cycles Matched metric-id stalled-cycles-frontend to stalled-cycles-frontend Matched metric-id duration_time to duration_time Matched metric-id cpu-cycles to cpu-cycles Matched metric-id software@cpu-clock,name=cpu-clock@ to cpu-clock Matched metric-id software@context-switches,name=context-switches@ to context-switches Matched metric-id software@cpu-clock,name=cpu-clock@ to cpu-clock found event duration_time found event branch-misses found event branches Parsing metric events '{branch-misses/metric-id=branch!1misses/,branches/metric-id=branches/}:W,duration_time' hwmon_pmu: not a hwmon file 'branch-misses' Attempt to add: armv8_cortex_a76/metric-id=branch!1misses,branch-misses/ ..after resolving event: armv8_cortex_a76/metric-id=branch!1misses,legacy-hardware-config=0x5/ branch-misses -> armv8_cortex_a76/metric-id=branch!1misses,branch-misses/ hwmon_pmu: not a hwmon file 'branch-misses' hwmon_pmu: not a hwmon file 'branch-misses' hwmon_pmu: not a hwmon file 'branch-misses' hwmon_pmu: not a hwmon file 'branch-misses' hwmon_pmu: not a hwmon file 'branch-misses' hwmon_pmu: not a hwmon file 'branches' Attempt to add: armv8_cortex_a76/metric-id=branches,branches/ ..after resolving event: armv8_cortex_a76/metric-id=branches,legacy-hardware-config=0x4/ branches -> armv8_cortex_a76/metric-id=branches,branches/ hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon file 'branches' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ Matched metric-id branch-misses to branch-misses Matched metric-id branches to branches Matched metric-id duration_time to duration_time Matched metric-id branches to branches Matched metric-id software@cpu-clock,name=cpu-clock@ to cpu-clock found event duration_time found event cpu-cycles found event stalled-cycles-backend Parsing metric events '{cpu-cycles/metric-id=cpu!1cycles/,stalled-cycles-backend/metric-id=stalled!1cycles!1backend/}:W,duration_time' hwmon_pmu: not a hwmon file 'cpu-cycles' Attempt to add: armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ ..after resolving event: armv8_cortex_a76/metric-id=cpu!1cycles,legacy-hardware-config=0/ cpu-cycles -> armv8_cortex_a76/metric-id=cpu!1cycles,cpu-cycles/ hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'cpu-cycles' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' Attempt to add: armv8_cortex_a76/metric-id=stalled!1cycles!1backend,stalled-cycles-backend/ ..after resolving event: armv8_cortex_a76/metric-id=stalled!1cycles!1backend,legacy-hardware-config=0x8/ stalled-cycles-backend -> armv8_cortex_a76/metric-id=stalled!1cycles!1backend,stalled-cycles-backend/ hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon file 'stalled-cycles-backend' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' hwmon_pmu: not a hwmon type 'duration' in file name 'duration_time' Attempt to add: tool/duration_time/ ..after resolving event: tool/config=0x1/ duration_time -> tool/duration_time/ Matched metric-id cpu-cycles to cpu-cycles Matched metric-id stalled-cycles-backend to stalled-cycles-backend Matched metric-id duration_time to duration_time Matched metric-id software@cpu-clock,name=cpu-clock@ to cpu-clock Matched metric-id duration_time to duration_time Segmentation fault root@raspberrypi:~#