From nobody Fri Dec 19 13:49:44 2025 Received: from mail-yb1-f202.google.com (mail-yb1-f202.google.com [209.85.219.202]) (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 45DD6839E3 for ; Wed, 4 Sep 2024 05:06:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426374; cv=none; b=WKf5D2dU4npMPXj45/GoWXQoEfLgFXJMKnXFlz4Y3gTwDGt6q/EldmWOIaYYhVh8uvaQ5sAUL/uyZjmHpvTDlVd8Kkg0VNn1GVu9W+TNS7elXSU0ru0GlVwOiucgjX/l2rgKsM5tgmoJl87MbRNMRInHRJkFCYPiVzlkTGVK3Y4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426374; c=relaxed/simple; bh=e7twF7D4RZxswFbYZbFUFk/hv4Xp6qmoMYXmywlWvMQ=; h=Date:In-Reply-To:Message-Id:Mime-Version:References:Subject:From: To:Content-Type; b=JbpLZbr00+HL1y040rd1G5oHSxzYPlOSaKyKMX3e5TmrAmCizwICgv70vKccA0PzXWbdqhi64LaKikFzxIw+/CwqNZsdcZRaWiRcPcQsVEMeCXmsisO0ItKt7X3ZFJ5efAdrNUYuS7A2X6IURo5aDuDdnpd8MjNAg38XqiPmu+M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=ZceUgQZH; arc=none smtp.client-ip=209.85.219.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="ZceUgQZH" Received: by mail-yb1-f202.google.com with SMTP id 3f1490d57ef6-e1a74f824f9so9987694276.1 for ; Tue, 03 Sep 2024 22:06:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725426372; x=1726031172; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=5JYnw2dXbPbmg3NZBXlioPl/0JNNRzqtalz3T5B9FgQ=; b=ZceUgQZH2jf7AGhKdIzR+Q+Z61c2JGiOvPQjKwA+tmA+wy5dgm+q45ZpxeNsL22Cow 8wJKFolDTjHgDfh61USh44RknXT36oKuyJkRhQPo1XOT7jNaIqKmyhZp9Gd/+zlW6N3+ tnEcRj2tQz1R0/tUNqWrcuVtVBHOO/xuPd7mZr4sMr9twYCEjExBSkGIzuOJECxI/ccs xhCFD4oM8tYcWz4cmFVpbIjf+LRtT5UIDkwMteYKqNPuNHf8iPEU0VLOjINJ5/hXzpDx jZ7HIctqD7QEJ4C0Klhf9/rkt+pRgtOI9ip7d0uytWfelso+zaZ7wJdoGyX4qoczaSd+ qqIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725426372; x=1726031172; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=5JYnw2dXbPbmg3NZBXlioPl/0JNNRzqtalz3T5B9FgQ=; b=mbvULvKsvOUUEZ3CynVXiE61gYpiIjG+j5artowoyCqQ1d0/9VpYhHDnwbL86yphEp DTx73Nl+faGwWnxt8v/CS4oGthIIT2dsZ18tKDlByNQkBs5luGK6lam1el8AlJtaimHM iHW6TQgQkAMCEA7RXLvpmxZy1LqEqBo3nPJkFBRhQ158IrzLTE0GnxxTxNOC5uNL5F6r YFIDoM4P1akKnjQMo5T98zPDRnygFHkU3Wp7QnJOwrQPPl49RYFBcOPCVVPKZzwmOG8x x8GNFKdCgvdJAC+fachML5RPqzgs4MxX9qbX4Zv1IAoGMCzN1K5Dv8qA1fTyrgQXGlIX qRJQ== X-Forwarded-Encrypted: i=1; AJvYcCWLi0cF3ZUp9dTaHuOLscJzdw2a9HUt9LNWbf7qqsMYfU8s6C9Zr3HwjOpbUNIf95LGGBus836gkO41Z2g=@vger.kernel.org X-Gm-Message-State: AOJu0YxCAilThrAdbKTkNZND9dxRBoI8C2f7/qhF3vk16EXXoCHCM5nq tDzThgwOwomjj5JEf1uXfiewwiI7ORqxH4Bz28MXUWsYoGw5NXAODBx2Ep8jxR+0/X0WNY3sIQn 3+ELx0A== X-Google-Smtp-Source: AGHT+IEMgGK3kKUPug6YrK1FymJVV4ObYq+yK+ANVEHj+WY9mLBrHgfy5pgCRUdgiN9TS5s545K0o+YICLeT X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:c48b:5e3:a63c:2d09]) (user=irogers job=sendgmr) by 2002:a25:f302:0:b0:e02:c06f:1db8 with SMTP id 3f1490d57ef6-e1a79fd4228mr27889276.4.1725426372213; Tue, 03 Sep 2024 22:06:12 -0700 (PDT) Date: Tue, 3 Sep 2024 22:06:01 -0700 In-Reply-To: <20240904050606.752788-1-irogers@google.com> Message-Id: <20240904050606.752788-2-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240904050606.752788-1-irogers@google.com> X-Mailer: git-send-email 2.46.0.469.g59c65b2a67-goog Subject: [PATCH v2 1/6] perf pmus: Fix name comparisons on 32-bit systems From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , Athira Rajeev , Dominique Martinet , Yang Jihong , Colin Ian King , Chaitanya S Prakash , "Masami Hiramatsu (Google)" , James Clark , John Garry , Junhao He , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The hex PMU suffix maybe 64-bit but the comparisons were "unsigned long" or 32-bit on 32-bit systems. This was causing the "PMU name comparison" test to fail in a 32-bit build. Signed-off-by: Ian Rogers --- tools/perf/util/pmus.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/perf/util/pmus.c b/tools/perf/util/pmus.c index 3fcabfd8fca1..769b920d9250 100644 --- a/tools/perf/util/pmus.c +++ b/tools/perf/util/pmus.c @@ -69,7 +69,7 @@ size_t pmu_name_len_no_suffix(const char *str) =20 int pmu_name_cmp(const char *lhs_pmu_name, const char *rhs_pmu_name) { - unsigned long lhs_num =3D 0, rhs_num =3D 0; + unsigned long long lhs_num =3D 0, rhs_num =3D 0; size_t lhs_pmu_name_len =3D pmu_name_len_no_suffix(lhs_pmu_name); size_t rhs_pmu_name_len =3D pmu_name_len_no_suffix(rhs_pmu_name); int ret =3D strncmp(lhs_pmu_name, rhs_pmu_name, @@ -79,9 +79,9 @@ int pmu_name_cmp(const char *lhs_pmu_name, const char *rh= s_pmu_name) return ret; =20 if (lhs_pmu_name_len + 1 < strlen(lhs_pmu_name)) - lhs_num =3D strtoul(&lhs_pmu_name[lhs_pmu_name_len + 1], NULL, 16); + lhs_num =3D strtoull(&lhs_pmu_name[lhs_pmu_name_len + 1], NULL, 16); if (rhs_pmu_name_len + 1 < strlen(rhs_pmu_name)) - rhs_num =3D strtoul(&rhs_pmu_name[rhs_pmu_name_len + 1], NULL, 16); + rhs_num =3D strtoull(&rhs_pmu_name[rhs_pmu_name_len + 1], NULL, 16); =20 return lhs_num < rhs_num ? -1 : (lhs_num > rhs_num ? 1 : 0); } --=20 2.46.0.469.g59c65b2a67-goog From nobody Fri Dec 19 13:49:44 2025 Received: from mail-yb1-f202.google.com (mail-yb1-f202.google.com [209.85.219.202]) (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 7CC6A84A2C for ; Wed, 4 Sep 2024 05:06:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426376; cv=none; b=BhinMZGxUqgl10y8pCczWn8nloqqxSzgq19MXKH7Bd4qyE80H+CKAFlXpZAU2IhARmN0Ud1Y1fX4yhei59Pp+dlOGCNbcFNtAA/BOcE0MyTXqsm51knoEW6/FWqdjIXMT3BepceYQ8uPPOVr8L+6oodpdh/SiIFpi0isxwq6HHE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426376; c=relaxed/simple; bh=QDLVJmTj2vf/hVHdQ6L7zR2dfVNf7BD0kyHNVViDvMk=; h=Date:In-Reply-To:Message-Id:Mime-Version:References:Subject:From: To:Content-Type; b=VTqQ0H651Mb4wdsArUEfutB1AEMSl9wpNqZderwzXWlLPZTr+FcJW0jNeQ/wxVI2JHFAi53th1n0WTFdUh1J3hqROOVuKHU3cB9TTi+izmSLXu1xdH6FIhb7rDI960Vu2YfWpCh0idAyrSYgnuJbGgbUA17rLsi1LsZVikg++Fo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=fG7tgEP8; arc=none smtp.client-ip=209.85.219.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="fG7tgEP8" Received: by mail-yb1-f202.google.com with SMTP id 3f1490d57ef6-e02b5792baaso10640436276.2 for ; Tue, 03 Sep 2024 22:06:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725426374; x=1726031174; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=xXQyzsuqXOgxY2EbjHgMehvTpafBAnrj6hlvtmn8jRc=; b=fG7tgEP8zk2s2hOhzFJ3ETSSeWLHhMGhHWJ/yE0zHlGOIN+yF2mlJV/bBM/mI899C0 jtR3T6M3iATmjOdcXIxJqLbvhI4vqeh9BIrge42hWydufpH5IVtWiObBmoiOf6e27u/A au289wU9qzRS3zJgkNXF3AnToBCBRBY5eEFtqx5xDT1okIdNaflWhYmhL4zR6ftjQW/o UIyKtMLDQ5vTpD143LGvEFgx8Fht+DCbFa/o8JmSyY/UVP4a83brDvFcRdhuKdnvNLgP RBTI75xC54cvlBbRPNl6l+h59nERhiry1vm9U68E+BLj0UCC4Nryj+LKWJ6Wlm2LdPAq H0xQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725426374; x=1726031174; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=xXQyzsuqXOgxY2EbjHgMehvTpafBAnrj6hlvtmn8jRc=; b=m5nJrTFRUnpeN98ro7yq/nJjB37+z9eP3Zx7FHjW0s3ZaEHrMK8ip9ZoysYUqiR0ds arLtw5kkWzj6J2i+f8AIEUVOCghx7u3kNU3TjE2ckWNLApiVwk1AV07uMeLph9SaIUL2 pi4a8i69W4PmEeQO+/HYWqKnRJmXPzck4UC/oxcb/R5SsAF5t9s4p0vmocptKzJIt0Pk /rL2//fCJIHK/tWKalEyTcAWbApj2nDME9pfMLnFr63aaZtwqUQLtf78zvM9jBn93Law nwiRcRq8az8tl/r3t4t2QnS1Ev61SO6M0ev1Bd9tF28xTcykDWOTMCDx4C81Flvz7j/I b98g== X-Forwarded-Encrypted: i=1; AJvYcCXn26YSqP0GGnitKkAbSIwePy+kxtKHnHh9V5dYPok27gKSZfal1Yq5DYuqLSjxmJpzYd+hLwfie/Uflhs=@vger.kernel.org X-Gm-Message-State: AOJu0YyhwurwtxEa+QBimDGDr4OlEtAq8p7/P1A6QQTCu/HjfG/O4Orr l7EXaEv5SQ5XEstumFD0/wwgohh56gNorPBZKA2MJme1rpGQ30lWn+2TtZgnVRYtKqfM4BV/X3f aAdAPOg== X-Google-Smtp-Source: AGHT+IEufI/N1mCq2pXCk9tatBaD5j0lP+BTxKNNxjNtHgIe6K4bmin79t/VcpfJ4jPssaMitYjpzzgqmNbl X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:c48b:5e3:a63c:2d09]) (user=irogers job=sendgmr) by 2002:a25:ba87:0:b0:e17:8e73:866c with SMTP id 3f1490d57ef6-e1a7a1c734bmr532973276.10.1725426374390; Tue, 03 Sep 2024 22:06:14 -0700 (PDT) Date: Tue, 3 Sep 2024 22:06:02 -0700 In-Reply-To: <20240904050606.752788-1-irogers@google.com> Message-Id: <20240904050606.752788-3-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240904050606.752788-1-irogers@google.com> X-Mailer: git-send-email 2.46.0.469.g59c65b2a67-goog Subject: [PATCH v2 2/6] perf time-utils: Fix 32-bit nsec parsing From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , Athira Rajeev , Dominique Martinet , Yang Jihong , Colin Ian King , Chaitanya S Prakash , "Masami Hiramatsu (Google)" , James Clark , John Garry , Junhao He , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The "time utils" test fails in 32-bit builds: ``` ... parse_nsec_time("18446744073.709551615") Failed. ptime 4294967295709551615 expected 18446744073709551615 ... ``` Switch strtoul to strtoull as an unsigned long in 32-bit build isn't 64-bits. Fixes: c284d669a20d ("perf tools: Move parse_nsec_time to time-utils.c") Signed-off-by: Ian Rogers --- tools/perf/util/time-utils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/perf/util/time-utils.c b/tools/perf/util/time-utils.c index 302443921681..1b91ccd4d523 100644 --- a/tools/perf/util/time-utils.c +++ b/tools/perf/util/time-utils.c @@ -20,7 +20,7 @@ int parse_nsec_time(const char *str, u64 *ptime) u64 time_sec, time_nsec; char *end; =20 - time_sec =3D strtoul(str, &end, 10); + time_sec =3D strtoull(str, &end, 10); if (*end !=3D '.' && *end !=3D '\0') return -1; =20 @@ -38,7 +38,7 @@ int parse_nsec_time(const char *str, u64 *ptime) for (i =3D strlen(nsec_buf); i < 9; i++) nsec_buf[i] =3D '0'; =20 - time_nsec =3D strtoul(nsec_buf, &end, 10); + time_nsec =3D strtoull(nsec_buf, &end, 10); if (*end !=3D '\0') return -1; } else --=20 2.46.0.469.g59c65b2a67-goog From nobody Fri Dec 19 13:49:44 2025 Received: from mail-yb1-f202.google.com (mail-yb1-f202.google.com [209.85.219.202]) (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 B6ED682D70 for ; Wed, 4 Sep 2024 05:06:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426379; cv=none; b=bJ8HV708TBRLHMkvbgVKot59yyaTyMBCYKwp0k/AVzcG//LpzjQGuZkVZJaZWUM62Prg+uGYWfGED77QFQ/HFncGWOHfz2HurQ/xbdTzoUSQ7r/PFcdIOktDkOdX8Xc2+8niQfSZi72Iq661XwO41/j0kgX55AyoDK8+AS+Bhsg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426379; c=relaxed/simple; bh=5gbFoYoAAv+z9iYcQzJxmKjtjoR9rkjq5SseKmfmyZc=; h=Date:In-Reply-To:Message-Id:Mime-Version:References:Subject:From: To:Content-Type; b=nJSvn/DvOAO1BhBhp8KzLOe1iebv8h5edR27A2HKUC8oqaTyLuya2yOeVCnJLK1h7JuDzZ4GJE8HHp3eUmQQkIbFt6bdHCJNTFX8DlEJajoeXXu6pUlr2Hmyzru3Npcfgkn8d1wt0vpBfBR6BTXCOMXi6BgJ/7n3S4Yi0y6SRv8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=dIEev/LT; arc=none smtp.client-ip=209.85.219.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="dIEev/LT" Received: by mail-yb1-f202.google.com with SMTP id 3f1490d57ef6-e1159159528so647040276.1 for ; Tue, 03 Sep 2024 22:06:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725426376; x=1726031176; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=pHNCvvAGAccTwrROKiH6oXmaoTXEGMqssDdptckzxqE=; b=dIEev/LT0tVFVoGVDQ8xeMbMYQPfE0flENwv2EnvRzsXU74zXnKv4TmFTP9B6oWePJ rok0fsLKGKAnndf7hipzxxEHSuQjt7hsMpVDeA1iCGXfU15Dh9cnvIROrumVN/oaDNub dHeO6eCyFhrAHNh4B7LYzOWfhcRC9HceHvuQIrWyr+F1b2cXiedbMPYtuuBrqJL6Bjj+ s7DL21ZC5XnOF3On/2RF/Ue8AoXxyM8+tFlCbgXR9mNnSPKRFDhxvVKaAXhNMkAbqe9q DNxj2Lx95DyZNO0EZr9wP/RqjvDStf+JdUqotvYyJGnCKp5niCRb9aH4o7P2uF5myurv VtPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725426376; x=1726031176; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=pHNCvvAGAccTwrROKiH6oXmaoTXEGMqssDdptckzxqE=; b=sG8qNcU2iKUGak/w/6WvhI/mC++cEt8JiIq16SyfcIj+Cc2T6V9U7MSGWWEeb//+yj FP87ht1+FoDvkxNNvMpnUXP96EXOyvC/ZFepREFESSYosJ04E6+7aDlCjY2xrYEa5D4y +P1eGZ6yMzNHmTrqMNpOGA+n2uo7b5Lb5dKrUyDZHdOvrVI88UQXiSm24G8yGBXBlBY6 H9aUe6vQl+01GclbVYc2psLfgh8N2vXAn5JiUE4OdrmOgjh22sAmTiFyk1DxwlTJ/CqF bZxVyIDcG1JLaJXpREikr7BA6SzkWOHIgxQVhVu6vSR2VOHHfBHNWTio05W+EByeLujR B7GQ== X-Forwarded-Encrypted: i=1; AJvYcCW4yr+shholH2649Agd5bXZG7Wl3r26GywYmsbCnQ/ctg8nHrIn1nXzhhVPZ72ULKQ2UkbfjtDgcpP+Fq8=@vger.kernel.org X-Gm-Message-State: AOJu0YzSmYLWqaKqhWsQ8ifpK6+xV0UrTCY+qYyD/T9721uKniOTt8z9 iDqNJ6k28xm0M8vi0TO/eNIZlt1KgPLs9mGajczRRpT4ICi89qBjVOg6Ga0Psa1PjlTg7pq0jw4 BpDCeBQ== X-Google-Smtp-Source: AGHT+IEupBwmUm23ZC3atPykx32oeSSY4wdjHgf0pXl/xtwsMA3w4GLoNXNlyNOOpoOYurol5dpFUa5UWNpw X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:c48b:5e3:a63c:2d09]) (user=irogers job=sendgmr) by 2002:a25:c754:0:b0:e16:6b7e:5d81 with SMTP id 3f1490d57ef6-e1d10adf9demr11060276.6.1725426376549; Tue, 03 Sep 2024 22:06:16 -0700 (PDT) Date: Tue, 3 Sep 2024 22:06:03 -0700 In-Reply-To: <20240904050606.752788-1-irogers@google.com> Message-Id: <20240904050606.752788-4-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240904050606.752788-1-irogers@google.com> X-Mailer: git-send-email 2.46.0.469.g59c65b2a67-goog Subject: [PATCH v2 3/6] perf test: Skip uprobe test if probe command isn't present From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , Athira Rajeev , Dominique Martinet , Yang Jihong , Colin Ian King , Chaitanya S Prakash , "Masami Hiramatsu (Google)" , James Clark , John Garry , Junhao He , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The probe command is dependent on libelf. Skip the test if the required probe command isn't present. Signed-off-by: Ian Rogers --- tools/perf/tests/shell/test_uprobe_from_different_cu.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tools/perf/tests/shell/test_uprobe_from_different_cu.sh b/tool= s/perf/tests/shell/test_uprobe_from_different_cu.sh index 82bc774a078a..33387c329f92 100755 --- a/tools/perf/tests/shell/test_uprobe_from_different_cu.sh +++ b/tools/perf/tests/shell/test_uprobe_from_different_cu.sh @@ -4,6 +4,13 @@ =20 set -e =20 +# Skip if there's no probe command. +if ! perf | grep probe +then + echo "Skip: probe command isn't present" + exit 2 +fi + # skip if there's no gcc if ! [ -x "$(command -v gcc)" ]; then echo "failed: no gcc compiler" --=20 2.46.0.469.g59c65b2a67-goog From nobody Fri Dec 19 13:49:44 2025 Received: from mail-yw1-f202.google.com (mail-yw1-f202.google.com [209.85.128.202]) (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 75FC08615A for ; Wed, 4 Sep 2024 05:06:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426381; cv=none; b=X2goGJ3tPpdDnLW6efeDQMU4iw8iTtvr4I7OJNKTvphwnrbInfxO+gOJ3mPga3KC2rvuBBPG3k1Dehi8IadhQvCqK5t4xVRImsRhnHEj9QPhPpyWKJGtzOLq/UDShEJihiDGHSBKvECVJsmT1lIKeH8+G8QuiSotgWpBKGfe2J4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426381; c=relaxed/simple; bh=VbNrSurkC5nzUGb7NXBdVnuXvhVETW9clCJbcW7SRmA=; h=Date:In-Reply-To:Message-Id:Mime-Version:References:Subject:From: To:Content-Type; b=M8MGSmbiU7yGi42nehkUq7uLGngFoEmLPcPXWKhRNSiCJ8FkN7bCX3ZHVjiX/OK1wSyf0B8DWOvyJejOO4wgj6iAgVg7zfpAvRBVJjrgius0iSqgXic+boS1QnfsfaTIv085APPeZ1lzylW8OOHx60SQ1vhUiw7MRl0qgKjKNZo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=Rj1/F93t; arc=none smtp.client-ip=209.85.128.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="Rj1/F93t" Received: by mail-yw1-f202.google.com with SMTP id 00721157ae682-6d4f52a4069so92429867b3.3 for ; Tue, 03 Sep 2024 22:06:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725426378; x=1726031178; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=y3L6GY/PfMSCC3gu8eXS/W2rnDG3a0GQsrPiN06mruw=; b=Rj1/F93tD5jz+ZNcBGIHT3eYambvpDQAbyPWIK1VjAJEBtx5WKQOLHJZinbDnfemES 9INHP1skPkvGBZ9RY1SzJXT+X3GyZC6XkxOZLQnBNVUehiZ0JTSaH/MKfjZ5qi5ZI6zW xKJQQ2Tvt1qmFApYA83LqAuOnGxAhT8prbYsrv4Qzq2OM5cT6EtwNV+TAOBxyfqISEf7 6FDu/UueOAXUZolXuTIo67BAs5X5HzdbHyEZRSABBoK7yppUa7kkHtr1wgTKam4c1nhq j8rdagfaKPWOGe9QCNo1qrgFFZfzIr3ORwayOM7UOUrOO1cVXDObssoYc2WdFfarAxCJ eBXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725426378; x=1726031178; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=y3L6GY/PfMSCC3gu8eXS/W2rnDG3a0GQsrPiN06mruw=; b=Qsuj7k/xt4hlae6BTlPDZdmra9gLZ5ft5xzBgKl6VMLkQkVbP38ohvOtkLB3MDxOUS QGRt7qzrtoT3Mi6kPLYdqwC3i4E97FPWnJ44sJy2+zOOqKmMRXwbWtWz4LSByPD/2Ztb LL3bTh1JDW2w5J5Y4AAbK0xIsKQCKQNseGYtocbvF5dGLkT82YxgDxg2NaAWKnJLBxQV jCNYQ6xfoG8xSJ9kRjrvT95mqzMsaVlrwbhwgyJxVST2MiJWwOGhwS6l3TYSBEnt/tS0 j6hXm35b61eqCaBA0LLAx+Fnjtm/BqsN+/ixh5kNDWTDsaB3H/crtHQmfc0q1/fOZoYs BS/w== X-Forwarded-Encrypted: i=1; AJvYcCXJt188n/epGrnkQCOd5x60Wg08LJpZxgEjzCC0HCukKOmPcdCl5Uy51qm8pyv0XiB9hAArapAasfeXnuM=@vger.kernel.org X-Gm-Message-State: AOJu0YyzWOo/6ybfuJBVkNvDaCLKqsiizDSvmJamsJR7aK/aEHyTiNYs uct4MzT+bwxTKpggOIoGKgEEUsDklcXqYeJdpU+lzhT/HhNjRETLPWsSgRZtFnKXfZRzI3yHPvp tN1jZuw== X-Google-Smtp-Source: AGHT+IE1mkmO0Uy4xte6nu6JFO/gz07tnmiUACW3Tsyw3ZNvbTNs+fQfqdlYpyc+9bvXRlhbPM7zFwiJfSeS X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:c48b:5e3:a63c:2d09]) (user=irogers job=sendgmr) by 2002:a25:b28a:0:b0:e1d:2e2:f6fe with SMTP id 3f1490d57ef6-e1d02e2f8dfmr11379276.11.1725426378583; Tue, 03 Sep 2024 22:06:18 -0700 (PDT) Date: Tue, 3 Sep 2024 22:06:04 -0700 In-Reply-To: <20240904050606.752788-1-irogers@google.com> Message-Id: <20240904050606.752788-5-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240904050606.752788-1-irogers@google.com> X-Mailer: git-send-email 2.46.0.469.g59c65b2a67-goog Subject: [PATCH v2 4/6] perf parse-events: Add default_breakpoint_len helper From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , Athira Rajeev , Dominique Martinet , Yang Jihong , Colin Ian King , Chaitanya S Prakash , "Masami Hiramatsu (Google)" , James Clark , John Garry , Junhao He , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The default breakpoint length is "sizeof(long)" however this is incorrect on platforms like Aarch64 where sizeof(long) is 8 but the breakpoint length is 4. Add a helper function that can be used to determine the correct breakpoint length, in this change it just returns the existing default sizeof(long) value. Use the helper in the bp_account test so that, when modifying the event from a watchpoint to a breakpoint, the breakpoint length is appropriate for the architecture and not just sizeof(long). Signed-off-by: Ian Rogers --- tools/perf/tests/bp_account.c | 4 +++- tools/perf/tests/bp_signal.c | 3 ++- tools/perf/tests/bp_signal_overflow.c | 3 ++- tools/perf/tests/parse-events.c | 3 ++- tools/perf/util/parse-events.c | 7 ++++++- tools/perf/util/parse-events.h | 2 ++ 6 files changed, 17 insertions(+), 5 deletions(-) diff --git a/tools/perf/tests/bp_account.c b/tools/perf/tests/bp_account.c index 6f921db33cf9..4cb7d486b5c1 100644 --- a/tools/perf/tests/bp_account.c +++ b/tools/perf/tests/bp_account.c @@ -16,6 +16,7 @@ #include "tests.h" #include "debug.h" #include "event.h" +#include "parse-events.h" #include "../perf-sys.h" #include "cloexec.h" =20 @@ -50,7 +51,7 @@ static int __event(bool is_x, void *addr, struct perf_eve= nt_attr *attr) attr->config =3D 0; attr->bp_type =3D is_x ? HW_BREAKPOINT_X : HW_BREAKPOINT_W; attr->bp_addr =3D (unsigned long) addr; - attr->bp_len =3D sizeof(long); + attr->bp_len =3D is_x ? default_breakpoint_len() : sizeof(long); =20 attr->sample_period =3D 1; attr->sample_type =3D PERF_SAMPLE_IP; @@ -92,6 +93,7 @@ static int bp_accounting(int wp_cnt, int share) attr_mod =3D attr; attr_mod.bp_type =3D HW_BREAKPOINT_X; attr_mod.bp_addr =3D (unsigned long) test_function; + attr_mod.bp_len =3D default_breakpoint_len(); =20 ret =3D ioctl(fd[0], PERF_EVENT_IOC_MODIFY_ATTRIBUTES, &attr_mod); TEST_ASSERT_VAL("failed to modify wp\n", ret =3D=3D 0); diff --git a/tools/perf/tests/bp_signal.c b/tools/perf/tests/bp_signal.c index 1f2908f02389..3faeb5b6fe0b 100644 --- a/tools/perf/tests/bp_signal.c +++ b/tools/perf/tests/bp_signal.c @@ -26,6 +26,7 @@ #include "tests.h" #include "debug.h" #include "event.h" +#include "parse-events.h" #include "perf-sys.h" #include "cloexec.h" =20 @@ -111,7 +112,7 @@ static int __event(bool is_x, void *addr, int sig) pe.config =3D 0; pe.bp_type =3D is_x ? HW_BREAKPOINT_X : HW_BREAKPOINT_W; pe.bp_addr =3D (unsigned long) addr; - pe.bp_len =3D sizeof(long); + pe.bp_len =3D is_x ? default_breakpoint_len() : sizeof(long); =20 pe.sample_period =3D 1; pe.sample_type =3D PERF_SAMPLE_IP; diff --git a/tools/perf/tests/bp_signal_overflow.c b/tools/perf/tests/bp_si= gnal_overflow.c index 4e897c2cf26b..ee560e156be6 100644 --- a/tools/perf/tests/bp_signal_overflow.c +++ b/tools/perf/tests/bp_signal_overflow.c @@ -25,6 +25,7 @@ #include "tests.h" #include "debug.h" #include "event.h" +#include "parse-events.h" #include "../perf-sys.h" #include "cloexec.h" =20 @@ -88,7 +89,7 @@ static int test__bp_signal_overflow(struct test_suite *te= st __maybe_unused, int pe.config =3D 0; pe.bp_type =3D HW_BREAKPOINT_X; pe.bp_addr =3D (unsigned long) test_function; - pe.bp_len =3D sizeof(long); + pe.bp_len =3D default_breakpoint_len(); =20 pe.sample_period =3D THRESHOLD; pe.sample_type =3D PERF_SAMPLE_IP; diff --git a/tools/perf/tests/parse-events.c b/tools/perf/tests/parse-event= s.c index edc2adcf1bae..639e65a9bf61 100644 --- a/tools/perf/tests/parse-events.c +++ b/tools/perf/tests/parse-events.c @@ -5,6 +5,7 @@ #include #include "tests.h" #include "debug.h" +#include "parse-events.h" #include "pmu.h" #include "pmus.h" #include @@ -262,7 +263,7 @@ static int test__checkevent_breakpoint_x(struct evlist = *evlist) TEST_ASSERT_VAL("wrong config", test_config(evsel, 0)); TEST_ASSERT_VAL("wrong bp_type", HW_BREAKPOINT_X =3D=3D evsel->core.attr.bp_type); - TEST_ASSERT_VAL("wrong bp_len", sizeof(long) =3D=3D evsel->core.attr.bp_l= en); + TEST_ASSERT_VAL("wrong bp_len", default_breakpoint_len() =3D=3D evsel->co= re.attr.bp_len); return TEST_OK; } =20 diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index fab01ba54e34..792e5ed94870 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -670,6 +670,11 @@ static int add_tracepoint_multi_sys(struct parse_event= s_state *parse_state, } #endif /* HAVE_LIBTRACEEVENT */ =20 +size_t default_breakpoint_len(void) +{ + return sizeof(long); +} + static int parse_breakpoint_type(const char *type, struct perf_event_attr *attr) { @@ -728,7 +733,7 @@ int parse_events_add_breakpoint(struct parse_events_sta= te *parse_state, /* Provide some defaults if len is not specified */ if (!len) { if (attr.bp_type =3D=3D HW_BREAKPOINT_X) - len =3D sizeof(long); + len =3D default_breakpoint_len(); else len =3D HW_BREAKPOINT_LEN_4; } diff --git a/tools/perf/util/parse-events.h b/tools/perf/util/parse-events.h index b735cd9e0acf..68bfea9ffa70 100644 --- a/tools/perf/util/parse-events.h +++ b/tools/perf/util/parse-events.h @@ -286,4 +286,6 @@ static inline bool is_sdt_event(char *str __maybe_unuse= d) } #endif /* HAVE_LIBELF_SUPPORT */ =20 +size_t default_breakpoint_len(void); + #endif /* __PERF_PARSE_EVENTS_H */ --=20 2.46.0.469.g59c65b2a67-goog From nobody Fri Dec 19 13:49:44 2025 Received: from mail-yw1-f201.google.com (mail-yw1-f201.google.com [209.85.128.201]) (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 0774083CA3 for ; Wed, 4 Sep 2024 05:06:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426383; cv=none; b=VwWBrIyeoCCU9XQYRRFCToCoRWaB7UL6VpvZHwUsz7mn1F0OBA1OGkr1oIZZl2TVdM5KmmZu3CQ29ZpH7pA8/gHbIHsfuqNFGhgde6GTzzYkl74S+o9A4ZvHLm2ENt8y8Xrvae8+kgHJT6efkEOamtcVlSn8TuFBAy1gDRba2rU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426383; c=relaxed/simple; bh=Q1I8/KqNd+IgmzvG/JiTn5xSY7RsyeGAbkFJILM1hHU=; h=Date:In-Reply-To:Message-Id:Mime-Version:References:Subject:From: To:Content-Type; b=dovRvICtREFpBor5xTu3qzTID2I/qoWJ0yxyNTI81lrDa4+mfi87tQl08ManY8naXDdwO65RFVA4nH8oX1kgs2IeUw5y5EL2bFtuEMxixL1rNz/3Dec90irTIcaAB4puu/Vsr3rSR56qBA2hlW0qK3lsAO7SeYH/QQBOo1cvUBE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=EirMHyH1; arc=none smtp.client-ip=209.85.128.201 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="EirMHyH1" Received: by mail-yw1-f201.google.com with SMTP id 00721157ae682-6b47ff8a5c4so119807297b3.2 for ; Tue, 03 Sep 2024 22:06:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725426381; x=1726031181; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=D4q+ikrn4FGFI9cUwKwk1kBRcs/+UO6jVCe5+l0RzwM=; b=EirMHyH1EWu5Quwl+7LjdTUuVcJSYsTVF229UqS7nV7l66dv/Wa+jL+iQ1di1hsI9f vBgaoYxUa2ut+GfLVpmxcE95FXRuNNCWjw6mk0qroTGFt76xApg3+ILWoorISXH5dV8Y gDE7l9YzyCNXpgVT3ybVefKE335cMWBY+Vamu6RZ3cP9Q0C2ht7JwDF9hOr3bJwfiB+i lzbM2heJ3qK6hsyitVhakGV2myiP31ZxThRRvrL+Dsq2743J83U2ehdT4NaMXnoTu29k 7wyvQ5mqIGrmM5TYH4VhKEoHBMfI3g+WAtemjcXqzssArIaXMOvOh3Em6pdIp0ZElu2H zGVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725426381; x=1726031181; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=D4q+ikrn4FGFI9cUwKwk1kBRcs/+UO6jVCe5+l0RzwM=; b=Mb0jnvEvONJjP20Yhji1XfZxfSHOhvsx6z1mjJi2+iY01E0kl/rKxq8+QWWtCRBl8p RFxyEteB/8bNSS8AlfIYthhn5TPe6mlZpoIuXtMwlsUjXsoswPTFJx71Y86NbkJauOlz D59/hNBFwWanfwVwe/Mis0dek7qTMi3qvnKnAV1Jx3zZW7aJUihRZ3JfswK7dDyoxF5K qG560qUeJEApYfMTWlmgjPT5ETLRWfFY1/oPc3azD+kxhxAYbdQtakXK9pQcZ4V71VCU d246MK4INkSoXzcwHfvBYv4bGNFNxSXoH7rMEiNUxxZTq5RtJAVIa2PBtZM+1S+6C0hi +fRw== X-Forwarded-Encrypted: i=1; AJvYcCVmNhN8UY6qYQsDRte8fr5X6WRnM1j07MLzXGS7x1MmeY4pzxGz7i3yT15NXcKvbNP4dfv1ajRihDwuvhU=@vger.kernel.org X-Gm-Message-State: AOJu0YwzG0fMSyYqzlY62jPh7rqLh8wIc5H4WaOsWfvHk/uhehSCqx29 UsgDe0Fa+gjQffkwbJVEU6QIAdT6DmJSeX/tgVAiY+41+skqdifJB281RZ5P2e3f2rQIwZNASz7 g/KCjIQ== X-Google-Smtp-Source: AGHT+IGrkNY4sZtaoI7gmxjOo9z6gRU0ekufh63mJP4BdzVqe1BLQYZom+5S68Fh+5ysoSl/ZPzbZeIsT3ia X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:c48b:5e3:a63c:2d09]) (user=irogers job=sendgmr) by 2002:a05:690c:3193:b0:690:8ad7:55f9 with SMTP id 00721157ae682-6d40d984611mr404937b3.2.1725426380808; Tue, 03 Sep 2024 22:06:20 -0700 (PDT) Date: Tue, 3 Sep 2024 22:06:05 -0700 In-Reply-To: <20240904050606.752788-1-irogers@google.com> Message-Id: <20240904050606.752788-6-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240904050606.752788-1-irogers@google.com> X-Mailer: git-send-email 2.46.0.469.g59c65b2a67-goog Subject: [PATCH v2 5/6] perf parse-events: Vary default_breakpoint_len on i386 and arm64 From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , Athira Rajeev , Dominique Martinet , Yang Jihong , Colin Ian King , Chaitanya S Prakash , "Masami Hiramatsu (Google)" , James Clark , John Garry , Junhao He , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" On arm64 the breakpoint length should be 4-bytes but 8-bytes is tolerated as perf passes that as sizeof(long). Just pass the correct value. On i386 the sizeof(long) check in the kernel needs to match the kernel's long size. Check using an environment (uname checks) whether 4 or 8 bytes needs to be passed. Cache the value in a static. Signed-off-by: Ian Rogers --- tools/perf/util/parse-events.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index 792e5ed94870..fa71f7f1d8d3 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -8,6 +8,7 @@ #include #include #include "term.h" +#include "env.h" #include "evlist.h" #include "evsel.h" #include @@ -672,7 +673,22 @@ static int add_tracepoint_multi_sys(struct parse_event= s_state *parse_state, =20 size_t default_breakpoint_len(void) { +#if defined(__i386__) + static int len; + + if (len =3D=3D 0) { + struct perf_env env =3D {}; + + perf_env__init(&env); + len =3D perf_env__kernel_is_64_bit(&env) ? sizeof(u64) : sizeof(long); + perf_env__exit(&env); + } + return len; +#elif defined(__aarch64__) + return 4; +#else return sizeof(long); +#endif } =20 static int --=20 2.46.0.469.g59c65b2a67-goog From nobody Fri Dec 19 13:49:44 2025 Received: from mail-yb1-f201.google.com (mail-yb1-f201.google.com [209.85.219.201]) (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 5781C12C552 for ; Wed, 4 Sep 2024 05:06:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426385; cv=none; b=XFneVa5yQxwX+XH/xBbh6T1f/TbnW4U+rnGuoMWIdh41icy7gyijQVh77pAIW6xhUZ4KdD6PBfHFkVjDsHb05/pTineYKZRRmCv6wlHXFyYFR3Fc4Umstne170BJib9YcEnCoIfJfyCJHeO12FSth7aLZR6DceKuxCuM3xEvPpM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1725426385; c=relaxed/simple; bh=Zzp47YpjJrlq/7aNuFnEG/sx74AzSK2oA4jiAlYD1m4=; h=Date:In-Reply-To:Message-Id:Mime-Version:References:Subject:From: To:Content-Type; b=MwpmXkP1xqc+QLGNEJHwJcR5ZxRcOcUDRwuNpkB6c9jpHEq3PjEaWkvt+DeqVGbFW9ue+W1iKra2mG3qXUFYyC6fcXse5G1wi8NuQnjn1KRSDtjNyEUC8t4Fzg7qfsMLXoVm70Sikg6xclu/R78qE1CmvXV6bZF+V3PtlyREzVE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=Y5WQIo0l; arc=none smtp.client-ip=209.85.219.201 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="Y5WQIo0l" Received: by mail-yb1-f201.google.com with SMTP id 3f1490d57ef6-e1ab008280aso5754662276.0 for ; Tue, 03 Sep 2024 22:06:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725426383; x=1726031183; darn=vger.kernel.org; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :from:to:cc:subject:date:message-id:reply-to; bh=J5+jy8suatSYU8agZ+1zFUqOrIedBbY+ji9A0DmCUwg=; b=Y5WQIo0lY+umlt4tq80jGYjTnjcRkTn6c11ahLAX+KX6r3xkd2cOiEFc0s8TcpiZ+k MXSK1hRk1j901wD+veDRuy/sX0DrSCKC7enkqiNwKfqP6QjJ7SWAQ/8rUscZYohhpXxR rGhA52tBIiSVh0F5plo8ZG3UgL0HdH6SesJ1u1Na9n5pYDX+u5vPU9G253VI/rrNpQDP QBkWocqRhMkXHhBzwzoaEej8DombiTwf9JZl+Y46dxQoaYFBTdCOYCYPyqeEqrtlLaPL Nzmfcson0lKdioHhf9S1WhhFQ8EEsMN1LeW1FUnW41BA08B1tqtSlC9PWjSGngbHp1yq DRgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725426383; x=1726031183; h=to:from:subject:references:mime-version:message-id:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=J5+jy8suatSYU8agZ+1zFUqOrIedBbY+ji9A0DmCUwg=; b=DV7JOqLfdocNs/J7/Fp0keJA4upRj3s1huhlAwGRscKVC5ZrhEAkFMZVGjBi81EVJm xqPNlwFxccLL6E7g0GqOAuTPFFpGpeWMyWqJsez2W6gidh0U0TT8Kb3ZipZCkattoqub /4lsOFxW920E1nvUgRL8MqJVfJ0taqAhx/7o1Woxf4vSQ84MoXWHsaWm60gl4+Mn5tzO +MYSdNKBxdUgBgW8N3Swdve+NNEyQrCBt1HOlX5153pNEUNRhRsMHHuUULqlYwNXT+q/ fsVRtdsj0ZJ9bPEhmg+w3ni7RdEPtoCGPUZQXtOHzmUVBp/7k5ZCLKX20qV6MpfBTG2H Cj3Q== X-Forwarded-Encrypted: i=1; AJvYcCWvyCQnRQKgG7+lRF7tVcrYcHGAm71PPk5b00TdpqOEhOuNA0vjMtF+ZUrryiA5Bh5wYbXw/nvsu+Pt9ZQ=@vger.kernel.org X-Gm-Message-State: AOJu0YwZ9hjDrVDHaOSZQYIdRwOj+hJ77QubRO4jxjXAX/cNd+5w0zSX 3nFn/witNaNwalNtbVqx+xipNUj5BtX1U+lb4iPwSj4hGSPVMpz/amSQupk065dsGy+hARV6ZkK Lz3u02A== X-Google-Smtp-Source: AGHT+IGGPVF71/v8Ly5msG6tRUJzPuQAIOn9/kjoP6sROxK81r4wDL5JgHaT37QF84+IbQDEH5PUBL+bgQfp X-Received: from irogers.svl.corp.google.com ([2620:15c:2a3:200:c48b:5e3:a63c:2d09]) (user=irogers job=sendgmr) by 2002:a25:e910:0:b0:e11:7039:ff92 with SMTP id 3f1490d57ef6-e1a7a3e8384mr26722276.11.1725426383309; Tue, 03 Sep 2024 22:06:23 -0700 (PDT) Date: Tue, 3 Sep 2024 22:06:06 -0700 In-Reply-To: <20240904050606.752788-1-irogers@google.com> Message-Id: <20240904050606.752788-7-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240904050606.752788-1-irogers@google.com> X-Mailer: git-send-email 2.46.0.469.g59c65b2a67-goog Subject: [PATCH v2 6/6] perf test: Make watchpoint data 32-bits on i386 From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , Athira Rajeev , Dominique Martinet , Yang Jihong , Colin Ian King , Chaitanya S Prakash , "Masami Hiramatsu (Google)" , James Clark , John Garry , Junhao He , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" i386 only supports watchpoints up to size 4, 8 bytes causes extra counts and test failures. Signed-off-by: Ian Rogers --- tools/perf/tests/wp.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/perf/tests/wp.c b/tools/perf/tests/wp.c index cc8719609b19..6c178985e37f 100644 --- a/tools/perf/tests/wp.c +++ b/tools/perf/tests/wp.c @@ -20,7 +20,12 @@ do { \ TEST_ASSERT_VAL(text, count =3D=3D val); \ } while (0) =20 +#ifdef __i386__ +/* Only breakpoint length less-than 8 has hardware support on i386. */ +volatile u32 data1; +#else volatile u64 data1; +#endif volatile u8 data2[3]; =20 #ifndef __s390x__ --=20 2.46.0.469.g59c65b2a67-goog