From nobody Fri Dec 19 20:10:27 2025 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0503133A6F7 for ; Thu, 4 Dec 2025 09:11:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764839477; cv=none; b=XhSJj+FUXF80y1o6b7ihElUyqpwaVyv8QAPK4XRQxPrbo6Ffkb894fttpsJsk4EsfKv7NTgRUb31DEGmMEDN1SyF3vyDM1gcTQolyAYMa03AuAdmx38bCJHyF6VF6qu1ftMosLLX6B7W5RSJk+khGNiFa0bFRVbUWAWDxnqZ1HU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764839477; c=relaxed/simple; bh=nXoX/KkEDD4WgAlpkopzYz76JHrEvu6uyqQSE3EJk3U=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qbwP/3KexanT25o883+5p26PzL+GNuMB1N/Cwp/twoBD8Oakr7WW94l9pjYng4O7MQmRfCfWIH565W3qaUdi10LWAG2su9pkkE5TR9ErY/fyGwCmKhkH457/4KNIDAdhrknEYNz61J5phB9APVRZbr5lUUzF7JTgw4pNnH9b3p0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=RCTEfVmB; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="RCTEfVmB" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-477a2ab455fso8807385e9.3 for ; Thu, 04 Dec 2025 01:11:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1764839474; x=1765444274; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=BwGBYjKOBvIUB64b+mlhVfmQWWJY0YeMY/8ci8MwFyI=; b=RCTEfVmBu5zlGG2QcbVCgPEaJ99v4g7ajTLus9RzVfZiU02bD/l1pHtKQFclPyhzkT EMHqLOX6g5xBs6XnZKv4YKtjuwXOalRD57fQlJNCMhosFRlZQ7L1GwHOwGKHmBINtZtu qdP+RR3Q2b24yC7DCnpd3vjOVepVJFLLlHKSCSBZLfD1oAmSNyDIaXIbyp6KCQOB6UR4 00Y8NsJIiwcWLp7dVhEkMVrvEzExp5skfrTj45M1Et7RWPWDGaGOQagvivOnVN9osMAQ ONejcpP7RxNg/Nr/zdwEtxMrDjFcXkjy5ggN4TqCP8OqMLAZcGOt00aLPiUyCTmoylcg q2bQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764839474; x=1765444274; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=BwGBYjKOBvIUB64b+mlhVfmQWWJY0YeMY/8ci8MwFyI=; b=VNRmy3RXC1H7VZTdH/RJTWugT29JMP1iJlNISvDts5O5DQV/vNY668DXWhdiL7cpen orzzIKuZyRayLWGa0WakJWzRf6Y33n8ajLZsBSNqg5sbr+4H/9wwWNvoiQ0Wq6QU/C+z +YUxMaW23FHvVqgX2FtjH32N+2ykYU7w9cwyLRZBcHtw30QFP7pMMd3UJ2eYxlpSyb7g oZHtm04BYt8Q/sb1ofQ728x1Ywo82s4dcrm49nZ7COQxSvQqeCzVavrsM4+lwEoEwN7Z LMk+L1HsrGG48KuXhHZI3FV8AFnRoPR4SfunnhEZked5YsuC9Onmx2zptaxw2zDeTS9I C5mQ== X-Forwarded-Encrypted: i=1; AJvYcCU/XLc78WlCwV/fxkuO0trkchO0hxt3ILqj+UiHAPSNQLGGYr5PVr8/yfqQfkAZR9j8CYMUVklnzQDz/rw=@vger.kernel.org X-Gm-Message-State: AOJu0Yw1uCA2InXnYxHOvfaAiAZq+NXtvFAToQdu5EO6tcVUhxY35qIr wMATpX9F3EA4JPus4GKn4Qt/NQ1Hb+DvFHp+vVFNKN8DecWSgzM4cJvbEhSw4UC+qZw= X-Gm-Gg: ASbGncub9HB8zfx+2Y5rdA5DsRZJm7ec8etNqEJ/68TEh0OGDpwEkgiaNZknn6mJb+u JBQXrS8mEFHROnwu3rGA5W7rdikuCMxp85QMhKhG57e+UmMVWyEuoko+3dSqy7fvP6SXCi+TV4q p011BHqokY0SAPqoeVhanJB29Zif2ZReQQ1IPUNMVSQxu462sK5iaxKMxtwWAKZwKSNFt/8KDFk TYTARVswak2S8r0yQsJ7droqo4ob2BgigYeu88l8TbHkbEc0b2xunlUqmPBXyAipKPUEf+qUO3j u7xwKjLDmBQ97e697WAG4lysm1swLa5BnXczA6Yp+9dnaWGTAOP1gXWK653hZMTmXKQKeMBbvQ/ V+IYcxoC1oj05Xa7wmA+EZkCGQqTnnb83ZYtJajV+uQpwhsIgMNiz7iFuyRmf2thpqT10ii1svx 0juaa3W/uYHZOpvHJTYswR X-Google-Smtp-Source: AGHT+IFR+zE0yxgOVwcKFg/YXz3pkr2Mp2pA5PlhNSGsQxaQ4xghRizau0SyfTU1m4OVsPW0+kyzLg== X-Received: by 2002:a05:600c:1907:b0:471:131f:85b7 with SMTP id 5b1f17b1804b1-4792aef70bbmr69278005e9.15.1764839474288; Thu, 04 Dec 2025 01:11:14 -0800 (PST) Received: from ho-tower-lan.lan ([185.48.77.170]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4792b157783sm38720515e9.5.2025.12.04.01.11.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Dec 2025 01:11:13 -0800 (PST) From: James Clark Date: Thu, 04 Dec 2025 09:10:53 +0000 Subject: [PATCH 1/2] perf tools: Always uniquify event names 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="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251204-james-parse-events-test-v1-1-e6f922ca395e@linaro.org> References: <20251204-james-parse-events-test-v1-0-e6f922ca395e@linaro.org> In-Reply-To: <20251204-james-parse-events-test-v1-0-e6f922ca395e@linaro.org> To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , leo.yan@arm.com Cc: linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, James Clark X-Mailer: b4 0.14.0 evlist__uniquify_evsel_names() only gets called in __parse_events() if verbose is > 0. This means that the auto added "slots" events stay as "slots" rather than being expanded to "cpu_core/slots/" unless Perf is run in verbose mode. This is invisible to users when running Perf stat because evlist__print_counters() always calls it regardless of verbose mode before displaying. The only thing this seems to affect is the test "Parsing of all PMU events from sysfs" which fails when not run in verbose mode. test__checkevent_pmu_events() always expects event names to be prefixed with the pmu name, but this only happens for "slots" events after evlist__uniquify_evsel_names() is called. One fix could be to relax the test to accept the non prefixed name in normal mode. But seeing as Perf stat uniquifies unconditionally, make parse_events() do the same. This fixes the following test failure: $ perf test "Parsing of all PMU events from sysfs" 5.2: Parsing of all PMU events from sysfs : FAILED! Signed-off-by: James Clark Reviewed-by: Ian Rogers --- tools/perf/util/parse-events.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index 17c1c36a7bf9..50e88c9d3d46 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -2217,12 +2217,12 @@ int __parse_events(struct evlist *evlist, const cha= r *str, const char *pmu_filte evlist__splice_list_tail(evlist, &parse_state.list); =20 if (ret2 && warn_if_reordered && !parse_state.wild_card_pmus) { + evlist__uniquify_evsel_names(evlist, &stat_config); pr_warning("WARNING: events were regrouped to match PMUs\n"); =20 if (verbose > 0) { struct strbuf sb =3D STRBUF_INIT; =20 - evlist__uniquify_evsel_names(evlist, &stat_config); evlist__format_evsels(evlist, &sb, 2048); pr_debug("evlist after sorting/fixing: '%s'\n", sb.buf); strbuf_release(&sb); --=20 2.34.1