From nobody Fri Dec 19 04:53:42 2025 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 3F378EB8FB1 for ; Thu, 7 Sep 2023 23:51:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237287AbjIGXvt (ORCPT ); Thu, 7 Sep 2023 19:51:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54752 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233985AbjIGXvp (ORCPT ); Thu, 7 Sep 2023 19:51:45 -0400 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2048.outbound.protection.outlook.com [40.107.243.48]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 957341BD3; Thu, 7 Sep 2023 16:51:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lrTAxsTi+i8tRU39XNCrUzS2OE7HgyiMbZnWRONqzWQE4zPLWpiTqGKaHD2coIp3+JaLSi5EjUl2/79zOGJB9pXDxc1P9dWD+eIqtExQngG/fgFPpxmUMTdJNxHIYUf4XgQbph0qTQyeUya9hts9vpB3ac659w2Qg8itRNumnnYe5xq7k4RmIofOJUh8c7L4WomkCpnHb6aV1yCulL1a+B9dtlQheOxHN9GfaKzeoxTYRdqytCcpaC/SKAFMGeDSHER2qG8IfCQpILEvgGfKjNS121wr3JL57uyCffycuZ0/pFw0hMmj72/dIO119pyYzbp1RKjHZlV65/ZSEmfx6w== 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=AkVX2YWxsvn/yUySBmMBPFm/dx+a2epxXWBHdjCvrbw=; b=ECB0YXmVsLRAT5C46BpFZgSvOzRFGxFRdm7Cozy1xoVAglGg2e7MlROnR420AiKQMNc4C5EZpWJoC563YM7Hn5ba8Y5gTExgIUPX9tQoXpUxVoKzSi6zLjmda4ZyB4TDl0863BxfHMfF4gX3V6cyQgdmrUEgXt6p+dYqnohMZ0wZ2E3ID9aBNO7mG3YFRp58trTvP0WRogYHxJsy7boOcvXjsLTqXr48WTa0+hT8fENnvAusfQ1WuEYsLWaSsqVKphpkHBytDpPexpWp03qqs2RDzVkVM2A/DstaZAHkqCaGxea+RI/19mMNgij2nwajE8BA4hFPe5i5NHVcMnTWNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=AkVX2YWxsvn/yUySBmMBPFm/dx+a2epxXWBHdjCvrbw=; b=zk2n8V/eth6pGdeFpwd4xU6rF9NTiZBGmKF5merCDiHAVrPocXHmSIqOTQyv9ToFTIYxzx5W70fbJQzmJ+6YKcT0gmMtkojuyhDhjbAuEccEky/MHeLRsKtPpbgng2uZofqWMYYohah0bE3s0YbX/WacAYSkSGzCDd4MaKYnKY8= Received: from CY5PR19CA0055.namprd19.prod.outlook.com (2603:10b6:930:1a::32) by IA1PR12MB6306.namprd12.prod.outlook.com (2603:10b6:208:3e6::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep 2023 23:51:39 +0000 Received: from CY4PEPF0000FCC0.namprd03.prod.outlook.com (2603:10b6:930:1a:cafe::5d) by CY5PR19CA0055.outlook.office365.com (2603:10b6:930:1a::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.38 via Frontend Transport; Thu, 7 Sep 2023 23:51:38 +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 CY4PEPF0000FCC0.mail.protection.outlook.com (10.167.242.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:38 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:36 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 1/9] x86/resctrl: Add multiple tasks to the resctrl group at once Date: Thu, 7 Sep 2023 18:51:20 -0500 Message-ID: <20230907235128.19120-2-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC0:EE_|IA1PR12MB6306:EE_ X-MS-Office365-Filtering-Correlation-Id: ec61aa83-455d-4390-4ca3-08dbaffd60c9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: haFt6Ra3uKEYXSQPDFAyw1eEttnFjPd9/yIUYE2k/DKggHZ2QX1FX8gkk9/PbD02Q0PcEnDq2YQxvaEADuArNs+U8KPlMVA+tMfObH0pdjt4lyi6mczNy/uJnJVZ1ZcE9mueWWtm/95vI7/U1OkI2qurOaHxTY7nvsuqIZS+6X2/1ynNQfFAdaIVhMMQ8UGvqMnsBYJM/gR7tcB8W0z9b6mnFx4uZOtI3qZkJPYB6rrpGGTdOh3WtH8Ex+luY5L+OUpWN7zdJ47xeGkUzAnPIdcwKUQz0QkbT4GtNQi6jcf2YQ0fn7cnalOrNvEqxorJaJiTM4e87jzBQUbY7lOXjWsnEhLVXhCrP4ce24A8PHTcIWLE0MM0G4TP/FTebr+v+GT/Ioi2BxJRxDcvH5TA2Mzsz00KxuRgMUfHksl3vu9ffEnL3L+ZrfP/9nVc6nwcibQnpoD5+SIScGWCGkqP0K6+Vug/u2G+eJ/J+Gsi76u1ylKKxq3tdFI+k/TbloA6enYE4xHlpo7JVribNFgCfLFbegKw6rN0G0uawkV3SVJdD09ZHjYu5xKk0w4ydODC3P0M9zgxaKmXXPzhEWGfUR8Kxor4ZF9qz2ju2jfq/lT1qP4qPI79Jt8XX6ifl1jGuto80PSJQsnj0o17VFGvIsmQ4WwFXWfNkzysoIx2lijfEy2LnKKfCCuyeHqWicwK5cCg5GucjaT+agIr4dTT4O9v4rLGP8VylhEuxu631dtuPtoi8jOtjawdyK2GUt6TPhy3ErcbBvByGoWvwetIUQ== 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:(13230031)(4636009)(396003)(136003)(376002)(39860400002)(346002)(1800799009)(186009)(82310400011)(451199024)(36840700001)(46966006)(40470700004)(7696005)(6666004)(83380400001)(478600001)(2616005)(26005)(70206006)(426003)(336012)(16526019)(2906002)(7416002)(7406005)(54906003)(41300700001)(70586007)(4326008)(316002)(8936002)(110136005)(44832011)(8676002)(5660300002)(40460700003)(47076005)(36756003)(1076003)(40480700001)(36860700001)(86362001)(356005)(82740400003)(81166007)(66899024)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:38.7355 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ec61aa83-455d-4390-4ca3-08dbaffd60c9 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: CY4PEPF0000FCC0.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB6306 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The resctrl task assignment for monitor or control group needs to be done one at a time. For example: $mount -t resctrl resctrl /sys/fs/resctrl/ $mkdir /sys/fs/resctrl/ctrl_grp1 $echo 123 > /sys/fs/resctrl/ctrl_grp1/tasks $echo 456 > /sys/fs/resctrl/ctrl_grp1/tasks $echo 789 > /sys/fs/resctrl/ctrl_grp1/tasks This is not user-friendly when dealing with hundreds of tasks. Support multiple task assignment in one command with tasks ids separated by commas. For example: $echo 123,456,789 > /sys/fs/resctrl/ctrl_grp1/tasks Reviewed-by: Tan Shaopeng Tested-by: Tan Shaopeng Reviewed-by: Reinette Chatre Signed-off-by: Babu Moger Reviewed-by: Fenghua Yu --- Documentation/arch/x86/resctrl.rst | 9 ++++++++- arch/x86/kernel/cpu/resctrl/rdtgroup.c | 25 ++++++++++++++++++++++--- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/Documentation/arch/x86/resctrl.rst b/Documentation/arch/x86/re= sctrl.rst index cb05d90111b4..8154e9975d1e 100644 --- a/Documentation/arch/x86/resctrl.rst +++ b/Documentation/arch/x86/resctrl.rst @@ -299,7 +299,14 @@ All groups contain the following files: "tasks": Reading this file shows the list of all tasks that belong to this group. Writing a task id to the file will add a task to the - group. If the group is a CTRL_MON group the task is removed from + group. Multiple tasks can be added by separating the task ids + with commas. Tasks will be assigned sequentially. Multiple + failures are not supported. A single failure encountered while + attempting to assign a task will cause the operation to abort and + already added tasks before the failure will remain in the group. + Failures will be logged to /sys/fs/resctrl/info/last_cmd_status. + + If the group is a CTRL_MON group the task is removed from whichever previous CTRL_MON group owned the task and also from any MON group that owned the task. If the group is a MON group, then the task must already belong to the CTRL_MON parent of this diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 725344048f85..f0d163950969 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -696,11 +696,10 @@ static ssize_t rdtgroup_tasks_write(struct kernfs_ope= n_file *of, char *buf, size_t nbytes, loff_t off) { struct rdtgroup *rdtgrp; + char *pid_str; int ret =3D 0; pid_t pid; =20 - if (kstrtoint(strstrip(buf), 0, &pid) || pid < 0) - return -EINVAL; rdtgrp =3D rdtgroup_kn_lock_live(of->kn); if (!rdtgrp) { rdtgroup_kn_unlock(of->kn); @@ -715,7 +714,27 @@ static ssize_t rdtgroup_tasks_write(struct kernfs_open= _file *of, goto unlock; } =20 - ret =3D rdtgroup_move_task(pid, rdtgrp, of); + while (buf && buf[0] !=3D '\0' && buf[0] !=3D '\n') { + pid_str =3D strim(strsep(&buf, ",")); + + if (kstrtoint(pid_str, 0, &pid)) { + rdt_last_cmd_printf("Task list parsing error pid %s\n", pid_str); + ret =3D -EINVAL; + break; + } + + if (pid < 0) { + rdt_last_cmd_printf("Invalid pid %d\n", pid); + ret =3D -EINVAL; + break; + } + + ret =3D rdtgroup_move_task(pid, rdtgrp, of); + if (ret) { + rdt_last_cmd_printf("Error while processing task %d\n", pid); + break; + } + } =20 unlock: rdtgroup_kn_unlock(of->kn); --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 366D9EC875F for ; Thu, 7 Sep 2023 23:51:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238921AbjIGXvz (ORCPT ); Thu, 7 Sep 2023 19:51:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54762 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236262AbjIGXvq (ORCPT ); Thu, 7 Sep 2023 19:51:46 -0400 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on2072.outbound.protection.outlook.com [40.107.102.72]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7DB151BCB; Thu, 7 Sep 2023 16:51:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IMgW81X3NFQI9Vj7QzYebzysmSveO1+jTyKnqfGBv0YZ7iTW0nOE7xwArJ7NhiEFrcnI/ICKM+3VoboR7NIPLc92hXdEpwnyEx7ef7xLpkBChR/zXsd1HfjpKDDMTZxsJXDWNrQ/7lRvnwu1LpJIZGRXSEKzwAnLuvkrUhPv4V5mZKlxB6sSNYAJZaExMYMtreBLaPPRgGqZMRWdGVughIbh/iBPzf/lAusi7EGGBU/OJrp6JZEXVJTm6kHFjI3vgZLUuJ6g0xkzqCVl6ROND4Pt0wYO9g/GzKmjlyskw2TRTRwjSNI+kNRxUKCBLZfIryixqdyvgLeuN1tTdD2JfA== 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=tnwcG3l72kLybYiBjLxO5k4/kCMEuedhA0eBwbmELfE=; b=QxQd42VWHBO1tsysAd5goZNNH53W25DEJVqU7QD3bRz0IF4/kXzlozl8go2TKMZxmDS8wfQ/EaskFdu4vzygwVTEUNQHBDKD1pFsK0qtvaoO9c+711A31hXHeNMWp8J3vGMnqgyleCNfrTCRQ2IIR2vlH505kxJq+94yMhBD6TdtfAr65k8hXLeUTQV8idjDTvH7kRpxoPm1WfQYPUxNxtkYnJNrUlVkAiFnJf8pVb0UNQWjNTYNNVoOoD5vGBFB0Dcxcwm57/apfUakaE6LJ5bb/HpdXRCsQ5uP9jIevjULhBNmwBARrHJ3eyKdM3oy+IjEun3M3AzpFjGc+551pg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=tnwcG3l72kLybYiBjLxO5k4/kCMEuedhA0eBwbmELfE=; b=osLXWcdvzBarYUgRQoARrhN5xoxcmxXYoUzS54F+bB81qa+rDETF1PnJ50wKc8IYv+lBsKpDZVNPvipaXRLixL02+zEZcuPiwim2aVdbfbmoZ47mB6vjM2hMiKpC9wr79QErmSwW+wWk9qgqedRI7lhb0G9f7OSbgE9Uwh0Ezck= Received: from CY5PR19CA0034.namprd19.prod.outlook.com (2603:10b6:930:1a::13) by MN2PR12MB4272.namprd12.prod.outlook.com (2603:10b6:208:1de::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Thu, 7 Sep 2023 23:51:40 +0000 Received: from CY4PEPF0000FCC0.namprd03.prod.outlook.com (2603:10b6:930:1a:cafe::6e) by CY5PR19CA0034.outlook.office365.com (2603:10b6:930:1a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36 via Frontend Transport; Thu, 7 Sep 2023 23:51:39 +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 CY4PEPF0000FCC0.mail.protection.outlook.com (10.167.242.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:39 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:37 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 2/9] x86/resctrl: Simplify rftype flag definitions Date: Thu, 7 Sep 2023 18:51:21 -0500 Message-ID: <20230907235128.19120-3-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC0:EE_|MN2PR12MB4272:EE_ X-MS-Office365-Filtering-Correlation-Id: f2620c61-4d18-4c19-5a12-08dbaffd6158 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Rfab8MZGPqYfb3nvW373nlOseLdNa2TSC1MvCsKPGNXAQmUFQIVGJcklmpZ95sLRcOfby0ptl+7uyl3PjYnIMkegB4qlwf6OgrBdpNtq7DPRsEefTzmblj36dUeQW8pQ2/28fSM7BdLD9jpxccJnhmhFO2+C7VazGHXuhYnb5TvZvG8WsnRPWgrkhQMxfyL7M4yFdW6DtdcLuw0CVO+ECqUtNChtKs0kWaTd1AeLEzcq+IYY5uUblRJOqI7YZv5B4d84rFZGWCWilhhJzhK1KzN3QZWzPztcpCCsgRxG0QSlIhBRVxIFypleDZlF2a3iP2tZ15nipOChPJfkYS+YZuK7KRrXGuaqeO3Xr0rcfJIw/p937F7C9u0Mzr+H4AfwMKaIoTn1V5dOQQkjfROzdBsDc93K1JfeZifTQbtzDKqlrwk9tIyrJ/jj6RUcvPHHgAMkg2qQ7aA4DmIvwkPkY/MmhvIr4L8ZvoWl7BViA5pR+We61i9O4yDCWb/KrsscUZIKe1MnXjvnxyf+PniJcAh9oWRCnQ3a3WncGqiov4xXH+ef/VciSBnGP0OGZ/3XHcDm2Xu3F7Dc6oT5eEmqY8+mDSwGQF9b8MsNm0cOa+Q9AU0/o98jDVF5jSwppgLJB/Bo5xqFZNhE3GC4WXGGaWiHi+mLHuxiGJTUV7onIKjWj1me74z0h+Wx8/thCQ8WuK92Bs+bISwucgv1J6TZCG2F/iAYHLXi38ffX5Fvh19USdPEuxScXvPNSDfiAHqb8Vrn3bqIcjkJvufR9BxY+g== 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:(13230031)(4636009)(346002)(396003)(376002)(39860400002)(136003)(451199024)(1800799009)(186009)(82310400011)(40470700004)(46966006)(36840700001)(81166007)(356005)(6666004)(7696005)(86362001)(36756003)(36860700001)(40480700001)(82740400003)(47076005)(1076003)(2616005)(26005)(426003)(16526019)(336012)(83380400001)(478600001)(41300700001)(110136005)(70586007)(70206006)(8936002)(8676002)(40460700003)(4326008)(5660300002)(2906002)(7416002)(7406005)(44832011)(316002)(54906003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:39.6730 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f2620c61-4d18-4c19-5a12-08dbaffd6158 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: CY4PEPF0000FCC0.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4272 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The rftype flags are bitmaps used for adding files under resctrl filesystem. Some of these bitmaps have one extra level of indirection which is not necessary. Make them all direct definition to be consistent and easier to read. Reviewed-by: Shaopeng Tan Tested-by: Shaopeng Tan Reviewed-by: Reinette Chatre Reviewed-by: Fenghua Yu Signed-off-by: Babu Moger --- arch/x86/kernel/cpu/resctrl/internal.h | 9 +++------ arch/x86/kernel/cpu/resctrl/rdtgroup.c | 6 +++++- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/r= esctrl/internal.h index 85ceaf9a31ac..62767774810d 100644 --- a/arch/x86/kernel/cpu/resctrl/internal.h +++ b/arch/x86/kernel/cpu/resctrl/internal.h @@ -243,12 +243,9 @@ struct rdtgroup { */ #define RFTYPE_INFO BIT(0) #define RFTYPE_BASE BIT(1) -#define RF_CTRLSHIFT 4 -#define RF_MONSHIFT 5 -#define RF_TOPSHIFT 6 -#define RFTYPE_CTRL BIT(RF_CTRLSHIFT) -#define RFTYPE_MON BIT(RF_MONSHIFT) -#define RFTYPE_TOP BIT(RF_TOPSHIFT) +#define RFTYPE_CTRL BIT(4) +#define RFTYPE_MON BIT(5) +#define RFTYPE_TOP BIT(6) #define RFTYPE_RES_CACHE BIT(8) #define RFTYPE_RES_MB BIT(9) #define RF_CTRL_INFO (RFTYPE_INFO | RFTYPE_CTRL) diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index f0d163950969..7ddfa4b470e6 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -3242,7 +3242,11 @@ static int mkdir_rdt_prepare(struct kernfs_node *par= ent_kn, goto out_destroy; } =20 - files =3D RFTYPE_BASE | BIT(RF_CTRLSHIFT + rtype); + if (rtype =3D=3D RDTCTRL_GROUP) + files =3D RFTYPE_BASE | RFTYPE_CTRL; + else + files =3D RFTYPE_BASE | RFTYPE_MON; + ret =3D rdtgroup_add_files(kn, files); if (ret) { rdt_last_cmd_puts("kernfs fill error\n"); --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 6B33FEB8FDE for ; Thu, 7 Sep 2023 23:51:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240153AbjIGXv5 (ORCPT ); Thu, 7 Sep 2023 19:51:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54768 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237207AbjIGXvs (ORCPT ); Thu, 7 Sep 2023 19:51:48 -0400 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on2089.outbound.protection.outlook.com [40.107.102.89]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 50FB81BCB; Thu, 7 Sep 2023 16:51:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eMIoECWGxJJ6E5V50cS6ztM+ocyiNl9+PtRf/lSAObCrYEg4UQDLuww2l+ZwlAPgXFUaf5dV/PkElLhZOwmDMIbzewEpGsDEoRwFV8xQsAr0DZRQRU4paLLHyRso+SklViS/I+3DEa8OnslqRQR4gHtMBeeLMgxDWE0OnIJmDeBS7gsS+yphgo9jp1QwnIe1hYNu1kQnnHoYDtJ1Mtb5W1lOFglNNzn4aTUDApO+58rKyOaFpTscZRejObiqxOeCOb9TUQtoWOjqI+PiWgclN8m/3PA2PvfEpCt4BbC0mhqS1WUDp8GKm5y4Hv4N+jC8gXQv27z7U0N4Wyyq4oKLxw== 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=0qJQTtROfQdtyytJgjiQR6NbVxPyc37RxBL6Z6pNldE=; b=IvYNEuFoa+FS2eD2d/ZAx404tiOAJwXyxG7ozcI3lDUE4AHiyOIyqBnYr0ctPZiQ+J3r+2MFR+hHms7zZHEPqnHPPVr7hPax0lhArLDtH60CFgzUxcXG9gBhmSxQb0dLZymLzjuywfwO2wjgFW5maF08N7W59j2R0mNoPjwbsjWoTbjsHz4FS3ygjTGOn/FkozLyPSqO5MWW4GXMbWQJbbrboTczEmcvfNTMwXS1D5YOchUP5fGrZCJB8mrv7ERmo28sefYaZN0d7smH5lD3mahtKi0wdqdQE96Gyj88xkFaKZ+Lf3DPbNHtn7zXKSeVroSdIOveunKZZj+00Vdskg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=0qJQTtROfQdtyytJgjiQR6NbVxPyc37RxBL6Z6pNldE=; b=mKCHoUSg/EzCMeiitnIrc09MhqFhwVIpZCK0Iusl8KSGbMzQ8cIm2+2M/f/CNnUshd9Y17crHeX8UygKyF4kp5PgqpjPQpnSpWAoO7YCKdpEfi1kshzxpcnHokZYc5cNe60huJZ9PDJL1gDD9ZZqPG22ej1lq0KmAEGhm9AfHig= Received: from CYXPR03CA0087.namprd03.prod.outlook.com (2603:10b6:930:d3::12) by CY5PR12MB6406.namprd12.prod.outlook.com (2603:10b6:930:3d::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep 2023 23:51:41 +0000 Received: from CY4PEPF0000FCC3.namprd03.prod.outlook.com (2603:10b6:930:d3:cafe::e6) by CYXPR03CA0087.outlook.office365.com (2603:10b6:930:d3::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend Transport; Thu, 7 Sep 2023 23:51:41 +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 CY4PEPF0000FCC3.mail.protection.outlook.com (10.167.242.105) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:41 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:39 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 3/9] x86/resctrl: Rename rftype flags for consistency Date: Thu, 7 Sep 2023 18:51:22 -0500 Message-ID: <20230907235128.19120-4-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC3:EE_|CY5PR12MB6406:EE_ X-MS-Office365-Filtering-Correlation-Id: 256e0313-1096-470e-9204-08dbaffd626c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4l7pbq5dG08uWpo3bnPdFE5xpKGoIFaaBVaWb6Rr21e2yD3RKJVFPvrx5w0xzYx4rFz/4YqQAURCiFcBhzGmY2UaHukoowz4jacN46KPf7SgVSloEiLzEVhQrq5hkOhhHIruIFHn2u51k/py4M4uLF/D9zzC+NvWaNQSQGjniIV3Vmh7/IITuwJsIAldYy7gA93BuOsz//ny3a64mPqZESyODInMpAoq0d8brVh4xmQAWaRR5XqddRQlnZEooLdmoNEsVaI694zmQiI8qbgC3ALPg5plslr8SzBozi55+W+3Tvg+7aHMHFyYW74Jw+jekY1e9Og1MUqcljq0Llse7qAM+dSWUW5178BcjrQAaEKj+hA87zHU3mcMPgboP8lpRgF5fTdruOlXBu+CfDyls9E4qFIMe7brynkT1hA64exRubcILQwI8xoHr5wZGaewC/ii/EblVxGF6oufbCIvoVOFM9E5v398eRJ39CziG4YtzEptFKFdR6yOvEj0jgs7keFhkx/zEmso/QaGz/F9mZtfhDO4vy5/9Ak7zNsd1SgAq90m+yuT4TWvm6Kl8iMtLE+RL6mB74ssu0C9QWrMfeOkr0gBIzli6cN5CNzJpNliGnocMxmBKC4U39idXUW+99POEiRgNx2D39Ek6Wr5tUnoyacBbp31Dfo0ZjmjdqypfnqIL60SyG/zJRt/1ev9skvV9NFHP1z+4+Hz5E8u2JOXIwrzcnFUZxgczY46kzBpeEzFtxCRh9YCUwq2PhuBEUPICbczppWKeD6sNvCLGA== 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:(13230031)(4636009)(136003)(376002)(346002)(396003)(39860400002)(186009)(82310400011)(1800799009)(451199024)(36840700001)(46966006)(40470700004)(40460700003)(1076003)(7696005)(110136005)(2616005)(6666004)(86362001)(478600001)(26005)(36860700001)(47076005)(83380400001)(426003)(81166007)(82740400003)(16526019)(356005)(70206006)(4326008)(5660300002)(44832011)(316002)(70586007)(54906003)(40480700001)(8936002)(36756003)(41300700001)(8676002)(7416002)(7406005)(2906002)(336012)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:41.4832 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 256e0313-1096-470e-9204-08dbaffd626c 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: CY4PEPF0000FCC3.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6406 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" resctrl associates rftype flags with its files so that files can be chosen based on the resource, whether it is info or base, and if it is control or monitor type file. These flags use the RF_ as well as RFTYPE_ prefixes. Change the prefix to RFTYPE_ for all these flags to be consistent. Reviewed-by: Shaopeng Tan Tested-by: Shaopeng Tan Reviewed-by: Reinette Chatre Reviewed-by: Fenghua Yu Signed-off-by: Babu Moger --- arch/x86/kernel/cpu/resctrl/internal.h | 10 +++--- arch/x86/kernel/cpu/resctrl/rdtgroup.c | 42 +++++++++++++------------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/r= esctrl/internal.h index 62767774810d..2051179a3b91 100644 --- a/arch/x86/kernel/cpu/resctrl/internal.h +++ b/arch/x86/kernel/cpu/resctrl/internal.h @@ -248,10 +248,10 @@ struct rdtgroup { #define RFTYPE_TOP BIT(6) #define RFTYPE_RES_CACHE BIT(8) #define RFTYPE_RES_MB BIT(9) -#define RF_CTRL_INFO (RFTYPE_INFO | RFTYPE_CTRL) -#define RF_MON_INFO (RFTYPE_INFO | RFTYPE_MON) -#define RF_TOP_INFO (RFTYPE_INFO | RFTYPE_TOP) -#define RF_CTRL_BASE (RFTYPE_BASE | RFTYPE_CTRL) +#define RFTYPE_CTRL_INFO (RFTYPE_INFO | RFTYPE_CTRL) +#define RFTYPE_MON_INFO (RFTYPE_INFO | RFTYPE_MON) +#define RFTYPE_TOP_INFO (RFTYPE_INFO | RFTYPE_TOP) +#define RFTYPE_CTRL_BASE (RFTYPE_BASE | RFTYPE_CTRL) =20 /* List of all resource groups */ extern struct list_head rdt_all_groups; @@ -267,7 +267,7 @@ void __exit rdtgroup_exit(void); * @mode: Access mode * @kf_ops: File operations * @flags: File specific RFTYPE_FLAGS_* flags - * @fflags: File specific RF_* or RFTYPE_* flags + * @fflags: File specific RFTYPE_* flags * @seq_show: Show content of the file * @write: Write to the file */ diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 7ddfa4b470e6..35945b4bf196 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -1705,77 +1705,77 @@ static struct rftype res_common_files[] =3D { .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_last_cmd_status_show, - .fflags =3D RF_TOP_INFO, + .fflags =3D RFTYPE_TOP_INFO, }, { .name =3D "num_closids", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_num_closids_show, - .fflags =3D RF_CTRL_INFO, + .fflags =3D RFTYPE_CTRL_INFO, }, { .name =3D "mon_features", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_mon_features_show, - .fflags =3D RF_MON_INFO, + .fflags =3D RFTYPE_MON_INFO, }, { .name =3D "num_rmids", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_num_rmids_show, - .fflags =3D RF_MON_INFO, + .fflags =3D RFTYPE_MON_INFO, }, { .name =3D "cbm_mask", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_default_ctrl_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_CACHE, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_CACHE, }, { .name =3D "min_cbm_bits", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_min_cbm_bits_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_CACHE, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_CACHE, }, { .name =3D "shareable_bits", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_shareable_bits_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_CACHE, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_CACHE, }, { .name =3D "bit_usage", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_bit_usage_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_CACHE, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_CACHE, }, { .name =3D "min_bandwidth", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_min_bw_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_MB, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_MB, }, { .name =3D "bandwidth_gran", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_bw_gran_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_MB, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_MB, }, { .name =3D "delay_linear", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdt_delay_linear_show, - .fflags =3D RF_CTRL_INFO | RFTYPE_RES_MB, + .fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_MB, }, /* * Platform specific which (if any) capabilities are provided by @@ -1794,7 +1794,7 @@ static struct rftype res_common_files[] =3D { .kf_ops =3D &rdtgroup_kf_single_ops, .write =3D max_threshold_occ_write, .seq_show =3D max_threshold_occ_show, - .fflags =3D RF_MON_INFO | RFTYPE_RES_CACHE, + .fflags =3D RFTYPE_MON_INFO | RFTYPE_RES_CACHE, }, { .name =3D "mbm_total_bytes_config", @@ -1841,7 +1841,7 @@ static struct rftype res_common_files[] =3D { .kf_ops =3D &rdtgroup_kf_single_ops, .write =3D rdtgroup_schemata_write, .seq_show =3D rdtgroup_schemata_show, - .fflags =3D RF_CTRL_BASE, + .fflags =3D RFTYPE_CTRL_BASE, }, { .name =3D "mode", @@ -1849,14 +1849,14 @@ static struct rftype res_common_files[] =3D { .kf_ops =3D &rdtgroup_kf_single_ops, .write =3D rdtgroup_mode_write, .seq_show =3D rdtgroup_mode_show, - .fflags =3D RF_CTRL_BASE, + .fflags =3D RFTYPE_CTRL_BASE, }, { .name =3D "size", .mode =3D 0444, .kf_ops =3D &rdtgroup_kf_single_ops, .seq_show =3D rdtgroup_size_show, - .fflags =3D RF_CTRL_BASE, + .fflags =3D RFTYPE_CTRL_BASE, }, =20 }; @@ -1913,7 +1913,7 @@ void __init thread_throttle_mode_init(void) if (!rft) return; =20 - rft->fflags =3D RF_CTRL_INFO | RFTYPE_RES_MB; + rft->fflags =3D RFTYPE_CTRL_INFO | RFTYPE_RES_MB; } =20 void __init mbm_config_rftype_init(const char *config) @@ -1922,7 +1922,7 @@ void __init mbm_config_rftype_init(const char *config) =20 rft =3D rdtgroup_get_rftype_by_name(config); if (rft) - rft->fflags =3D RF_MON_INFO | RFTYPE_RES_CACHE; + rft->fflags =3D RFTYPE_MON_INFO | RFTYPE_RES_CACHE; } =20 /** @@ -2057,21 +2057,21 @@ static int rdtgroup_create_info_dir(struct kernfs_n= ode *parent_kn) if (IS_ERR(kn_info)) return PTR_ERR(kn_info); =20 - ret =3D rdtgroup_add_files(kn_info, RF_TOP_INFO); + ret =3D rdtgroup_add_files(kn_info, RFTYPE_TOP_INFO); if (ret) goto out_destroy; =20 /* loop over enabled controls, these are all alloc_capable */ list_for_each_entry(s, &resctrl_schema_all, list) { r =3D s->res; - fflags =3D r->fflags | RF_CTRL_INFO; + fflags =3D r->fflags | RFTYPE_CTRL_INFO; ret =3D rdtgroup_mkdir_info_resdir(s, s->name, fflags); if (ret) goto out_destroy; } =20 for_each_mon_capable_rdt_resource(r) { - fflags =3D r->fflags | RF_MON_INFO; + fflags =3D r->fflags | RFTYPE_MON_INFO; sprintf(name, "%s_MON", r->name); ret =3D rdtgroup_mkdir_info_resdir(r, name, fflags); if (ret) @@ -3709,7 +3709,7 @@ static int __init rdtgroup_setup_root(void) =20 list_add(&rdtgroup_default.rdtgroup_list, &rdt_all_groups); =20 - ret =3D rdtgroup_add_files(kernfs_root_to_node(rdt_root), RF_CTRL_BASE); + ret =3D rdtgroup_add_files(kernfs_root_to_node(rdt_root), RFTYPE_CTRL_BAS= E); if (ret) { kernfs_destroy_root(rdt_root); goto out; --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 AB6B3EC875F for ; Thu, 7 Sep 2023 23:51:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240555AbjIGXwA (ORCPT ); Thu, 7 Sep 2023 19:52:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54778 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233985AbjIGXvv (ORCPT ); Thu, 7 Sep 2023 19:51:51 -0400 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on2073.outbound.protection.outlook.com [40.107.102.73]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 383B61BD5; Thu, 7 Sep 2023 16:51:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eK20OGuKv/eVtPXLkDK5WaxuUGZBi7KSIrWhFZvR6Jm7ng50z5cdzNWg1XDjqXhGGejKz3flOAq2szmgCAahAuwwUKYzYVlHuQ7POeKcU8F0nDXIpKb9iYabDAEC9dhxaFJdwIVShTCT3ULjhZgFq+YszEfO81cmY1bzy8wOeExRYSIIZYO2p+Nh3P3id4gsaowEFno6enRPQPMbplz/xEVQthJWBVsRHZ5mR9suhz3PYRN710HBTqpruGq2bGC4vxUAhkU09Lh3RqD2uyqGcC4BryYpL9pna9sq6XzCN0tb6OEjKCL3cpCxXiKGAtnVuoZTCVwQi/1Vuz0xESJvFA== 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=aJJ8K5WEeyY2J+rKDjlmEIR/NQkyAUw1zmDY5GUlE5k=; b=SFpERJWqbeuA1J2gxKQ+bSnQ9rlkvD41lJ4RFzGO2OKK+Mxhz7vwPnGq/d9SssBbX8JsdrnP1Vez2FWbTJtwMtimUOb4ABZvSCh7O6GLLV0JmTQOINiNSr1LIfppyZeV/zJMu7Jg9GLXfBolyr2Ro2Jd/S8LqhsdlNbrqnCjmezuJfhPAkjJRZO8+YOs6r30eXIjQGso0HI7stOuS4MAdujlMcuH3HDWxSy+JAjUlyq2k670+pTmOciT61De/ZcH5ChSnKaOvSzPjQHcErNrxHuDiyHvVp3wngnhIY5K/GzqssLF9w7DX8JhYsj6NQJqsH0nzJBHFeUOnGxFWm47xQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=aJJ8K5WEeyY2J+rKDjlmEIR/NQkyAUw1zmDY5GUlE5k=; b=gEJ6J4siX6hAMkx8QxDgjaTMlQld/KKOXpbu2ihtxLOXJeX6OKsYSz2S2XSlH5KG3ujXe6MMNNp8CjDGpfPzTC3lKrsrLGKY5ZiCEoeqIB1nJapfKMsjaXdJGHUNpJXBiNePWQLVgS3K4xZgH52gF9LhWoxIZWOgMepYCrzskH8= Received: from CYXPR03CA0086.namprd03.prod.outlook.com (2603:10b6:930:d3::29) by CY8PR12MB7169.namprd12.prod.outlook.com (2603:10b6:930:5e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30; Thu, 7 Sep 2023 23:51:43 +0000 Received: from CY4PEPF0000FCC3.namprd03.prod.outlook.com (2603:10b6:930:d3:cafe::9) by CYXPR03CA0086.outlook.office365.com (2603:10b6:930:d3::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend Transport; Thu, 7 Sep 2023 23:51:43 +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 CY4PEPF0000FCC3.mail.protection.outlook.com (10.167.242.105) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:43 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:41 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 4/9] x86/resctrl: Add comments on RFTYPE flags hierarchy Date: Thu, 7 Sep 2023 18:51:23 -0500 Message-ID: <20230907235128.19120-5-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC3:EE_|CY8PR12MB7169:EE_ X-MS-Office365-Filtering-Correlation-Id: 7cba3b7e-c837-4c3a-245e-08dbaffd6362 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: CMPO5pqVB86NOmrdZXCKDePR9xuM+9TmlrhAg/0TbZWHkoSRom15GbsF2xt5bHLjU976MhNgzGO2c4NXYeTyRw+13B/7Z/AiVjwghuZk4hT4t5jOVO9VOHFjYka4QOrAQeaqnzkhV0y803uBLo6pO3eOkx/C13TO5+SJsIZ1VtdStgD1bevf4ly8xpK7JA7FGR/G5HNYpmleggE8Te6gVb0iEHAAc056UKQZR6xX/DaEGHuMubhDZZf1grcbDFPATBTl+5fopPTZ5xLgCAQorL29M18Y2WgedP/GXNbl/rsCXy7ZMj162W15E91LftqHUK0QI5uNEnhTwhHRQATTMsZFhY/CK+Q3PnG1kNGXaqyuQUcLhofmwZlyMrr3yZaEcgdNdveVJOh8yTcufgckvkXZbYP3t+hUY3lmr8UgvuJa3Iiun6Ca2gpCxt6yH4VRlRqkIOlOSBT13kQYoFe2YDRKxtC29CgUsmr76hlfRmEcFRLvqTrfPxtmlBIAvBABeIaUE5FEzzesLsBYW/hNhgV4h1ibgjg6J8Lsj0tqDE6S4KoYcWB6ob3KHfI/BNus70FnjB/Kqo8lHko/Tvf1dn2MLJYDnb4+NVHHRq9HcygDUKFTZdfdDQeF9hyuyhSYVSufyd8hx43V/nKwrDF9iA1PK5cKcb661gwRyNcIl8+9DHz7SNlDiD+F21hD+OBDO/U8QDGvjU+1sziQlIH8hTE58rNDcv1cCOFG1l4ep+GrfBRIbKra8Nd67MnqBE8q1FucJ99wgPMQ+oPZ7sqHKw== 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:(13230031)(4636009)(376002)(346002)(39860400002)(396003)(136003)(186009)(82310400011)(1800799009)(451199024)(46966006)(36840700001)(40470700004)(81166007)(356005)(82740400003)(40480700001)(36756003)(86362001)(40460700003)(2906002)(110136005)(478600001)(6666004)(4326008)(7696005)(8676002)(8936002)(5660300002)(44832011)(70206006)(316002)(54906003)(70586007)(41300700001)(7406005)(7416002)(47076005)(36860700001)(16526019)(26005)(336012)(426003)(1076003)(2616005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:43.0926 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7cba3b7e-c837-4c3a-245e-08dbaffd6362 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: CY4PEPF0000FCC3.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7169 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" resctrl uses RFTYPE flags for creating resctrl directory structure. Definitions and directory structures are not documented. Add comments to improve the readability and help future additions. Reviewed-by: Reinette Chatre Signed-off-by: Babu Moger Reviewed-by: Fenghua Yu --- arch/x86/kernel/cpu/resctrl/internal.h | 58 ++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/r= esctrl/internal.h index 2051179a3b91..c97578e3115a 100644 --- a/arch/x86/kernel/cpu/resctrl/internal.h +++ b/arch/x86/kernel/cpu/resctrl/internal.h @@ -240,6 +240,64 @@ struct rdtgroup { =20 /* * Define the file type flags for base and info directories. + * + * RESCTRL filesystem has two main components + * a. info + * b. base + * + * /sys/fs/resctrl/ + * | + * --> info (Top level directory named "info". Contains files that + * | provide details on control and monitoring resources.) + * | + * --> base (Root directory associated with default resource group + * as well as directories created by user for MON and CTRL + * groups. Contains files to interact with MON and CTRL + * groups.) + * + * Note: resctrl uses flags for files, not for directories. + * Directories are created based on the resource type. Added + * directories below for better understanding. + * + * info directory structure + * ------------------------------------------------------------------ + * --> RFTYPE_INFO + * Directory: info + * --> RFTYPE_TOP (Files in top level of info directory) + * File: last_cmd_status + * + * --> RFTYPE_MON (Files for all monitoring resources) + * Directory: L3_MON + * Files: mon_features, num_rmids + * + * --> RFTYPE_RES_CACHE (Files for cache monitoring resources) + * Directory: L3_MON + * Files: max_threshold_occupancy, + * mbm_total_bytes_config, + * mbm_local_bytes_config + * + * --> RFTYPE_CTRL (Files for all control resources) + * Directories: L2, L3, MB, SMBA, L2CODE, L2DATA, L3CODE, L3DATA + * File: num_closids + * + * --> RFTYPE_RES_CACHE (Files for cache control resources) + * Directories: L2, L3, L2CODE, L2DATA, L3CODE, L3DATA + * Files: bit_usage, cbm_mask, min_cbm_bits, + * shareable_bits + * + * --> RFTYPE_RES_MB (Files for memory control resources) + * Directories: MB, SMBA + * Files: bandwidth_gran, delay_linear, + * min_bandwidth, thread_throttle_mode + * + * base directory structure + * ------------------------------------------------------------------ + * --> RFTYPE_BASE (Files common for both MON and CTRL groups) + * Files: cpus, cpus_list, tasks + * + * --> RFTYPE_CTRL (Files only for CTRL group) + * Files: mode, schemata, size + * */ #define RFTYPE_INFO BIT(0) #define RFTYPE_BASE BIT(1) --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 559C1EC875E for ; Thu, 7 Sep 2023 23:52:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240642AbjIGXwF (ORCPT ); Thu, 7 Sep 2023 19:52:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35886 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236262AbjIGXvz (ORCPT ); Thu, 7 Sep 2023 19:51:55 -0400 Received: from NAM04-BN8-obe.outbound.protection.outlook.com (mail-bn8nam04on2040.outbound.protection.outlook.com [40.107.100.40]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 962AD1BE4; Thu, 7 Sep 2023 16:51:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I+VqU2kGYyG2cMd0asejF7SgB9jEURNr+N5FyW3ATR7nkVfHhNxZ2XnN+dhsdUGl/INDdG2ckeiik82DDxZtaYIqpytbGEND3DRyRXX3XZrGhG23JPAbTJl2EXNjeIgRJ5KWQm832/93CNXTzVtAz9muJtpsvDTtKen87TKUyHlhA2e0sYeCM7u+Zb/IJwlNejck1dMGkq8dHrLuOXCib0zDyLn2aARneDbhPhQ+JEJHNXLCSt0kRjf8HlG4HMLRkLnqK5cW40tGGlJGN0TdHyuXxLK4Rt+sqkjO4PfrB/x9v3QedmkiagrXeKRKceTBWsRMxrBoxf4U7qfSQDvhYA== 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=fwEmU9kB96HLuZBNztZ9mxlk90B29OQjWlPHtCKu45o=; b=Ni7xBC/G7A8iKXS7sq3aDsK80GJHVvATgoieYTGCnAiEXzDiXGrEE1+SR6fjDjPxuwkJMXFqTn1+seuwsxZgGJ9hKi6c03KPcOTV1wslkfDDCX+nvPRZU/1SFspEKkp8Bn4dqQTNVgG5sLY03VcmqccKHosqg4VxOHYF1DLbSDaqydEpjakYCSbKmzTc5lmv6d1RlqDrHpM5BqVuc5VzC0uV3Z+9mk1s9abRIDhaKIs0Yr1d116foigwjSXjMhHgzUxsyRC15MXj2XO3qKvNXmmdbkkN5VnqsyZLD8ETtvnxniFnUhPPlZirYRqcAmCgWT5eVniB8e2h69pdG2xKHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=fwEmU9kB96HLuZBNztZ9mxlk90B29OQjWlPHtCKu45o=; b=Hnucwa2WsPGlBvpYD32S75HWdJDrDbwT9Z8pgVbAL/e8X8/L28DajrvxVp8JyZ+GLK97rTwpJ4FcTE+OoVkfe1rhc7jXRhLCGqzLpXlSS6F7lVD5w3tGSZYEl0xy/Ch3/AMnXxn/DnGUGcYXQeclkFFPT8b5TaehXN/eBdFek0U= Received: from DS7PR03CA0320.namprd03.prod.outlook.com (2603:10b6:8:2b::15) by MW6PR12MB8900.namprd12.prod.outlook.com (2603:10b6:303:244::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep 2023 23:51:45 +0000 Received: from CY4PEPF0000FCC1.namprd03.prod.outlook.com (2603:10b6:8:2b:cafe::9e) by DS7PR03CA0320.outlook.office365.com (2603:10b6:8:2b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend Transport; Thu, 7 Sep 2023 23:51:45 +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 CY4PEPF0000FCC1.mail.protection.outlook.com (10.167.242.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:45 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:42 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 5/9] x86/resctrl: Unwind the errors inside rdt_enable_ctx() Date: Thu, 7 Sep 2023 18:51:24 -0500 Message-ID: <20230907235128.19120-6-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC1:EE_|MW6PR12MB8900:EE_ X-MS-Office365-Filtering-Correlation-Id: 2a2044d3-e695-4bd1-d257-08dbaffd64bc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TCvRFJuwDqI0q4cu7nFaVnq1XHhjVB6JmkS1bMvUGSdZ+Kw/0JiCUaKszbKuceay+7ynvqfFXzMqH3t/zglCmkPtgGdo4uRYIHHB6fgyXCOhh5talw5ZMHlmgyGCVUHjlVD5Zmd0zqDSn9djduiJ0TiB63voCX4lne+PX+5ijyxY66TV8hlg/N0pCWlN5lCAIMDCkWr4bSSdQ3cVE3d2S0yilSbJJ35xjc7NQU6LrXE4JqspjM0nQT3qh9h12WmRsMvTXU3PkUYw4J+xzTGysXHO3SgeLrr67mgd2oIGLgmyNJmcBt8ZQhDlB+TS/iPc2koZZdI+DuKEkmnr3f6OszwydxN+UWqgwrLYoK2yPt86sjz316PbYPdDDCOjEfojILgWHAMjCapm2yYbYoEvpZibOnQQusdJiWFYK2TlaPTIqwLQ9FvmYEJ635fC6zF5+vRBYg6+cPtNwTzjtCcOONykyG+zCMA+SnnWfdBKvY0k++0ORXBWGvyYDps6oluRsi6OitxXVWKeOD4q6LqLB3UacVL4bhe+0iY6AmbJ0Di6TdRGmru6nX7FyDNuBiBMU3R2++A2sGvrZfhiFM0/6D3joJPXymXErr2b0wMp0faeONuvkosR2eFm2kdI02uadvDlsqOGzsceCDU3IDr3p6cmz46P/DUx5anMFjA9isLWJ3sLVtyrKR1ajy2JUIgsjBJlcScI9euzH5CZsDJfDuwXHY2Pkxtz0epDEdrNyWLcrEdIKlTdJtsuQswOO/nxjHbl4zvRmpeleJdDtGLw1w== 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:(13230031)(4636009)(39860400002)(396003)(376002)(136003)(346002)(186009)(82310400011)(451199024)(1800799009)(36840700001)(46966006)(40470700004)(8676002)(81166007)(336012)(26005)(426003)(36756003)(16526019)(478600001)(356005)(70586007)(70206006)(110136005)(54906003)(316002)(41300700001)(36860700001)(2616005)(1076003)(7696005)(83380400001)(82740400003)(6666004)(47076005)(4326008)(5660300002)(44832011)(2906002)(40460700003)(40480700001)(86362001)(8936002)(7406005)(7416002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:45.3646 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2a2044d3-e695-4bd1-d257-08dbaffd64bc 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: CY4PEPF0000FCC1.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR12MB8900 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" rdt_enable_ctx() enables the features provided during resctrl mount. Additions to rdt_enable_ctx() are required to also modify error paths of rdt_enable_ctx() callers to ensure correct unwinding if errors are encountered after calling rdt_enable_ctx(). This is error prone. Introduce rdt_disable_ctx() to refactor the error unwinding of rdt_enable_ctx() to simplify future additions. This also simplifies cleanup in rdt_kill_sb(). Remove cdp_disable_all() as it is not used anymore after the refactor. Suggested-by: Reinette Chatre Reviewed-by: Fenghua Yu Signed-off-by: Babu Moger Reviewed-by: Reinette Chatre --- arch/x86/kernel/cpu/resctrl/rdtgroup.c | 55 ++++++++++++++++---------- 1 file changed, 34 insertions(+), 21 deletions(-) diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 35945b4bf196..34cb512be1de 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -2290,14 +2290,6 @@ int resctrl_arch_set_cdp_enabled(enum resctrl_res_le= vel l, bool enable) return 0; } =20 -static void cdp_disable_all(void) -{ - if (resctrl_arch_get_cdp_enabled(RDT_RESOURCE_L3)) - resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L3, false); - if (resctrl_arch_get_cdp_enabled(RDT_RESOURCE_L2)) - resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L2, false); -} - /* * We don't allow rdtgroup directories to be created anywhere * except the root directory. Thus when looking for the rdtgroup @@ -2377,19 +2369,44 @@ static int mkdir_mondata_all(struct kernfs_node *pa= rent_kn, struct rdtgroup *prgrp, struct kernfs_node **mon_data_kn); =20 +static void rdt_disable_ctx(void) +{ + resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L3, false); + + resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L2, false); + + set_mba_sc(false); +} + static int rdt_enable_ctx(struct rdt_fs_context *ctx) { int ret =3D 0; =20 - if (ctx->enable_cdpl2) + if (ctx->enable_cdpl2) { ret =3D resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L2, true); + if (ret) + goto out_done; + } =20 - if (!ret && ctx->enable_cdpl3) + if (ctx->enable_cdpl3) { ret =3D resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L3, true); + if (ret) + goto out_cdpl2; + } =20 - if (!ret && ctx->enable_mba_mbps) + if (ctx->enable_mba_mbps) { ret =3D set_mba_sc(true); + if (ret) + goto out_cdpl3; + } =20 + return 0; + +out_cdpl3: + resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L3, false); +out_cdpl2: + resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L2, false); +out_done: return ret; } =20 @@ -2497,13 +2514,13 @@ static int rdt_get_tree(struct fs_context *fc) } =20 ret =3D rdt_enable_ctx(ctx); - if (ret < 0) - goto out_cdp; + if (ret) + goto out; =20 ret =3D schemata_list_create(); if (ret) { schemata_list_destroy(); - goto out_mba; + goto out_ctx; } =20 closid_init(); @@ -2562,11 +2579,8 @@ static int rdt_get_tree(struct fs_context *fc) kernfs_remove(kn_info); out_schemata_free: schemata_list_destroy(); -out_mba: - if (ctx->enable_mba_mbps) - set_mba_sc(false); -out_cdp: - cdp_disable_all(); +out_ctx: + rdt_disable_ctx(); out: rdt_last_cmd_clear(); mutex_unlock(&rdtgroup_mutex); @@ -2798,12 +2812,11 @@ static void rdt_kill_sb(struct super_block *sb) cpus_read_lock(); mutex_lock(&rdtgroup_mutex); =20 - set_mba_sc(false); + rdt_disable_ctx(); =20 /*Put everything back to default values. */ for_each_alloc_capable_rdt_resource(r) reset_all_ctrls(r); - cdp_disable_all(); rmdir_all_sub(); rdt_pseudo_lock_release(); rdtgroup_default.mode =3D RDT_MODE_SHAREABLE; --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 0A0DEEC875E for ; Thu, 7 Sep 2023 23:52:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240798AbjIGXwH (ORCPT ); Thu, 7 Sep 2023 19:52:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35868 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235529AbjIGXvz (ORCPT ); Thu, 7 Sep 2023 19:51:55 -0400 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2081.outbound.protection.outlook.com [40.107.212.81]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AA9581BE7; Thu, 7 Sep 2023 16:51:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZmlM+qjO/Go0MdnFVFSm1wQb5NiUY9GSgPaa9fadjsXXCtrWzFYIIQFj7rAwBfwS3bSTB0gzYd+rk9p3rw/EsGbymCGePUx4PJtUsaSO6AgYdHw5jIlFt0gB9mWS+KxyymIJLV82yFrctweDFGJAL048InN0fbsEbeD7AVcqx1CxqaGXjd4A6brTIeRB9atkXHTbwK9/4xMTd2+DU8U1oUqDbb9YKCOqfJZ/XU2XPqevMv96wdy8/F86DNimAbKhfwfx0Ri3XtgfX33Wv66JQ/EWUEzTuRhJcfUJ4qCvQQ5w0/r7QBP8/pvg+HlbsuKgqtkln73Xv80IB/HXt3cIoA== 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=BTWRihApkksDxukOMwwpNICaeRdKbAM+kBwrRa7CgMo=; b=GmEw7863okOIzakjrYsK9+g3urgAUFmyPJ9U4tEvOvwK/8lwAdy4J/Tzw48jSGy1BrV7kTY8wOW+8xR9mEljL/6a6JCNtClF0vSrFWggG8R6Qa3mxARR9y5GJPuKAQ2dcicO39gxuqWtf5GYqgzXX/uOqIVJKQKBUsuHE9joCKMD9ZNB0KYm7wkz9gkXjQaDv8spTIn1syq8m5fwfRmtfHu3MLBFSDIZCmVAKb3ym0p/+ffcl/9Ab/Aoj4q4iTNSZL7u3HIiMXx+76A3CWXMe3pJ2jYy8e0NhJM1pvyPvN7iC+BcAhsw5qxXQDSW0pdoquZ3VXp3zdMex3SuJEWK3g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=BTWRihApkksDxukOMwwpNICaeRdKbAM+kBwrRa7CgMo=; b=i1ORs+Xk9HJ9OEksCzWl7rm/++DrQd1aj7Jqp+CmgVoEEJkhn9WzCEvjr0ETzYkLh0TMsohGVbGwVXHFg3ejJ/rUtREe4G7lT8mW2PN/7hJzpNSO77juWg9QZqUH7tW9thHR39Xxw4ziI/f7PX3M+dC7YY4RYozftdpG3HhsiEQ= Received: from DS7PR03CA0314.namprd03.prod.outlook.com (2603:10b6:8:2b::26) by DS7PR12MB5887.namprd12.prod.outlook.com (2603:10b6:8:7a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep 2023 23:51:46 +0000 Received: from CY4PEPF0000FCC1.namprd03.prod.outlook.com (2603:10b6:8:2b:cafe::f7) by DS7PR03CA0314.outlook.office365.com (2603:10b6:8:2b::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6768.30 via Frontend Transport; Thu, 7 Sep 2023 23:51:46 +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 CY4PEPF0000FCC1.mail.protection.outlook.com (10.167.242.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:46 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:44 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 6/9] x86/resctrl: Move default group file creation to mount Date: Thu, 7 Sep 2023 18:51:25 -0500 Message-ID: <20230907235128.19120-7-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC1:EE_|DS7PR12MB5887:EE_ X-MS-Office365-Filtering-Correlation-Id: 153668bb-f358-41db-f3f6-08dbaffd653f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: eAI6QmMJOGk5L0BZ4/wv/E2fZI2wPHx9UYVFpw74BFOaBudXHlzVXxDsmnsYhUv5HWR1U2F4f5G9nqiBQnbzEh7s/2o78YuEpYqiPTr3OqulJDoWeZX2k1v5Lxi/oTn5X6dQxU0FsOpk7TacG6BcfG+fud4xBnutTk1HG5/rSF6wUkG/u+rQhRU+nMjPiCuv2jeTjuTNAEtFuQ46Xa+U2NnEuE19ln42tu+j6Ou+vPfeNnKkZCrAVerAVkLQsp1P4eSCxnVpU8OpamMrUAbhK0vvG+ArNQfYK7fggsSedCFpPJ6eckMygrvKDQC2PfMoyGG8yShPnkFr7J7/v7GucGpSU0hkgghS/ByKMnxMZDvJQkVAx9SwOWq1HmmdvPGDW1A+u+pKftqpv6E7iMMwxxkZQUMhAJlEYVCtM6VDNiHcSHm399Wm4OB8q+D+fwgXUIwXWpideXuluT22lPH/p0FWy56D7RICHKWQyb7IaBuZIeOYavokBP/QzX43QOrrSg+CFpV+UeDNV7qorDH399d9y54vlBVh9ckXYgBlyLb02rKgKgNpEG2u8G1koUvBIb7N0wzyk6tgBecHWsidCOiv4GXURx1nWDELsJvkPG+gHaXYSZRs2Xep2/NpH7ROD7+TAfCWaYsjIou1BbHRGYi9kpJKvldO9jMgl0YWSfTLgLqN3HtSUI9s5UzEINdcH7SyomQslAqvGBkPKDRbxxV6yZ7xBzKggqpK4flw7XyC+JlaBk2LbDz6VXLaOgMtVz5IYcWi/cZQevzU5PFSyw== 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:(13230031)(4636009)(396003)(346002)(39860400002)(376002)(136003)(82310400011)(1800799009)(451199024)(186009)(40470700004)(46966006)(36840700001)(336012)(7416002)(2906002)(7406005)(40460700003)(70206006)(54906003)(44832011)(316002)(70586007)(41300700001)(8676002)(40480700001)(36756003)(8936002)(5660300002)(4326008)(2616005)(110136005)(6666004)(86362001)(7696005)(1076003)(83380400001)(426003)(16526019)(356005)(81166007)(82740400003)(26005)(478600001)(36860700001)(47076005)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:46.2396 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 153668bb-f358-41db-f3f6-08dbaffd653f 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: CY4PEPF0000FCC1.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5887 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The default resource group and its files are created during kernel init time. Upcoming changes will make some resctrl files optional based on a mount parameter. If optional files are to be added to the default group based on the mount option, then each new file needs to be created separately and call kernfs_activate() again. Create all files of the default resource group during resctrl mount, destroyed during unmount, to avoid scattering resctrl file addition across two separate code flows. Suggested-by: Reinette Chatre Signed-off-by: Babu Moger Reviewed-by: Fenghua Yu Reviewed-by: Reinette Chatre --- arch/x86/kernel/cpu/resctrl/rdtgroup.c | 58 +++++++++++++++----------- 1 file changed, 34 insertions(+), 24 deletions(-) diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 34cb512be1de..27cae0cc25af 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -54,6 +54,9 @@ static struct kernfs_node *kn_mondata; static struct seq_buf last_cmd_status; static char last_cmd_status_buf[512]; =20 +static int rdtgroup_setup_root(struct rdt_fs_context *ctx); +static void rdtgroup_destroy_root(void); + struct dentry *debugfs_resctrl; =20 void rdt_last_cmd_clear(void) @@ -2513,10 +2516,14 @@ static int rdt_get_tree(struct fs_context *fc) goto out; } =20 - ret =3D rdt_enable_ctx(ctx); + ret =3D rdtgroup_setup_root(ctx); if (ret) goto out; =20 + ret =3D rdt_enable_ctx(ctx); + if (ret) + goto out_root; + ret =3D schemata_list_create(); if (ret) { schemata_list_destroy(); @@ -2525,6 +2532,12 @@ static int rdt_get_tree(struct fs_context *fc) =20 closid_init(); =20 + ret =3D rdtgroup_add_files(rdtgroup_default.kn, RFTYPE_CTRL_BASE); + if (ret) + goto out_schemata_free; + + kernfs_activate(rdtgroup_default.kn); + ret =3D rdtgroup_create_info_dir(rdtgroup_default.kn); if (ret < 0) goto out_schemata_free; @@ -2581,6 +2594,8 @@ static int rdt_get_tree(struct fs_context *fc) schemata_list_destroy(); out_ctx: rdt_disable_ctx(); +out_root: + rdtgroup_destroy_root(); out: rdt_last_cmd_clear(); mutex_unlock(&rdtgroup_mutex); @@ -2651,7 +2666,6 @@ static int rdt_init_fs_context(struct fs_context *fc) if (!ctx) return -ENOMEM; =20 - ctx->kfc.root =3D rdt_root; ctx->kfc.magic =3D RDTGROUP_SUPER_MAGIC; fc->fs_private =3D &ctx->kfc; fc->ops =3D &rdt_fs_context_ops; @@ -2821,6 +2835,7 @@ static void rdt_kill_sb(struct super_block *sb) rdt_pseudo_lock_release(); rdtgroup_default.mode =3D RDT_MODE_SHAREABLE; schemata_list_destroy(); + rdtgroup_destroy_root(); static_branch_disable_cpuslocked(&rdt_alloc_enable_key); static_branch_disable_cpuslocked(&rdt_mon_enable_key); static_branch_disable_cpuslocked(&rdt_enable_key); @@ -3702,10 +3717,8 @@ static struct kernfs_syscall_ops rdtgroup_kf_syscall= _ops =3D { .show_options =3D rdtgroup_show_options, }; =20 -static int __init rdtgroup_setup_root(void) +static int rdtgroup_setup_root(struct rdt_fs_context *ctx) { - int ret; - rdt_root =3D kernfs_create_root(&rdtgroup_kf_syscall_ops, KERNFS_ROOT_CREATE_DEACTIVATED | KERNFS_ROOT_EXTRA_OPEN_PERM_CHECK, @@ -3713,6 +3726,20 @@ static int __init rdtgroup_setup_root(void) if (IS_ERR(rdt_root)) return PTR_ERR(rdt_root); =20 + ctx->kfc.root =3D rdt_root; + rdtgroup_default.kn =3D kernfs_root_to_node(rdt_root); + + return 0; +} + +static void rdtgroup_destroy_root(void) +{ + kernfs_destroy_root(rdt_root); + rdtgroup_default.kn =3D NULL; +} + +static void __init rdtgroup_setup_default(void) +{ mutex_lock(&rdtgroup_mutex); =20 rdtgroup_default.closid =3D 0; @@ -3722,19 +3749,7 @@ static int __init rdtgroup_setup_root(void) =20 list_add(&rdtgroup_default.rdtgroup_list, &rdt_all_groups); =20 - ret =3D rdtgroup_add_files(kernfs_root_to_node(rdt_root), RFTYPE_CTRL_BAS= E); - if (ret) { - kernfs_destroy_root(rdt_root); - goto out; - } - - rdtgroup_default.kn =3D kernfs_root_to_node(rdt_root); - kernfs_activate(rdtgroup_default.kn); - -out: mutex_unlock(&rdtgroup_mutex); - - return ret; } =20 static void domain_destroy_mon_state(struct rdt_domain *d) @@ -3856,13 +3871,11 @@ int __init rdtgroup_init(void) seq_buf_init(&last_cmd_status, last_cmd_status_buf, sizeof(last_cmd_status_buf)); =20 - ret =3D rdtgroup_setup_root(); - if (ret) - return ret; + rdtgroup_setup_default(); =20 ret =3D sysfs_create_mount_point(fs_kobj, "resctrl"); if (ret) - goto cleanup_root; + return ret; =20 ret =3D register_filesystem(&rdt_fs_type); if (ret) @@ -3895,8 +3908,6 @@ int __init rdtgroup_init(void) =20 cleanup_mountpoint: sysfs_remove_mount_point(fs_kobj, "resctrl"); -cleanup_root: - kernfs_destroy_root(rdt_root); =20 return ret; } @@ -3906,5 +3917,4 @@ void __exit rdtgroup_exit(void) debugfs_remove_recursive(debugfs_resctrl); unregister_filesystem(&rdt_fs_type); sysfs_remove_mount_point(fs_kobj, "resctrl"); - kernfs_destroy_root(rdt_root); } --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 39CC5EC875E for ; Thu, 7 Sep 2023 23:52:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240052AbjIGXwU (ORCPT ); Thu, 7 Sep 2023 19:52:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35940 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240873AbjIGXwJ (ORCPT ); Thu, 7 Sep 2023 19:52:09 -0400 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2041.outbound.protection.outlook.com [40.107.236.41]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AEAAF1FCD; Thu, 7 Sep 2023 16:51:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i38MVzpaMqf8a+2NzhDJi3ZbN7tCpJods3DbFEy5sXEvx///Jv9ixIwKM33AizH1NN2MXsRqxlrVbvRX5Zy9mfrl1To7QxJlLOsVxm5X7H9MKJ8uMxk3YbwAuGzIu4e4Q97Oaqveh5C2p4JlJvO+FgytfDLDuJW5mYDiL1xbc9W7/0CR2VXyQToTOAa9BFGApXmZcG0HQs1a+2tat/fagiivhCY6S+RpjqqnlYY+NOUZPFph16is2QZl9ZplGmoOd+j7Nl7lOg/llVfkLHdNRfuSmxUFogbVeB90da5zpG+AikOT0gVoFGYU1WCf0xPvG7W9cXLxgc6Hp9eVHv737w== 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=aiAg2hegbT5uQd8uduXJkD7sTAUGE5tl7Thrbog9pq4=; b=eciQPnh1KH/aNxYK7doNMTbPrriEEA7pPpy0Fjx0SBqTEWbFLttBm7LM65l4+1dRoja7VRtwIem9AqvtG79pB0xA8ceYeS92gbDuHtJJLyLHqkSvsJohBGDpDLekCbO0fHbe1TFv5awAnx09W6CrkNzs2TrgQfwaOu+u66bDQJ78aWh4XAtAJEBXaJ3uktLiJVlMfNC4MDD14FeUdbh2qsrthTaFEoynlplrF+oj5Qq20Rh+DHcp0ZHgS+EbSsoHxCi6h3s4twC0V5rOPjlvVSSCpLWGmNuxOXpqFBwG11q8v3eW5zwYzUFqJNoOjwr1dg9VMANEke+uEaQuL8kINg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=aiAg2hegbT5uQd8uduXJkD7sTAUGE5tl7Thrbog9pq4=; b=Wv8oyJQ/iN5/1oWPLDGrsaU8p7ABsLbsaxu7de6kpqoFfv9qtr4wKq7jiQRZ5/2REMeX7yteWKcYidKgM4jFS1marfugpn8ZnNvBqoSx7EoJn8RkZciLu40bYLMVVcIeNiSIg1d24zTwedHtH4SJ00PoOUnj/ZxD8vOv2ggslP4= Received: from DM6PR13CA0041.namprd13.prod.outlook.com (2603:10b6:5:134::18) by SA0PR12MB4462.namprd12.prod.outlook.com (2603:10b6:806:95::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Thu, 7 Sep 2023 23:51:49 +0000 Received: from CY4PEPF0000FCC5.namprd03.prod.outlook.com (2603:10b6:5:134:cafe::c1) by DM6PR13CA0041.outlook.office365.com (2603:10b6:5:134::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.10 via Frontend Transport; Thu, 7 Sep 2023 23:51:49 +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 CY4PEPF0000FCC5.mail.protection.outlook.com (10.167.242.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:47 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:45 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 7/9] x86/resctrl: Introduce "-o debug" mount option Date: Thu, 7 Sep 2023 18:51:26 -0500 Message-ID: <20230907235128.19120-8-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC5:EE_|SA0PR12MB4462:EE_ X-MS-Office365-Filtering-Correlation-Id: 08808688-2c7c-48b5-94d3-08dbaffd6638 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: H807Hk9sl3VTLXddldwgUm1V9OtCjFwlDjdtWlM0uynPWHe8JjizWvcM7r+6HRYpxC6pf/Ch2gtN9AY7XBGPZKzXX7NfNnOu/J5LYmiNcZseX6W6q1wThf6TGrxs7Wzo+FIS0c26O1TFfzZZIKIM+9/Io7BuLiUc+70Dtcy/GxZxo9AQIY9/PzZrTjg/A2cWZw5RYy4iA+G3mdDhk6PUCCTi3frgpqm2rP4a2A4sJMXprMEFN/ZLKY7iqV0PzD+7Glb4RxBujWRq7cGUNRR/5VFI6W/zL/heyv+RKIPrmtV7ZqWNAqVS2VHK8x02wvlATK8zP7pr7ut1y9EfsvzcBp+qP9JmbnSuewA00XDmkiBwCV7l5ntNGz+PLCi+5TtAYu0zJ8Gxd50C0dwt6zOhrsWK62RGPoox4TC3wgWV+FNEm7cj4G1qXnZa00j5Cdboa4n8SAg2UWgCFqW7E1i1HqZ2rhfZ3B+hFIcRKlbjf8Xa2mrZSSZkNX49yDYoeH672lGHJKL3tcxiUZPLcE9HJvJ9rjAiGYTb0y/tMjBB0uUK6LsESRqq22QqhPdr3CjG2RrBNkDzj/bKTf9l0DZMTldeJM+GWR8nj1YVkk5guAtEKhKkqnwq0eOR8j5dbiozhQO+PvQ5fUgLG4YjPCzEs7RDk8W4EgSGMrQbjXL/auD+LhLPAtxurMDMqCM6t46GkCuAAUHUEySg8bzfmEc+37XlO5q90BI5H2uxg9C0PLRC7+beZ9RkLyKL2pLN+IcdmFVuV4xJP59jKgtm6R5eXQ== 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:(13230031)(4636009)(396003)(346002)(376002)(136003)(39860400002)(186009)(451199024)(1800799009)(82310400011)(46966006)(36840700001)(40470700004)(36756003)(316002)(2906002)(7416002)(82740400003)(41300700001)(40460700003)(40480700001)(86362001)(356005)(81166007)(44832011)(7406005)(5660300002)(2616005)(426003)(36860700001)(8936002)(4326008)(8676002)(47076005)(83380400001)(26005)(7696005)(1076003)(336012)(6666004)(16526019)(54906003)(70206006)(110136005)(70586007)(478600001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:47.8534 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 08808688-2c7c-48b5-94d3-08dbaffd6638 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: CY4PEPF0000FCC5.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4462 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add "-o debug" option to mount resctrl filesystem in debug mode. When in debug mode resctrl displays files that have the new RFTYPE_DEBUG flag to help resctrl debugging. Reviewed-by: Reinette Chatre Reviewed-by: Fenghua Yu Signed-off-by: Babu Moger --- Documentation/arch/x86/resctrl.rst | 5 ++++- arch/x86/kernel/cpu/resctrl/internal.h | 2 ++ arch/x86/kernel/cpu/resctrl/rdtgroup.c | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/Documentation/arch/x86/resctrl.rst b/Documentation/arch/x86/re= sctrl.rst index 8154e9975d1e..28d35aaa74b4 100644 --- a/Documentation/arch/x86/resctrl.rst +++ b/Documentation/arch/x86/resctrl.rst @@ -35,7 +35,7 @@ about the feature from resctrl's info directory. =20 To use the feature mount the file system:: =20 - # mount -t resctrl resctrl [-o cdp[,cdpl2][,mba_MBps]] /sys/fs/resctrl + # mount -t resctrl resctrl [-o cdp[,cdpl2][,mba_MBps][,debug]] /sys/fs/re= sctrl =20 mount options are: =20 @@ -46,6 +46,9 @@ mount options are: "mba_MBps": Enable the MBA Software Controller(mba_sc) to specify MBA bandwidth in MBps +"debug": + Make debug files accessible. Available debug files are annotated with + "Available only with debug option". =20 L2 and L3 CDP are controlled separately. =20 diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/r= esctrl/internal.h index c97578e3115a..38b99a21ccd8 100644 --- a/arch/x86/kernel/cpu/resctrl/internal.h +++ b/arch/x86/kernel/cpu/resctrl/internal.h @@ -59,6 +59,7 @@ struct rdt_fs_context { bool enable_cdpl2; bool enable_cdpl3; bool enable_mba_mbps; + bool enable_debug; }; =20 static inline struct rdt_fs_context *rdt_fc2context(struct fs_context *fc) @@ -306,6 +307,7 @@ struct rdtgroup { #define RFTYPE_TOP BIT(6) #define RFTYPE_RES_CACHE BIT(8) #define RFTYPE_RES_MB BIT(9) +#define RFTYPE_DEBUG BIT(10) #define RFTYPE_CTRL_INFO (RFTYPE_INFO | RFTYPE_CTRL) #define RFTYPE_MON_INFO (RFTYPE_INFO | RFTYPE_MON) #define RFTYPE_TOP_INFO (RFTYPE_INFO | RFTYPE_TOP) diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 27cae0cc25af..67b315f3a26c 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -59,6 +59,8 @@ static void rdtgroup_destroy_root(void); =20 struct dentry *debugfs_resctrl; =20 +static bool resctrl_debug; + void rdt_last_cmd_clear(void) { lockdep_assert_held(&rdtgroup_mutex); @@ -1874,6 +1876,9 @@ static int rdtgroup_add_files(struct kernfs_node *kn,= unsigned long fflags) =20 lockdep_assert_held(&rdtgroup_mutex); =20 + if (resctrl_debug) + fflags |=3D RFTYPE_DEBUG; + for (rft =3D rfts; rft < rfts + len; rft++) { if (rft->fflags && ((fflags & rft->fflags) =3D=3D rft->fflags)) { ret =3D rdtgroup_add_file(kn, rft); @@ -2379,6 +2384,8 @@ static void rdt_disable_ctx(void) resctrl_arch_set_cdp_enabled(RDT_RESOURCE_L2, false); =20 set_mba_sc(false); + + resctrl_debug =3D false; } =20 static int rdt_enable_ctx(struct rdt_fs_context *ctx) @@ -2403,6 +2410,9 @@ static int rdt_enable_ctx(struct rdt_fs_context *ctx) goto out_cdpl3; } =20 + if (ctx->enable_debug) + resctrl_debug =3D true; + return 0; =20 out_cdpl3: @@ -2607,6 +2617,7 @@ enum rdt_param { Opt_cdp, Opt_cdpl2, Opt_mba_mbps, + Opt_debug, nr__rdt_params }; =20 @@ -2614,6 +2625,7 @@ static const struct fs_parameter_spec rdt_fs_paramete= rs[] =3D { fsparam_flag("cdp", Opt_cdp), fsparam_flag("cdpl2", Opt_cdpl2), fsparam_flag("mba_MBps", Opt_mba_mbps), + fsparam_flag("debug", Opt_debug), {} }; =20 @@ -2639,6 +2651,9 @@ static int rdt_parse_param(struct fs_context *fc, str= uct fs_parameter *param) return -EINVAL; ctx->enable_mba_mbps =3D true; return 0; + case Opt_debug: + ctx->enable_debug =3D true; + return 0; } =20 return -EINVAL; @@ -3707,6 +3722,9 @@ static int rdtgroup_show_options(struct seq_file *seq= , struct kernfs_root *kf) if (is_mba_sc(&rdt_resources_all[RDT_RESOURCE_MBA].r_resctrl)) seq_puts(seq, ",mba_MBps"); =20 + if (resctrl_debug) + seq_puts(seq, ",debug"); + return 0; } =20 --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 9EE15EB8FB1 for ; Thu, 7 Sep 2023 23:52:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230376AbjIGXwR (ORCPT ); Thu, 7 Sep 2023 19:52:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35930 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240034AbjIGXwJ (ORCPT ); Thu, 7 Sep 2023 19:52:09 -0400 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2065.outbound.protection.outlook.com [40.107.93.65]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0D7841BD9; Thu, 7 Sep 2023 16:51:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CmrTU8S8IburovfmfuD0EhF6Pau2ePGNf2Vn/+HmoXZuvNrBt13/C3/qSvL1xMfH9ckG0gI2a21T9r2h6oBlsdHGlCtX5TYOygS+qoGiBJ1p8LhUxFpbGGvs2/rc/SF52s5TFqXxHdh2GOOsoToMnKei292MEWYnlkukayFaIv75/hAzdyjdXoTFfH7PnoW3UQ0Hq8OMeebZMLhqwWqIBBgtcUb2AMWMcjg8dJBU0p2mFJ8604m87Mhu/5pEIulw78kNW+U2fW9PMEdUMOcN309M+RmnyQC5tPtPhqjSXQE/l1GqwxCQwSy37vPl8R80QXAXX5Ko//+q6yykO6CekQ== 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=hgdl2RU+FKn+Mo+oRujHJspSjN9Zd4ic02W5xOP+nHM=; b=TJ/6ZOV3lXyfsxL016D0LXMwoosJlXUZCy2Trwhi+D5m/pgLf22RgcwaxYXLH3h3A+OWNSNPOgG4oLeoUy5V/7es0QQcmE3ttcinZy54uM5X3wHFLxq6gz6JX2tqb/X+Qa3FleylhTI3UhO9LpKBexZ0dmBnEZJ50v81jLLRaPoym1B45O16TaRBTSJX74irMTqiAsxwe4gUMAFxOOfU6elaaZ+uP0c3p0+yy8o4cEP1h41j0a2V6RDC7nNyq7g5QVulnkPqqn/sP8rDuej14innOy2ECt6ErkvU0P3PT/s4RAXlssqvsjGvx5J+AV9A0Xyo9E5rZwGMRhe6w9Nakg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=hgdl2RU+FKn+Mo+oRujHJspSjN9Zd4ic02W5xOP+nHM=; b=X5kzzfd8/n1S2gACs439/zeP5NKsU4EulJ9/PCs86E4Pg/GY6SnVYlFIM+HhGg7vWu2kraRKBkX1Q5H9fz/YA0AY9gUHY8qPiAuYlCsbJrLtEC4cKhxEP831NhWAzpWrc5iRUqGIvvkwoSJebXNN77T+8ejVs/xAmp/J4EbAym8= Received: from DM6PR13CA0051.namprd13.prod.outlook.com (2603:10b6:5:134::28) by IA0PR12MB8325.namprd12.prod.outlook.com (2603:10b6:208:407::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.33; Thu, 7 Sep 2023 23:51:50 +0000 Received: from CY4PEPF0000FCC5.namprd03.prod.outlook.com (2603:10b6:5:134:cafe::9) by DM6PR13CA0051.outlook.office365.com (2603:10b6:5:134::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.10 via Frontend Transport; Thu, 7 Sep 2023 23:51:50 +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 CY4PEPF0000FCC5.mail.protection.outlook.com (10.167.242.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:50 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:47 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 8/9] x86/resctrl: Display CLOSID for resource group Date: Thu, 7 Sep 2023 18:51:27 -0500 Message-ID: <20230907235128.19120-9-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC5:EE_|IA0PR12MB8325:EE_ X-MS-Office365-Filtering-Correlation-Id: 9ef23c17-70eb-4ea3-d2fe-08dbaffd679b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iS9VIBx+YaAlac6H0SCgw20EiJ5YRU/1zxblh0hugGPF16CWDHw1S054O0ak5T2VI1ZvZJxbi28WwYebuwmq2NMrkiPVfGYEzfJctWkOYy7tG6WhORjkd7fHaa2rm0j00JCbbX2NYzYmlHMlOsQ9sobmd15XW4zdT0gUwzux8K3aY+Pl3Ql5g88Uv9FoE1tpzxMIok4xep8RSPxxELqAider2u7YNb16jwFGsqccC0IvHWFRTyrgcJuRZg7EQszy2vypEiyi4OKLge6xwRZsC1fNyOdSl22veDAUu4tuOkX0b8Y/kfwaxpDVOBgMUsZhttjCtGsfWMgt5sMYFj1mj2K1yKJY+zkCjj3XBA8jgSiVGyjuYNcZ0ylRRREiuMnK5XWIcNPzGSw1S1GGZEbyFz0TG5BII/55jhUrO91F100lfVyGq1VCn6lhz7rn8zpF71+cMtyyESDjnACckw5v1+EErQ5LoMUQfDALzE1i7Ea7HauIEW+Rr+zGb87l/QXcFdD0DbjXpa8aPincYVvJiJ6sX7TtfaVZphl198gBPbPiiGc4JAdKfDhMm7f4cfqsbgO3sNy/4vYIQytDOiYbRJC+Mrkzw3MGoLmb/TUjXQ+5Hk3zPStgI6sncGBpynyLcFG5pPQPBDNw57HDnR78p+Nh8T6r8GV0bn8hHoqfgV2QlsZDXw85uUZfGMsc/OEU5sjkXP6TClZb4BS53WvL6bMLYPq8PQRe/PddIqgEPgwFD2KpvTUBVj3brGtuG3XR9Lg5o71/1fEXk7KGuFDnyw== 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:(13230031)(4636009)(376002)(346002)(136003)(396003)(39860400002)(186009)(82310400011)(451199024)(1800799009)(36840700001)(40470700004)(46966006)(356005)(36756003)(36860700001)(40460700003)(1076003)(40480700001)(7696005)(8676002)(83380400001)(4326008)(6666004)(8936002)(5660300002)(44832011)(478600001)(16526019)(336012)(2616005)(426003)(7406005)(86362001)(41300700001)(26005)(47076005)(110136005)(7416002)(81166007)(82740400003)(2906002)(70586007)(54906003)(70206006)(316002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:50.1971 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9ef23c17-70eb-4ea3-d2fe-08dbaffd679b 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: CY4PEPF0000FCC5.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8325 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" In x86, hardware uses CLOSID to identify a control group. When a user creates a control group this information is not visible to the user. It can help resctrl debugging. Add CLOSID(ctrl_hw_id) to the control groups display in resctrl interface. Users can see this detail when resctrl is mounted with "-o debug" option. Other architectures do not use "CLOSID". Use the names ctrl_hw_id to refer to "CLOSID" in an effort to keep the naming generic. For example: $cat /sys/fs/resctrl/ctrl_grp1/ctrl_hw_id 1 Signed-off-by: Babu Moger --- Documentation/arch/x86/resctrl.rst | 4 ++++ arch/x86/kernel/cpu/resctrl/internal.h | 3 +++ arch/x86/kernel/cpu/resctrl/rdtgroup.c | 23 +++++++++++++++++++++++ 3 files changed, 30 insertions(+) diff --git a/Documentation/arch/x86/resctrl.rst b/Documentation/arch/x86/re= sctrl.rst index 28d35aaa74b4..54691c8b832d 100644 --- a/Documentation/arch/x86/resctrl.rst +++ b/Documentation/arch/x86/resctrl.rst @@ -352,6 +352,10 @@ When control is enabled all CTRL_MON groups will also = contain: file. On successful pseudo-locked region creation the mode will automatically change to "pseudo-locked". =20 +"ctrl_hw_id": + Available only with debug option. The identifier used by hardware + for the control group. On x86 this is the CLOSID. + When monitoring is enabled all MON groups will also contain: =20 "mon_data": diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/r= esctrl/internal.h index 38b99a21ccd8..ccdbed615d41 100644 --- a/arch/x86/kernel/cpu/resctrl/internal.h +++ b/arch/x86/kernel/cpu/resctrl/internal.h @@ -299,6 +299,9 @@ struct rdtgroup { * --> RFTYPE_CTRL (Files only for CTRL group) * Files: mode, schemata, size * + * --> RFTYPE_DEBUG (Files to help resctrl debugging) + * File: ctrl_hw_id + * */ #define RFTYPE_INFO BIT(0) #define RFTYPE_BASE BIT(1) diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 67b315f3a26c..8be0fb323ad3 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -779,6 +779,22 @@ static int rdtgroup_tasks_show(struct kernfs_open_file= *of, return ret; } =20 +static int rdtgroup_closid_show(struct kernfs_open_file *of, + struct seq_file *s, void *v) +{ + struct rdtgroup *rdtgrp; + int ret =3D 0; + + rdtgrp =3D rdtgroup_kn_lock_live(of->kn); + if (rdtgrp) + seq_printf(s, "%u\n", rdtgrp->closid); + else + ret =3D -ENOENT; + rdtgroup_kn_unlock(of->kn); + + return ret; +} + #ifdef CONFIG_PROC_CPU_RESCTRL =20 /* @@ -1863,6 +1879,13 @@ static struct rftype res_common_files[] =3D { .seq_show =3D rdtgroup_size_show, .fflags =3D RFTYPE_CTRL_BASE, }, + { + .name =3D "ctrl_hw_id", + .mode =3D 0444, + .kf_ops =3D &rdtgroup_kf_single_ops, + .seq_show =3D rdtgroup_closid_show, + .fflags =3D RFTYPE_CTRL_BASE | RFTYPE_DEBUG, + }, =20 }; =20 --=20 2.34.1 From nobody Fri Dec 19 04:53:42 2025 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 D439DEC875E for ; Thu, 7 Sep 2023 23:52:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230421AbjIGXwV (ORCPT ); Thu, 7 Sep 2023 19:52:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241104AbjIGXwK (ORCPT ); Thu, 7 Sep 2023 19:52:10 -0400 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2089.outbound.protection.outlook.com [40.107.94.89]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04D281FD3; Thu, 7 Sep 2023 16:51:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=la2Gie9u2tQJjcIz3dDE5TSQHWS2iuJhDcRzdcc0IOARjYfUN65rSewa37OCf4YhvIunrTDVbowpqPrCxDHVYpLF3b9paHJFbEU1w5UCqwV2607UAgj0+K634w0RXJj3TBG6mVWkFr2wsFCNiHW4xCcdqETVWxEGp+UQ9PUgN5JkgOurBeDdCIkAFDM2hF7QKg7hssQg17HFEHqSjE8pdozjKfxSuYMVF6CBMWerEbw2pFHKc8+PzmywzC0Fy/5KtcwIozUzsGM5SxipC7TnGg0Jj8uw91TkK5rDNTxbOYAfZKX2N02GxLEKGJI1Py85Qlx4dSDZLq3zYRwVL0wOQA== 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=c0NpsTPJd8SV1677TlndpV49bd82TfNqFlRX5JUV0ac=; b=lgYcQcFqVrPuLxHedpMkEVLxzEbhQrrLI+71/OGbk7WfoY0UBfmlOOKuwcREKossc12V2QPPzB6n5pqYFxLrWBfhTNEca17iqSqKU+j+zy63A+1Alt/Wi3/BTlvQZKKe5CXX1F0y9+qgpSbDJCGbLDxwjxCa7lM3G5sLaMRwD/gaG6ys0gQ4pYDfVj47cugm6kDwrNSLucDA5TT+MoXEU2oDYOxpyiiQtZaBz/Oj+zQH51Rc9KAE+I+VkRRmHZs01I3mZ3PJQXxkNIkJBToIYITraq85HevaADUICaC/6ECzZpIrMzuQyn4a+NPTHHFow74w7Hb9k6GBFgygA3fgKg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lwn.net 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=c0NpsTPJd8SV1677TlndpV49bd82TfNqFlRX5JUV0ac=; b=kpy5Fb78uA5gozhHa2GXsFuRA0a3pCnt1jrI2KMXI8wYh/hfxjFxMDhVfcltCW2e9+GHlZUknxWzW8KrllVAiIynP+4zoEowKopnsOqVBg92rNw5lyumfSODiOFBxufy5y5ndbEqdFNZCWHnoKCsaSXqAdC1IlWK1Ta3HcJWrFs= Received: from DM6PR13CA0043.namprd13.prod.outlook.com (2603:10b6:5:134::20) by PH7PR12MB8014.namprd12.prod.outlook.com (2603:10b6:510:27c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.36; Thu, 7 Sep 2023 23:51:51 +0000 Received: from CY4PEPF0000FCC5.namprd03.prod.outlook.com (2603:10b6:5:134:cafe::48) by DM6PR13CA0043.outlook.office365.com (2603:10b6:5:134::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.10 via Frontend Transport; Thu, 7 Sep 2023 23:51:51 +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 CY4PEPF0000FCC5.mail.protection.outlook.com (10.167.242.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6768.25 via Frontend Transport; Thu, 7 Sep 2023 23:51:50 +0000 Received: from bmoger-ubuntu.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.27; Thu, 7 Sep 2023 18:51:48 -0500 From: Babu Moger To: , , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v9 9/9] x86/resctrl: Display RMID of resource group Date: Thu, 7 Sep 2023 18:51:28 -0500 Message-ID: <20230907235128.19120-10-babu.moger@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230907235128.19120-1-babu.moger@amd.com> References: <20230907235128.19120-1-babu.moger@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: CY4PEPF0000FCC5:EE_|PH7PR12MB8014:EE_ X-MS-Office365-Filtering-Correlation-Id: 4911ac7b-aac0-4d78-7f36-08dbaffd6809 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O3EbbOfJg0azwVB9ybvzRxq018gUL6X6HIDSB4XAS6rLCd5iDHqWt7HRh/4mkEB/GgRCvV7sFsWGL/QK3dzXb+ewFRZrb+yVofoV0DrZ3dnIiKg69FmDZe2drgqFo6+25fakbRgmCMZ3ztnA1q4605pEcmocj63UwWCIz+aMfxYqg5YacLuvGlZvhuNX1xNyEc6n3UGfrmCj8m9z73/OMpyxPIxvU5A9eSy5Ly5PxdJwjPje3xfX6zYZlWf4fkSpp3zTyjk1I0wCpl7WQYdjuphckS9jim89s0QBWc8mIXSOEavwcUKKpJCxmb0a/hHhA/QhUjSQcTpTiT/pdrbnFEak7W3poUYlFyZev9CPNHO1pXBFzqzPZb5tQgaVrt9v1Rn0uJaC6MnbE5KcPUqu6hIyuGu1mpsdcIN3CRJAu7bxtDrcBfppCWiRIg8E+XwLnttJYdDXTSe/Z1os6zJJjYcx2g3ltK9uQl8iFuSlXAK75ZR9XXSGYGxkWR73VpTgpDh2/l9Ghh0KGMMlnM81vWpv7bKlxsURXYgmiq01ExScWizTi4dGzN9Y468mbgv8cRhaf508/XnZ0OlXuQbXuMNmdbQZDHQqzpNN8sX8nlEZ+zgkZVcQ2jbaHf6DJXqadBSswdwak7N9RyiKotkAH51l7uUlb3nDJQ8kjTZ7eCD5pGx8Dm1MM/Jas0xNI2j0csBO+FhOVglfzEwzAZnNlbUx7jAktry7c0Z0/XOCDLKHeyLPYHVgLUiP3QJNG48PIn85W2QT4YYKtzBQup7MKA== 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:(13230031)(4636009)(346002)(39860400002)(376002)(136003)(396003)(451199024)(82310400011)(186009)(1800799009)(36840700001)(46966006)(40470700004)(40480700001)(6666004)(7696005)(40460700003)(2616005)(1076003)(26005)(16526019)(7406005)(44832011)(7416002)(4326008)(5660300002)(8676002)(8936002)(81166007)(86362001)(2906002)(70586007)(36756003)(41300700001)(316002)(54906003)(356005)(110136005)(70206006)(82740400003)(478600001)(83380400001)(47076005)(36860700001)(336012)(426003)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Sep 2023 23:51:50.9159 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4911ac7b-aac0-4d78-7f36-08dbaffd6809 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: CY4PEPF0000FCC5.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB8014 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" In x86, hardware uses RMID to identify a a monitoring group. When a user creates a monitor group these details are not visible. These details can help resctrl debugging. Add RMID(mon_hw_id) to the monitor groups display in resctrl interface. Users can see these details when resctrl is mounted with "-o debug" option. Other architectures do not use "RMID". Use the name mon_hw_id to refer to "RMID" in an effort to keep the naming generic. Add the flag RFTYPE_MON_BASE, which contains the files required only for the MON group. For example: $cat /sys/fs/resctrl/mon_groups/mon_grp1/mon_hw_id 3 Signed-off-by: Babu Moger --- Documentation/arch/x86/resctrl.rst | 4 +++ arch/x86/kernel/cpu/resctrl/internal.h | 6 ++++ arch/x86/kernel/cpu/resctrl/rdtgroup.c | 38 +++++++++++++++++++++++--- 3 files changed, 44 insertions(+), 4 deletions(-) diff --git a/Documentation/arch/x86/resctrl.rst b/Documentation/arch/x86/re= sctrl.rst index 54691c8b832d..98b0eb509ed4 100644 --- a/Documentation/arch/x86/resctrl.rst +++ b/Documentation/arch/x86/resctrl.rst @@ -369,6 +369,10 @@ When monitoring is enabled all MON groups will also co= ntain: the sum for all tasks in the CTRL_MON group and all tasks in MON groups. Please see example section for more details on usage. =20 +"mon_hw_id": + Available only with debug option. The identifier used by hardware + for the monitor group. On x86 this is the RMID. + Resource allocation rules ------------------------- =20 diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/r= esctrl/internal.h index ccdbed615d41..b4910892b0a6 100644 --- a/arch/x86/kernel/cpu/resctrl/internal.h +++ b/arch/x86/kernel/cpu/resctrl/internal.h @@ -296,6 +296,11 @@ struct rdtgroup { * --> RFTYPE_BASE (Files common for both MON and CTRL groups) * Files: cpus, cpus_list, tasks * + * --> RFTYPE_MON (Files only for MON group) + * + * --> RFTYPE_DEBUG (Files to help resctrl debugging) + * File: mon_hw_id + * * --> RFTYPE_CTRL (Files only for CTRL group) * Files: mode, schemata, size * @@ -315,6 +320,7 @@ struct rdtgroup { #define RFTYPE_MON_INFO (RFTYPE_INFO | RFTYPE_MON) #define RFTYPE_TOP_INFO (RFTYPE_INFO | RFTYPE_TOP) #define RFTYPE_CTRL_BASE (RFTYPE_BASE | RFTYPE_CTRL) +#define RFTYPE_MON_BASE (RFTYPE_BASE | RFTYPE_MON) =20 /* List of all resource groups */ extern struct list_head rdt_all_groups; diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/r= esctrl/rdtgroup.c index 8be0fb323ad3..fc830ffce82a 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -795,6 +795,22 @@ static int rdtgroup_closid_show(struct kernfs_open_fil= e *of, return ret; } =20 +static int rdtgroup_rmid_show(struct kernfs_open_file *of, + struct seq_file *s, void *v) +{ + struct rdtgroup *rdtgrp; + int ret =3D 0; + + rdtgrp =3D rdtgroup_kn_lock_live(of->kn); + if (rdtgrp) + seq_printf(s, "%u\n", rdtgrp->mon.rmid); + else + ret =3D -ENOENT; + rdtgroup_kn_unlock(of->kn); + + return ret; +} + #ifdef CONFIG_PROC_CPU_RESCTRL =20 /* @@ -1856,6 +1872,13 @@ static struct rftype res_common_files[] =3D { .seq_show =3D rdtgroup_tasks_show, .fflags =3D RFTYPE_BASE, }, + { + .name =3D "mon_hw_id", + .mode =3D 0444, + .kf_ops =3D &rdtgroup_kf_single_ops, + .seq_show =3D rdtgroup_rmid_show, + .fflags =3D RFTYPE_MON_BASE | RFTYPE_DEBUG, + }, { .name =3D "schemata", .mode =3D 0644, @@ -2535,6 +2558,7 @@ static void schemata_list_destroy(void) static int rdt_get_tree(struct fs_context *fc) { struct rdt_fs_context *ctx =3D rdt_fc2context(fc); + unsigned long flags =3D RFTYPE_CTRL_BASE; struct rdt_domain *dom; struct rdt_resource *r; int ret; @@ -2565,7 +2589,10 @@ static int rdt_get_tree(struct fs_context *fc) =20 closid_init(); =20 - ret =3D rdtgroup_add_files(rdtgroup_default.kn, RFTYPE_CTRL_BASE); + if (rdt_mon_capable) + flags |=3D RFTYPE_MON; + + ret =3D rdtgroup_add_files(rdtgroup_default.kn, flags); if (ret) goto out_schemata_free; =20 @@ -3255,8 +3282,8 @@ static int mkdir_rdt_prepare(struct kernfs_node *pare= nt_kn, enum rdt_group_type rtype, struct rdtgroup **r) { struct rdtgroup *prdtgrp, *rdtgrp; + unsigned long files =3D 0; struct kernfs_node *kn; - uint files =3D 0; int ret; =20 prdtgrp =3D rdtgroup_kn_lock_live(parent_kn); @@ -3308,10 +3335,13 @@ static int mkdir_rdt_prepare(struct kernfs_node *pa= rent_kn, goto out_destroy; } =20 - if (rtype =3D=3D RDTCTRL_GROUP) + if (rtype =3D=3D RDTCTRL_GROUP) { files =3D RFTYPE_BASE | RFTYPE_CTRL; - else + if (rdt_mon_capable) + files |=3D RFTYPE_MON; + } else { files =3D RFTYPE_BASE | RFTYPE_MON; + } =20 ret =3D rdtgroup_add_files(kn, files); if (ret) { --=20 2.34.1