From nobody Sun Feb 8 14:31:37 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CCE3FEB64DC for ; Thu, 15 Jun 2023 05:18:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242931AbjFOFSQ (ORCPT ); Thu, 15 Jun 2023 01:18:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49108 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229853AbjFOFSO (ORCPT ); Thu, 15 Jun 2023 01:18:14 -0400 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on2068.outbound.protection.outlook.com [40.107.100.68]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2D36D26A9; Wed, 14 Jun 2023 22:18:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YjPpirw3E9l1PS9RKhS/i4I3tzqqbRHkiZegqZJ4SG0BTbhriaZFzO61IQ5cvtqcmLwDpyuLjw0nkLUuu+lpQ1+s6daqRRLQhNMYtyZb0g6NsuRCL54BhoJ7WJCaEABAUICK7pZK9Uai+rBGhj1eSbjW0jnM8dnm28CPPGuJ5IaPnOgN0DzPK7Dte2b+5gmaoMxfAiq0b+CUsHJfvvWm/COYj33/Efqd2vQ/NJ42e0ycBAt20jOtnpbua79MzEEkfWes5nExHl1QFFnV9kAlFvOtI8WQyS/wo5m2+tmdCCI2sgRmVsmiB06gqUWZ23DYvNU8RRy03dytLQUQAiTyeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yCFmqI6LFRRN5iXAA6H3rlmNwPH2Cf57pOCtTL7JlJ4=; b=hOXuhY6KWN/uNnGSQvmBhVNysCK3+ImWJsqRGMhRGNTTDo3Ksbg63Hher34KQk4QsejtYNsIdEQXjj+lsxkUzElTTVWZyBAXa+iYYohF+5MbrXyZGNuJCYhPGDqWOVUERw0qXscL88uxXLsgbNO82JWX22V4NcoFGgaMF6YqVhGbM9x9ME8DGRSmw9cJLNzQdiLj/wdm6KaM0igLzLJUCp2y3EptYvGOidg52Sx4irrqNkDbwJdNAl2jEVn5NzJrB+pcP4fqeu/604+kyLuvL7rF49vwUJxjYZFkoIB+IXGj+DsKgNXVT6GHsAyTZM9tLXlzyfqHiIbJRN7DsxkWgQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yCFmqI6LFRRN5iXAA6H3rlmNwPH2Cf57pOCtTL7JlJ4=; b=yNvYf7QKCXxSJUmf37Acf942nF2FoG9C9IW1LXNVzCcjYG7bJ6Gdp2fgq6g3vZHQwaNabiHL9JwLJNeFml4BFpQdtDxFgkHb3SyAHp+bSpNnLmKknwhIx69VWgkm7GtF5vIYysiLZGs++8/ryEJobeDhyr1jdjb2MXWZoLgWCmE= Received: from DM6PR08CA0048.namprd08.prod.outlook.com (2603:10b6:5:1e0::22) by IA1PR12MB6436.namprd12.prod.outlook.com (2603:10b6:208:3ac::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37; Thu, 15 Jun 2023 05:18:10 +0000 Received: from DM6NAM11FT088.eop-nam11.prod.protection.outlook.com (2603:10b6:5:1e0:cafe::7b) by DM6PR08CA0048.outlook.office365.com (2603:10b6:5:1e0::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 05:18:09 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT088.mail.protection.outlook.com (10.13.172.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 05:18:09 +0000 Received: from BLR-5CG113396H.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 00:17:19 -0500 From: Ravi Bangoria To: CC: , , , , , , , , , , , , , , , , , Subject: [PATCH v2 1/3] perf pmus: Describe semantics of 'core_pmus' and 'other_pmus' Date: Thu, 15 Jun 2023 10:46:58 +0530 Message-ID: <20230615051700.1833-2-ravi.bangoria@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615051700.1833-1-ravi.bangoria@amd.com> References: <20230615051700.1833-1-ravi.bangoria@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT088:EE_|IA1PR12MB6436:EE_ X-MS-Office365-Filtering-Correlation-Id: fa87494f-759b-4bf6-567c-08db6d5fe8a7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XApnXqnM3IzIUpIysOh6qh08EroIfhf3xoHkmPoCtXlV4tXROtpC4XahSey4IsaKVoFKDdbyFG2+T3Hj9aP0TM7hMYjiGIoRoJow6q+wDpFC+bu3UIka/7A9uvvf5JDte2kGTfATeCzBOw8GW4fSHDDFe34vDTUs33YObinhVZ9CTyTpd7uA5ICtU5gxeQLopO/g56Dy0pfw8N7Z8sn2j5iM1rLFxsLkkhQRL+hOA25wMPNpI0xoEYjyHQXNOF97A8+8Mtlzb4AzxjRlCjUGXvSnzHbA+dTxg0GS6/L6azO5lhZjQnT/6A66R7QIG+NjK81S9eY/XiC6kkl+rlpxZRIiyrTweZglAev+q2gQzkg6zV1OwnP1cwzY64e5SYOqDpO+My7IzZwNpKgqRO7toljHrTTGpeKgIfIqOK39l6x18p36fyXQEvARYcogracak0A2roCyPA4qVjCKd8wkV8ODTKwqo/8IbjEDBDa5AYX+CCwG/nfVK5sAo1IVueobfpfsnMfBY5yCrBq3W4sFZEzM8MhbNBm1kuebvE1XCEUVa55xqZuCeG2SS8mb4TDY3S3X+UrK8XAJAWMvVnfYZood5kojGI0AXqykQFm29bfVwpMf/MKVklBgk3iTryU5pHmo6tUu3pRTvhzqy/lV8s3AhMo6jhRYzsf1BVQl27fM5D1ns9V7i1Cw2qo/cpBSnNKJSD/gw+2IY1IrP2PaVNazqbppjLP4ShXgU2Pchnb5FtDrksZ6+O5TLNQdIP1SoVpH/VnJo7ruVywy5mtLiQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(376002)(396003)(136003)(451199021)(46966006)(40470700004)(36840700001)(5660300002)(426003)(336012)(186003)(40480700001)(44832011)(2906002)(47076005)(16526019)(7416002)(2616005)(36860700001)(41300700001)(8936002)(7696005)(26005)(40460700003)(8676002)(316002)(54906003)(6666004)(82740400003)(36756003)(478600001)(81166007)(356005)(82310400005)(4326008)(86362001)(70206006)(6916009)(70586007)(1076003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 05:18:09.4877 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fa87494f-759b-4bf6-567c-08db6d5fe8a7 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT088.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6436 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Notion of 'core_pmus' and 'other_pmus' are independent of hw core and uncore pmus. For example, AMD IBS PMUs are present in each SMT-thread but they belongs to 'other_pmus'. Add a comment describing what these list contains and how they are treated. Signed-off-by: Ravi Bangoria Reviewed-by: Ian Rogers --- tools/perf/util/pmus.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tools/perf/util/pmus.c b/tools/perf/util/pmus.c index e1d0a93147e5..8c50ab8894b7 100644 --- a/tools/perf/util/pmus.c +++ b/tools/perf/util/pmus.c @@ -12,6 +12,21 @@ #include "pmu.h" #include "print-events.h" =20 +/* + * core_pmus: A PMU belongs to core_pmus if it's name is "cpu" or it's sy= sfs + * directory contains "cpus" file. All PMUs belonging to core_= pmus + * must have pmu->is_core=3D1. If there are more than one PMU = in + * this list, perf interprets it as a heterogeneous platform. + * (FWIW, certain ARM platforms having heterogeneous cores uses + * homogeneous PMU, and thus they are treated as homogeneous + * platform by perf because core_pmus will have only one entry) + * other_pmus: All other PMUs which are not part of core_pmus list. It doe= sn't + * matter whether PMU is present per SMT-thread or outside of = the + * core in the hw. For e.g., an instance of AMD ibs_fetch// and + * ibs_op// PMUs is present in each hw SMT thread, however they + * are captured under other_pmus. PMUs belonging to other_pmus + * must have pmu->is_core=3D0 but pmu->is_uncore could be 0 or= 1. + */ static LIST_HEAD(core_pmus); static LIST_HEAD(other_pmus); static bool read_sysfs_core_pmus; --=20 2.40.1 From nobody Sun Feb 8 14:31:37 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id BAC01EB64D9 for ; Thu, 15 Jun 2023 05:18:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243151AbjFOFSZ (ORCPT ); Thu, 15 Jun 2023 01:18:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49118 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229853AbjFOFSS (ORCPT ); Thu, 15 Jun 2023 01:18:18 -0400 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2050.outbound.protection.outlook.com [40.107.243.50]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F25E926A8; Wed, 14 Jun 2023 22:18:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eN/E7g92tP2M4WJGlbL+EbHB6uDnk51m9eTg7mKdE5/qG2qeVqyswvAnXPVhYVxwg1HCVmL1HL/L+Nc06ShLvh+t322XyJomZOGS8AZ1zW2eePFnhEijgLboY/u6plULT8SIoJZ/gR/kXZIEHf2c8mkumiE42yhOHtmLqmyP/em2o9BW6Qn1849XAA+8xnVKQOAkhb/i/UwSlgs+ChhPeMRLIxWCvHtJKZ3ZlZuqyatnVifrqTRfHesS1WVLz/7xjialDlXiy04anR2TkP3Ur0TDqo/YYJQsCMbzU528Gn5+ciILdgCcgOZxImkjrwYyV2Ei8LQNeTTb5jNC6Amn3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=4+wgGQffTGtgKzeyUDBvcOyac0L/WKtS3ywSLAIOqjo=; b=DVNBEvloaenN3q7vBR9jsoIvba66xS52LSEIuP++2nTM++tyfF+yLI28mD2KfidN8+kArVm061qFPhXvy6804Oc7F6h2qv+fRpSCMbF9298fSe2KwrG30BbPmN8MHLEN9/wQXLgRSJGP2a59YDqyrKHaEwuPATbirqfurYwJnQOD4XYvDW8W76VrOxPTybRsK6h/Vg1adug/vXHeqSiUVeTOcvkXUhrDN8beDlwDUSVAjKvkmuYiINpVBvXl90dXfixXebd6NPoW7t+9/0iJq+p76AyB6QHym6drmpkRBuro96QJuwQ+8AbUkAXIo6o8l0F9jRqnWqE2E+B/9cogIg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=4+wgGQffTGtgKzeyUDBvcOyac0L/WKtS3ywSLAIOqjo=; b=RrbmR3TXOY+yU5/2uGu8w/HON+J+K5b+7ooD9NlXJZP4ALjjPwAUwPgk2cjN/H6DBMKJGRQ8scLUdWRKWUX/SHi5+vezYpSVOA6cfwTLFwnHOcAWT2ll7g0OSHRc5VE/dMl2jH//U3pFC7vxZzR/ugm1ueEXy6AJI68AOtzbbzg= Received: from DM6PR03CA0100.namprd03.prod.outlook.com (2603:10b6:5:333::33) by SJ2PR12MB9192.namprd12.prod.outlook.com (2603:10b6:a03:55d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.46; Thu, 15 Jun 2023 05:18:14 +0000 Received: from DM6NAM11FT108.eop-nam11.prod.protection.outlook.com (2603:10b6:5:333:cafe::2d) by DM6PR03CA0100.outlook.office365.com (2603:10b6:5:333::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.37 via Frontend Transport; Thu, 15 Jun 2023 05:18:14 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT108.mail.protection.outlook.com (10.13.172.95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.26 via Frontend Transport; Thu, 15 Jun 2023 05:18:14 +0000 Received: from BLR-5CG113396H.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 00:18:08 -0500 From: Ravi Bangoria To: CC: , , , , , , , , , , , , , , , , , Subject: [PATCH v2 2/3] perf mem amd: Fix perf_pmus__num_mem_pmus() Date: Thu, 15 Jun 2023 10:46:59 +0530 Message-ID: <20230615051700.1833-3-ravi.bangoria@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615051700.1833-1-ravi.bangoria@amd.com> References: <20230615051700.1833-1-ravi.bangoria@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT108:EE_|SJ2PR12MB9192:EE_ X-MS-Office365-Filtering-Correlation-Id: ec887821-94e6-4511-f732-08db6d5feb79 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Cy7V9Zi2MdRfsHWrqmQ4ziPBcvZpckPGsSDnQRzEeb1NNyagU8JcBrals3xlSUrvByVxhi9Kz/6lYfwy4PZMgvswKZwyYz9BtQiQqIlfdcipemaWuQOlek5jsU+RN69yHUAF5bu8vrVKpsmcIDQo8wxAKAPYveL/4pPJLbNYKioyEI/hNy9o/Uk3udCeNw5s2ixEisHqEZk03/jWFy1KOLIwL4EZaIMeWntoVJmV+R1zZcKvfRKuiXT6XZikFqOoI1F3G8aYpY108G8AG7NP/0fj+I7mLFf7csrr/SYEUqckTndsbCaxGJwPBApxr6ladKbF2jjJhUZHFvl4E8Si2fJ13YBtch79ODF8t9WL16CNdnhHulkK3/A3Rh7N8YsNxFzxN+UwlhkdOqNuWTGKPjnk2YzMSNweAl2fHTuxUivGoGX5TX7WLI/iED16CyTpH7oOOx1LZOZ676PNDRb4BCgfAb27JvIMXPSl6NYBpWmI6G0pZq3bLG7zbo3/ctxSbRdSynSQ1GpESakqHW+x9zASds0e0Q1T6Br8gMgMLL1b7tXBooy5bSKQ31hX/KxrZlFrgqNyb7EfZMZVcUWkSDpvrJX+uxeK7BZJ0XUI3eOkY7MpqMd20mjsIlTKp/AbfPDmLgV2hbxclVtX4UyJTlgNUqeeDRLO5Z6jnJLx7DlScAxQzvvOPawbkNNHr52vfzyzfli7oj+z/X3H+Vf18nByZr2W9pS3t6HSCfFWQ/N89c5HtkzIe8ZCKEZ/TjnILfOi/2rmk+1YzxVQ/UDvrcybXV7aUtE7/Xbuk0GS8aCS5QC/LurC10vJE3uc4T14 X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(136003)(39860400002)(346002)(396003)(376002)(451199021)(40470700004)(46966006)(36840700001)(40460700003)(6666004)(478600001)(7696005)(36860700001)(1076003)(47076005)(336012)(186003)(426003)(16526019)(83380400001)(36756003)(82310400005)(86362001)(2616005)(82740400003)(26005)(81166007)(356005)(40480700001)(4326008)(70586007)(44832011)(70206006)(6916009)(316002)(8676002)(8936002)(7416002)(5660300002)(41300700001)(2906002)(54906003)(101420200003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 05:18:14.2235 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ec887821-94e6-4511-f732-08db6d5feb79 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT108.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB9192 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" perf mem/c2c on AMD internally uses IBS OP PMU, not the core PMU. Also, AMD platforms does not have heterogeneous PMUs. Signed-off-by: Ravi Bangoria Reviewed-by: Ian Rogers --- tools/perf/arch/x86/util/pmu.c | 12 ++++++++++++ tools/perf/util/pmus.c | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/tools/perf/arch/x86/util/pmu.c b/tools/perf/arch/x86/util/pmu.c index 3c0de3370d7e..f3534a791e79 100644 --- a/tools/perf/arch/x86/util/pmu.c +++ b/tools/perf/arch/x86/util/pmu.c @@ -14,6 +14,8 @@ #include "../../../util/intel-bts.h" #include "../../../util/pmu.h" #include "../../../util/fncache.h" +#include "../../../util/pmus.h" +#include "env.h" =20 struct pmu_alias { char *name; @@ -168,3 +170,13 @@ char *pmu_find_alias_name(const char *name) =20 return __pmu_find_alias_name(name); } + +int perf_pmus__num_mem_pmus(void) +{ + /* AMD uses IBS OP pmu for perf mem/c2c */ + if (x86__is_amd_cpu()) + return 1; + + /* Intel uses core pmus for perf mem/c2c */ + return perf_pmus__num_core_pmus(); +} diff --git a/tools/perf/util/pmus.c b/tools/perf/util/pmus.c index 8c50ab8894b7..a2032c1b7644 100644 --- a/tools/perf/util/pmus.c +++ b/tools/perf/util/pmus.c @@ -242,7 +242,7 @@ const struct perf_pmu *perf_pmus__pmu_for_pmu_filter(co= nst char *str) return NULL; } =20 -int perf_pmus__num_mem_pmus(void) +int __weak perf_pmus__num_mem_pmus(void) { /* All core PMUs are for mem events. */ return perf_pmus__num_core_pmus(); --=20 2.40.1 From nobody Sun Feb 8 14:31:37 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B7515EB64DB for ; Thu, 15 Jun 2023 05:18:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229712AbjFOFSc (ORCPT ); Thu, 15 Jun 2023 01:18:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49156 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242974AbjFOFSY (ORCPT ); Thu, 15 Jun 2023 01:18:24 -0400 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2053.outbound.protection.outlook.com [40.107.93.53]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 490FA26AA; Wed, 14 Jun 2023 22:18:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ogHhtXIEySsTD/DbumsGC82dhDtbv11BdPEYXZqD/ZPflF53+pkY7fc5yQFEMRCJDn3zEedG+tsOzcUe+YB/ZjQAhzgHVN/pw1BN4vX91d3hJU+6Hm+6ffGCEC8Xuv0QExg6Jw1BU/+0CyEH7j/1ISXfjAirAu1Nx/rWWwKaBzGc8L1a6WrCpd6uRm5JKDv7fE/MsEZsWsO9GPW90RJKSArhRairF30AazoW+9H7odKkrTp2VzJFw0gK6GV+RYHY5YoCiU7DzvG2GmuAe2kDe4OLLnH98KiVwhzahe4ANUp+9q7w+6smCZ3El4617CxwH+GZTMeRxJ3l/yT2aq2ijQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7ST+1N4AP2h9SfKLNCEbqV/wWYRWBNuR+dUrCdoQzSs=; b=ZzY4F0DTAUO06OJz7x5jndWJZQ8l2fEFW9UtuUfXanJ154qAScDkcUZJgPJCcF2G9vKbhxbPN+zkIR7B/v01CRYcaa9foqUzhvy97HukzIpLc3Eg9lnU4ufOqG1hVbmMYP3iXCQBz0zXfAI3PHMdfiKH6yJUFlbv9nbV++wisulPjLEfNusePR3oVGqYI2LQVascvogBsLgVHah2gmrZAvTVosliXa5W0nORkVzqJxkcLlcZbR0Byg2GRaukq//Iur2Dibowt5JvJ6h8VKjaTWDx4BnB7ylnkngJCYAdpddhIlhYkTkkVnfcumswPY7YLUBWpGrCTyGZKUAnbYSCBw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7ST+1N4AP2h9SfKLNCEbqV/wWYRWBNuR+dUrCdoQzSs=; b=bI2VX1SXpi+1BxXlMR+/i5jGLeVAGwnthmS8CVIVGrvyB86Twh0pUM1kwnEjQvps/0FyXJO+HhagXPZMrW4UeQLn4DG+XqMWrfv9PxqUeWZJvgQsukRF+t/DkJHXGlUxy8SGeQi+ZCis3Q33mrv65FvVX498UaNkq1GUvd4Iu20= Received: from DS7PR07CA0019.namprd07.prod.outlook.com (2603:10b6:5:3af::7) by PH7PR12MB5710.namprd12.prod.outlook.com (2603:10b6:510:1e1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Thu, 15 Jun 2023 05:18:20 +0000 Received: from DM6NAM11FT084.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3af:cafe::85) by DS7PR07CA0019.outlook.office365.com (2603:10b6:5:3af::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 05:18:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by DM6NAM11FT084.mail.protection.outlook.com (10.13.172.132) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6500.25 via Frontend Transport; Thu, 15 Jun 2023 05:18:20 +0000 Received: from BLR-5CG113396H.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 15 Jun 2023 00:18:14 -0500 From: Ravi Bangoria To: CC: , , , , , , , , , , , , , , , , , Subject: [PATCH v2 3/3] perf mem: Scan all PMUs instead of just core ones Date: Thu, 15 Jun 2023 10:47:00 +0530 Message-ID: <20230615051700.1833-4-ravi.bangoria@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230615051700.1833-1-ravi.bangoria@amd.com> References: <20230615051700.1833-1-ravi.bangoria@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT084:EE_|PH7PR12MB5710:EE_ X-MS-Office365-Filtering-Correlation-Id: e5d9c079-2ae8-4aa5-c804-08db6d5fef23 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Dq+6/Z1AQSLSw2xK3OorZ6RXlbeyMH8L+MBZZ7dFzs/oNe2Lt2JJk5yiiRmLpeXD8RCSSlIXmMAwCya6QZ4ph7Ax7l0iJNY2ZfZrw2188SiwZR4eoGiPnoDqM1sOawZ5hGA96jgYfxWrQ35TQf8MZZNRGedv/rO9MzF/y8bCSsv42hNkAQ1WSbXpgOBUD2r/6iHkbVsepBuLq5GWjclY1srbMtlKx1Ht6ZGIF4lev2r1isuIc7QsAx4UOreTKvmc5467DbORYIUg1wsUkwYmeemaOuJBCCheQjQ15ALyH6REVekJenScFpuvo1eoLp9MjPntmO1l9d6KSW1LkEQy2IrKwSaJumF3Qtg8EyyCXH2l54rrsUrEdMvK3Wo1N0s5ncPa9bwEu1eVPVH42tYLb+6IbebI6IZ5N+k+xeNm7s2x988wgkU5vloEtQpYfLvL8vPZwmiJ7kXMUX70ht03DcfKf89Lyr7QvAPmj6igSlWlmoLL3OsymM3pVKGFcczkJYlBCHa1qS2vB0O5iPGvv6/3q8OIAAze8wYbUC70oxBwaolfujYvCYkXYTbssql2cWMEdwdby92QMDRw05SgNcMY6GDSxzeE952G7TryNwxjHdA7NV+xmUBnOZy1G9wg+8trGbe13TYyAJxmKgaZCI/auOnOBcG1qjsIdnlsE8DLgKgrKHSKF/OtN3hqOFc9Qyyk0fguNq53b0Fv4QolMnUhpwVa6odof7EFmQQfKegOYKQHEJuW7xeRelzjQKQALTvOOrJi392H1TINmM+kAQ== X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230028)(4636009)(376002)(346002)(136003)(39860400002)(396003)(451199021)(36840700001)(46966006)(40470700004)(40460700003)(6916009)(6666004)(70206006)(316002)(70586007)(54906003)(4326008)(478600001)(36756003)(2616005)(82740400003)(86362001)(36860700001)(336012)(426003)(47076005)(83380400001)(186003)(1076003)(26005)(16526019)(41300700001)(356005)(5660300002)(8936002)(44832011)(7416002)(82310400005)(8676002)(7696005)(40480700001)(2906002)(81166007)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2023 05:18:20.3696 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e5d9c079-2ae8-4aa5-c804-08db6d5fef23 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT084.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5710 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Scanning only core PMUs is not sufficient on platforms like AMD since perf mem on AMD uses IBS OP PMU, which is independent of core PMU. Scan all PMUs instead of just core PMUs. There should be negligible performance overhead because of scanning all PMUs, so we should be okay. Signed-off-by: Ravi Bangoria Reviewed-by: Ian Rogers --- tools/perf/util/mem-events.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/tools/perf/util/mem-events.c b/tools/perf/util/mem-events.c index be15aadb6b14..c07fe3a90722 100644 --- a/tools/perf/util/mem-events.c +++ b/tools/perf/util/mem-events.c @@ -130,7 +130,12 @@ int perf_mem_events__init(void) if (!e->tag) continue; =20 - while ((pmu =3D perf_pmus__scan_core(pmu)) !=3D NULL) { + /* + * Scan all PMUs not just core ones, since perf mem/c2c on + * platforms like AMD uses IBS OP PMU which is independent + * of core PMU. + */ + while ((pmu =3D perf_pmus__scan(pmu)) !=3D NULL) { scnprintf(sysfs_name, sizeof(sysfs_name), e->sysfs_name, pmu->name); e->supported |=3D perf_mem_event__supported(mnt, sysfs_name); } @@ -165,7 +170,7 @@ static void perf_mem_events__print_unsupport_hybrid(str= uct perf_mem_event *e, char sysfs_name[100]; struct perf_pmu *pmu =3D NULL; =20 - while ((pmu =3D perf_pmus__scan_core(pmu)) !=3D NULL) { + while ((pmu =3D perf_pmus__scan(pmu)) !=3D NULL) { scnprintf(sysfs_name, sizeof(sysfs_name), e->sysfs_name, pmu->name); if (!perf_mem_event__supported(mnt, sysfs_name)) { @@ -188,7 +193,7 @@ int perf_mem_events__record_args(const char **rec_argv,= int *argv_nr, if (!e->record) continue; =20 - if (perf_pmus__num_core_pmus() =3D=3D 1) { + if (perf_pmus__num_mem_pmus() =3D=3D 1) { if (!e->supported) { pr_err("failed: event '%s' not supported\n", perf_mem_events__name(j, NULL)); @@ -203,7 +208,7 @@ int perf_mem_events__record_args(const char **rec_argv,= int *argv_nr, return -1; } =20 - while ((pmu =3D perf_pmus__scan_core(pmu)) !=3D NULL) { + while ((pmu =3D perf_pmus__scan(pmu)) !=3D NULL) { rec_argv[i++] =3D "-e"; s =3D perf_mem_events__name(j, pmu->name); if (s) { --=20 2.40.1