Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp714964rwl; Fri, 7 Apr 2023 04:28:45 -0700 (PDT) X-Google-Smtp-Source: AKy350YowyxoS7kPIglOL4B4HmOQ7zE1c6mPtXHV6ZckX5J2AmREUbnlyvTSIt7dhuXLILz++veo X-Received: by 2002:a05:6402:7c3:b0:4fb:b09e:4c8b with SMTP id u3-20020a05640207c300b004fbb09e4c8bmr2023274edy.37.1680866925404; Fri, 07 Apr 2023 04:28:45 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1680866925; cv=pass; d=google.com; s=arc-20160816; b=ojtfzsjh3TmB4z1b/CUS/IUY++wc9pDnw95skIJwMIT2v40rosSgPiFjzk38Ppc3Y4 gGOXhMfGfqAkl6vd+VUVP46pPn3keDqKdAA+L1//xVh07GNlgVYSbKf9vrT6X8fMjX10 oAbpqvDd9gBBj/1ZUVBdK/uHjtn++WGbQyidFPgyUjqwIluI0sMTetJIjNF2Fl4rxgHN yd+pZDTZBbSglm47Rl2SfScavsyb9EvI0ZYzLmU4BKQrvvgHDUCRJfX0LRMoc+3FmPQY GVxBUdNAZyfzRcaxT3ieTxBzTgKOpBEpt5dWbsccH8AKtwBzgMLasPjGm5sscRP79k5b gnzQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=3Ou1aFKh8fZk1FPFyYv2HMqvSg4tlihDTQ/3AqwI+8c=; b=Z4NCZAp/0OOoYXbRrLjTWX4+eFAZ0FNjS7m02D2AZStPVxXn1mzx/T0wFPjiUDs+jv IzvZwV5CXsGJroVMuHRgFrPMTtFaNnPLn8AcH/GvJJWcFebmdk15pCeBvQonjMoRuZCs oDRx4kgQv0CNi0fyI+0abTFRU7FuYgcW3HY4g0KeNEh2GYlSkVm+uSdC7Z4ktAbSr+gx MmClbD5b5rqtEdQhlq9wAD0uEATlsJmlCX0jsmBVEQGAK9IR88+5qT9U/5dFNHu4uOWT e4DPwj774Z9Est/1LFoS3C2n1WRuJnKrWdBskwt9yI4dVM85LWctfdPHaIIXLrbcP9GH BIqg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=d9iVKY5u; arc=pass (i=1 spf=pass spfdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l4-20020aa7c3c4000000b00501c32ce664si2208884edr.325.2023.04.07.04.28.18; Fri, 07 Apr 2023 04:28:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=d9iVKY5u; arc=pass (i=1 spf=pass spfdomain=amd.com dmarc=pass fromdomain=amd.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240633AbjDGLZ0 (ORCPT + 99 others); Fri, 7 Apr 2023 07:25:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43782 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233064AbjDGLZY (ORCPT ); Fri, 7 Apr 2023 07:25:24 -0400 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2076.outbound.protection.outlook.com [40.107.220.76]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9B2D25FCB; Fri, 7 Apr 2023 04:25:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Pwcx+o32MZMvswaLqLFm81nDmmrGtfgpMedVFtmQ9oHvb0v9CJVLdvILUKmO0NilJ+ye+Ph31LEkhwOGcDFOlIMqrEG6D1iGfCR+ZoqyP7Z8YQHMqhQjRhYgCV4zmmtt+UxThzq9ZR9nVRYYzNsW/V2zobO+3ByOfgph/KTiWXWRFMlHuR3z47XUXxF010UyDq2vRh0b+t634rLKVpVbE/Gx3foSdjC51CfKE3FJHPXa5vizcmNajs+skjwikCOpBG/oXogZ4tugpjm8JnJ0nU13nJ6BaUIkvUTFji0myQjL0eKL6Vh+7KGEmPQ0y0dCuRaPpTNOmezgVNa7hF6tUA== 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=3Ou1aFKh8fZk1FPFyYv2HMqvSg4tlihDTQ/3AqwI+8c=; b=AUOR7+hRUzyt6TMiyx9zShcNG1gwXgpOQg3HCdb2zVSww3ycN1Jn5HF6TkCD2zU7CSH3A59Mrsbjp2T2ctZv7uXElrMrFFwGidLaGpvBS7y0GCp8Cm5LrvB0lOZfvgqEr+d9+IdSVSBdGT6+lSrkLgSvVM7j42drAQRAM/IAT3n5T6rJNO40MTyqnpEQFYVzb1rzxTXLlW+WuVJhiF/2CG7Blyt0BzhUX6XYqScTTR/OOxphRPYuDxhtImTWlyaCdZ/euSgjUjwUCm49neOSSJyZoeQh3Y7k9mvEpfW+b1HkffZLfjXqh1Ltg9x6aMFsnRJFvWhXm+Opcho1BE6WQQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=infradead.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=3Ou1aFKh8fZk1FPFyYv2HMqvSg4tlihDTQ/3AqwI+8c=; b=d9iVKY5uh20EP02iZaMF7omfjNRp+aiVqju3OATgvbyq13V8DaKzmQxwKjYxDWvv4XWP0j4gXKbepDxw/lEgLA3BoZ09xZc1MXMWFoCJz0M+u6JzjNm/fZbzn1ZaRGfE8K74EzBFh/ZK8XKGfjlPguTDrsv5RagpGkPddTaz6fg= Received: from BN9PR03CA0550.namprd03.prod.outlook.com (2603:10b6:408:138::15) by IA0PR12MB8745.namprd12.prod.outlook.com (2603:10b6:208:48d::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6254.33; Fri, 7 Apr 2023 11:25:19 +0000 Received: from BN8NAM11FT011.eop-nam11.prod.protection.outlook.com (2603:10b6:408:138:cafe::1b) by BN9PR03CA0550.outlook.office365.com (2603:10b6:408:138::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6277.34 via Frontend Transport; Fri, 7 Apr 2023 11:25:19 +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 BN8NAM11FT011.mail.protection.outlook.com (10.13.176.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6277.35 via Frontend Transport; Fri, 7 Apr 2023 11:25:18 +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.2375.34; Fri, 7 Apr 2023 06:25:11 -0500 From: Ravi Bangoria To: , , CC: , , , , , , , , , , , , , Subject: [PATCH v3 0/9] perf/mem: AMD IBS and generic tools improvements Date: Fri, 7 Apr 2023 16:54:50 +0530 Message-ID: <20230407112459.548-1-ravi.bangoria@amd.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain 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: BN8NAM11FT011:EE_|IA0PR12MB8745:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d25cd36-21d8-4728-d06f-08db375ac486 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YXgErr9/28mLcRvlB26MCRlqq6UCgIXfxxBj08kqgqRprW1vncd9eT0+AP9srZpyZdIxUHC8u/NZ0cIK0XDmg9USGyF4D9zJdoTt+sRAimiPrnH+TYF8ib+cLdAiXfdlrQIHF33sLPn1wtMq5c9anoRM6XQXMYN0/oM1z6BNjY89t/uSjEKo3Rar1ntDzH3UQ6pwIhmAyPSNI7A3UhRt+1q247/QS07UeKtlFCOcoUWiJX//dQxEhgOFpm5oLYI8yuQJzQFTFaqVNZFV7BHgypKI/61BF08bDqesMKTxR3f0Fp9Y18lF/8Kwe2we/XlTpoDr8guzw7H/EddmAQLRbMP8E9wvZAuslJrz50SEELeKGHy+GFLPzH7nH0UT2AVCQUi/07vjII61wAtUr4GOBxM01QBZat+f6xVERlhsgwpltWg0LEwBpz59n2D5KWBLcRPFxHELOtaRW56zz+VfcugKL2Bf8wHpG6w8r7hylpvTdKwbMfQdl1jDYW4pslfBQpovMZsXPbQx53/xwtFTFFvIUJ9akXBs3t/7LGX68LaGEe33Ut9SySrFIUNxUJeBN9IiErJMIqeR3Wdijvh48M7aRiuyQS0PBxH7ZxVSNDg1xaR63ThfWsqG7c2wuB4JcCehY0Q+IjC7NbqpPuRdUsWod4h5KXZBHc4JUjtkx9KHTBc8uM8wnLprSlTf0LnkpoIlbXLCmPK4T0cN3kanUU6M/nsQyNi6RKGG2+8aaEkyJavgkaO8YN+BG7VADBnq 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)(346002)(136003)(39860400002)(396003)(376002)(451199021)(36840700001)(40470700004)(46966006)(356005)(7416002)(5660300002)(81166007)(36860700001)(44832011)(336012)(82310400005)(47076005)(426003)(36756003)(83380400001)(316002)(2616005)(86362001)(40460700003)(478600001)(16526019)(7696005)(6666004)(186003)(40480700001)(26005)(966005)(8936002)(82740400003)(54906003)(41300700001)(8676002)(110136005)(1076003)(70206006)(70586007)(4326008)(2906002)(41533002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2023 11:25:18.6186 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2d25cd36-21d8-4728-d06f-08db375ac486 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: BN8NAM11FT011.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8745 X-Spam-Status: No, score=0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Kernel IBS driver wasn't using new PERF_MEM_* APIs due to some of its limitations. Mainly: 1. mem_lvl_num doesn't allow setting multiple sources whereas old API allows it. Setting multiple data sources is useful because IBS on pre-zen4 uarch doesn't provide fine granular DataSrc details (there is only one such DataSrc(2h) though). 2. perf mem sorting logic (sort__lvl_cmp()) ignores mem_lvl_num. perf c2c (c2c_decode_stats()) does not use mem_lvl_num at all. perf mem prints mem_lvl and mem_lvl_num both if both are set, which is ugly. Set mem_lvl_num, mem_remote and mem_hops for data_src via IBS. Handle first issue using mem_lvl_num = ANY_CACHE | HOPS_0. In addition to setting new API fields, convert all individual field assignments to compile time wrapper macros built using PERF_MEM_S(). Also convert DataSrc conditional code to array lookups. Interpretation of perf_mem_data_src by perf_mem__lvl_scnprintf() was non-intuitive. Make it sane. v2: https://lore.kernel.org/r/20230327130851.1565-1-ravi.bangoria%40amd.com v2->v3: - IBS: Don't club RmtNode with DataSrc=7 (IO) - Make perf_mem__lvl_scnprintf() more sane - Introduce PERF_MEM_LVLNUM_UNC, set it along with PERF_MEM_LVL_UNC and interpreat it in tool. - Add PERF_MEM_LVLNUM_NA to default data_src value - Change some of the IBS bit description according to latest PPR Namhyung Kim (1): perf/x86/ibs: Set mem_lvl_num, mem_remote and mem_hops for data_src Ravi Bangoria (8): perf/mem: Introduce PERF_MEM_LVLNUM_UNC perf/mem: Add PERF_MEM_LVLNUM_NA to PERF_MEM_NA perf headers: Sync uapi/linux/perf_event.h perf mem: Add PERF_MEM_LVLNUM_NA to PERF_MEM_DATA_SRC_NONE perf mem: Add support for printing PERF_MEM_LVLNUM_UNC perf mem: Refactor perf_mem__lvl_scnprintf() perf mem: Increase HISTC_MEM_LVL column size to 39 chars perf script ibs: Change bit description according to latest PPR arch/x86/events/amd/ibs.c | 156 +++++++++++--------------- include/linux/perf_event.h | 3 +- include/uapi/linux/perf_event.h | 3 +- tools/include/uapi/linux/perf_event.h | 3 +- tools/perf/util/amd-sample-raw.c | 14 +-- tools/perf/util/event.h | 3 +- tools/perf/util/hist.c | 2 +- tools/perf/util/mem-events.c | 90 ++++++++------- 8 files changed, 132 insertions(+), 142 deletions(-) -- 2.34.1