From patchwork Wed Mar 26 05:50:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029735 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C595BC3600D for ; Wed, 26 Mar 2025 05:53:53 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927003.1329796 (Exim 4.92) (envelope-from ) id 1txJhj-00083k-Ch; Wed, 26 Mar 2025 05:53:31 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927003.1329796; Wed, 26 Mar 2025 05:53:31 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhj-00083c-7g; Wed, 26 Mar 2025 05:53:31 +0000 Received: by outflank-mailman (input) for mailman id 927003; Wed, 26 Mar 2025 05:53:30 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhi-00083W-8F for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:30 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20609.outbound.protection.outlook.com [2a01:111:f403:2417::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a2d20c6e-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:53:27 +0100 (CET) Received: from MW4PR03CA0319.namprd03.prod.outlook.com (2603:10b6:303:dd::24) by SA1PR12MB9003.namprd12.prod.outlook.com (2603:10b6:806:389::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.42; Wed, 26 Mar 2025 05:53:24 +0000 Received: from SJ5PEPF000001EE.namprd05.prod.outlook.com (2603:10b6:303:dd:cafe::9b) by MW4PR03CA0319.outlook.office365.com (2603:10b6:303:dd::24) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.24 via Frontend Transport; Wed, 26 Mar 2025 05:53:24 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EE.mail.protection.outlook.com (10.167.242.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:23 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:20 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a2d20c6e-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YlNlGhFxyHq+1TKPB/v9OE/kqYS+LdXBSgsGrafM0LfZLDsV+lFgb4i005zzg85PgeATD3Xst/KAD/fzy6oFvj5kWCCRz8lPNMky3wUap0Xe+qTpGt1c11VZuAfnejE3/OdRbVvZTyYEYII6oIyAKRanclEM7ucqsrTSsk4Es0eUAxqlIiyW2MAYIAvSJoWBDnHNohx6lWpCSSCzgiyyuf9Uslea6ThyhK7flKL0hnJxfi/O+QoJd9c+on04wrA4zNp8wbcfINlO2zISYW54TC5Pi7S1TEwjSyvPDJb4Hx01Lpr3Gz6MR+jKP1tASEHsamdhmYGWo4DZG8BFVBsVzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=VEUNrZ24fL1X6hFJd6qKufpxkZa+ZPL+BfQnNJ7pegc=; b=DM379p/Gd/ofjGG0NnVWIUPI0vTxeTBwLUlee/AYobb9oz+bxdEPDfwsF5faJS4GAoVRj1y2vQYQF5f61VGmCLWw+dHycF5j1t1zkyKis/aFmeWeuwK0s0i/B+f/Mdy6wNZ8WMoi1Cgg5jg/nL5ir39wn1LKMuCbri1Ie/bYieIkkKnJXmh5lR/e88vKj3V9m1wqfHw8is82rbb0A7gih785Wv+GFYHmbIQbK5gPR5Q43UnmEpfswL/VhgC97KHALEVAktboGWxl4rIKTt8Rv1boGa6y7Fp2WQ92RlYAeqLbc7glCuHw0vkBcV0sYDE0k42XZMWZiInM2ki6tgV3+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=VEUNrZ24fL1X6hFJd6qKufpxkZa+ZPL+BfQnNJ7pegc=; b=WNKpJWA2XQh/AK0v2NeTsHd/5vivnUCeRImVwHCbzaROFo0vu8jDAoQvXqeU3a7o2hz2lX48SpXZkQUzupMeDHbM0vYLJnq4edvs2MenfGr6ZnItRiPASaK/mI9UZQhiN8rSX385NKnVvyrPajx8bYEx5pgTCZARfXXzWjhVed0= 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 From: Penny Zheng To: CC: , Penny Zheng , Jan Beulich , Andrew Cooper , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Anthony PERARD , Michal Orzel , "Julien Grall" , Stefano Stabellini Subject: [PATCH v2 01/19] xen/x86: remove "depends on !PV_SHIM_EXCLUSIVE" Date: Wed, 26 Mar 2025 13:50:35 +0800 Message-ID: <20250326055053.3313146-2-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EE:EE_|SA1PR12MB9003:EE_ X-MS-Office365-Filtering-Correlation-Id: ec9dbe34-ba53-4195-df8d-08dd6c2a856f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|36860700013|1800799024; X-Microsoft-Antispam-Message-Info: iqTELoYUCl12nII7u79c6OFqw5jK7hMRG4XrADzzQtC3oF/xvH+ztTvC++wXZchI1PS/LzIn+QcvifvDSg+ca0oqkYNXfBF2tCCrzRKWFBc6Pi3BWyuKD2XBY+yAdJX7f+OKdCVVceqyN/mOx2xQOkdJjIS3vfICKweq8ZIpjT2E+fybfhfpRigB6UP1f8U+luQyY7zgI3zpc0mie7Wx5hyk8WUtVSKmofCxsztpWd1qRg6P4TOGfUg0XnBvtTELB8OUW1RGM3zxFuALDzSvEjCzY7Lssn/oGLUPbtjqK5Go/MBFXXE4nZSS852SeY391cFEjgqklPaBnLPQZzqhTkDA5BYAY1hMns1gWAiMyLFt2gULnG0Zgx4W8wFxbgFfxkwGAbod9ZkEN5/scwd79aZ39bo5Pe7g8spC3iN9+NsztHw3p9u3N5OJ0Rc26bk7k8CqMxNX98BzJSv4kSUbsgy2OvYWGZJjbRuIcbvrwxw8qiIbsfuDxLliEBQD7aq2x9MFIs2cCMCWmHlnoUJuzImfCyGmN8Lxmo5BOz5Zi5JuOpOC9HKIc74/DJoIbyg4ORFwb3xc7FGNAfglMexgBqtjRHwecmlv1nsyn2RheqOeihjwkz2SI3kAq8x1pTiepwxbiUOy1lk4wAaQ2U2OUeZ8RaB7PwEPVtKs29jZotK+nqr9EVFG3lDYwT164lMy2Xa1VjW1g/IFqjsUd4ufa8ze19s4Wy5g03U9VXquSZTpjDVf1dcmSDfYqRYpKG9fjOiafVjdx9nfCDcqpKFFpLaQqeQn+7MO+S38mILAeY433oy0H7dLKErwoxgeKt+YxfO1EZXE78ZM62VxN1QUr72XaATEcJhA9O8I1vyHGIggauby82PO5t1QIVwXjpIqC7TLPKzMTJx6zkfUTIEIixkNaJK0PWDfcy+GDsk187JL13LB1qOCOw8Zd1hx+PLQkFxvYItGDUMkLYWbT5ToqHZXIatpfyEFaOlayVb50AtEVS6sBxL9C/KFj8UYAjPkkYnVeB3lU9zuM8C94I6WNnXx+dR7a/6NHxWq00uUTOGAfDA0qkTbdkkX7ZuRgYdNXCDZKllSIzmCPTDlvWWrtV5WVgV7um8Ewnq1DanMB0/47lnbDL32A4eBxls7LbMNOjE1+i+8XOw97peoHrE3m0bRLisa3eFgUaLBYGeYvfOb3Vv7U7TsjBEiuv/JbXXNgJ9qCfGwV0SoTvsbWmmYSkreVG2kbvPyqbr6nJ5YdAZXjUXoMBJX9sh7hf/CdYMYD9cdz8avrnjwWZLDuv60cRByiA0ShcfTdXFv9HT+H6JlrrjdPVaUmgacRfXcqb44uQgoUXl0bR3u9IyJ5ub7TxO4Kk/M/C02/6osey3++/pRowy3zzVQyHVILxCGfgO1QO8P5CjUw5nSuvZf7hwlHdTO+WQogRE54m5BQa0CHi8= 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:(13230040)(82310400026)(376014)(36860700013)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:23.8356 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ec9dbe34-ba53-4195-df8d-08dd6c2a856f 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: SJ5PEPF000001EE.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB9003 We intend to remove all "depends on !PV_SHIM_EXCLUSIVE" (also the functionally equivalent "if !...") in Kconfig file, since negative dependancy will badly affect allyesconfig. This commit is based on "x86: provide an inverted Kconfig control for shim-exclusive mode"[1] [1] https://lists.xen.org/archives/html/xen-devel/2023-03/msg00040.html Signed-off-by: Jan Beulich Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- xen/arch/x86/Kconfig | 6 ++---- xen/arch/x86/hvm/Kconfig | 1 - xen/drivers/video/Kconfig | 4 ++-- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index 18efdb2e31..1e5df84b25 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -137,7 +137,6 @@ config XEN_IBT config SHADOW_PAGING bool "Shadow Paging" - default !PV_SHIM_EXCLUSIVE depends on PV || HVM help @@ -169,7 +168,6 @@ config BIGMEM config TBOOT bool "Xen tboot support (UNSUPPORTED)" depends on INTEL && UNSUPPORTED - default !PV_SHIM_EXCLUSIVE select CRYPTO help Allows support for Trusted Boot using the Intel(R) Trusted Execution @@ -279,10 +277,11 @@ config PV_SHIM_EXCLUSIVE Build Xen in a way which unconditionally assumes PV_SHIM mode. This option is only intended for use when building a dedicated PV Shim firmware, and will not function correctly in other scenarios. + Features, like tboot, shadow page, VGA, HVM, Hyper-V Guest, etc, + are unavailable in shim-exclusive mode. If unsure, say N. -if !PV_SHIM_EXCLUSIVE config HYPERV_GUEST bool "Hyper-V Guest" @@ -292,7 +291,6 @@ config HYPERV_GUEST If unsure, say N. -endif config REQUIRE_NX bool "Require NX (No eXecute) support" diff --git a/xen/arch/x86/hvm/Kconfig b/xen/arch/x86/hvm/Kconfig index 2def0f98e2..b903764bda 100644 --- a/xen/arch/x86/hvm/Kconfig +++ b/xen/arch/x86/hvm/Kconfig @@ -1,6 +1,5 @@ menuconfig HVM bool "HVM support" - depends on !PV_SHIM_EXCLUSIVE default !PV_SHIM select COMPAT select IOREQ_SERVER diff --git a/xen/drivers/video/Kconfig b/xen/drivers/video/Kconfig index 245030beea..66ee1e7c9c 100644 --- a/xen/drivers/video/Kconfig +++ b/xen/drivers/video/Kconfig @@ -3,10 +3,10 @@ config VIDEO bool config VGA - bool "VGA support" if !PV_SHIM_EXCLUSIVE + bool "VGA support" select VIDEO depends on X86 - default y if !PV_SHIM_EXCLUSIVE + default y help Enable VGA output for the Xen hypervisor. From patchwork Wed Mar 26 05:50:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029737 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B7F7DC36011 for ; Wed, 26 Mar 2025 05:53:54 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927004.1329805 (Exim 4.92) (envelope-from ) id 1txJhn-0008Hn-I9; Wed, 26 Mar 2025 05:53:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927004.1329805; Wed, 26 Mar 2025 05:53:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhn-0008Hg-Ey; Wed, 26 Mar 2025 05:53:35 +0000 Received: by outflank-mailman (input) for mailman id 927004; Wed, 26 Mar 2025 05:53:34 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhm-00083W-FR for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:34 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2061d.outbound.protection.outlook.com [2a01:111:f403:2417::61d]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a66a2e85-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:53:33 +0100 (CET) Received: from MW3PR05CA0023.namprd05.prod.outlook.com (2603:10b6:303:2b::28) by LV8PR12MB9405.namprd12.prod.outlook.com (2603:10b6:408:1fa::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:28 +0000 Received: from SJ5PEPF000001EB.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::2c) by MW3PR05CA0023.outlook.office365.com (2603:10b6:303:2b::28) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.43 via Frontend Transport; Wed, 26 Mar 2025 05:53:27 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EB.mail.protection.outlook.com (10.167.242.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:26 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:23 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a66a2e85-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Mq93IW0Js2GP/v6SUI8wPS2HIB8M7cztcXCzEV8IK5FpPcwLz6xkkXn7XAiimjyGTCMNIrkIiICTLv2WtOa2vt26JUF+OAegYKda74w4MHNQ6n89OXwqY0NCDj3PuAxbaG/Z0kX1ul22UTJnVlS4Vqs8QhgxqouqG1Fn6CYnD3E2NlmZyk3KK7aJDq99HjPEZEJgZiKdyjRff3psIWwZ1Ae2PJmJiA3b1n323O9oi7cNquQ9lFTUxrolg5LngXTjRKNUc8i0qXzWvc1u3jysvXmySwIR3yiH5+fg4dL7d7q61Gxz47PaFJ9IFL6AlN6ELl95pw6MPPwhBFJLa9qMDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=mLLDFRNRP5cAISFRe2RAx0VsIhORNHj/mf9/RMCIKEw=; b=MjCIWurIxQpqeVYRiMEYoCm9VA8jx76dth4BpXSgSVsGzykeUjXpVCvsXjLN9iJ6TwweRgfPyMQ2iUo3ytF1DdxvNVbGiVuYOz9q/F+HeGSy4Ak4IUZMmL16wNO2msJEFoHZ0oLMzEJ8HJGcV7z3A8y6qd16Wm0oGw7xKaY3Y507FHG8q9mK3TiccyAPw+1wwzJanEpgmRy4YxyRdm/ZvFqPsxmObntn9iUddBd7pSigvnOACD+P8611pDKSAbM6Y0LUWtTQQZ+7ckzAXFtyOXt2twK/veoT7eLd8kWUgNNm4VN19o9PXmi3mjg6vSU+CF5CXXM3z2ghHdzDX79yhg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=mLLDFRNRP5cAISFRe2RAx0VsIhORNHj/mf9/RMCIKEw=; b=E3eIacsa9PntR0O/dNDmC7+cit5xt+a/zEgiLFOfY82wMBtFz4i5VyRiAd6qvV79l7YigIoccdCE0fNEz43jUdJaJA90AmNWIjPzRJaGy42IRJrsgFX9eVZmZvU/9wNCpNCGFq3smC4aHjVatqjEM1DCXoIWjQnyVnb5MFjni+o= 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 From: Penny Zheng To: CC: , Stefano Stabellini , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , Julien Grall , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , "Stefano Stabellini" , Sergiy Kibrik , Penny Zheng Subject: [PATCH v2 02/19] xen: introduce CONFIG_SYSCTL Date: Wed, 26 Mar 2025 13:50:36 +0800 Message-ID: <20250326055053.3313146-3-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EB:EE_|LV8PR12MB9405:EE_ X-MS-Office365-Filtering-Correlation-Id: 432979c0-2d08-4c4d-1123-08dd6c2a874d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: bCsVJLPOePDl6sN/K7WOfYbW1j1lWISNnBSoA4TjtIjPveiYyXwMuHKwJlf8jdc9uWfg6jAMu1bCbVWNreKQv3sDeV74rX+EBrXvRPMl/pwiDOF2zjQ4Rv/sUhI0bVuYNCNZopj2SVeA7UxP0cBJusBHyjE80xcf+BM31FT7hGqGODZWYEQUpNLJADX2+NtE/8FMu1uQTXRbnd0sXGKmEXQz0CgsUbFcqV5/er1dEm2PNMn6fsZMGFkgbWTy2DhrFYxinmm7fKwKST3MtCIJ4R1Mn6wtqeDFJMQgDgT3Bq4D4N4zNtN6qtqtytYp5tvYTKm/vTQwR1qyMA7d7w2cDBuym6239+YyKf/w/O2YPBC7hGfu460EXUTuL1azu/HTAHZuVLm3FgjRsp05oy83RlcYcDnEk3+/CDXVp0P926nx+8NsgHsffNxwW6ocGP8TP3iLlMlDboRpNVZBL14+4I0w5LGmGIreYpw05uMFPoQaKiQsu8Pug6K7rrR23/L36Ef2G40g88ghG0dtmueEv7MiO4slr/SQeEe/tTBa1kPCw0uABlXT+s20xP8kdjyCfoNRdUg7GqwcEAJjPkj80vSAMznE2PeD4qq4VPzXdu2aKpEV/6/2M63PGVTohEuWTXuEHw60U/opN4Htf0fRe3BQh2aAU9G+HkIknQFNlvS/OD2Tm6HziX2UIVDKn/D/0q4Yblzp11Gg5JzWQQgDbiZnH/z9UwqYOyrImMFv6p8sfgdEdyrfFrenGxaUYtoSnvsnL1ysxNwcAqZdNkrTUCL1BsGnqn11wQ8Y12hYLbhAbgSvyEbbKO7FQFwN9Iouu6D8WjD+5D4k2B/ZOHB8yWC67zl5ua6BQX2Ib0xPKxd/q032a0bwqGPpcDvXLuN9HdsKLsl+dw6zCe2LbE4eKfVEjLb0AY42/A2WEMxZD0+xLJRYbDvzmyzQUjepyUZ4wQioE+857hbyDXos02e/BYkuzNKWDK6zZJgQ7myv0znoUds1y+lquJ3yEdU9jSBYtkHAc3QwQmlr4SxbOZkW6by6yWRqqVvQURkYz/4NgJMjxsRMCfZsGrTsBiGF5a55M0u1ui+H8ErlQEXjGr/aVknJxEO4fi0ME1KOjBIPpgFnmcYUN4FELvkukW+ZF/LQ54WRimYk/AEJIwuDCv2aj6rUtiN7YFZBrl5awYY9OiG+ieWOYmGjqXusrFmS2MEGCOv/ywN8AYAXOuzZt7YANrL+g2tTHjwETa1oqhQeHMV43MfY4pRWVPUBwCb9i2WebRgZyzE2YGPuU/M+TEw7EywWnTSoRta3u2uSy3kAZ21/noUGR67aN1vmXbbW6jNyXqN9v8gySCtuDSFTf0SKqb4OA6Yy6dQsurcqR0OQEvUZfUzC+dvBCaTgHkd5NsCYBxa9agP7iTUuQ8osiTvj/3Z2tcK8nyBm3C2MeFGjheMpMyLNTo0/TXEAUySzsXN1MZTeVmBtci4gnQFofGTOICNRgJP9L6+10Q/xeyDx7NrEmcopAqeR/o0pkODhd14V 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:(13230040)(376014)(82310400026)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:26.9629 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 432979c0-2d08-4c4d-1123-08dd6c2a874d 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: SJ5PEPF000001EB.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR12MB9405 From: Stefano Stabellini We intend to introduces a new Kconfig CONFIG_SYSCTL, which shall only be disabled on some dom0less systems, to reduce Xen footprint. Signed-off-by: Stefano Stabellini Signed-off-by: Sergiy Kibrik Signed-off-by: Penny Zheng --- v1 -> v2: - complement missing commit message - re-placing the kconfig at the file end - complement a "help" statement --- xen/common/Kconfig | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/xen/common/Kconfig b/xen/common/Kconfig index a6aa2c5c14..fe9303c7c1 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -545,4 +545,15 @@ config BUDDY_ALLOCATOR_SIZE Amount of memory reserved for the buddy allocator to serve Xen heap, working alongside the colored one. +menu "Supported hypercall interfaces" + visible if EXPERT + +config SYSCTL + bool "Enable sysctl hypercall" + default y + help + This option shall only be disabled on some dom0less systems, + to reduce Xen footprint. +endmenu + endmenu From patchwork Wed Mar 26 05:50:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029740 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 82F9BC3600E for ; Wed, 26 Mar 2025 05:53:57 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927006.1329826 (Exim 4.92) (envelope-from ) id 1txJhq-0000L0-4j; Wed, 26 Mar 2025 05:53:38 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927006.1329826; Wed, 26 Mar 2025 05:53:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhq-0000Ki-1G; Wed, 26 Mar 2025 05:53:38 +0000 Received: by outflank-mailman (input) for mailman id 927006; Wed, 26 Mar 2025 05:53:36 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJho-0008HQ-SP for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:36 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20603.outbound.protection.outlook.com [2a01:111:f403:2418::603]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a7270994-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:34 +0100 (CET) Received: from MW3PR05CA0019.namprd05.prod.outlook.com (2603:10b6:303:2b::24) by SA0PR12MB4494.namprd12.prod.outlook.com (2603:10b6:806:94::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.42; Wed, 26 Mar 2025 05:53:29 +0000 Received: from SJ5PEPF000001EB.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::d9) by MW3PR05CA0019.outlook.office365.com (2603:10b6:303:2b::24) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:29 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EB.mail.protection.outlook.com (10.167.242.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:28 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:26 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a7270994-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=X6RJkjj80fe9vGlg5fR66z8snJlGldUSrp1oB2As54p1RjLUG2gP3IJQQZWyX0ZT6wvYmY+fxKccZ1CsGJlKjTcqgLt8FGg+XNjIF6rEBIoPgA1mvZW5T13cdPkR7XPDw5LkdJguSOVOVTfzzWTED95WiWxCxqjgZifYBQ9pjrU1o3Hs3KPr0PBmGj5MuH+7sfKNNvJcl/eYvEozFeafG+vvSAmfCxMHA8FWqbuVpBEATCflLhWwU0HoBe+wg2Ji0ouZDYiTUhTOiaCTZ1DljHv6Q99cx6EoHPtJ/mcTu9DDh1TwSEIKlfFnuQE3ZPCxVlE/kMIeJWE6drCMMpY32g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=T4xNZXrhTcdkcGwpvYSHOTxYRp0+w+gxCGXPeSW9dQ4=; b=Wy+WVr7qpDRxRghEep/7C3Z6wEZikUfIgUmL36QDaLfb6Cl4eP3kMFVJTDQXKnclMURdw3CWAv30X7JjrpAsPYmS/u1pE1BMXW0b1xMx+b3ItDO9iCthPXeSVUiZ0tao5LGnE/E36ukWGYptOlwxDXjeZwF2oVRb9mIjztLC3Vz+UuQrJSGakqq+CXryHQR2RjwH81HtShXayHCXpMLoJF71gM74SbOzUIDlUoN8ViiubCZFZubgH5YpdZVUHI24rmNCv7Vo+Ovon2e9KrdMhKg8aY3k9ETeYR4SwopGr4AB8S5hi3FzwI6AgPtNp0I8MANGOyq8GNroJW0L9JiAvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=T4xNZXrhTcdkcGwpvYSHOTxYRp0+w+gxCGXPeSW9dQ4=; b=lYG9ZSw/cvT/OMKIEQ5Om1eH70Epp4ekRpTyrv64Uc62xH9eeEfBLB+QkdVwzMrHWQ49Sx0DT1fhBL5OZUDuurk+WJMAYg5EFh6MHsDiUYQnOIi1P0FdZVjpbhN5KiPVsUfY0pBu3m2IUgT/rQHbnVw4RvNp6/sz+lpy7JNoyLc= 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 From: Penny Zheng To: CC: , Penny Zheng , "Daniel P. Smith" Subject: [PATCH v2 03/19] xen/xsm: wrap around xsm_sysctl with CONFIG_SYSCTL Date: Wed, 26 Mar 2025 13:50:37 +0800 Message-ID: <20250326055053.3313146-4-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EB:EE_|SA0PR12MB4494:EE_ X-MS-Office365-Filtering-Correlation-Id: 7d222f16-09bb-4271-0542-08dd6c2a8864 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: djRObBKjJJnG/sK/4yp2eXMQmZVmYvNslMEte3tGEFL4svEIUp5R8AbsbzBoOvWJLq2YaXGKHiH9T67OBhAPxCFtU/8ygmbHx7sLaoao6K+5gkNnUtSr3W9MGWfyBFbTnHhXu6sjANwlEU+qI0MXGhj7Pu77lgq5/GPQDGTVux+wzbKCHLsw//QmiCT2UjCwOH9cbNMzfzq1MvgId9fNv/vI9xufdhxm3FWYwZrX8jMe0d1WBPc+wf/X8R4DlWZnyB4rQ2+hWXeZp13nSNefqBpTPSEZaVHk9uDEsI0oiKiRK5+z/VS03Ool+YGuYFdbt/0dQXsDXusS4ma3mTtldzyEwZ/S/1pvDCKOUnNdm6bTqzEkZLHagDc5Fs7dqQNBsVPiJEgyNf+1+W7/HcvJAnyReKqP593ZmQLz99hhkn7H5osVbPq3mtp3FCm7Utg2WWab3QGNw4m4QpYFGvlgn1ao1DFLszFYh8zO89BFJCwEyFdUpvvSE6Unq7bGQUjkFGT4MaoOxBY0X3QyMxiIdXdUm+nvXCot7HmS/gkMR2sBCq8drBklp3AXJ7ToE1B6v8PViEMz63DEIXQlhy4lsK9jBvtFmkHpF95LZDmQlwzgm5B1/MQRTVA+72UL2RNxOYBeDVeS+59QspsmFLidMCW9xfzk1f6oEUqRf3mgq4euJAVd9XDavKTXZjvaTTUXWSv2QjcBDa5Q7NNDyQOswex0T4GoTWa4fAE68xiY8qV8cEhd26WFggY7F03WL92+0z+oLT9PAdR36osrh+RFJbWVbTddy3x+mTvY9k7oWev5YuOu39sdpK7CU3kg5Wni8lOfVH/QhtEYey8pP8iEzQ/qyShmuBCyz8lMmSmmN263amtr6/Y5JdX3oSP/qE9NqC+C9Bzi+2bn71uWVkZ4dBYT7L3SXLOj6yO44bFht9W0xAdzxyY5Dbb/cZRSrHPwhrATUqiP4CynBBqUd2rHY/R8y71/erW7WtwQC6GzXbFimB0/pmHStQw8rA8I/i6GLXstIHyhbJXszouDGb2oW0/KPjKl9pfUXr4pGwNmt7IGJzAeSdn5ce5C2gmEr4AV93JMTaqBWl5c8GP03YVYy+4QbCc8mrfNkkV621zrQYMksZh62Afy1+F9+6SkQu8Kluz3ktf8slJnO6d7CbZZqqi30wJ11AxBxMabWL+Ij9PSy5DL2CyxTp8cjvsSV0eTrzFEY76pm/nCDeu6S7zxdeHF2fAnrGTSNk275Lw7Q3QBIfToc6sA+PkRU/6H1F7gjl5+qZp1N/UwBNdouO6l57fPxMNKXkivDYSVnDKTfXeZqNciCmeRQ4vICcogM/l/Lez9Y7pwadSwanFbFqaevButPWcYBPciHIMaJS+2Rpx0sdaJ9XdddZQ2vwuASfC07RyegMK/y65h8GpXHAmpyMNFmnf4G+6ek3JV3SGjGhYJSbiT7MPYU3qKRQaxYggPpL6/uiU53SM3cAD+uLACmrd7VvuAhUpUvaT+xZH6zSU= 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:(13230040)(1800799024)(376014)(82310400026)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:28.7911 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7d222f16-09bb-4271-0542-08dd6c2a8864 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: SJ5PEPF000001EB.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4494 As function xsm_sysctl() is solely invoked in sysctl.c, we need to wrap around it with CONFIG_SYSCTL Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2 - remove unnecessary redundancy in dummy handler - re-place #ifdef into function body --- xen/include/xsm/xsm.h | 4 ++++ xen/xsm/dummy.c | 2 ++ xen/xsm/flask/hooks.c | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h index 24acc16125..22e2429f52 100644 --- a/xen/include/xsm/xsm.h +++ b/xen/include/xsm/xsm.h @@ -261,7 +261,11 @@ static inline int xsm_domctl(xsm_default_t def, struct domain *d, static inline int xsm_sysctl(xsm_default_t def, int cmd) { +#ifdef CONFIG_SYSCTL return alternative_call(xsm_ops.sysctl, cmd); +#else + return -EOPNOTSUPP; +#endif } static inline int xsm_readconsole(xsm_default_t def, uint32_t clear) diff --git a/xen/xsm/dummy.c b/xen/xsm/dummy.c index 93fbfc43cc..93a0665ecc 100644 --- a/xen/xsm/dummy.c +++ b/xen/xsm/dummy.c @@ -22,7 +22,9 @@ static const struct xsm_ops __initconst_cf_clobber dummy_ops = { .sysctl_scheduler_op = xsm_sysctl_scheduler_op, .set_target = xsm_set_target, .domctl = xsm_domctl, +#ifdef CONFIG_SYSCTL .sysctl = xsm_sysctl, +#endif .readconsole = xsm_readconsole, .evtchn_unbound = xsm_evtchn_unbound, diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c index 6a53487ea4..befe9336ee 100644 --- a/xen/xsm/flask/hooks.c +++ b/xen/xsm/flask/hooks.c @@ -856,6 +856,7 @@ static int cf_check flask_domctl(struct domain *d, unsigned int cmd, } } +#ifdef CONFIG_SYSCTL static int cf_check flask_sysctl(int cmd) { switch ( cmd ) @@ -933,6 +934,7 @@ static int cf_check flask_sysctl(int cmd) return avc_unknown_permission("sysctl", cmd); } } +#endif static int cf_check flask_readconsole(uint32_t clear) { @@ -1884,7 +1886,9 @@ static const struct xsm_ops __initconst_cf_clobber flask_ops = { .sysctl_scheduler_op = flask_sysctl_scheduler_op, .set_target = flask_set_target, .domctl = flask_domctl, +#ifdef CONFIG_SYSCTL .sysctl = flask_sysctl, +#endif .readconsole = flask_readconsole, .evtchn_unbound = flask_evtchn_unbound, From patchwork Wed Mar 26 05:50:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029733 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D4DA1C36008 for ; Wed, 26 Mar 2025 05:53:51 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927007.1329836 (Exim 4.92) (envelope-from ) id 1txJhr-0000a3-C1; Wed, 26 Mar 2025 05:53:39 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927007.1329836; Wed, 26 Mar 2025 05:53:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhr-0000Zt-8Y; Wed, 26 Mar 2025 05:53:39 +0000 Received: by outflank-mailman (input) for mailman id 927007; Wed, 26 Mar 2025 05:53:37 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhp-00083W-JG for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:37 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on20615.outbound.protection.outlook.com [2a01:111:f403:2414::615]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id a861b6a4-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:53:37 +0100 (CET) Received: from MW3PR05CA0026.namprd05.prod.outlook.com (2603:10b6:303:2b::31) by SA1PR12MB9472.namprd12.prod.outlook.com (2603:10b6:806:45b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:31 +0000 Received: from SJ5PEPF000001EB.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::99) by MW3PR05CA0026.outlook.office365.com (2603:10b6:303:2b::31) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:31 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EB.mail.protection.outlook.com (10.167.242.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:31 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:28 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a861b6a4-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=zMKpHihNs+umcKLkk+pp+haS2rwepO+jUCgHBketiCKXy92hA1Wq6OaanpKz+rKKMLHBStYxyhW/ThXm6Oq2aE8TFiNuDE9ji4yM1NJsMQcKJwDZJwzkApno7kD/fOTnvaXa58x6HBHE9hqt5f9BcPULcxHtmmq3ulk3ldIYjez1nvwFnJpMk6wXxRNwWxXOZ1OI1na67eUJTwIStxx2ykjEjIV/EGs3fwyOWEEOlAo/zfwuXx+rgkPQWiq/YNIyXmLyy9pAuHtZNEeYlGccL5DAipNdR7hObRrjoo9uebdUgMF5I1L+3S+uotcIW8kE+gIhedEu5ZNGwMuBdnrj0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=pOBJks5j7PnIe5vuLLY0nvyA4IHUS7BuHQpKqgii/A4=; b=ilar5xwiJrtLuGEENlV9+owINndSQlG164ewEqm85Uow6OmU6Sn141+RwUl/PdUsHmlYf7hgLGutoElqZ5Hm4haQKuA9WfGZCnLCHddafdqQ+0+xdIrpb66CYZ4ZTmcxtIIqEg4xJmquGdxJKkcaUopTw2HX9/Y+KfjrVO9laL3CEto7Rwghjdejk/xytlgh/f0qv33IqGLa2B4RPY2HsAPnGfaaOfLCASWNiINlPNrxeMg27KqO7JoZox0RukSzeiyvLbaIT6yVyIm73X+apvffIvKeaWmXgRM4B0kmobbEXuUpdW3rUccWiBVXnS+xixEdu4mg95bqC+MkQqaA3g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=pOBJks5j7PnIe5vuLLY0nvyA4IHUS7BuHQpKqgii/A4=; b=HxLlFj93fJYWznzGpEMzLFyjFfw1zL6iQiRxJHDuQfgboWmUETF26seSreOjOMyx33qmzyk6kPVLLEmfG+Km09v+PjM6D8xbYfpR1ET3SMrHJ2rcaIYSNYE3pf3gmBGOIwdx/CRNoevoiQfvILQJkFKGDA8nqQmpOomAnqlgtGI= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , "Daniel P. Smith" Subject: [PATCH v2 04/19] xen/sysctl: wrap around XEN_SYSCTL_readconsole Date: Wed, 26 Mar 2025 13:50:38 +0800 Message-ID: <20250326055053.3313146-5-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EB:EE_|SA1PR12MB9472:EE_ X-MS-Office365-Filtering-Correlation-Id: e7afc185-5eaf-44ae-2efd-08dd6c2a89f2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: EoGkyFBi7B2a0zHrVKaYOZ9VGE7dwlzc2lQC5xrLBuWerXi56aGb4FDa9b3nAVZ/DVRU459oIK5/5wASGSS7zxgJuX1RyIPKDM2fo+X0iv7xumPDRxjQ2my2GlR0wJ6JRdql6ZryyJp9cL/8ue2V+oyuXraDiU7Z3halW/J6R6pu7MH0qjvVSBYYNCYZLp7hhrqHpC83inI/6I7+utVAR9fczdetzd0+CJ7EZ/aD/3l1fa6jz527ZKaevRalD21zG/vBXGNbpCZM7t4plPOIOt3t8Gu0FAEuljWAkuSA7rNf9GI0oxIn1LMsqthrcUfMEk2E/bfJqeNh2Z23w+PaRHkp0qcKqm0MgAtEbZr/BU7zlrIjuNsTHqRNIK1QG0G7GbdFl1uXW9/pReK1KPOoeZH90wwvoVDAxbXbja/NG46+YBY0wfBqa4ZgpvKIt6Izi+sUxQxk/7EpvzNcqKQ9rImUqLcSxxUL8mGEkq0FygzdsZS50MNaxnsBn9AN16lvxz4ZRaJgeYruXQbmmGXYk7nXYtSsqLUS/2pEvc8GPR7QhuhyiaoLiBXtXNrV3SStQyg8lsXGz6eNb678lfuYQi4l7NmHCc7vyYHsr20yDD+xMm+bW6pHpvYMK9Y7Z2iwDx1btllFlBhKzEFRVHn47azqOcbLjVbNRgY+dA2UgfZSlHdO4AWa6sZ/N+xZC0lxZZOvIWuF5KRuRGpcCDzs47fJJVsv7a1O98iSnqurAE7KFksLQMwppS8Duv0sD0cdoLodFAYhgUMn4ga8vTcxoQMKJD4BbKweIDZd09zyoyMQgOCRvqhQ/1NnaPuwKEyK1L8RNnenakuUg6U7duO6Z+UKeLb9ZkB46OIu3zU6oyoXACS19kJPW8Utb1Pi0qzoFAPTkRnuK4dZgbuZ5ryD05uHuP87atxRvkS7ImQoLPbl+NrLrijqme0h5+uqz2TyniWY3Z1/81xjYjdoikvHm/35WNsedN6jRsNrHEvjTnrEBJhNCv7nq+b+vNv4AYPDJW1Cc7+Pbn6aGIKdH3SQE9vwx1DIidvjsEIbsVTkNLHlJM07PM5i5SmLlvnshXFTy+7h4YYIsJSTgEiUSMaNKAwxXFs4kpjdrXlGUfBkl/NuDqGamR0s0V56qtF9SdS2+S3RZB2BJHVWlGtGMSIp1bRr/Ln2dl91Koqv/oRLRd8lREBQW+h0vZdgLDiDQlpxFV2YglFZ3BWdz+Ft6yMtZRN5/RiJpH6PTj9uYqdSNdU98aBdtd2dH+DMFbd7zxt65eignjr9Jafv/W2YlsoeQWwawSYuItNNmhCqCk3hz+NWf8UDtqHSHDNrInx/JotG//5fv8b6ZDwukPV0J1fB6Bg5xWXXhVCEwLtSN0kzp4XpqBpZcz4LIyKME+EeII1xwwgBQ6xMYGOEuDKiJ7MhdYe+SIpzJ3sFp0T+7YJpZetdm/Q3mDYI5A9Ym+n0g2ORDBNSM0arEDaYMJOdP+UwIrYWSQ338IpBRwlitzLo0Y4iO0KcIpykTakadJQAhRvP 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:(13230040)(376014)(1800799024)(82310400026)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:31.4005 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e7afc185-5eaf-44ae-2efd-08dd6c2a89f2 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: SJ5PEPF000001EB.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR12MB9472 The following functions is to deal with XEN_SYSCTL_readconsole sub-op, and shall be wrapped: - xsm_readconsole - read_console_ring Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - remove redundant dummy handle - add transient #ifdef in sysctl.c for correct compilation --- xen/common/sysctl.c | 2 ++ xen/drivers/char/console.c | 2 ++ xen/include/xsm/xsm.h | 4 ++++ xen/xsm/dummy.c | 2 +- xen/xsm/flask/hooks.c | 4 ++-- 5 files changed, 11 insertions(+), 3 deletions(-) diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index c2d99ae12e..dfc87a2846 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -58,6 +58,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) switch ( op->cmd ) { +#ifdef CONFIG_SYSCTL case XEN_SYSCTL_readconsole: ret = xsm_readconsole(XSM_HOOK, op->u.readconsole.clear); if ( ret ) @@ -66,6 +67,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = read_console_ring(&op->u.readconsole); break; +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_tbuf_op: ret = tb_control(&op->u.tbuf_op); break; diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index c3150fbdb7..64f7e146a7 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -336,6 +336,7 @@ static void conring_puts(const char *str, size_t len) conringc = conringp - conring_size; } +#ifdef CONFIG_SYSCTL long read_console_ring(struct xen_sysctl_readconsole *op) { XEN_GUEST_HANDLE_PARAM(char) str; @@ -378,6 +379,7 @@ long read_console_ring(struct xen_sysctl_readconsole *op) return 0; } +#endif /* CONFIG_SYSCTL */ /* diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h index 22e2429f52..042a99449f 100644 --- a/xen/include/xsm/xsm.h +++ b/xen/include/xsm/xsm.h @@ -270,7 +270,11 @@ static inline int xsm_sysctl(xsm_default_t def, int cmd) static inline int xsm_readconsole(xsm_default_t def, uint32_t clear) { +#ifdef CONFIG_SYSCTL return alternative_call(xsm_ops.readconsole, clear); +#else + return -EOPNOTSUPP; +#endif } static inline int xsm_evtchn_unbound( diff --git a/xen/xsm/dummy.c b/xen/xsm/dummy.c index 93a0665ecc..cd0e844fcf 100644 --- a/xen/xsm/dummy.c +++ b/xen/xsm/dummy.c @@ -24,8 +24,8 @@ static const struct xsm_ops __initconst_cf_clobber dummy_ops = { .domctl = xsm_domctl, #ifdef CONFIG_SYSCTL .sysctl = xsm_sysctl, -#endif .readconsole = xsm_readconsole, +#endif .evtchn_unbound = xsm_evtchn_unbound, .evtchn_interdomain = xsm_evtchn_interdomain, diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c index befe9336ee..df7e10775b 100644 --- a/xen/xsm/flask/hooks.c +++ b/xen/xsm/flask/hooks.c @@ -934,7 +934,6 @@ static int cf_check flask_sysctl(int cmd) return avc_unknown_permission("sysctl", cmd); } } -#endif static int cf_check flask_readconsole(uint32_t clear) { @@ -945,6 +944,7 @@ static int cf_check flask_readconsole(uint32_t clear) return domain_has_xen(current->domain, perms); } +#endif /* CONFIG_SYSCTL */ static inline uint32_t resource_to_perm(uint8_t access) { @@ -1888,8 +1888,8 @@ static const struct xsm_ops __initconst_cf_clobber flask_ops = { .domctl = flask_domctl, #ifdef CONFIG_SYSCTL .sysctl = flask_sysctl, -#endif .readconsole = flask_readconsole, +#endif .evtchn_unbound = flask_evtchn_unbound, .evtchn_interdomain = flask_evtchn_interdomain, From patchwork Wed Mar 26 05:50:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029738 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DEA40C36012 for ; Wed, 26 Mar 2025 05:53:55 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927010.1329845 (Exim 4.92) (envelope-from ) id 1txJhu-0000u3-Q5; Wed, 26 Mar 2025 05:53:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927010.1329845; Wed, 26 Mar 2025 05:53:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhu-0000tk-Mi; Wed, 26 Mar 2025 05:53:42 +0000 Received: by outflank-mailman (input) for mailman id 927010; Wed, 26 Mar 2025 05:53:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJht-0008HQ-NQ for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:41 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2060b.outbound.protection.outlook.com [2a01:111:f403:2417::60b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a9ef60bf-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:39 +0100 (CET) Received: from MW3PR05CA0015.namprd05.prod.outlook.com (2603:10b6:303:2b::20) by MN2PR12MB4486.namprd12.prod.outlook.com (2603:10b6:208:263::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:35 +0000 Received: from SJ5PEPF000001EB.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::24) by MW3PR05CA0015.outlook.office365.com (2603:10b6:303:2b::20) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:35 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EB.mail.protection.outlook.com (10.167.242.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:34 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:31 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a9ef60bf-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=twYYG8E2QYKASZ6aSpshO09EWXsZynw5IM0eezNil9sTzKhOdfguNyDsXwMoxoRe0DHyDsFtiG+oN7kznuAtABzvpv7Da6y6ZD0EZ5CRtqPmW2oeScE3d0lHb+kmvX+9QXkIhnMcIapMJst5g1S2dZ4pefLggG5MuKI1hnJ3fG9xKA9fybCPajb/m/0/Udxv/o7l6XO9tYpzbvgMzTKD+8bOHQW4xXXQBRkTwwRzXZeT2IG0CAorQ4T68iQ47Dpd2nfymtdSe+CNx/joaF6n2JdoEvy0gnwMsPVFNblQ/Is8ZCEPQQb7Fq0lVBX/QODVQrz9z6KE6iY14kDb1wvOxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=TlzaRevyyzgJnBGygvCpqfER1aWr/DT0ER3WY6jD2QA=; b=iKLJa4SmtqhTUyt3UwOO2Jzq1z6EozTy1lKXlpZypZ41ohQi4JsF6irTWRA6nravfRR4GTc/BhLFxU+CPrC5xcXAGO9iIHwCTPxLCZEIOsShaDLMqozFYLknpx5M8bVpUBe3Dl+bLb9DoUOicbAH46UQYXZ5UCVVAJ5JqDXX1nt2YDd6yJBvB8+PkeRlsSLr7ODGU8zlPo7/cc+7Vj0nDKdeLHRoUOd7eO/XByzrTWQFMF/n/APnwEV3eYTUpvSrtiyzBYG4zBDDxwIHkR7lgC5imorNZszPNbrahr+3Eo0/wScO6LYEpPLz2hdb+M0b1p/QU5wp0FJJDEZFuH5NMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=TlzaRevyyzgJnBGygvCpqfER1aWr/DT0ER3WY6jD2QA=; b=AdH+8Y3yXZzDWb+t1t5d97T0vyDnT4LVDRxZ7z4rPe0qhtjJFWqLR1MZs5fvMafV3Cw0i9BQdvbnHJmFd8P6SN/YzsXo+gbCFOJz0IDd/4MFw0EHn6NfeoK6KmMLr9cdokoaFuPBwm+Oy7Oqn+XueVt6ZMnFkRS1Lo51vuo+7IE= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH v2 05/19] xen/sysctl: make CONFIG_TRACEBUFFER depend on CONFIG_SYSCTL Date: Wed, 26 Mar 2025 13:50:39 +0800 Message-ID: <20250326055053.3313146-6-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EB:EE_|MN2PR12MB4486:EE_ X-MS-Office365-Filtering-Correlation-Id: fe735fc4-de50-4bd1-b5f8-08dd6c2a8bfe X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: xX4PAALO+yqzNyPiDMJiFUaQEU1ydQG6ja9tvRVbQEXqC8L23MchhR7rN/Be8ybIJp6Ar0hPu6xjipORiYNv9PbsrcD6VM4B7ShF7/KkGGuQfSquSJNG+vLMdYRJarIC/2I9e9ACrWb3ZpepW6Uu4Uk40/7ViTrnfftcg/QW0zqmJftSWY9MODrec9KCYFGasruI7m3GZZjyo8mBNdo3LaI/v+TWnUqz/ipHdom1UFBZcziBwW6wu/nxvAqy0w3GOjtoXbKgIhnU5tR3WlxXKJo4izlOdYuTGon+aM2pdP5GZpF01i9+8zCxyfUT4PHxIthjCtwjk5RlD8m7pd6MlMVokm7Z+NB+1TUB1LNkOyt3q0bzuO7u9z+5yQiIyGThwrE5/A46TMGpr6MiT2vODxSJz2jBQzPnmvJUxc7BqRhioWIJONCTdn2pSa0zPlZojvrktiiMyz2xID9Spskrzm2xUeuKSwddFzALwS0WTP0OyPnU3M0sd0ekmYyjXMpj1YJhXhYKM1bkFvschLms2+lOvgPb7BtXBn1RgbveSZemqyW8CB3+cyTjUGDzXXBiZ0dd9fLHpWOQbE7Xh2kYoF5lpGyr+Uv91+E4Usdg9tAfSfldKrgicGB3z9RdHfOhV+bAu4e6QweCn4lJobo9dKUGENOuy8Qo/3P8mx9HQVERRooB+zyZzo7QFwHo9u7nrR1YuWqxxS+rg2GrenWWhdOST0Hb/yjP3AdLjwlN+im34Y7Ck5Xkffka6qhzXiJsgBx5MTv/thAlAnkV7EJcpb/WaMJdHcGCT3tX5VPCCWOTWm7CKCmn6YtmhJF19GfnjfNoxSuZew8kGa80Y1IL6LiDNHfQZRkiKLpjmj3akOZTj8ytoz7qP34IbrmUEA0D5mAoK16Ai6J/sEoGTDiblLOI41C3Rjd1bvYetVma8eX08RyzIsaxMOKwOaS1DkUtJc+kiQYq27WJtSPf4ou7h+WzSZbZ299w0UqwTtBTKCcB7eDIudwu/zLBucL5yTYxqdVnVCb+rKPAemfk3vbAA4b77xAHH3osN5WjNk+YwsPLjprwGp5CJlJodWFcEYCuNdDmiw8cC/bSPhg/7tVCS+93Hps/mC59SznQR49x/TK7kJ0Ibv6pgQYtcJAbCCycJva/qh5MWy/uJ78jK8Ah9hVkJY+XEG6qgNe/WX0WtzG7x1/r8IKW/1jchCMcl+jKXL61HRFpwS3qneVSk4u0WoZAsWd90sqFEv94ru1ts63zt3v3R+SJkFsKRH/RuiZg1sSbYQfC1ENsV0KBIBc/UAn7yW/ccv7aj65WeY3k3J5H8CLmGXGjWc9l0F45EOxkaULgIsd9FaZ1hMKOQfPVpdUTvUn5jdlhK8Ll/qn6oF6hdrOwE7NR2B/raLVVEHEJ97o67LPrh4ly07CJg9EsPcKLOVPuw2ErG7aYaYZmpcPFeIpoaVv/SPACUT59+klpxmEdPugdRJB6SjPr635RcktTTQ0z5IGQu1VaHWX9yQY= 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:(13230040)(1800799024)(376014)(36860700013)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:34.8380 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fe735fc4-de50-4bd1-b5f8-08dd6c2a8bfe 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: SJ5PEPF000001EB.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4486 Users could only access trace buffers via hypercal XEN_SYSCTL_tbuf_op, so this commit makes CONFIG_TRACEBUFFER depend on CONFIG_SYSCTL Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- xen/common/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/xen/common/Kconfig b/xen/common/Kconfig index fe9303c7c1..5b55ca6eaa 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -513,6 +513,7 @@ config DTB_FILE config TRACEBUFFER bool "Enable tracing infrastructure" if EXPERT default y + depends on SYSCTL help Enable tracing infrastructure and pre-defined tracepoints within Xen. This will allow live information about Xen's execution and performance From patchwork Wed Mar 26 05:50:40 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029734 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A1D6DC3600E for ; Wed, 26 Mar 2025 05:53:53 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927012.1329856 (Exim 4.92) (envelope-from ) id 1txJhx-0001Cb-6K; Wed, 26 Mar 2025 05:53:45 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927012.1329856; Wed, 26 Mar 2025 05:53:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhw-0001CJ-Vf; Wed, 26 Mar 2025 05:53:44 +0000 Received: by outflank-mailman (input) for mailman id 927012; Wed, 26 Mar 2025 05:53:43 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhv-0008HQ-Sc for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:43 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2062c.outbound.protection.outlook.com [2a01:111:f403:2417::62c]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ac0ff53c-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:42 +0100 (CET) Received: from SJ0PR05CA0182.namprd05.prod.outlook.com (2603:10b6:a03:330::7) by PH8PR12MB7231.namprd12.prod.outlook.com (2603:10b6:510:225::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.42; Wed, 26 Mar 2025 05:53:38 +0000 Received: from SJ5PEPF000001EA.namprd05.prod.outlook.com (2603:10b6:a03:330:cafe::13) by SJ0PR05CA0182.outlook.office365.com (2603:10b6:a03:330::7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:38 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EA.mail.protection.outlook.com (10.167.242.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:37 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:33 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ac0ff53c-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=AgP3jQfmGdZm3e1SMjdtX3qt/GooDXYTpzRwACFE2opwbTlqHumG4ZZ6qKmitiAtEeViwdRzkUrqVCWbaer/IK+whQX/u7aap5sUNmdWOMzWFBOV1ZgeJaXclgyCiYj6qct4fnmjmvT8UPOoFFHqfE4jyleIcicKFabblPwMlKJIzkWNnG3gLsnNrIc5rS1SlqzgWARSmbgF7JFLvXD3cYJI3VKCgnou+RoDhhLbPNw0I1fWqpWhhX3bpPZTh3ufGR7RApWPLb5JiBR5jKJ1lsjfQGT8CC8PmajTCRgLxYkF3KuwviRs8A+NvGtsEzocdVw+HpSprt0pay5HO5F3xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=fahbkFRvYWnR+Kb+Lv/kbd/si9rp9S/2unBDtYoWV0A=; b=xB7BYrUPbQ5P9StqAK37G7QITlh+6wilB1F96rIWjSQdoTco90YT7w8HxMY6ar90WVFDhoX8HG0V5Q2corORzfJ+YtEcvOQvfcaX7kB7cBwlGCJ/q7L15yC+BSIsgx6utZsO71J5D6tykOC+N98jz96Zr2zbg8YCeQQZOk8nyXe7r1x5zIouiTljkJTeTCMujGRFbajiZzBo+2f1DoLt9Tu8gOV3pl5O7x6bsji2ul4b36yNaMAdnHBxFl851CCjerBsF7y7tO2l67HTHsfKgFrAlbMiEBxIl6kVBljhf/QRFhEEcGy2o6ky3vBGOXRiGWEiMfz/3U/tfuGEW3QRYg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=fahbkFRvYWnR+Kb+Lv/kbd/si9rp9S/2unBDtYoWV0A=; b=1NYXS5pk1htU7lbD8AdItE7oIOFI/QlCteGP5IgMEcgxILxTWfpWXtILi9KLaP3b28g6UxR3hPRiX/RyLvNsSwdPup8lVqMOxILbjFdSwqe6XT2u1N8JSK7u7PZQ4oIS324ZJzcOZk1IHYBBm2NaY4rEU75lcoPbWe6+B78erzQ= 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 From: Penny Zheng To: CC: , Penny Zheng , Dario Faggioli , Juergen Gross , George Dunlap , Andrew Cooper , "Anthony PERARD" , Michal Orzel , "Jan Beulich" , Julien Grall , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , "Stefano Stabellini" Subject: [PATCH v2 06/19] xen/sysctl: wrap around XEN_SYSCTL_sched_id Date: Wed, 26 Mar 2025 13:50:40 +0800 Message-ID: <20250326055053.3313146-7-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EA:EE_|PH8PR12MB7231:EE_ X-MS-Office365-Filtering-Correlation-Id: 0698e460-d0c8-4e53-a1f2-08dd6c2a8dac X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|376014|7416014|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: W+r8FRfO73ZSThMeRSZnMQ29VbsTKmdt/kJzRhZRUnrBdJNU+9xhGmNd3Y23REk6w6VzalQK0BiHv9R42zIYpOKRcVhrwPo/UicAoIPX7ny8CWI70wxoTaZaNrnVBXmPWfoVVgid5nkvitKzZR3K04jvJaUOXUpuWZ1Z7I6ElM9bthUBCnoh2xtZgwjwd661eFJEmKkiacgq32DXx+zKh+AjqMGlHijHo8OI2Ozg0Y8xbl9wuo8mpEFACwgriAHingO3B1o9YyXbAWGYlnTTzLjdB+VPezz552ykEIzcbtfrGcHCPwP+XN9lDcujTBcVb6UhEh9908Nf9S9XbutO7cqLVjMTPY9YnPDw3ZetaU4Dla6qeFvE0jRAQxMbsBgf+8LKg9Nanw18BW9Cdg52RnmNy1zI1+uaGk057XSKysxAp+CsKTEXwDGmCuoU6GisD3+sAfVnte3rnBkFdQhxyqIYU63pppAl4iwgh3+WATeUX7G3ssUSgHS0iXk5cVnlMwrRyHawPgArpzeT+TCnJ9BCgqaWRSQQAjHzZC5843Y8OHZ0XFq6b/ZhkyzGAS7LNSkxNWXrmcX0OaARAA2/Ht40W7Npd5see8y8UdM+Fmg/eh1VgTCPlBQhBRMr67ERNHbgYawQef3yYQEiPb7a8jHn17fWcWaps6rxjw6iBZToUVUGFYhbzGwl9Ux24/qO/fUP4tH+nM4mKnRCDXbpihM4gOdmYbmtxSQkHSJQ/+25Liia8vkJu3elKALR7J8c2EHZTzrLIjc1QRA8GtF5goXcLcw4GoPaEEJVNb/vYwmqxUEGaWcmY4yp/z/KqR2TupI0y4rStQYMArbDGfE2DPnyX3SzOVwTrCCc5ADwD0ESUnlItMQ0wjaIJ6evnPCS4Do+We8Yt8hhUdQGua6Ybf9hfJ07DRFP5k1RlVb76G29lat04gd/n9CcT6Y/MH6eshYtUo+UTQdZE15o53Jn1FjhbvMlQFH0QUpycVtgZR0eMLcoiduMhOwheul7W+FKULURbImzHdu87PbpJsjjAqXL8GIyJyWbCpWKbjG8+A5rM8ZUEqj7QqC1MDXj4DzO0rxsw4yK3NvyakOuUT4EDz/4tTtnIc10pvSczs0RCOZqGrg+IBxg8M2RfkBoBRZEYIlxw5oey7ibi0SnHj0JUBmneaAiSw+sBgCCNluSDOpLHtN4lC37LwQSIKJnX8RETH6GlE+gNNHRyej+9u+MSfOeP6Vb/m/WkktQo3aETgX4eRmw0gaj+6vB3X2YFXJYh+pXKOTlBxSoUNe5yVjXLr5unpEXfApQrB3fege9fstd09asnSXdV2hXT6Dj6q26g+tHAsr6NS718kXSRhHgorodpFMQbgN3Na7mjyW2nXOAHY/ZoSyNJLsZJ3ngXF2uz0so5gGjQHJw3hZ0iCYHDM/qgh45eydAsjOwfQJ+UFOnKxoIJGCQTycFeLvkMy3FumiCbNq9N0IQCTXaJuy9wVJxuelc5xejYatc09h57zA= 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:(13230040)(36860700013)(376014)(7416014)(82310400026)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:37.6399 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0698e460-d0c8-4e53-a1f2-08dd6c2a8dac 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: SJ5PEPF000001EA.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB7231 The following function shall be wrapped: - scheduler_id Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- xen/common/sched/core.c | 2 ++ xen/common/sysctl.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c index 9043414290..13fdf57e57 100644 --- a/xen/common/sched/core.c +++ b/xen/common/sched/core.c @@ -2069,11 +2069,13 @@ long do_set_timer_op(s_time_t timeout) return 0; } +#ifdef CONFIG_SYSCTL /* scheduler_id - fetch ID of current scheduler */ int scheduler_id(void) { return operations.sched_id; } +#endif /* Adjust scheduling parameter for a given domain. */ long sched_adjust(struct domain *d, struct xen_domctl_scheduler_op *op) diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index dfc87a2846..c3646517bc 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -72,10 +72,12 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = tb_control(&op->u.tbuf_op); break; +#ifdef CONFIG_SYSCTL case XEN_SYSCTL_sched_id: op->u.sched_id.sched_id = scheduler_id(); break; +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_getdomaininfolist: { struct domain *d; From patchwork Wed Mar 26 05:50:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029739 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DA787C3600D for ; Wed, 26 Mar 2025 05:53:56 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927016.1329866 (Exim 4.92) (envelope-from ) id 1txJi0-0001aR-Ej; Wed, 26 Mar 2025 05:53:48 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927016.1329866; Wed, 26 Mar 2025 05:53:48 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJi0-0001a4-9l; Wed, 26 Mar 2025 05:53:48 +0000 Received: by outflank-mailman (input) for mailman id 927016; Wed, 26 Mar 2025 05:53:46 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJhy-0008HQ-Cx for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:46 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2060f.outbound.protection.outlook.com [2a01:111:f403:2412::60f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id acd59d66-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:44 +0100 (CET) Received: from SJ0PR05CA0210.namprd05.prod.outlook.com (2603:10b6:a03:330::35) by SJ1PR12MB6339.namprd12.prod.outlook.com (2603:10b6:a03:454::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:40 +0000 Received: from SJ5PEPF000001EA.namprd05.prod.outlook.com (2603:10b6:a03:330:cafe::88) by SJ0PR05CA0210.outlook.office365.com (2603:10b6:a03:330::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:40 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EA.mail.protection.outlook.com (10.167.242.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:40 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:37 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: acd59d66-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ut/Z9bmOWUdnA6PYlBNV/qD/ugzeUwrG6h+CdJP/J98vXVKk6O7khtXA9qnbcS8gruFfpiNhx9SWL5qUSfxxQpu3G5WekYtOnmwfVFzX768pCKx2f6SS4vxKVaMqDqBNpppL7WsQcgftsN5dEOPi6mH3v8l7JSZqNXZnzjDlB3zVr49qmcIe3aKPBcMGjUNxq9uHYwsGQkqtoAATwNL0DyHbw/ON8utRJ59sPL2IF9HFrqupTeVKq5joqwQzpLvHB7Y4090IKJbPzVCDcQWx2W2KmU8FXy8Vo0XdGiJzHWAhXaGKlQB99G9nKA8rtlyiJN/MokifQbE9jjA6DOkfaw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=fwQ8BrXH/1fzCxoXpeMoYCH22ialTFdrqt0KWxIUOVs=; b=ZujhLumOUi0PRUrkIr6OXPJ3dKQLLSZ5Ufs/dcsfZ0b8BIMuSWNBF//lXqoElik6vzVHYSNK9v91hoVo9Vj4lRwUwuvKuxH1FsBeJzuFCAc5LETwE4vxdImLUN/iTO6FZPHwq1p4la8+nnTI9JMPio4kAfBGS2EGAO6l9qYc3nZsjZBpnHQAA96Gr67VLtN1lDYwGTsEt+rRwIWC5ITg84CNEAp5NBiXOTryW7RhT80w9Uk6xDVvGNaCIQ9ArdzQqv9zAdeR6SW4XA6etmgK3MTeU66DB3Yq31zjZxlmUOC4TwYNJmnFQEK+JZtSH0fjDULycdt9yoXa0xU+zeBTGQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=fwQ8BrXH/1fzCxoXpeMoYCH22ialTFdrqt0KWxIUOVs=; b=iyFNX2nfLaqKXpThHT0mCk0cAjqSyWTapuEXHH60T98img7NmsQpMBKoDHktuT3fLOmYxCzRr06n12tdswp7JqLbjD2g133+2Jhazm5Uz1ueM9hXzVbzWZzaY3r4ku8amx+BIEDqhrdgw16nU9Fx/slr04NME4bRzt04hxPqQMA= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH v2 07/19] xen/sysctl: wrap around XEN_SYSCTL_perfc_op Date: Wed, 26 Mar 2025 13:50:41 +0800 Message-ID: <20250326055053.3313146-8-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EA:EE_|SJ1PR12MB6339:EE_ X-MS-Office365-Filtering-Correlation-Id: e5468436-bd5b-4761-a2d0-08dd6c2a8f52 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: srlMr1+al/wiYy6JAUykLx6/OiuTuCK2Pui3AKLFaDxLrkTXhhE17CmEba9VZMOFLoF/6N2WiagEeFJZvTSptPoJOCvSX3FjUzM8l9GetvpqQmZjcHJWIhVCoqmFP58tKEd27ptQcM5qIcm+AJwvPz3V8cuFYZDrz46CYs56ZZ+G/B2kVFhtI+jpBeyRK4PieoPHJYVlQbjQpdvE4mQvrSqQ8U05dYGN0dO9YEJQuz6sQv/xtcc+VMx0p2kBpUOKLcvQw5yTYA0DmMgdKEs8nexTD3o213GkpNitUMmk5w6ZDAccCqIiYZuCXzudVM98vwlfMCRF3dyARlVMG3yonk9rs9t305MWdJzKcQ5Bv40fhGS0LVgMCcadBFOla6S27ZAAJtdNix8CTe9sIqHXrZLxGXcv97Xf0vD4vtHok8mhbMgiGX/p8gBLZRoutm+bxJjyITCvrYPL8kXDdzvu/2oRXFVgn84oaY47bU6PIUgQecGWC4fyw/ohPVrkt3gdnrQPAZc7jeafuiQH8WwUmZ+jrk3PJHMdecimfaQvEpPvnk625P/PkQUoWn9yNeZsQhtl/Dzr4di9/ePDMfsmgqC1V589gWAEmFUidFFVuArs0lihBA/A9M2LW2pPII3P7S98mNglE+/g+1WQfZ87n1HqqczPWGbVB5T1JcQdSnU7+udrHGH7RvAs3l+XBn6HEhmgxMv12tydwXCrs0l/D6mAEPmXZ9xcDv/cVoClG+1f5x23ffxCYvJ4DmmysFzDYXuO6TK9cnO9KpJgr5OWKOP4rcpmSq9vYHPblB0AaaAriwZjtZ5X03XqoBEDturQcy7tBFVfCIMnZ7ik+r+ucUE09Lq/tOSljqRQ+mAEKMQsKJeNawX44QQvmmAgADsyF4K0B5kOKd6DbXbxlQdmUavU8FD7yeEEc5YnhuTBZ7Aqc5TP0kEusStWbPZCTJ3m+qf4al2TtzbyjE8F5d/Fe0VWk6i1/gUmdpi3FQStFVf+3ci4DBBb1ywq5E0mzGJPc0PlzrijW0EzpzcSNqt7vZRljgnhFx/wISO2DFWb9BSfatnNOSdTeQ47OeMPrDt45bCWPAhqSJLyInhip6JQ4Q4jVlDgqI7zcf4jwlp2FXIP7odZgo/C6oNj4pD0YmykwDuN33Hqw/IGtHcZdDHJLqmclAsH6jHR2vQdW6i5yXYcHQgxq6U7IE0JzTqV0pPHopaAkhsz12tKOUOPeGTBN/n/IU2YmjcGEw9Hp18duXwwiLVgf5ZbAcH+Xotlf/tAMj3wpoFy02Aht/8fyOTbFmo3a/3bbBdc3UmEXuUS5V3yWFyvZ4bDioJPJItEal35s/Tphm9kKcfXhmSR/ofOmpUte/mXlCaUx4kHlOZUOT04mw+6ZB8b9B+mgoLdYrkI/nhCTfWVXA8cMJOeGGFewk4hVDyCvBF9vRC47OKn1d5KdiMQwiocsW1XVQ+0nsQk4lqtHEb/Flli2Y6Vprev7eOuZUV0xImP2LNyh6FTNP8= 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:(13230040)(376014)(82310400026)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:40.4055 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e5468436-bd5b-4761-a2d0-08dd6c2a8f52 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: SJ5PEPF000001EA.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6339 perfc_control() and perfc_copy_info() are responsible for providing control of perf counters via XEN_SYSCTL_perfc_op in DOM0, so they both shall be wrapped. Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- - add transient #ifdef in sysctl.c for correct compilation --- xen/common/perfc.c | 2 ++ xen/common/sysctl.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/xen/common/perfc.c b/xen/common/perfc.c index 8302b7cf6d..0f3b89af2c 100644 --- a/xen/common/perfc.c +++ b/xen/common/perfc.c @@ -149,6 +149,7 @@ void cf_check perfc_reset(unsigned char key) } } +#ifdef CONFIG_SYSCTL static struct xen_sysctl_perfc_desc perfc_d[NR_PERFCTRS]; static xen_sysctl_perfc_val_t *perfc_vals; static unsigned int perfc_nbr_vals; @@ -265,6 +266,7 @@ int perfc_control(struct xen_sysctl_perfc_op *pc) return rc; } +#endif /* CONFIG_SYSCTL */ /* * Local variables: diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index c3646517bc..0da82d6e31 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -117,11 +117,13 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) } break; +#ifdef CONFIG_SYSCTL #ifdef CONFIG_PERF_COUNTERS case XEN_SYSCTL_perfc_op: ret = perfc_control(&op->u.perfc_op); break; #endif +#endif /* CONFIG_SYSCTL */ #ifdef CONFIG_DEBUG_LOCK_PROFILE case XEN_SYSCTL_lockprof_op: From patchwork Wed Mar 26 05:50:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029747 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 55849C3600E for ; Wed, 26 Mar 2025 06:01:38 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927132.1329936 (Exim 4.92) (envelope-from ) id 1txJpU-0008TH-Pd; Wed, 26 Mar 2025 06:01:32 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927132.1329936; Wed, 26 Mar 2025 06:01:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJpU-0008TA-Mr; Wed, 26 Mar 2025 06:01:32 +0000 Received: by outflank-mailman (input) for mailman id 927132; Wed, 26 Mar 2025 06:01:31 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJi3-0008HQ-42 for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:51 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20601.outbound.protection.outlook.com [2a01:111:f403:2416::601]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b00e91c6-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:49 +0100 (CET) Received: from MW4P222CA0003.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::8) by MN0PR12MB6175.namprd12.prod.outlook.com (2603:10b6:208:3c4::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.43; Wed, 26 Mar 2025 05:53:44 +0000 Received: from SJ5PEPF000001ED.namprd05.prod.outlook.com (2603:10b6:303:114:cafe::64) by MW4P222CA0003.outlook.office365.com (2603:10b6:303:114::8) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:43 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001ED.mail.protection.outlook.com (10.167.242.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:43 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:39 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b00e91c6-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wYDLBBKTy7OF9vW/vqXUCw3fmr7nJPc9O47o7fOmfg+/ENsiFzcZxA+rwxeCCaU95BcnAJXlEVsXWkELvG/6TS1el0P0vy9lUXctNkbSAuI6TT3FWLqWtfLTn1rwJAkTL7Bu+MSk+bR5m7DDQ9q08AWujiidIsdot2rsmp9zAFp9ZvEef5EB2FlBJW4AULfGVUySb1m5lv2FQkCA7i0YGflxZNvMJDgzi0rHm8gtoj8qfqONIYe3n/NhVyEVCLRZ/c/3LsZJE/PYDPK1V33LrsWYSnHHeieeOWQx4+4Q1N31GSuKy4fPBCq4YRghgaBTTNvYeBGatL5KNEetH0OvSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=DkPzVb9EWJAVFmOTUhFIe6Bwd7eu9nzSdd6u4mcgRpM=; b=pIwXy10+/tOlQHqNTMzgbql/EnSPic4JHoe4s9MHcobvBZwc/WK8IWKWHQVTN3wONLGm0hNZmgn14Ff7OYeeMMeyLTpQ6BH7NfoL/f2A+g6phWXDRdrkIlTRisog6IcIFGJbYiP0Vz0IknXVb2d8KUrL78e/noFDj6u+CArtnrqHNSa6XUoGu0g3nP0vUpXGVrLybX+2xCvqA007Sb7G1RSp7DPDLFcV/6F6PX128de64b1X8KfIWMuPEIj3/QKNK0e1XgIt6TrgeoOyDuYd/qhUDPy6sOJx6RZN1Vb06wmcNihrlY3+bL470c3Qt7MQlDRhDKv7zb2ptWcEnX9F0g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=DkPzVb9EWJAVFmOTUhFIe6Bwd7eu9nzSdd6u4mcgRpM=; b=TDwyIPP4Ou8xARzNIlWIfD1ofqvG3L1gyoz5XDU4hoBJROEBsKhuSIteqrFbO3oFmWzbvoIJtHgl1pY+9yHRzf/27eUA+OlrWhv34V4A68MPH0ThYOvSChUXAEhT8jtiqmV515AyS3xEQcxQ21yRkWV7CEqTfsOKmlSilIDDwrI= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH v2 08/19] xen/sysctl: wrap around XEN_SYSCTL_lockprof_op Date: Wed, 26 Mar 2025 13:50:42 +0800 Message-ID: <20250326055053.3313146-9-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001ED:EE_|MN0PR12MB6175:EE_ X-MS-Office365-Filtering-Correlation-Id: c6d5431a-95a4-488c-094a-08dd6c2a90ef X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: BRBWHhGKC0ba7ZdMvgrHoYC7TQBRDd+SG573CRs6H3ddwvB7OilZggsB+7Gvvr5DIUy2TWG63ZLYVuDx1fiBdFRYeiBvnwfESz8iHNWdT1SbzsVh+N0kThrIMW9fmzmjpDUgmDDpHBAfKwZEEfrCr84/Xfww5vfDzF63ar63Z2/UN3GryzDBR9bfOF0EJKy/arJEY1+HB0DWQRWxqex1iLnvEdTi8eBlZ+VsuCG1ClZpTz9Fn4omhWI0eBdRAEcyL0SE8ams/f2GU+rC8cmml5fALU9ebLGEqXOscc96BHAnYT6G2HYM8VDkT/cX7VCzOyxYW0i0EFWyA2OwEE79dI/r9DDggQ/J/eAi1juYbos25yTH8GNcEaE3si2aupspKhCSrm0911DE2f9G0vkwU9BkoryZSma2+A6UO8IZCTQ4wY3uQbrwkxeaxvkLoQqzk0VSbDz+0hampab1nrEUSsnC50FLTYbA63gXBKzeG64e8mt1l4NOqbEitvyd5C0oKbLBKhjFWcWyAGmz6pOvgdb2saD2d4N48ROttc/uPWcpQsDzo5D6ETQ0jB5F0KLu0Nrsoc1S4o7G19qC3sISinaw2pi7CQiduZvO65Z4A255koCfisqP66FIzbJAiHZEMzPkVzIHd5skpI8KerzPmhkCh9wPfAh3xoZaaEnDHpkhMjpQ9JAZtC9Wjfg/UijdbXiMZM7WTe8eMXK5nMWvNh8qgfTVUxxMFkpSBI767wqgmCp7YKIkaudND3G1sabF96N3C+K41n+mPq/uH7uejFA+6pckMUys9Mh+24kRUGKSNBzyWNGL9D1HWze4F1MMfNW4zACXPHcREP3DncP7c51g/+jRra2zGw1cL5nzPhnniccLkugZwFyf1MKHQlyAuPWGf/UVe886ThkXXxHGJZYgpMDLu9k5rJNTDDEeVV+21XCq9Qn0tVIjSsB5KoH3zvMUVFRm11n2x0HApXHoRWuW4q7JzXzsmn56Ko50V2FlVqRQb5dHoVkphlmNFwdpumjbvmk6WO+zB0zISRq7JegpLbw7KjVioKGWtNrIWJd+GU0XIv9eYW0Budr9vsC41aFqG17wbDibvuHr/a7mJNCViQHzhLh1PN6nV4mFGurIGWw+dPCk6n07AQoFslHARmn7+9tyPS0KU1VOC/B6/dYUE0v61agV6Mto89chm5XTwORz2ZyWB4Wb3bEtY3TQRCcz01+iI3B8xL3r0NLdklSjn75P+BwPrikihFnAc+7o9RAmW9WZCGJzb6EOqfy1txBR+pzA8149HtcszEdqIYkzTaJlD6WDzRTSo8A5D8NCLlGTC9n5zOr0XAWjrFOA6XbHDhJH8EG0Hwc1E2IWrc9x+FBzrSa8McPV+T8iBreS3ErPZSuVhI1fuadBR/tHYHSMu1xCch6ITpeWsJKky3EVkBsJKdWoYZGLeLqaWnxKoMdxKtWIR5J/45JJ9KnQd1Gpl+ssq84PYTdHf1KLlS0rCrngpFsD7dx/m6sl1Fg= 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:(13230040)(376014)(82310400026)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:43.1239 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c6d5431a-95a4-488c-094a-08dd6c2a90ef 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: SJ5PEPF000001ED.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6175 The following function is only to serve spinlock profiling via XEN_SYSCTL_lockprof_op, so it shall be wrapped: - spinlock_profile_control Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - add transient #ifdef in sysctl.c for correct compilation --- xen/common/spinlock.c | 2 ++ xen/common/sysctl.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c index 38caa10a2e..0389293b09 100644 --- a/xen/common/spinlock.c +++ b/xen/common/spinlock.c @@ -690,6 +690,7 @@ void cf_check spinlock_profile_reset(unsigned char key) spinlock_profile_iterate(spinlock_profile_reset_elem, NULL); } +#ifdef CONFIG_SYSCTL typedef struct { struct xen_sysctl_lockprof_op *pc; int rc; @@ -749,6 +750,7 @@ int spinlock_profile_control(struct xen_sysctl_lockprof_op *pc) return rc; } +#endif /* CONFIG_SYSCTL */ void _lock_profile_register_struct( int32_t type, struct lock_profile_qhead *qhead, int32_t idx) diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index 0da82d6e31..4602d84203 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -123,13 +123,13 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = perfc_control(&op->u.perfc_op); break; #endif -#endif /* CONFIG_SYSCTL */ #ifdef CONFIG_DEBUG_LOCK_PROFILE case XEN_SYSCTL_lockprof_op: ret = spinlock_profile_control(&op->u.lockprof_op); break; #endif +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_debug_keys: { char c; From patchwork Wed Mar 26 05:50:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029750 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7B95EC3600D for ; Wed, 26 Mar 2025 06:01:50 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927142.1329962 (Exim 4.92) (envelope-from ) id 1txJpe-0000wq-Qs; Wed, 26 Mar 2025 06:01:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927142.1329962; Wed, 26 Mar 2025 06:01:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJpe-0000w7-KZ; Wed, 26 Mar 2025 06:01:42 +0000 Received: by outflank-mailman (input) for mailman id 927142; Wed, 26 Mar 2025 06:01:41 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJi6-0008HQ-4T for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:54 +0000 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on20619.outbound.protection.outlook.com [2a01:111:f403:2417::619]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b0da1238-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:51 +0100 (CET) Received: from MW4P222CA0030.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::35) by BL3PR12MB6620.namprd12.prod.outlook.com (2603:10b6:208:38f::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.43; Wed, 26 Mar 2025 05:53:45 +0000 Received: from SJ5PEPF000001ED.namprd05.prod.outlook.com (2603:10b6:303:114:cafe::83) by MW4P222CA0030.outlook.office365.com (2603:10b6:303:114::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.44 via Frontend Transport; Wed, 26 Mar 2025 05:53:44 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001ED.mail.protection.outlook.com (10.167.242.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:44 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:42 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b0da1238-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HVq4jH22eiD5k2LMGULZ3Jt+3Nw+ZdTpwBcslzFQVBuUXDHE7swUxPhL6ZnAA3+Asy3HDpjQXP2ESUTtbFJAQRAi0Ieg4DxCZ4fADx4P01sfBKsv7bQgDCwDwR1NFL6XBF7u/tjw977p9jkINNA4AAE8SKPglOekkdHwVvMxJnDm97OcKdiwxe5QmbMBfGvI2YmbdzWOeUpbcNnO+jL2mV8g/m4UQL6eFKI3ogIBrvCoYYLItp21+nWc+MGeycZLRL2DKRtQgO8o6vNkakkQovCvTb9R6rcsyTbCWTpFGKrv3iAqTnEwixTfug+/wBAvFQEUnsPODxIpvOgXp8pv3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=kFWP1l3XOmMPNxmorR2CSSHi8RU0P6GHCYUEzhk77Kg=; b=wccALuKa+LniAZdDfwO+J5oBrxOlcRARcVEdvZrzMWALOtYIwobbehvB1lDTH7PUp24cI2WKJVJIwPIMw4jzv4y6/5eFhMNwjxv2JnWkK6qK/2B6yudord4Ma/vgdWRWr1A6wIKn4AUwZN8OE3EFOg86BTTflo83GpUMlNN3OiGz7ac8ti8235gKA6uMAyxE/+zL72hrt/BkJiecouStqyfumj5QA1FZOFOx2x9bgPL90rJFyKYdn+U6l6ValHCe9RCmRprf+iQh2BkrghJmRdG7ri2omNrG90lYd4DOyyGidy2trAZeOZK7YA2untF20wklf+vur7kDag5zu5kxug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=kFWP1l3XOmMPNxmorR2CSSHi8RU0P6GHCYUEzhk77Kg=; b=KZZvaDkvHyP1KQhaLvKjeMJ3nHnR0N8vFWMMMWGaKbkv8VCDZ3HvwkJqVBu9jItxGoZ/ro3m8fRukcgkZonPPj+8K89t+i1PHXvixnueTOYL1slG913be6hsnnszNjXkFLbdk89BN1cwseAcIH43m5LknLpd9U0W25NajyOto/Y= 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 From: Penny Zheng To: CC: , Penny Zheng , Jan Beulich Subject: [PATCH v2 09/19] xen/pmstat: clean up pmstat.c Date: Wed, 26 Mar 2025 13:50:43 +0800 Message-ID: <20250326055053.3313146-10-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001ED:EE_|BL3PR12MB6620:EE_ X-MS-Office365-Filtering-Correlation-Id: d837f98e-6c56-4104-3b13-08dd6c2a91c3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|376014|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: y0XuZYcermZsCggF2pptwVCARI1NIXs340FP/Wx6wUC2LLW+QqZUN9qL9CpOFer5Yve3H5jSPcEOtr+PeJF3pORgNhqZkLgsfUbqv/cAYCWodQ9qGZIF6493mqCmOYBHEETUHR9w+OZUSeTq9Q+/BIqVfj13e6SWcfH0UKpCWHXLY2gAfEX6Ks7yhszuO6r3efME+bFX3jIyvy8fyezcuMNi2VipLr4UozhHFKHfVMot7rYawdTyf1je9VAcsTx7TkVOXRit9vnnED/3q1dWwHTRq8U1Qe++4oo37WbwbJzeape/odq2CzndcmUbeT6iJSQ4lSP1g4VZftb6jktoAbgxjeCrrarheT0RHTlrYZ2TbRXDFiIQ0phteptl60YU6FdBGYOY/qbQxkpdENB5wucLJHU93pEPpI0xbYPbWitA5nuk23uDN2AvcrwdHZhwmDQWTSnY9S4kW0XIJgt6cxfXjqldyh23mT2M1/tJy36gkqxqiVqZgmhjWEHlAHcdzUrfXk0hw0oOwWOlHkfytxoUve3BMLS3Pn21Oa3GtAUMuLpmKcQjilpXVu5pQcU/gfLykMy2fB3ulPmixQ1pj2fG+dMX/gEoqWedD72hgeLrIHeC+/xaDl0/bklBwSP1rSFg33ZwwT+mzERSWK+IfiAw10Auvi+wrt0mWJfVsQHeb7T4dTYO1jHoMtyCoZLoFQafx4MWZJw4kb9kqiOIUhQVlc5eq/i03/6vY8vMqjhxi4h6N7pMKRI74LlhFKITFHD21vt/yQhzTbEMvHW3y5v3kULe7GVywkpsVaCtkcxprt7gvmFG5bEU3Boqh+hgUrv/03Jypjf5veI2CnkB1D3oLLqf2gb3yQsb/2rMKyr+Fc+X/JQHB5ysw/0ku47Af5SfRDszzAxviWAXXdWWwuJGbCjiqFJC6bFIWpR9W0XRyFppnFXVhLeJ7R1mF0cwWbbmX7SGhKorp3DgterslIyuTWcvyDmwXiM38i+O0dD1qQYOjWH7Ej2U5XMdcuIJKn+Gfxd/bkzb4rQ5KQ/XQ/fNST36p73vkC7OvvME3z8KKnHOtSK+KVhAeTsBVdWyWhIhkBFaGhkhcYmcHBqcfSYIE4Y87NOucTw8xlaG2O0fKLo+GoSMejE6UJOCEySxunBUZaz7MGD8GRmoJPJWZUWiX9fvs/E2JXUwqcnOT7swSJKs+36XMHSKCz7RWqBh9IkKYUfjhUXPDQhafhBxDOG8SwLUpBIHFhSIWiDGQ+bEP5je++/pnxIl9RaQtHtRQtZzV3/4yRjs0Dya0TaOPe1KKdJWcQLU2kKS+LzIEjphr44pl3/JGNFpK0WMh80k0OF3vokO08Y6AL/+Dppressk934aziMjh1CH8JzZRRxYQmu8mtqeOWWusGk6kPkk0u14hUEgsdDrn4sIkwdo8bYPbPngStILk7WJcJD6DasC2fyXBvO5CICGvj+pV0vtzprd5bvQI5CC/6qSgqNSM//t+/ISKxFRh6CItcyjpCMhpFY4wbusyjuVsnYVd9VH 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:(13230040)(36860700013)(376014)(82310400026)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:44.5145 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d837f98e-6c56-4104-3b13-08dd6c2a91c3 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: SJ5PEPF000001ED.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR12MB6620 We intend to move the following functions into drivers/acpi/pmstat.c, as they are all designed for performance statistic: - cpufreq_residency_update - cpufreq_statistic_reset - cpufreq_statistic_update - cpufreq_statistic_init - cpufreq_statistic_exit and moving out acpi_set_pdc_bits(), as it is the handler for sub-hypercall XEN_PM_PDC, and shall stay with the other handlers together in drivers/cpufreq/cpufreq.c. This commit also applies various style corrections while moving these functions Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - new commit --- xen/drivers/acpi/pmstat.c | 199 ++++++++++++++++++---- xen/drivers/cpufreq/cpufreq.c | 31 ++++ xen/drivers/cpufreq/utility.c | 162 ------------------ xen/include/acpi/cpufreq/processor_perf.h | 2 - 4 files changed, 199 insertions(+), 195 deletions(-) diff --git a/xen/drivers/acpi/pmstat.c b/xen/drivers/acpi/pmstat.c index df309e27b4..4e3b76dbf3 100644 --- a/xen/drivers/acpi/pmstat.c +++ b/xen/drivers/acpi/pmstat.c @@ -43,6 +43,174 @@ DEFINE_PER_CPU_READ_MOSTLY(struct pm_px *, cpufreq_statistic_data); +DEFINE_PER_CPU(spinlock_t, cpufreq_statistic_lock); + +/********************************************************************* + * Px STATISTIC INFO * + *********************************************************************/ + +static void cpufreq_residency_update(unsigned int cpu, uint8_t state) +{ + uint64_t now, total_idle_ns; + int64_t delta; + struct pm_px *pxpt = per_cpu(cpufreq_statistic_data, cpu); + + total_idle_ns = get_cpu_idle_time(cpu); + now = NOW(); + + delta = (now - pxpt->prev_state_wall) - + (total_idle_ns - pxpt->prev_idle_wall); + + if ( likely(delta >= 0) ) + pxpt->u.pt[state].residency += delta; + + pxpt->prev_state_wall = now; + pxpt->prev_idle_wall = total_idle_ns; +} + +void cpufreq_statistic_update(unsigned int cpu, uint8_t from, uint8_t to) +{ + struct pm_px *pxpt; + const struct processor_pminfo *pmpt = processor_pminfo[cpu]; + spinlock_t *cpufreq_statistic_lock = + &per_cpu(cpufreq_statistic_lock, cpu); + + spin_lock(cpufreq_statistic_lock); + + pxpt = per_cpu(cpufreq_statistic_data, cpu); + if ( !pxpt || !pmpt ) { + spin_unlock(cpufreq_statistic_lock); + return; + } + + pxpt->u.last = from; + pxpt->u.cur = to; + pxpt->u.pt[to].count++; + + cpufreq_residency_update(cpu, from); + + (*(pxpt->u.trans_pt + from * pmpt->perf.state_count + to))++; + + spin_unlock(cpufreq_statistic_lock); +} + +int cpufreq_statistic_init(unsigned int cpu) +{ + uint32_t i, count; + struct pm_px *pxpt; + const struct processor_pminfo *pmpt = processor_pminfo[cpu]; + spinlock_t *cpufreq_statistic_lock = &per_cpu(cpufreq_statistic_lock, cpu); + + spin_lock_init(cpufreq_statistic_lock); + + if ( !pmpt ) + return -EINVAL; + + spin_lock(cpufreq_statistic_lock); + + pxpt = per_cpu(cpufreq_statistic_data, cpu); + if ( pxpt ) + { + spin_unlock(cpufreq_statistic_lock); + return 0; + } + + count = pmpt->perf.state_count; + + pxpt = xzalloc(struct pm_px); + if ( !pxpt ) + { + spin_unlock(cpufreq_statistic_lock); + return -ENOMEM; + } + per_cpu(cpufreq_statistic_data, cpu) = pxpt; + + pxpt->u.trans_pt = xzalloc_array(uint64_t, count * count); + if ( !pxpt->u.trans_pt ) + { + xfree(pxpt); + spin_unlock(cpufreq_statistic_lock); + return -ENOMEM; + } + + pxpt->u.pt = xzalloc_array(struct pm_px_val, count); + if ( !pxpt->u.pt ) + { + xfree(pxpt->u.trans_pt); + xfree(pxpt); + spin_unlock(cpufreq_statistic_lock); + return -ENOMEM; + } + + pxpt->u.total = pmpt->perf.state_count; + pxpt->u.usable = pmpt->perf.state_count - pmpt->perf.platform_limit; + + for ( i = 0; i < pmpt->perf.state_count; i++ ) + pxpt->u.pt[i].freq = pmpt->perf.states[i].core_frequency; + + pxpt->prev_state_wall = NOW(); + pxpt->prev_idle_wall = get_cpu_idle_time(cpu); + + spin_unlock(cpufreq_statistic_lock); + + return 0; +} + +void cpufreq_statistic_exit(unsigned int cpu) +{ + struct pm_px *pxpt; + spinlock_t *cpufreq_statistic_lock = &per_cpu(cpufreq_statistic_lock, cpu); + + spin_lock(cpufreq_statistic_lock); + + pxpt = per_cpu(cpufreq_statistic_data, cpu); + if ( !pxpt ) + { + spin_unlock(cpufreq_statistic_lock); + return; + } + + xfree(pxpt->u.trans_pt); + xfree(pxpt->u.pt); + xfree(pxpt); + per_cpu(cpufreq_statistic_data, cpu) = NULL; + + spin_unlock(cpufreq_statistic_lock); +} + +static void cpufreq_statistic_reset(unsigned int cpu) +{ + uint32_t i, j, count; + struct pm_px *pxpt; + const struct processor_pminfo *pmpt = processor_pminfo[cpu]; + spinlock_t *cpufreq_statistic_lock = &per_cpu(cpufreq_statistic_lock, cpu); + + spin_lock(cpufreq_statistic_lock); + + pxpt = per_cpu(cpufreq_statistic_data, cpu); + if ( !pmpt || !pxpt || !pxpt->u.pt || !pxpt->u.trans_pt ) + { + spin_unlock(cpufreq_statistic_lock); + return; + } + + count = pmpt->perf.state_count; + + for ( i = 0; i < count; i++ ) + { + pxpt->u.pt[i].residency = 0; + pxpt->u.pt[i].count = 0; + + for ( j = 0; j < count; j++ ) + *(pxpt->u.trans_pt + i * count + j) = 0; + } + + pxpt->prev_state_wall = NOW(); + pxpt->prev_idle_wall = get_cpu_idle_time(cpu); + + spin_unlock(cpufreq_statistic_lock); +} + /* * Get PM statistic info */ @@ -522,34 +690,3 @@ int do_pm_op(struct xen_sysctl_pm_op *op) return ret; } - -int acpi_set_pdc_bits(uint32_t acpi_id, XEN_GUEST_HANDLE(uint32) pdc) -{ - u32 bits[3]; - int ret; - - if ( copy_from_guest(bits, pdc, 2) ) - ret = -EFAULT; - else if ( bits[0] != ACPI_PDC_REVISION_ID || !bits[1] ) - ret = -EINVAL; - else if ( copy_from_guest_offset(bits + 2, pdc, 2, 1) ) - ret = -EFAULT; - else - { - u32 mask = 0; - - if ( xen_processor_pmbits & XEN_PROCESSOR_PM_CX ) - mask |= ACPI_PDC_C_MASK | ACPI_PDC_SMP_C1PT; - if ( xen_processor_pmbits & XEN_PROCESSOR_PM_PX ) - mask |= ACPI_PDC_P_MASK | ACPI_PDC_SMP_C1PT; - if ( xen_processor_pmbits & XEN_PROCESSOR_PM_TX ) - mask |= ACPI_PDC_T_MASK | ACPI_PDC_SMP_C1PT; - bits[2] &= (ACPI_PDC_C_MASK | ACPI_PDC_P_MASK | ACPI_PDC_T_MASK | - ACPI_PDC_SMP_C1PT) & ~mask; - ret = arch_acpi_set_pdc_bits(acpi_id, bits, mask); - } - if ( !ret && __copy_to_guest_offset(pdc, 2, bits + 2, 1) ) - ret = -EFAULT; - - return ret; -} diff --git a/xen/drivers/cpufreq/cpufreq.c b/xen/drivers/cpufreq/cpufreq.c index 4a103c6de9..29fcfbe609 100644 --- a/xen/drivers/cpufreq/cpufreq.c +++ b/xen/drivers/cpufreq/cpufreq.c @@ -582,6 +582,37 @@ out: return ret; } +int acpi_set_pdc_bits(uint32_t acpi_id, XEN_GUEST_HANDLE(uint32) pdc) +{ + u32 bits[3]; + int ret; + + if ( copy_from_guest(bits, pdc, 2) ) + ret = -EFAULT; + else if ( bits[0] != ACPI_PDC_REVISION_ID || !bits[1] ) + ret = -EINVAL; + else if ( copy_from_guest_offset(bits + 2, pdc, 2, 1) ) + ret = -EFAULT; + else + { + u32 mask = 0; + + if ( xen_processor_pmbits & XEN_PROCESSOR_PM_CX ) + mask |= ACPI_PDC_C_MASK | ACPI_PDC_SMP_C1PT; + if ( xen_processor_pmbits & XEN_PROCESSOR_PM_PX ) + mask |= ACPI_PDC_P_MASK | ACPI_PDC_SMP_C1PT; + if ( xen_processor_pmbits & XEN_PROCESSOR_PM_TX ) + mask |= ACPI_PDC_T_MASK | ACPI_PDC_SMP_C1PT; + bits[2] &= (ACPI_PDC_C_MASK | ACPI_PDC_P_MASK | ACPI_PDC_T_MASK | + ACPI_PDC_SMP_C1PT) & ~mask; + ret = arch_acpi_set_pdc_bits(acpi_id, bits, mask); + } + if ( !ret && __copy_to_guest_offset(pdc, 2, bits + 2, 1) ) + ret = -EFAULT; + + return ret; +} + static void cpufreq_cmdline_common_para(struct cpufreq_policy *new_policy) { if (usr_max_freq) diff --git a/xen/drivers/cpufreq/utility.c b/xen/drivers/cpufreq/utility.c index e690a484f1..723045b240 100644 --- a/xen/drivers/cpufreq/utility.c +++ b/xen/drivers/cpufreq/utility.c @@ -35,168 +35,6 @@ struct cpufreq_driver __read_mostly cpufreq_driver; struct processor_pminfo *__read_mostly processor_pminfo[NR_CPUS]; DEFINE_PER_CPU_READ_MOSTLY(struct cpufreq_policy *, cpufreq_cpu_policy); -DEFINE_PER_CPU(spinlock_t, cpufreq_statistic_lock); - -/********************************************************************* - * Px STATISTIC INFO * - *********************************************************************/ - -void cpufreq_residency_update(unsigned int cpu, uint8_t state) -{ - uint64_t now, total_idle_ns; - int64_t delta; - struct pm_px *pxpt = per_cpu(cpufreq_statistic_data, cpu); - - total_idle_ns = get_cpu_idle_time(cpu); - now = NOW(); - - delta = (now - pxpt->prev_state_wall) - - (total_idle_ns - pxpt->prev_idle_wall); - - if ( likely(delta >= 0) ) - pxpt->u.pt[state].residency += delta; - - pxpt->prev_state_wall = now; - pxpt->prev_idle_wall = total_idle_ns; -} - -void cpufreq_statistic_update(unsigned int cpu, uint8_t from, uint8_t to) -{ - struct pm_px *pxpt; - struct processor_pminfo *pmpt = processor_pminfo[cpu]; - spinlock_t *cpufreq_statistic_lock = - &per_cpu(cpufreq_statistic_lock, cpu); - - spin_lock(cpufreq_statistic_lock); - - pxpt = per_cpu(cpufreq_statistic_data, cpu); - if ( !pxpt || !pmpt ) { - spin_unlock(cpufreq_statistic_lock); - return; - } - - pxpt->u.last = from; - pxpt->u.cur = to; - pxpt->u.pt[to].count++; - - cpufreq_residency_update(cpu, from); - - (*(pxpt->u.trans_pt + from * pmpt->perf.state_count + to))++; - - spin_unlock(cpufreq_statistic_lock); -} - -int cpufreq_statistic_init(unsigned int cpu) -{ - uint32_t i, count; - struct pm_px *pxpt; - const struct processor_pminfo *pmpt = processor_pminfo[cpu]; - spinlock_t *cpufreq_statistic_lock = &per_cpu(cpufreq_statistic_lock, cpu); - - spin_lock_init(cpufreq_statistic_lock); - - if ( !pmpt ) - return -EINVAL; - - spin_lock(cpufreq_statistic_lock); - - pxpt = per_cpu(cpufreq_statistic_data, cpu); - if ( pxpt ) { - spin_unlock(cpufreq_statistic_lock); - return 0; - } - - count = pmpt->perf.state_count; - - pxpt = xzalloc(struct pm_px); - if ( !pxpt ) { - spin_unlock(cpufreq_statistic_lock); - return -ENOMEM; - } - per_cpu(cpufreq_statistic_data, cpu) = pxpt; - - pxpt->u.trans_pt = xzalloc_array(uint64_t, count * count); - if (!pxpt->u.trans_pt) { - xfree(pxpt); - spin_unlock(cpufreq_statistic_lock); - return -ENOMEM; - } - - pxpt->u.pt = xzalloc_array(struct pm_px_val, count); - if (!pxpt->u.pt) { - xfree(pxpt->u.trans_pt); - xfree(pxpt); - spin_unlock(cpufreq_statistic_lock); - return -ENOMEM; - } - - pxpt->u.total = pmpt->perf.state_count; - pxpt->u.usable = pmpt->perf.state_count - pmpt->perf.platform_limit; - - for (i=0; i < pmpt->perf.state_count; i++) - pxpt->u.pt[i].freq = pmpt->perf.states[i].core_frequency; - - pxpt->prev_state_wall = NOW(); - pxpt->prev_idle_wall = get_cpu_idle_time(cpu); - - spin_unlock(cpufreq_statistic_lock); - - return 0; -} - -void cpufreq_statistic_exit(unsigned int cpu) -{ - struct pm_px *pxpt; - spinlock_t *cpufreq_statistic_lock = &per_cpu(cpufreq_statistic_lock, cpu); - - spin_lock(cpufreq_statistic_lock); - - pxpt = per_cpu(cpufreq_statistic_data, cpu); - if (!pxpt) { - spin_unlock(cpufreq_statistic_lock); - return; - } - - xfree(pxpt->u.trans_pt); - xfree(pxpt->u.pt); - xfree(pxpt); - per_cpu(cpufreq_statistic_data, cpu) = NULL; - - spin_unlock(cpufreq_statistic_lock); -} - -void cpufreq_statistic_reset(unsigned int cpu) -{ - uint32_t i, j, count; - struct pm_px *pxpt; - const struct processor_pminfo *pmpt = processor_pminfo[cpu]; - spinlock_t *cpufreq_statistic_lock = &per_cpu(cpufreq_statistic_lock, cpu); - - spin_lock(cpufreq_statistic_lock); - - pxpt = per_cpu(cpufreq_statistic_data, cpu); - if ( !pmpt || !pxpt || !pxpt->u.pt || !pxpt->u.trans_pt ) { - spin_unlock(cpufreq_statistic_lock); - return; - } - - count = pmpt->perf.state_count; - - for (i=0; i < count; i++) { - pxpt->u.pt[i].residency = 0; - pxpt->u.pt[i].count = 0; - - for (j=0; j < count; j++) - *(pxpt->u.trans_pt + i*count + j) = 0; - } - - pxpt->prev_state_wall = NOW(); - pxpt->prev_idle_wall = get_cpu_idle_time(cpu); - - spin_unlock(cpufreq_statistic_lock); -} - - /********************************************************************* * FREQUENCY TABLE HELPERS * *********************************************************************/ diff --git a/xen/include/acpi/cpufreq/processor_perf.h b/xen/include/acpi/cpufreq/processor_perf.h index 301104e16f..941e177b6d 100644 --- a/xen/include/acpi/cpufreq/processor_perf.h +++ b/xen/include/acpi/cpufreq/processor_perf.h @@ -9,11 +9,9 @@ unsigned int powernow_register_driver(void); unsigned int get_measured_perf(unsigned int cpu, unsigned int flag); -void cpufreq_residency_update(unsigned int cpu, uint8_t state); void cpufreq_statistic_update(unsigned int cpu, uint8_t from, uint8_t to); int cpufreq_statistic_init(unsigned int cpu); void cpufreq_statistic_exit(unsigned int cpu); -void cpufreq_statistic_reset(unsigned int cpu); int cpufreq_limit_change(unsigned int cpu); From patchwork Wed Mar 26 05:50:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029744 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B31DCC36008 for ; Wed, 26 Mar 2025 06:01:04 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927065.1329896 (Exim 4.92) (envelope-from ) id 1txJov-00060N-Le; Wed, 26 Mar 2025 06:00:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927065.1329896; Wed, 26 Mar 2025 06:00:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJov-000604-IU; Wed, 26 Mar 2025 06:00:57 +0000 Received: by outflank-mailman (input) for mailman id 927065; Wed, 26 Mar 2025 06:00:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJi7-00083W-5n for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:55 +0000 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on20627.outbound.protection.outlook.com [2a01:111:f403:2418::627]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b299e4d8-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:53:53 +0100 (CET) Received: from MW4PR02CA0008.namprd02.prod.outlook.com (2603:10b6:303:16d::27) by DS5PPF4A654669B.namprd12.prod.outlook.com (2603:10b6:f:fc00::64b) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.42; Wed, 26 Mar 2025 05:53:48 +0000 Received: from SJ5PEPF000001EF.namprd05.prod.outlook.com (2603:10b6:303:16d:cafe::18) by MW4PR02CA0008.outlook.office365.com (2603:10b6:303:16d::27) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:48 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EF.mail.protection.outlook.com (10.167.242.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:47 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:44 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b299e4d8-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qw/2TDlIAmX8vAjNkEUJJg3+l7NxXMbZRppyZngjfQmsmpyr86RTEN1l1/u/2ql3BWvy6LBUJjuAeEspS51Ahi0s11ej+O8mGs7IeMIUHHCAQqPTCvw6q7fJg26tyLG54K4wIyI+xqqjsuZiGjUlLVPqm5JdOH70nY1sy7/31YhcgtRzJA+EaaFFfb8KputwYBuX7iR3NiNv0UDkz6aTg1AphUR34gSN7kwcclf9fiYqcTXZPajgnVbsmbT6qwz+EIsNDGGJEsD3Ih2Othv6e8GSbN41lA7LGSmMVIGOBi8X9yV8P06VNQd/Q2x11GO0brTdoeVX0hTsBGelmCndNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=ls8xh2qqh/fyLlnJCiGMP2CfPjJruCFbtQS8G3Ssl28=; b=ag5OPIHW3lEjYhubpD0eI5pjgCNTj75D+8BoAU2ttKh6qJ5aVHGIc6Uu6fHNlFCmohuhm4nds+wzJW4XUx1siLQuNOlWBfbjwX8hA8Z3mX1zzAanAWvwwCTj/YgZLzbSQNAqOZvnqSnJz0VypY+OmGLmXK6uscsslofQ1odvm/OA8kNKy+SUQ0ECeEHtBS4rRl5PRzrtu8YLXNGD4ETKBQrl7uxvze4EzJy0NGEyaqzmsAkbEZ3C6uT5TKUowJL2PHn9Hdd3tGCVx6QoH0PuJc6CqK8MmexdOSs5IlTo/a5JP7b2+TJAuX63yLlPboQW5GmutBZTa4WxYLPGYfnqrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=ls8xh2qqh/fyLlnJCiGMP2CfPjJruCFbtQS8G3Ssl28=; b=Wj4izfFkHdp5pGv9OmBcJMXqINU027xE8Z1Dsq0ygK1KiS6kZMiwBH9BOyDyZ1tC98awh3efux6gO2SwLNzqQmkGd5VyS5R94lVfxexvYK+ZaVf+GQ2scJvYN7Djp7H37U3T5VCRi9NOqMgG6UTA2vlJrZ1+m8I4w6tgC5o3Zqo= 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 From: Penny Zheng To: CC: , Penny Zheng , Jan Beulich , Andrew Cooper , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Anthony PERARD , Michal Orzel , "Julien Grall" , Stefano Stabellini Subject: [PATCH v2 10/19] xen/sysctl: introduce CONFIG_PM_STATS Date: Wed, 26 Mar 2025 13:50:44 +0800 Message-ID: <20250326055053.3313146-11-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EF:EE_|DS5PPF4A654669B:EE_ X-MS-Office365-Filtering-Correlation-Id: ea751f2c-8eb1-4e53-4a1c-08dd6c2a93af X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|36860700013|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: kuuBpY8PvlYfsHPP+aSZNzwwKb4oYVGig87GP+yR8wi12WURWs90AbNPYYtiTcw/IesKv3K96tc05ewFIyHPD9XjdqjfMI58poA90CO8y+MylVxu1y6GVZloJQ2X/LUGsHu0qJuyKD4p4OXUT75+UadAd0MumtLNpui0oD3J9vWtT4junQ+ntz/b6KNSvcIXE+l9sU96FtCZYQfSmYYQQvBz0U5/Bs2pMwB1ZQ94cbdN6eV8t7YGU5DB2lbCctbodjemLQxYjbdnV+ljW3xJuG2QfWMryvvUizxH2aqzKZ9fMHUlBNBYgWphAyFg6gHsshM8bZrxYj8v/Vrj5wUJa7oTY6UwCCjsiRsErBzQO6AlyQH7EeD9JZ7L4K3FM6KLdTBu18XtmWf1UnOaH0Vxh3t1pQBjNbL3OM+oHctdgpVF4WdWFiW0BreAPssdjxKthWAFLiw+PpS0laIkbJ8/hYURwt6BErmvM6ThYi5Ri5n8I7YSTNI8v2oP/e4VVBoPNKJDaFyfNJuuv42ELamzPjJRo8c4Mgj2yPOaE4bYWmkF5Y0j2AGzWit/Mv+myFFv73b6dbWzvxJMTnhRa4N06Cmeeg1/RkqyxXR4lQjxHmJkmjq8K5A4vddmbLXOXaRWJmNOWhofIQZ1dDrmRTuhQ2zFlzsvR1AvX9iWsRt3K9mPeHMXEmWEkgkyPbwJvve+T6+Fqn27u22l4DALO4HWlsNy6Juf+4ICX2qQG4BDkY5N89NVmWb5nWSDEvA+Q9ZZHX9LsJ/nfnDLiKNYbTJRheDCPuWR+oVSYxPn1AAdF1dRHtM0ROTW9s4KFzbQ4uoahblZmz4EPq3OSuamx649EW2zaerv6DXOb761tNU/HJ53r0/Nc41uTO6JYwwIXePDvGtuBCdi4iMTUQ78ZmPJ/4ye1AnYyXo0X3c4WIj9fHegpjuZTPr6NfJxzLydPdkKgZhv+gsvcIvBCU+5IU9Ve9VGPcp8Nht8UoS480qy8IXHPGjXy74qOjAduERmJgqE2r8jgSdmv3MnqydW2lmc57ukWwwRM8uRtxnceneIm7PTFm3Jfq+ON+yThQFsVyluOmL6U6D0YqTXhOlxY6v4xI5Y9ntFjwTByYlwgjOKcaTmtwrVBPLHEQ1FxpsIT8xb3zBHCr6geNxPeIo1lMfIWapu2TRXdqBeooqtZLVrtNK8Xfo/TfVpjhYJTEsrF4X3ZUwk2hDGTAGwcncXe91exfwTcZLvNP9Uofs/DC2/Unp8BehCq4VELDMAv4fFzChlEUgKGbkHR6UsSjnkEi4R3B6bk+XzRtDlIgfF07vyZ4MSoXIA/7xfbXk2olJg85KeAZLsq+LGFrpZWfN5sXRCX/8dNFT0rU51vNWA/PumQhQZTGxZkLTn/i8lAlTv4CDWDuAIw/7iYpbIUUWBSqrtTs3WPwfRn7On9UnBiWpO+2Cl0KguoVGNe1bdTe4wwVtefUcogBZsBXrMKGGycRjOnhVwQgmlDDZq6W+YNpSljS0= 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:(13230040)(376014)(36860700013)(82310400026)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:47.7080 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ea751f2c-8eb1-4e53-4a1c-08dd6c2a93af 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: SJ5PEPF000001EF.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS5PPF4A654669B We intend to introduce CONFIG_PM_STATS for wrapping all operations regarding performance management statistics. The major codes reside in xen/drivers/acpi/pmstat.c, including two main pm-related sysctl op: do_get_pm_info() and do_pm_op(). So This commit also makes CONFIG_PM_STATS depend on CONFIG_SYSCTL Signed-off-by: Penny Zheng --- v1 -> v2: - rename to CONFIG_PM_STATS - fix indention and stray semicolon - make code movements into a new commit - No need to wrap inline functions and declarations --- xen/arch/x86/acpi/cpu_idle.c | 2 ++ xen/arch/x86/acpi/cpufreq/hwp.c | 6 ++++++ xen/arch/x86/acpi/cpufreq/powernow.c | 4 ++++ xen/common/Kconfig | 5 +++++ xen/common/sysctl.c | 4 ++-- xen/drivers/acpi/Makefile | 2 +- xen/drivers/cpufreq/cpufreq_misc_governors.c | 2 ++ xen/drivers/cpufreq/cpufreq_ondemand.c | 2 ++ xen/include/acpi/cpufreq/processor_perf.h | 14 ++++++++++++++ 9 files changed, 38 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c index 420198406d..b537ac4cd6 100644 --- a/xen/arch/x86/acpi/cpu_idle.c +++ b/xen/arch/x86/acpi/cpu_idle.c @@ -1487,6 +1487,7 @@ static void amd_cpuidle_init(struct acpi_processor_power *power) vendor_override = -1; } +#ifdef CONFIG_PM_STATS uint32_t pmstat_get_cx_nr(unsigned int cpu) { return processor_powers[cpu] ? processor_powers[cpu]->count : 0; @@ -1606,6 +1607,7 @@ int pmstat_reset_cx_stat(unsigned int cpu) { return 0; } +#endif /* CONFIG_PM_STATS */ void cpuidle_disable_deep_cstate(void) { diff --git a/xen/arch/x86/acpi/cpufreq/hwp.c b/xen/arch/x86/acpi/cpufreq/hwp.c index d5fa3d47ca..98e9d46890 100644 --- a/xen/arch/x86/acpi/cpufreq/hwp.c +++ b/xen/arch/x86/acpi/cpufreq/hwp.c @@ -466,6 +466,7 @@ static int cf_check hwp_cpufreq_cpu_exit(struct cpufreq_policy *policy) return 0; } +#ifdef CONFIG_PM_STATS /* * The SDM reads like turbo should be disabled with MSR_IA32_PERF_CTL and * PERF_CTL_TURBO_DISENGAGE, but that does not seem to actually work, at least @@ -508,6 +509,7 @@ static int cf_check hwp_cpufreq_update(unsigned int cpu, struct cpufreq_policy * return per_cpu(hwp_drv_data, cpu)->ret; } +#endif /* CONFIG_PM_STATS */ static const struct cpufreq_driver __initconst_cf_clobber hwp_cpufreq_driver = { @@ -516,9 +518,12 @@ hwp_cpufreq_driver = { .target = hwp_cpufreq_target, .init = hwp_cpufreq_cpu_init, .exit = hwp_cpufreq_cpu_exit, +#ifdef CONFIG_PM_STATS .update = hwp_cpufreq_update, +#endif }; +#ifdef CONFIG_PM_STATS int get_hwp_para(unsigned int cpu, struct xen_cppc_para *cppc_para) { @@ -639,6 +644,7 @@ int set_hwp_para(struct cpufreq_policy *policy, return hwp_cpufreq_target(policy, 0, 0); } +#endif /* CONFIG_PM_STATS */ int __init hwp_register_driver(void) { diff --git a/xen/arch/x86/acpi/cpufreq/powernow.c b/xen/arch/x86/acpi/cpufreq/powernow.c index 69364e1855..08494d0902 100644 --- a/xen/arch/x86/acpi/cpufreq/powernow.c +++ b/xen/arch/x86/acpi/cpufreq/powernow.c @@ -49,6 +49,7 @@ static void cf_check transition_pstate(void *pstate) wrmsrl(MSR_PSTATE_CTRL, *(unsigned int *)pstate); } +#ifdef CONFIG_PM_STATS static void cf_check update_cpb(void *data) { struct cpufreq_policy *policy = data; @@ -77,6 +78,7 @@ static int cf_check powernow_cpufreq_update( return 0; } +#endif /* CONFIG_PM_STATS */ static int cf_check powernow_cpufreq_target( struct cpufreq_policy *policy, @@ -324,7 +326,9 @@ powernow_cpufreq_driver = { .target = powernow_cpufreq_target, .init = powernow_cpufreq_cpu_init, .exit = powernow_cpufreq_cpu_exit, +#ifdef CONFIG_PM_STATS .update = powernow_cpufreq_update +#endif }; unsigned int __init powernow_register_driver(void) diff --git a/xen/common/Kconfig b/xen/common/Kconfig index 5b55ca6eaa..426fa8fcc2 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -557,4 +557,9 @@ config SYSCTL to reduce Xen footprint. endmenu +config PM_STATS + bool "Enable Performance Management Statistics" + depends on ACPI && HAS_CPUFREQ && SYSCTL + default y + endmenu diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index 4602d84203..c17f1b3dec 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -176,7 +176,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) op->u.availheap.avail_bytes <<= PAGE_SHIFT; break; -#if defined (CONFIG_ACPI) && defined (CONFIG_HAS_CPUFREQ) +#ifdef CONFIG_PM_STATS case XEN_SYSCTL_get_pmstat: ret = do_get_pm_info(&op->u.get_pmstat); break; @@ -186,7 +186,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) if ( ret == -EAGAIN ) copyback = 1; break; -#endif +#endif /* CONFIG_PM_STATS */ case XEN_SYSCTL_page_offline_op: { diff --git a/xen/drivers/acpi/Makefile b/xen/drivers/acpi/Makefile index 2fc5230253..a32a505e30 100644 --- a/xen/drivers/acpi/Makefile +++ b/xen/drivers/acpi/Makefile @@ -5,7 +5,7 @@ obj-$(CONFIG_X86) += apei/ obj-bin-y += tables.init.o obj-$(CONFIG_ACPI_NUMA) += numa.o obj-y += osl.o -obj-$(CONFIG_HAS_CPUFREQ) += pmstat.o +obj-$(CONFIG_PM_STATS) += pmstat.o obj-$(CONFIG_X86) += hwregs.o obj-$(CONFIG_X86) += reboot.o diff --git a/xen/drivers/cpufreq/cpufreq_misc_governors.c b/xen/drivers/cpufreq/cpufreq_misc_governors.c index 0327fad23b..c3877e9f0a 100644 --- a/xen/drivers/cpufreq/cpufreq_misc_governors.c +++ b/xen/drivers/cpufreq/cpufreq_misc_governors.c @@ -64,6 +64,7 @@ static int cf_check cpufreq_governor_userspace( return ret; } +#ifdef CONFIG_PM_STATS int write_userspace_scaling_setspeed(unsigned int cpu, unsigned int freq) { struct cpufreq_policy *policy; @@ -80,6 +81,7 @@ int write_userspace_scaling_setspeed(unsigned int cpu, unsigned int freq) return __cpufreq_driver_target(policy, freq, CPUFREQ_RELATION_L); } +#endif /* CONFIG_PM_STATS */ static bool __init cf_check cpufreq_userspace_handle_option(const char *name, const char *val) diff --git a/xen/drivers/cpufreq/cpufreq_ondemand.c b/xen/drivers/cpufreq/cpufreq_ondemand.c index 06cfc88d30..de10e03ca4 100644 --- a/xen/drivers/cpufreq/cpufreq_ondemand.c +++ b/xen/drivers/cpufreq/cpufreq_ondemand.c @@ -57,6 +57,7 @@ static struct dbs_tuners { static DEFINE_PER_CPU(struct timer, dbs_timer); +#ifdef CONFIG_PM_STATS int write_ondemand_sampling_rate(unsigned int sampling_rate) { if ( (sampling_rate > MAX_SAMPLING_RATE / MICROSECS(1)) || @@ -93,6 +94,7 @@ int get_cpufreq_ondemand_para(uint32_t *sampling_rate_max, return 0; } +#endif /* CONFIG_PM_STATS */ static void dbs_check_cpu(struct cpu_dbs_info_s *this_dbs_info) { diff --git a/xen/include/acpi/cpufreq/processor_perf.h b/xen/include/acpi/cpufreq/processor_perf.h index 941e177b6d..b4b3ed7964 100644 --- a/xen/include/acpi/cpufreq/processor_perf.h +++ b/xen/include/acpi/cpufreq/processor_perf.h @@ -9,9 +9,23 @@ unsigned int powernow_register_driver(void); unsigned int get_measured_perf(unsigned int cpu, unsigned int flag); +#ifdef CONFIG_PM_STATS void cpufreq_statistic_update(unsigned int cpu, uint8_t from, uint8_t to); int cpufreq_statistic_init(unsigned int cpu); void cpufreq_statistic_exit(unsigned int cpu); +#else +static inline void cpufreq_statistic_update(unsigned int cpu, uint8_t from, + uint8_t to) +{ +} +static inline int cpufreq_statistic_init(unsigned int cpu) +{ + return 0; +} +static inline void cpufreq_statistic_exit(unsigned int cpu) +{ +} +#endif /* CONFIG_PM_STATS */ int cpufreq_limit_change(unsigned int cpu); From patchwork Wed Mar 26 05:50:45 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029752 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 83C28C3600D for ; Wed, 26 Mar 2025 06:02:14 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927159.1329987 (Exim 4.92) (envelope-from ) id 1txJq4-0002wA-Ir; Wed, 26 Mar 2025 06:02:08 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927159.1329987; Wed, 26 Mar 2025 06:02:08 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJq4-0002w3-EN; Wed, 26 Mar 2025 06:02:08 +0000 Received: by outflank-mailman (input) for mailman id 927159; Wed, 26 Mar 2025 06:02:06 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiA-0008HQ-Sy for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:53:58 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20610.outbound.protection.outlook.com [2a01:111:f403:2415::610]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b44f1c25-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:53:57 +0100 (CET) Received: from SJ0PR03CA0257.namprd03.prod.outlook.com (2603:10b6:a03:3a0::22) by MN2PR12MB4344.namprd12.prod.outlook.com (2603:10b6:208:26e::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:51 +0000 Received: from SJ5PEPF000001E9.namprd05.prod.outlook.com (2603:10b6:a03:3a0:cafe::e) by SJ0PR03CA0257.outlook.office365.com (2603:10b6:a03:3a0::22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:50 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001E9.mail.protection.outlook.com (10.167.242.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:50 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:47 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b44f1c25-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yzL5H51ugkfd0DqnEi3nASeBX1ZZrZLH+k6zikdApNawnRnjBSiR9tOBsMMMgUkF7SqeMIWrzNw2Phsf5zyLeAaIltRAHmxEgxO6RtRsn0GSatPQA66e4uAjCHLJpnl1zH2THJZxTmP3Z6lRtdWnM9OmJZcFpHwFl9vg4LuVgh+ENH4UafmGxq84ieDjAvzPw7EqphR6lpFXKi23eY8RnPn4o8FQOCFvskvUUkGpjCJPcmzniKaUU7Im919JOGTibtpIRq8kMa7CkhR6kSMilRyR93zUce03ibQMQL19X4RllzjhgNfxeZU0nBWXaXiJcFyE1WFSHi3qz+wonywCNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=1fIp26wTlhi8yw0JGvhk17TYU3fQDeNzQFk5zlY2530=; b=duEb0Tvt1+NiyuF+V6NrCz4CtdjaNcDd3iKqvYA/YbRtPvr7fuLt7SSkbO2pbrt0Xs+XJBun24Leac7G4ySFGCYE7Ezv6y1WI60SFdpDaHuHx7yfU/Zl1WZDWyeq6MnZ6TjrMmb8EIc84gts0TXiPnEnlretolWZ9PpzJ6gsLUWnfTJTEwxb+o9ITb5DK6qcoNyrOwZ3jhq3Fin/SHq08hRDekud8HENU25L3S6n0At8A8uhUuGWX2X/NNvP8kDvQSVQva/CTl9SsmD4VtAp9JhxBiRagXJ71MchrUIUfPPU8HDgASKErOspwgDmxV/GmUDQ129OMYOFsv3elJ9AbQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=1fIp26wTlhi8yw0JGvhk17TYU3fQDeNzQFk5zlY2530=; b=zPiiR4nXhg9J6GLUvYh2xFDRY3JL9IPJeY6fDquUgLvifWWqXNqrKg5U3IPIEjyJS8OztD6WL9hgPMD/mcE+lK0j/vaECaY6TNZQJzva8XOO3lZqqy3w7jUMlp0jesLBcWIBxF2/et97pH7XDmGGgNa2LG9EweY/gcf501w/KsU= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini , "Daniel P. Smith" Subject: [PATCH v2 11/19] xen/sysctl: wrap around XEN_SYSCTL_page_offline_op Date: Wed, 26 Mar 2025 13:50:45 +0800 Message-ID: <20250326055053.3313146-12-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001E9:EE_|MN2PR12MB4344:EE_ X-MS-Office365-Filtering-Correlation-Id: 94edfb35-9d8d-4d28-cd02-08dd6c2a9566 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|82310400026|376014|1800799024; X-Microsoft-Antispam-Message-Info: tTVPO86Irpf4sTkPHo/upuwIpJul47lMKtvlIe1wrGaU5Qv5CYLKExtlALjF8aOStPzCw1fK9FHHpP1HarjLInSsI5tL9s9ModsoBWj4/Ffn51aIN+kzKuIri6FjmSOGks5a6s9Cf5pePiF4chngYp2PA5I5ugico0JDW/gGAF3FYnBM6CcUxTokfwKpe0JM1u+Y/X45Lv/3HITq6oUJqianaYNNt1m2LMyVuFzAmSFgL0u8eqtq3PoAJaNLuEweTwyvgjA7weMkeCs7Wx1DTYWrZx3O+3zmzskGoIG0sb90fotkTOXA+1YHAncYD+JWndEpPC1cJ+XAj917UhjyYwY8M39CH2HT6QLIoHzrf9cdaq7Tw2ggG76gDVykhA8ZH7YaWJARzTKOLlEWdlrRGGk70QMXuNWeatXRai0y1tJb61NezHdd1GSRETx+El7snk0vvXEZRUWi6CI/pKaZb7klVaXgQ0UfDRN2NOyHh0tHpM+t9ii00EfARvCiWhlFi055LrSQFOtQR4aqpWfUsG7TUFOSyyYBIOBcjx14uS/J+lHaGMAqSvjsUhwmBLT3AfUGmMpV4+onpRGNDd0XrE0LcB4y7/YwzpyLWxAE2IRQG97p70I9vNvc9NKabDJMy0GnAA8aNPLXAUxQLCTZw9BekCBOBghdqqO+8g0EiHI6KksTF10cLNqr09L25NF/5foztscVkitcbBegCTQoUU13sm/egiXwLifv79yXJZ3gp55a0eZi89lC2ABgvtoMCxEQpGcO7ZOATWStEc1GbuVAchRonrqkT4DxwaLEmgxmLcPPD0hrFsan65uOM/LNkrmvAHAc4r7Vb9GPayd+JRvL/wQczNSD9foPHt7eYHDzk+5Ybw2pHJLaJ7YA9MPXb/LVEOT3PUUAvzLeAfW55bWExiYA73IkPHYV6S7XqB6XMR4PPci4OT7PphBo3EojBihzX4DV0gJQn3rb4FYSFMz+RchtOWc5Wim9gUKU3hAkm1/0ySrxKuuvTdYwBSyn9Fj1Cb8L3P3nfFoSr3SIZWNNoIQSiJRzvuiqw5mviTVSf9kVe51ylU322S7lX7DXchUC45bwu25opTosXyQsZfIeyv2CI8ODmnXAOSxLqzVLjwnQCRMg/HT68ZaeI0ei8B1nRmDZ4uKJrHaWFYItA8D8SytDd09FMo44kPtcqRN+TwbAHVaNDkEO0EJMxpA9kR/zu7vauxg3woCPS34Amb47NMUEL9HTJBk0ikk38H6AKHgbp7Cr8szq7w1Qd+CURRXoN1yUVFjiNU5gMs4FQA0yj6U1IFYN07CTYf9NTv54t1BbHZcvuUid4DTHI7+lNHxcqaaEkY8yO6zR+w4XQ9orFYfCAUr9WyWSSEtRS+PJ5s1nqn/NoblxZ3P7hLH4BrtSwtxX9lsjVW2eaWeLB3BWHKS6D9y06LMYDenkt53YK24cpAwUnPpBYGj2kXsH8W09O22XdlyLTKhQUqOZ7q6ALtLKchsSobqwhqGG9kw= 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:(13230040)(36860700013)(82310400026)(376014)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:50.6197 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 94edfb35-9d8d-4d28-cd02-08dd6c2a9566 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: SJ5PEPF000001E9.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4344 The following functions are only to deal with XEN_SYSCTL_page_offline_op, then shall be wrapped: - xsm_page_offline - online_page - query_page_offline Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - add transient #ifdef in sysctl.c for correct compilation - no need to wrap declarations - place the #ifdef inside the function body to have less redundancy --- xen/common/page_alloc.c | 2 ++ xen/common/sysctl.c | 2 ++ xen/include/xsm/xsm.h | 6 ++++++ xen/xsm/dummy.c | 2 ++ xen/xsm/flask/hooks.c | 6 ++++++ 5 files changed, 18 insertions(+) diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c index bd4538c28d..cc2ad4423a 100644 --- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -1758,6 +1758,7 @@ int offline_page(mfn_t mfn, int broken, uint32_t *status) return 0; } +#ifdef CONFIG_SYSCTL /* * Online the memory. * The caller should make sure end_pfn <= max_page, @@ -1842,6 +1843,7 @@ int query_page_offline(mfn_t mfn, uint32_t *status) return 0; } +#endif /* CONFIG_SYSCTL */ /* * This function should only be called with valid pages from the same NUMA diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index c17f1b3dec..3129fc602d 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -188,6 +188,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) break; #endif /* CONFIG_PM_STATS */ +#ifdef CONFIG_SYSCTL case XEN_SYSCTL_page_offline_op: { uint32_t *status, *ptr; @@ -248,6 +249,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) copyback = 0; } break; +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_cpupool_op: ret = cpupool_do_sysctl(&op->u.cpupool_op); diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h index 042a99449f..5ac99904c4 100644 --- a/xen/include/xsm/xsm.h +++ b/xen/include/xsm/xsm.h @@ -138,7 +138,9 @@ struct xsm_ops { int (*resource_setup_gsi)(int gsi); int (*resource_setup_misc)(void); +#ifdef CONFIG_SYSCTL int (*page_offline)(uint32_t cmd); +#endif int (*hypfs_op)(void); long (*do_xsm_op)(XEN_GUEST_HANDLE_PARAM(void) op); @@ -597,7 +599,11 @@ static inline int xsm_resource_setup_misc(xsm_default_t def) static inline int xsm_page_offline(xsm_default_t def, uint32_t cmd) { +#ifdef CONFIG_SYSCTL return alternative_call(xsm_ops.page_offline, cmd); +#else + return -EOPNOTSUPP; +#endif } static inline int xsm_hypfs_op(xsm_default_t def) diff --git a/xen/xsm/dummy.c b/xen/xsm/dummy.c index cd0e844fcf..d46413ad8c 100644 --- a/xen/xsm/dummy.c +++ b/xen/xsm/dummy.c @@ -96,7 +96,9 @@ static const struct xsm_ops __initconst_cf_clobber dummy_ops = { .resource_setup_gsi = xsm_resource_setup_gsi, .resource_setup_misc = xsm_resource_setup_misc, +#ifdef CONFIG_SYSCTL .page_offline = xsm_page_offline, +#endif .hypfs_op = xsm_hypfs_op, .hvm_param = xsm_hvm_param, .hvm_param_altp2mhvm = xsm_hvm_param_altp2mhvm, diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c index df7e10775b..39f8331207 100644 --- a/xen/xsm/flask/hooks.c +++ b/xen/xsm/flask/hooks.c @@ -1206,10 +1206,12 @@ static int cf_check flask_resource_unplug_core(void) return avc_current_has_perm(SECINITSID_DOMXEN, SECCLASS_RESOURCE, RESOURCE__UNPLUG, NULL); } +#ifdef CONFIG_SYSCTL static int flask_resource_use_core(void) { return avc_current_has_perm(SECINITSID_DOMXEN, SECCLASS_RESOURCE, RESOURCE__USE, NULL); } +#endif static int cf_check flask_resource_plug_pci(uint32_t machine_bdf) { @@ -1274,6 +1276,7 @@ static int cf_check flask_resource_setup_misc(void) return avc_current_has_perm(SECINITSID_XEN, SECCLASS_RESOURCE, RESOURCE__SETUP, NULL); } +#ifdef CONFIG_SYSCTL static inline int cf_check flask_page_offline(uint32_t cmd) { switch ( cmd ) @@ -1288,6 +1291,7 @@ static inline int cf_check flask_page_offline(uint32_t cmd) return avc_unknown_permission("page_offline", cmd); } } +#endif static inline int cf_check flask_hypfs_op(void) { @@ -1948,7 +1952,9 @@ static const struct xsm_ops __initconst_cf_clobber flask_ops = { .resource_setup_gsi = flask_resource_setup_gsi, .resource_setup_misc = flask_resource_setup_misc, +#ifdef CONFIG_SYSCTL .page_offline = flask_page_offline, +#endif .hypfs_op = flask_hypfs_op, .hvm_param = flask_hvm_param, .hvm_param_altp2mhvm = flask_hvm_param_altp2mhvm, From patchwork Wed Mar 26 05:50:46 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029743 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3DE98C3600D for ; Wed, 26 Mar 2025 06:01:04 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927067.1329901 (Exim 4.92) (envelope-from ) id 1txJov-000639-UM; Wed, 26 Mar 2025 06:00:57 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927067.1329901; Wed, 26 Mar 2025 06:00:57 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJov-000611-Pu; Wed, 26 Mar 2025 06:00:57 +0000 Received: by outflank-mailman (input) for mailman id 927067; Wed, 26 Mar 2025 06:00:56 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiE-00083W-DZ for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:02 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on20608.outbound.protection.outlook.com [2a01:111:f403:2415::608]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b716e1bf-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:54:00 +0100 (CET) Received: from SJ0PR03CA0270.namprd03.prod.outlook.com (2603:10b6:a03:3a0::35) by MN2PR12MB4208.namprd12.prod.outlook.com (2603:10b6:208:1d0::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:57 +0000 Received: from SJ5PEPF000001E9.namprd05.prod.outlook.com (2603:10b6:a03:3a0:cafe::e0) by SJ0PR03CA0270.outlook.office365.com (2603:10b6:a03:3a0::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:56 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001E9.mail.protection.outlook.com (10.167.242.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:56 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:50 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b716e1bf-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=PPJahobC2csRSvfm2TvYuevpMHlIq1FgOIocvADmpJkjHpvluGzw93nLPsk9bMJ1LH5aPThZAJQ/iG9oUugn8GetINwCg75itCZ5Hiyg6ce7u7IB+jYvzjCtfbZdHhP2RI3R56dTfVZ8ZDZ1GRiqFewCbE8MPgMFxZtjkYl5vLUUGliF8A+DQs5ndrR/6YLLWqjmEddJ+yZv0YsgCjEfABD0UY+AFby7kS8PHHaW3hWEowx5HvaTkT2Eev406lbV5zLmj0WIWJM2uI3SyLo1t3SS+RAnQ0NIrJloYqx7LUlEhdQfxPH0f8gN32SUOUSxlIeTjbDbcNhNUNqZhT3TBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=9945qxdUn2PylyjdcYgad8LTv9PlGRGmYGGpFMk/+Dg=; b=L8OqcEINXSrML0IpcjsDUEk3TWWXLsvYvPG2cTyovOtf4wZNi/6HrzVwEurEN8kb8N8NHJNeUBu6sOJp9IO9RgifeRUeAiaWSqdmE7z0E8FECYFIaxJA6uIWdiZ4Mn7HijY+bs2RWqKos1BZF2+YKBdFy2mo2qUWqja5ZKyU6HDFf+kyqWM5dXhGOTwTOox5Z8HmssgGxQihLP0Sle1MzrPYkLdkkI3rSMVAFVat9oG96KDTMPNVTh8h3zwNTC2BGsTM2rDMPWQaFu+acngYY7qtripl0Wg1Vaa7NtO3u2MX4+WwIWyTq+zLu+54+S2FcZH9AZrIQ0rRn/cuQuH13A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=9945qxdUn2PylyjdcYgad8LTv9PlGRGmYGGpFMk/+Dg=; b=Jck5CPST3xaMHKh03U0NY59T0FwzCgMfCjoBXbB2pJ2lHI+dD2bXDa4ZTZVtAxoX7JMCGlqjG7ipwGg0ov1yVCl/k3mKN0bPmK8mY7bCUwm8q7NUcFbGD2y26TMRpBhmi8RgAsAE91CDYjk48k35/YKUvMSk2WX+uMN7+qnZxjg= 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 From: Penny Zheng To: CC: , Penny Zheng , Dario Faggioli , Juergen Gross , George Dunlap , Andrew Cooper , "Anthony PERARD" , Michal Orzel , "Jan Beulich" , Julien Grall , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , "Stefano Stabellini" Subject: [PATCH v2 12/19] xen/sysctl: wrap around XEN_SYSCTL_cpupool_op Date: Wed, 26 Mar 2025 13:50:46 +0800 Message-ID: <20250326055053.3313146-13-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001E9:EE_|MN2PR12MB4208:EE_ X-MS-Office365-Filtering-Correlation-Id: 967fb730-f830-43a6-2c90-08dd6c2a9912 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|82310400026|376014|7416014; X-Microsoft-Antispam-Message-Info: Txg2Dslz7AulPh0C1NM0TE4qmsBcvzqQnJiqcDUnKD6NvTFK6R4XngR+MjU2wO6hvCdul/G7AdtEHtUwBMWaHArLVH7YdYZ/g1fEbI8irm2TK7b3DA1PD1OXgNUGl0Hls8eQgf2mIYKja3B56GdFuM4ZObUpQqjIt5gBxQBavJuoNhQKuPjV8JfHRD/Rxz9xRZyJf0vQt6GZhGaAhRIMvKd67W7WBbwbG93uVkz9+qn2gBmofBqP6xkSCDQmn9/pLtA3vxnDyukkECl2FhRGKxkMR/xa7UdkOT+UWOtoSaFSCeYTNXiPL+nI92fHREWHG0xJr78UPZwDTx9WokTGq5x5qf3FlVznjV0V91wosEkBJBbeT9aLwdFriE2LWs0N37iYzR5HQ1W5d6PYOrT4YQwXgrRcX8HxdfwnkQHe4ebZEHz+u+IgWPpJYApjz8WKh/PkP28DR8nWTG4nJqkoDZHHifE/HNgUZfkqWcxU5FdCrnoacMum/wNSaq5nFshQR8Sxv5IhXmhKHfjdZxPZJHmRDZsuVU9k4RWEbbNj7xG2XWhcXR3aaHX1qQ1Td2Fv/s6AkiXAID+Vy6XCQDFh1DjlH776ZAitxm9FZp8iGPQoY/4md7QEVEFOw8Wh//Mdd37U8Bi2vK+66Uu9+k/FTpH5QkrXxaYWx13o8PzvloEhADUn497ru+T7HBORGsV8qjwJaWdDSrbO+7FW/FsCTSQQJPW2BnXGjEcrhBr5p0RCFpTkVSVqoklVZzSx9S/+ouFN0EOjvDIjRbqmZWVyteBVjyGW3VUTZFsOiBKetugzHflVewjP4Rf43AW/gCfAO8DcYLEqP1V93Xz3q89Zl5oC80K3LnPXjUkM4sznjS45LQvZtoIoErX3609tOb9V0NNoNwcYqR6e6byFjmSXDfjOJuatOBEmXCOhgNhdU67prDgCWtox6vTfJXEi7y+3hbCGu+bqCDgAvIEcYP6mXCy8HumwiF1O6O6R3l3lTPra44klx9AfD329NVH+qtjlJkopRQb1xOUzLQf1KDDUEHz7/9iPbpJoDaYZ6hBzSuRoFjaxeH30Q+Svy56sJp/j56Fhd/T4WvwAGKOT/TfgD17WvU1OUFyrhsr1vRLSLJ5FeSEw1hu8BIAsrzc55Bh6dzGFeswrA5ZCyPqnS+0WqQmDA1acKI9t3lyDElE6ToxHLAx60KCTNIeW4nu48O1YJxzZ4NDV3FkqbqjUz7A268v5pfHGlojeZfhBZXImKm9fBTGHGIkqSUe0o2GKr/2ddXt8BsUcvqaWOp9AmbPPvyFrzc81UbF2jvhpCQKPQZXH5ywjluCMRQJRo5A/bIZeybWhSd5ij4smO3fUAtLbcGuYvkaABkc8XJcqE/mpBl70KzhCl9UtYup88qa5def3NIpTFnh2PdOi8oaPTf36bm6aWcz9Eqbpoc9RBpvtNApuBrICPaQaDlYW/gPf0pHzAg6wtICuh4P6SIP7WJ5M3YOA3y10u9w7sITwzSz6G7M= 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:(13230040)(1800799024)(36860700013)(82310400026)(376014)(7416014);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:56.7603 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 967fb730-f830-43a6-2c90-08dd6c2a9912 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: SJ5PEPF000001E9.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4208 Function cpupool_do_sysctl is designed for doing cpupool related sysctl operations, and shall be wrapped. The following static functions are only called by cpupool_do_sysctl(), then shall be wrapped too: - cpupool_get_next_by_id - cpupool_destroy - cpupool_unassign_cpu_helper - cpupool_unassign_cpu Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - no need to wrap declaration - add transient #ifdef in sysctl.c for correct compilation --- xen/common/sched/cpupool.c | 8 ++++++++ xen/common/sysctl.c | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/xen/common/sched/cpupool.c b/xen/common/sched/cpupool.c index 3d02c7b706..f5459c2779 100644 --- a/xen/common/sched/cpupool.c +++ b/xen/common/sched/cpupool.c @@ -241,10 +241,12 @@ struct cpupool *cpupool_get_by_id(unsigned int poolid) return __cpupool_get_by_id(poolid, true); } +#ifdef CONFIG_SYSCTL static struct cpupool *cpupool_get_next_by_id(unsigned int poolid) { return __cpupool_get_by_id(poolid, false); } +#endif /* CONFIG_SYSCTL */ void cpupool_put(struct cpupool *pool) { @@ -352,6 +354,7 @@ static struct cpupool *cpupool_create(unsigned int poolid, return ERR_PTR(ret); } +#ifdef CONFIG_SYSCTL /* * destroys the given cpupool * returns 0 on success, 1 else @@ -379,6 +382,7 @@ static int cpupool_destroy(struct cpupool *c) debugtrace_printk("cpupool_destroy(pool=%u)\n", c->cpupool_id); return 0; } +#endif /* CONFIG_SYSCTL */ /* * Move domain to another cpupool @@ -568,6 +572,7 @@ static int cpupool_unassign_cpu_start(struct cpupool *c, unsigned int cpu) return ret; } +#ifdef CONFIG_SYSCTL static long cf_check cpupool_unassign_cpu_helper(void *info) { struct cpupool *c = info; @@ -633,6 +638,7 @@ static int cpupool_unassign_cpu(struct cpupool *c, unsigned int cpu) } return continue_hypercall_on_cpu(work_cpu, cpupool_unassign_cpu_helper, c); } +#endif /* CONFIG_SYSCTL */ /* * add a new domain to a cpupool @@ -810,6 +816,7 @@ static void cpupool_cpu_remove_forced(unsigned int cpu) rcu_read_unlock(&sched_res_rculock); } +#ifdef CONFIG_SYSCTL /* * do cpupool related sysctl operations */ @@ -975,6 +982,7 @@ int cpupool_do_sysctl(struct xen_sysctl_cpupool_op *op) return ret; } +#endif /* CONFIG_SYSCTL */ unsigned int cpupool_get_id(const struct domain *d) { diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index 3129fc602d..0292233c7e 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -249,12 +249,12 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) copyback = 0; } break; -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_cpupool_op: ret = cpupool_do_sysctl(&op->u.cpupool_op); break; +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_scheduler_op: ret = sched_adjust_global(&op->u.scheduler_op); break; From patchwork Wed Mar 26 05:50:47 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029746 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A9E7AC36008 for ; Wed, 26 Mar 2025 06:01:31 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927116.1329925 (Exim 4.92) (envelope-from ) id 1txJpM-00081Z-HS; Wed, 26 Mar 2025 06:01:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927116.1329925; Wed, 26 Mar 2025 06:01:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJpM-00081S-Eo; Wed, 26 Mar 2025 06:01:24 +0000 Received: by outflank-mailman (input) for mailman id 927116; Wed, 26 Mar 2025 06:01:23 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiH-00083W-E2 for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:05 +0000 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on20604.outbound.protection.outlook.com [2a01:111:f403:2409::604]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b752411f-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:54:02 +0100 (CET) Received: from SJ0PR03CA0250.namprd03.prod.outlook.com (2603:10b6:a03:3a0::15) by SJ2PR12MB8807.namprd12.prod.outlook.com (2603:10b6:a03:4d0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:53:57 +0000 Received: from SJ5PEPF000001E9.namprd05.prod.outlook.com (2603:10b6:a03:3a0:cafe::60) by SJ0PR03CA0250.outlook.office365.com (2603:10b6:a03:3a0::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:53:57 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001E9.mail.protection.outlook.com (10.167.242.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:53:57 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:53 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b752411f-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Z9reRpswixc0cYrpuennlhWqK6B+mn3lsQ0u0HpbxKY5dAkBGz1Bbj1LY5RYTABVfmQIqcO3fqwOWov60lGcciL/Xsov0uOt4fZ78fetzhwxbsK14VEDSliylxNKbXwndVZBQzNI5gVEOBEwPZXFEExUJKhhP6CvQHwA11YtEs1YhejbytmwNCGDx7V1mFRqbdGmvlwAW2BkMLyNAQaRRpl5evtj4AriecmVcxJv1IvAaVgiYfPR3AxnXK/k8tNrwPsYAwVO1ZifOx4es/ZtQzRSIXoizCTYHFvVw/oZPY9VCK2s11ieTzEfnphO+RmBuRo72Oe0SK/ezpsCstzRSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=MzC/yz+Ds98yo0OWn9IJxBc4W+0P684qKIJK4XoV/AA=; b=SM1MVrb75cvza9UyPq/8+p6IWludXgKsQ+Vtb9Vh8yxP0upDwbd+IIBG5rZFhy5AGM22qL98GH2+i0NU2r/SfTkqJAL7OOfYaPGCqZImE+bEa7yxXzCspBbfvsxQt7/KhUcs0Z5ywqCB0ZWx2WWgIOtJ5xcD2ah0+5EdnCxTL1GQ+784hTvWdls31dhD4015zfS9atRxizBIz0W//IqrCP3MeKnRquZSbzOFXHA5d+8kgTrQqm1qcWzTK6knv71f+hp+A8NRRETa3RB2VPtNSYGU2w3ChmiRKWRCfURVvmfhoZvmhM4yO1/qU/IiH5e//REl77zpRCAN5Wvqp+yMRw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=MzC/yz+Ds98yo0OWn9IJxBc4W+0P684qKIJK4XoV/AA=; b=AvPjR8i4hy29UyaXFGXeud24arFig53LkB/kRvHuATlgvrjhNgUKg2hmkIhWRwIxaAbbL32L8cwysYNza/DdN2GVIw+OXF4nQPJRD4NFAUS0OubQU5PhiIH9rJ8ilWVyilmyK8EOSbBnrEiuoNWozltbPrbv1Js35V7daqL6d98= 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 From: Penny Zheng To: , CC: , Penny Zheng , Nathan Studer , Stewart Hildebrand , "Dario Faggioli" , Juergen Gross , George Dunlap , Andrew Cooper , "Anthony PERARD" , Michal Orzel , "Jan Beulich" , Julien Grall , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , "Stefano Stabellini" , "Daniel P. Smith" Subject: [PATCH v2 13/19] xen/sysctl: wrap around XEN_SYSCTL_scheduler_op Date: Wed, 26 Mar 2025 13:50:47 +0800 Message-ID: <20250326055053.3313146-14-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001E9:EE_|SJ2PR12MB8807:EE_ X-MS-Office365-Filtering-Correlation-Id: b7cef2f9-f7a1-402c-9d9d-08dd6c2a9984 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: +rDfqH2yXU0EDUQ7oaUne+sZ91tWuzbAkwculGy9CPoTipPZ1JXQMlkE7pU8SW9UIcflmTG6VwMUEg+M4y+wj3m9EyJMu+17Wm1ECbzG/OCkCV8l+Osg4wYA55JzCgfZ9PoPrMDlvN1cwwkA0Y9vNTGLjDqPc9RKaE//zhXmKf1H3I1Kl1IWVXwi1QclSBa8Rq2rlZUHwaFP6pNluyrvS6+jof2mOEmwqgTmRcE11qhFAhnUScXjOcKINobjmu0GI8tBGCr/8RkeqdqBj+mQOMZdBxAv9LL3g8J4Q8mWJAAReX5fr3+bphxSAtz4EKhXpUov3eQWaCV+nYYwHQyfHa+raqnIC/JLt35zRYVkc6iNC4CgQDjWssNYbTuOLqOjfwldQRNGNSAdPhAxnk4wNZQMC6mql6dpK2jn4paW26H9joee6wWumFW+W1J+I3QCtp4r6Ya0z/8RXqS6cvJ9A/lWL9YnLclbBwJhYFB4rtV7TuPh5eOXtdL8DfAnC/7fnfgTcNz0KtaBz71yzAN/1OMXtoSHqmeMrRub/Z8uAmieH1fS0YucWRoObQXAEynq52Lk3QtLhkMZCrQ8n4fnjGWOG3a8xLxYZ7vuz5KF3j5W2bpY4aUq/M/HniduyjSgjfICC14xP09hx0aLltzi5Cw+DjhUSuKJKxFN3AT4H8L+JPdPv4CQYOixm6gPX/Y+BcLiOYmveMKH6wKG9vRdsBsLq0Mu7foMUPQwq1HeRPram20RY2xp9fmIUKp6tKMXKjSYW027vCEUoGEt6DK9th7W41cx+5UbgOONd1eCkIwcbaP91y+sH/+sZ3J3RPiZX+/cbiY1kVCBTREQU4AHbhl2m/iGqNHk1VerPbvDq7Uw18EgHHIdls+20BUii3ZNVKe2/O5Cb4tXSkiLzQGmnAJKa7xxj0q/tQ2aZRkmDHpjcpUDR7sywYzgQv/eaAbJbzdnPGruVjUDSx1ArSwMvjlhq/n49ay0o4YG8pllFGbnDixLcqznPFymZek0ivQ/CQgG8geJWbTI6VP6E8As0bpM4KZELHEcsK9IM/KQk4c+O4TAB0MWYbvVOdGzI6ZQvi6/zPOuA6wLPHiYWSzTUsm3J7Jc/zQeD8ARjvnmksuAUJbfDYHuEU+lRgOzlKCmz40ywYe+vwa8pIz1YRrfcxYwoDMEeittw0pRMpfX8JvZjx/uOESmbxIYmMAyQepBZ0wFNyWqkuh7vuHmvOysdw1WW9wZnXtZkLHeUGaotZLntA30499EGKV1+WQoy6cVS/UrLPudW8W85xO6w32kvBM3SX0MAKW3tlGK9SZ7CwI6UWxJv81cwTYjFxN+01eVfFjXkRzw/pHZCGotJl2fkaRvMW/uwufzqhK25ZD/2xMTHftDZjVMW/IuICg2urmPNUZHY+DZ11WDpr7h2LLbFrJfY74uamvdqaIxxV1fQFbrTHaPUo7v478UnfQtve5oBOfEYYVN7VGWfLOd4m05eMfYqpiDilxsDeMo5iD5Qtk= 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:(13230040)(376014)(7416014)(82310400026)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:53:57.5103 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b7cef2f9-f7a1-402c-9d9d-08dd6c2a9984 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: SJ5PEPF000001E9.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8807 Function sched_adjust_global is designed for XEN_SYSCTL_scheduler_op, so itself and its calling flow, like .adjust_global, shall all be wrapped. Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini Acked-by: Stewart Hildebrand #a653 --- v1 -> v2: - no need to wrap declarations - add transient #ifdef in sysctl.c for correct compilation --- xen/common/sched/arinc653.c | 6 ++++++ xen/common/sched/core.c | 2 ++ xen/common/sched/credit.c | 4 ++++ xen/common/sched/credit2.c | 4 ++++ xen/common/sched/private.h | 4 ++++ xen/common/sysctl.c | 2 +- xen/include/xsm/xsm.h | 4 ++++ xen/xsm/dummy.c | 2 ++ xen/xsm/flask/hooks.c | 4 ++++ 9 files changed, 31 insertions(+), 1 deletion(-) diff --git a/xen/common/sched/arinc653.c b/xen/common/sched/arinc653.c index 432ccfe662..3c014c9934 100644 --- a/xen/common/sched/arinc653.c +++ b/xen/common/sched/arinc653.c @@ -220,6 +220,7 @@ static void update_schedule_units(const struct scheduler *ops) SCHED_PRIV(ops)->schedule[i].unit_id); } +#ifdef CONFIG_SYSCTL /** * This function is called by the adjust_global scheduler hook to put * in place a new ARINC653 schedule. @@ -334,6 +335,7 @@ arinc653_sched_get( return 0; } +#endif /* CONFIG_SYSCTL */ /************************************************************************** * Scheduler callback functions * @@ -653,6 +655,7 @@ a653_switch_sched(struct scheduler *new_ops, unsigned int cpu, return &sr->_lock; } +#ifdef CONFIG_SYSCTL /** * Xen scheduler callback function to perform a global (not domain-specific) * adjustment. It is used by the ARINC 653 scheduler to put in place a new @@ -692,6 +695,7 @@ a653sched_adjust_global(const struct scheduler *ops, return rc; } +#endif /* CONFIG_SYSCTL */ /** * This structure defines our scheduler for Xen. @@ -726,7 +730,9 @@ static const struct scheduler sched_arinc653_def = { .switch_sched = a653_switch_sched, .adjust = NULL, +#ifdef CONFIG_SYSCTL .adjust_global = a653sched_adjust_global, +#endif .dump_settings = NULL, .dump_cpu_state = NULL, diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c index 13fdf57e57..ea95dea65a 100644 --- a/xen/common/sched/core.c +++ b/xen/common/sched/core.c @@ -2112,6 +2112,7 @@ long sched_adjust(struct domain *d, struct xen_domctl_scheduler_op *op) return ret; } +#ifdef CONFIG_SYSCTL long sched_adjust_global(struct xen_sysctl_scheduler_op *op) { struct cpupool *pool; @@ -2140,6 +2141,7 @@ long sched_adjust_global(struct xen_sysctl_scheduler_op *op) return rc; } +#endif /* CONFIG_SYSCTL */ static void vcpu_periodic_timer_work_locked(struct vcpu *v) { diff --git a/xen/common/sched/credit.c b/xen/common/sched/credit.c index a6bb321e7d..6dcf6b2c8b 100644 --- a/xen/common/sched/credit.c +++ b/xen/common/sched/credit.c @@ -1256,6 +1256,7 @@ __csched_set_tslice(struct csched_private *prv, unsigned int timeslice_ms) prv->credit = prv->credits_per_tslice * prv->ncpus; } +#ifdef CONFIG_SYSCTL static int cf_check csched_sys_cntl(const struct scheduler *ops, struct xen_sysctl_scheduler_op *sc) @@ -1298,6 +1299,7 @@ csched_sys_cntl(const struct scheduler *ops, out: return rc; } +#endif /* CONFIG_SYSCTL */ static void *cf_check csched_alloc_domdata(const struct scheduler *ops, struct domain *dom) @@ -2288,7 +2290,9 @@ static const struct scheduler sched_credit_def = { .adjust = csched_dom_cntl, .adjust_affinity= csched_aff_cntl, +#ifdef CONFIG_SYSCTL .adjust_global = csched_sys_cntl, +#endif .pick_resource = csched_res_pick, .do_schedule = csched_schedule, diff --git a/xen/common/sched/credit2.c b/xen/common/sched/credit2.c index 0a83f23725..0b3b61df57 100644 --- a/xen/common/sched/credit2.c +++ b/xen/common/sched/credit2.c @@ -3131,6 +3131,7 @@ csched2_aff_cntl(const struct scheduler *ops, struct sched_unit *unit, __clear_bit(__CSFLAG_pinned, &svc->flags); } +#ifdef CONFIG_SYSCTL static int cf_check csched2_sys_cntl( const struct scheduler *ops, struct xen_sysctl_scheduler_op *sc) { @@ -3162,6 +3163,7 @@ static int cf_check csched2_sys_cntl( return 0; } +#endif /* CONFIG_SYSCTL */ static void *cf_check csched2_alloc_domdata(const struct scheduler *ops, struct domain *dom) @@ -4232,7 +4234,9 @@ static const struct scheduler sched_credit2_def = { .adjust = csched2_dom_cntl, .adjust_affinity= csched2_aff_cntl, +#ifdef CONFIG_SYSCTL .adjust_global = csched2_sys_cntl, +#endif .pick_resource = csched2_res_pick, .migrate = csched2_unit_migrate, diff --git a/xen/common/sched/private.h b/xen/common/sched/private.h index c0e7c96d24..d6884550cd 100644 --- a/xen/common/sched/private.h +++ b/xen/common/sched/private.h @@ -356,8 +356,10 @@ struct scheduler { struct sched_unit *unit, const struct cpumask *hard, const struct cpumask *soft); +#ifdef CONFIG_SYSCTL int (*adjust_global) (const struct scheduler *ops, struct xen_sysctl_scheduler_op *sc); +#endif void (*dump_settings) (const struct scheduler *ops); void (*dump_cpu_state) (const struct scheduler *ops, int cpu); void (*move_timers) (const struct scheduler *ops, @@ -510,11 +512,13 @@ static inline int sched_adjust_dom(const struct scheduler *s, struct domain *d, return s->adjust ? s->adjust(s, d, op) : 0; } +#ifdef CONFIG_SYSCTL static inline int sched_adjust_cpupool(const struct scheduler *s, struct xen_sysctl_scheduler_op *op) { return s->adjust_global ? s->adjust_global(s, op) : 0; } +#endif static inline void sched_move_timers(const struct scheduler *s, struct sched_resource *sr) diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index 0292233c7e..ccce7fe963 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -254,11 +254,11 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = cpupool_do_sysctl(&op->u.cpupool_op); break; -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_scheduler_op: ret = sched_adjust_global(&op->u.scheduler_op); break; +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_physinfo: { struct xen_sysctl_physinfo *pi = &op->u.physinfo; diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h index 5ac99904c4..6e1789c314 100644 --- a/xen/include/xsm/xsm.h +++ b/xen/include/xsm/xsm.h @@ -57,7 +57,9 @@ struct xsm_ops { int (*domain_create)(struct domain *d, uint32_t ssidref); int (*getdomaininfo)(struct domain *d); int (*domctl_scheduler_op)(struct domain *d, int op); +#ifdef CONFIG_SYSCTL int (*sysctl_scheduler_op)(int op); +#endif int (*set_target)(struct domain *d, struct domain *e); int (*domctl)(struct domain *d, unsigned int cmd, uint32_t ssidref); int (*sysctl)(int cmd); @@ -244,10 +246,12 @@ static inline int xsm_domctl_scheduler_op( return alternative_call(xsm_ops.domctl_scheduler_op, d, cmd); } +#ifdef CONFIG_SYSCTL static inline int xsm_sysctl_scheduler_op(xsm_default_t def, int cmd) { return alternative_call(xsm_ops.sysctl_scheduler_op, cmd); } +#endif static inline int xsm_set_target( xsm_default_t def, struct domain *d, struct domain *e) diff --git a/xen/xsm/dummy.c b/xen/xsm/dummy.c index d46413ad8c..8d44f5bfb6 100644 --- a/xen/xsm/dummy.c +++ b/xen/xsm/dummy.c @@ -19,7 +19,9 @@ static const struct xsm_ops __initconst_cf_clobber dummy_ops = { .domain_create = xsm_domain_create, .getdomaininfo = xsm_getdomaininfo, .domctl_scheduler_op = xsm_domctl_scheduler_op, +#ifdef CONFIG_SYSCTL .sysctl_scheduler_op = xsm_sysctl_scheduler_op, +#endif .set_target = xsm_set_target, .domctl = xsm_domctl, #ifdef CONFIG_SYSCTL diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c index 39f8331207..64c9531346 100644 --- a/xen/xsm/flask/hooks.c +++ b/xen/xsm/flask/hooks.c @@ -626,6 +626,7 @@ static int cf_check flask_domctl_scheduler_op(struct domain *d, int op) } } +#ifdef CONFIG_SYSCTL static int cf_check flask_sysctl_scheduler_op(int op) { switch ( op ) @@ -640,6 +641,7 @@ static int cf_check flask_sysctl_scheduler_op(int op) return avc_unknown_permission("sysctl_scheduler_op", op); } } +#endif static int cf_check flask_set_target(struct domain *d, struct domain *t) { @@ -1887,7 +1889,9 @@ static const struct xsm_ops __initconst_cf_clobber flask_ops = { .domain_create = flask_domain_create, .getdomaininfo = flask_getdomaininfo, .domctl_scheduler_op = flask_domctl_scheduler_op, +#ifdef CONFIG_SYSCTL .sysctl_scheduler_op = flask_sysctl_scheduler_op, +#endif .set_target = flask_set_target, .domctl = flask_domctl, #ifdef CONFIG_SYSCTL From patchwork Wed Mar 26 05:50:48 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029742 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 742ADC3600D for ; Wed, 26 Mar 2025 06:00:57 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927049.1329876 (Exim 4.92) (envelope-from ) id 1txJoh-000579-59; Wed, 26 Mar 2025 06:00:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927049.1329876; Wed, 26 Mar 2025 06:00:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJoh-00056t-21; Wed, 26 Mar 2025 06:00:43 +0000 Received: by outflank-mailman (input) for mailman id 927049; Wed, 26 Mar 2025 06:00:41 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiM-00083W-Ec for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:10 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2060b.outbound.protection.outlook.com [2a01:111:f403:200a::60b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b9e217da-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:54:05 +0100 (CET) Received: from SJ0PR05CA0203.namprd05.prod.outlook.com (2603:10b6:a03:330::28) by SA0PR12MB4366.namprd12.prod.outlook.com (2603:10b6:806:72::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.42; Wed, 26 Mar 2025 05:54:01 +0000 Received: from SJ5PEPF000001EA.namprd05.prod.outlook.com (2603:10b6:a03:330:cafe::b9) by SJ0PR05CA0203.outlook.office365.com (2603:10b6:a03:330::28) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:54:00 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EA.mail.protection.outlook.com (10.167.242.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:54:00 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:53:57 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: b9e217da-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=P3RrVySYwPctmKsVNyJWOk+/2jNezwiciYmUQLDyGMo0xM6FvZdYmse4jkYjA2Ym5LQjEyEAWWcMNe1kNcHFymLiR12rxUAkNNYQdsYwvxPT4a2f6VZpP8iE2Xt+iMKqJt5r16W5wpArvwOgI2I17kMNksUexVe1OkE0YHG2M8cyUT9kWW7aMMDSH1B90QOISaj9U+dA9qFvTmQOa8uYtJ5ZuC1ukJsPRzQn18U8g6UXdtdgfaoy9L9zMm1RmltmA1zsLmddBk0O7GdmAnavRCYX6pUIMzlV3r6Z9UdImyqVvpsrxlu1/IAVXnZbEwomGLx9Up80FSwgpb87SWpuww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=n6lVVCPqPmjDnRoRvg36ZKXjCShv1B9Z3cy1kL21MB8=; b=hPzHBYi/Ad1TlpX/NrHqCaCd58iS36PhWN+6ub5CseJGkMLsI2YSf3QsMRkzNU5jXIKacf7XZxw68pDd7qYB62LtybUIcXkiIYj5P5F+dB+WN1eO0SOu9NdbAsFK6qibvbThHIXkn45D5sj8MjchhfMmEkhjT0CJLFN6dz+7PFyzkMNovcnt848OttNQXmQrdixugqimf7HOo3aIbPYMv0yhnZwfu90OoAu5anWE+Y+32NCPkqkHMRn/6fjLlMvgv/dBwuuTC477fdM3qdiypXyzUYHJCBVWnBVrzAAVV8tJ06eRVCQMNDDZdS5IPOevEjp6mbWH97nIyfzXnNYy1w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=n6lVVCPqPmjDnRoRvg36ZKXjCShv1B9Z3cy1kL21MB8=; b=FYKUchdWhUIlMqiSt0RReqHXGpp6YH3TpyI0DxpoEC50fz2gm4CcP4ov9QjdpzRZRHVZHEuBH3HyjYv21LXW1poLFP0Ba+u7a4bfvmnrBw6CkAAVu7IhP1H9qUQRwG9QeSe7fYASwbduxiOr9S14kWjTtCnmbg1nEOq4XDhva1o= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH v2 14/19] xen: make avail_domheap_pages() static Date: Wed, 26 Mar 2025 13:50:48 +0800 Message-ID: <20250326055053.3313146-15-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EA:EE_|SA0PR12MB4366:EE_ X-MS-Office365-Filtering-Correlation-Id: f6faac74-415a-4d75-b6e8-08dd6c2a9b6b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700013|1800799024|376014; X-Microsoft-Antispam-Message-Info: Cx41IHDXTr8jB/n2/gvyQDNoOfrTTIclAtdk6Y/DKUEUhQXFbfkxn4+bYIYnLOBCf+d2XmZp9TWXgN9iVF82KhCHSgHIXDaEha2QurbBrILMpLgcgBAWpHMd/4bVWjlFnGhbgGPiU4KkO2JcCoTUZ21FsSll3RC9+SR+GNHbl0hob40jXNYLB3YHpnIEnP0QdBLhyxTsvE4FSEbkk0RBHgUH/yGVI6/BTjmFJOp/AGdSvqzgPKQ6IBc3Slow1MgERXmNETg3BuFERCiYw8dG/L/3ogSSA1k76Xkv+CrNwxND9SvByHnELrzdvOrlHUZOfbWPEOrQe8ijNASM4hwmiWUQWEO8U7qqqUhdNRXHhQORbalC7KrNanxitvZ1fJnhx6fpkAlEWgNjw9eiSc0P97cyDAODVQJ6N5qJ39CDs3cYwbRvNWdmxmY2+1S7LRzbsVTRuuwt2N8CHoT5q7MrQCWa6HOr5dBe0nTm1vQc2zfBW/PNjPm/Qqp0dQeCKYzEASCtOU48w3a8R1IKG5O7pk0m1IBtz+SXeP+VYcGeGN7zFmYt2jLo6UAKlasseacZPsRemoxPToUZ7QL1HSOlv5B46I1JNo54TY+oSi0Ax+mChZWuOFkMQYAt4/c+wSENkmX7JvlGjPnKvXGNTv6qoXHNVb65+JV9hU1l3A0lgA0LmBmYGYNosC45vtSuFFALLING0UAiMOEYWkRzDrY7i9gq/dzhzmib7PGgXKNgxGHjGRey5pFhjWDfvCwkBX/sugDizS55noN77uLPsPHF1QXxwWPzSTORhKDT2xMnJV9O1im7a4f/+8EDrZ6Qi2/mleWuGzBef4lLcv7PqGnWImnhjp4DP4qkVIhdiLmcZ1QNGqEb4L9CtOuqULncFtKveMDvnCQfxcFtj1p/VxjWJGU/eUIcb8uX79FQoyQMlZoIGDFfEB4KkI62dtt5xSePxOtOEKNKm0F2s19hoJR3EeBEr0WTKtwODWbyzwdPw3mSKEzUZoNeNJijIrmg16GnDGICrS+W75gfnwptwjrRmNvmplRBHcGwNzYjLVYqwlm6+pVOCcpqd3zEXNWTNNJEsWkSnG9tnAiFi+qqQfxl04tmOVdxs4hSjVkoy6WPWN4x5raddDWkyDds0ES5VoXlnpMvEuQMx27Fywh5fsuXTLOX4WZ84HJVNljNSi/61fpGCmb8DrZOZw2ZC4rXIxV3+G+sQBfcazQ18ZSIiELb1vIvnnnoao0zKnOoTg+fiwDXxmaEZwK5qJs1jKZmUjrtFwjRcecwafYsePnLfMuzkUENV72pn5Ze6V7Lso2D6bgGSSxjsxf+BPiE7bgOOLs5h93D6ofXsyf9MRcwzdO8xPvTdMG2uTjtvLnPV9TwvqGV0YlRkm3fa8IzhxDLTo1lyJGe+vjNveD+92GcjxoPOQBe+zCmGeoMp3XfhjBBdYytiEXQqMBmt04sZkObiyAChxfIKLsDvsnwhx4ejV5Cfh3rYc3GGMoJIzBtLyu3W80= 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:(13230040)(82310400026)(36860700013)(1800799024)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:54:00.7182 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f6faac74-415a-4d75-b6e8-08dd6c2a9b6b 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: SJ5PEPF000001EA.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4366 Function avail_domheap_pages() is only invoked by get_outstanding_claims(), so it could be inlined into its sole caller. Move up avail_heap_pages() to avoid declaration before get_outstanding_claims(). Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - let avail_domheap_pages() being inlined into its sole caller - move up avail_heap_pages() --- xen/common/page_alloc.c | 51 ++++++++++++++++++----------------------- xen/include/xen/mm.h | 1 - 2 files changed, 22 insertions(+), 30 deletions(-) diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c index cc2ad4423a..5803a1ef4e 100644 --- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -488,6 +488,27 @@ static long total_avail_pages; static DEFINE_SPINLOCK(heap_lock); static long outstanding_claims; /* total outstanding claims by all domains */ +static unsigned long avail_heap_pages( + unsigned int zone_lo, unsigned int zone_hi, unsigned int node) +{ + unsigned int i, zone; + unsigned long free_pages = 0; + + if ( zone_hi >= NR_ZONES ) + zone_hi = NR_ZONES - 1; + + for_each_online_node(i) + { + if ( !avail[i] ) + continue; + for ( zone = zone_lo; zone <= zone_hi; zone++ ) + if ( (node == -1) || (node == i) ) + free_pages += avail[i][zone]; + } + + return free_pages; +} + unsigned long domain_adjust_tot_pages(struct domain *d, long pages) { ASSERT(rspin_is_locked(&d->page_alloc_lock)); @@ -584,7 +605,7 @@ void get_outstanding_claims(uint64_t *free_pages, uint64_t *outstanding_pages) { spin_lock(&heap_lock); *outstanding_pages = outstanding_claims; - *free_pages = avail_domheap_pages(); + *free_pages = avail_heap_pages(MEMZONE_XEN + 1, NR_ZONES - 1, -1); spin_unlock(&heap_lock); } @@ -1964,27 +1985,6 @@ static void init_heap_pages( } } -static unsigned long avail_heap_pages( - unsigned int zone_lo, unsigned int zone_hi, unsigned int node) -{ - unsigned int i, zone; - unsigned long free_pages = 0; - - if ( zone_hi >= NR_ZONES ) - zone_hi = NR_ZONES - 1; - - for_each_online_node(i) - { - if ( !avail[i] ) - continue; - for ( zone = zone_lo; zone <= zone_hi; zone++ ) - if ( (node == -1) || (node == i) ) - free_pages += avail[i][zone]; - } - - return free_pages; -} - /************************* * COLORED SIDE-ALLOCATOR * @@ -2795,13 +2795,6 @@ unsigned long avail_domheap_pages_region( return avail_heap_pages(zone_lo, zone_hi, node); } -unsigned long avail_domheap_pages(void) -{ - return avail_heap_pages(MEMZONE_XEN + 1, - NR_ZONES - 1, - -1); -} - unsigned long avail_node_heap_pages(unsigned int nodeid) { return avail_heap_pages(MEMZONE_XEN, NR_ZONES -1, nodeid); diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h index ae1c48a615..eda57486cf 100644 --- a/xen/include/xen/mm.h +++ b/xen/include/xen/mm.h @@ -140,7 +140,6 @@ struct page_info *alloc_domheap_pages( void free_domheap_pages(struct page_info *pg, unsigned int order); unsigned long avail_domheap_pages_region( unsigned int node, unsigned int min_width, unsigned int max_width); -unsigned long avail_domheap_pages(void); unsigned long avail_node_heap_pages(unsigned int nodeid); #define alloc_domheap_page(d,f) (alloc_domheap_pages(d,0,f)) #define free_domheap_page(p) (free_domheap_pages(p,0)) From patchwork Wed Mar 26 05:50:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029751 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id EEEA8C36008 for ; Wed, 26 Mar 2025 06:02:07 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927149.1329976 (Exim 4.92) (envelope-from ) id 1txJpr-0001xf-9H; Wed, 26 Mar 2025 06:01:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927149.1329976; Wed, 26 Mar 2025 06:01:55 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJpr-0001xY-67; Wed, 26 Mar 2025 06:01:55 +0000 Received: by outflank-mailman (input) for mailman id 927149; Wed, 26 Mar 2025 06:01:53 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiR-00083W-F9 for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:15 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20611.outbound.protection.outlook.com [2a01:111:f403:2413::611]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bc1a35c5-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:54:10 +0100 (CET) Received: from SJ0PR05CA0210.namprd05.prod.outlook.com (2603:10b6:a03:330::35) by MN2PR12MB4359.namprd12.prod.outlook.com (2603:10b6:208:265::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:54:06 +0000 Received: from SJ5PEPF000001EA.namprd05.prod.outlook.com (2603:10b6:a03:330:cafe::3b) by SJ0PR05CA0210.outlook.office365.com (2603:10b6:a03:330::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:54:05 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EA.mail.protection.outlook.com (10.167.242.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:54:05 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:54:00 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bc1a35c5-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gtYgkYL7W/kLZx/ih1EH1MRM6G3DO5Aczj8mRdseFfGEHiqI+SytSMB11qBe7h1DjAxrmojrSkymkOoQCzie+IB8BNsYTP/jbF/pS4DKH7wKCS9lIQPARdnSXSlhLYtWdYPRl1giUblxtNyRxmd7bqAmHLEeGOuEkujdUrg/O6MGdk7NZvHBF/6O1B25WGBvg1ecSz897ArwcspfU134C98+yKjg7Mz80kE3r/+nsthPZy8slYMj5OUKwP84HcFvryc0QtW603toYIIWQMEcPGsA4YWHzLX1h0UAXyCklSRED53QiIqvUiNJfkfLlARv1vkAILYumY6akBYpV9mRDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=4pExX0EhEq6NQuAUy7n8i+0cd/M0autycU9Pj7ACyk0=; b=cUxNTGBd27TrGH3JKu8gbKzVsu9jRBCfkRppTLxHI2HWgn+dodN4GOBrk2yCxzdCxhq4uZze+3jE0uaox5+mbqPrMaacemh6lsaSFxM91ED93g/z8YgtiqkzZhAub+TTH5RcEwyRiVeaqDwHEpR9vLCwvbX4KETa4rhUm3S6Hi2/HXVnuIPNzoPSIHNOXFn8vypjT/E0Ma5FizT1IkqxfrxFXlQ9Lxm2C8f3ve+LJ1/pDKoYP24GE+cn3xmqcUc2SXTTr+YbrHAkH/AjTU9dPLHin7Z/jRMdXUzkMn+osk7mpsBTfntTZBrwdSFG8TFvjsDrF3ur4mDYYvjnDk28xQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=4pExX0EhEq6NQuAUy7n8i+0cd/M0autycU9Pj7ACyk0=; b=dYppyjr/IvYUglq3K3BtcLg5IYzbHWP29lmCSuplHYbRHeHpzkGzFL4xi+g1pMUtRfQzMerZn2HWN+rjgntdzL2gQ5l75n0yt5LtPmOmSs9NuSzWpqo7SdFrLnH9iPYsnltLtLa42O5eNH9nEnIjtVLlxrC2xwhW5LyiAxieBJU= 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 From: Penny Zheng To: CC: , Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Michal Orzel , "Volodymyr Babchuk" , Andrew Cooper , Anthony PERARD , "Jan Beulich" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Alistair Francis , "Bob Eshleman" , Connor Davis , Oleksii Kurochko Subject: [PATCH v2 15/19] xen/sysctl: wrap around XEN_SYSCTL_physinfo Date: Wed, 26 Mar 2025 13:50:49 +0800 Message-ID: <20250326055053.3313146-16-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EA:EE_|MN2PR12MB4359:EE_ X-MS-Office365-Filtering-Correlation-Id: 3b83f926-ac12-4bca-e438-08dd6c2a9e61 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|36860700013|7416014|82310400026; X-Microsoft-Antispam-Message-Info: ykkR//rwaVojzJ+zOHS4wBIfrcFBtXXosqk0ytCe1OKTHCBMf9gAMOWv6fKxS5Wf9aki+ylaMkylVYoxng/B/kJCGspUYl3iFFsNLIzgRXek8GS+hzIzRz4jnIQC88xEZzvNzREuUf52sErqM8HDw005rreCyo0csMTJKlWkCE6js08X9/2U7PAxjR4hj1WLDYA4THpGq0D9pDrL9vxDAACoAiPfdUqe3/lVElWj21TdVEcBeku8ZY5OLz19w5ER2to51bxtnEV9+zDozdc/doKW1THtVME+LTZbieNlrwwutPIjQCZktkO98j+1vRrDCsscKriUdVr8swDN4aoIUDfSbDUaMCtADfxBYksQ98PlGompA1z0HT0B085WVDQOo7MqFTKL/XK6CAOCcrGiKdHqGhaOFjwMd4jGhu13SLkM4vmtE4ThhC+Qbw84xjO4Mh19JuxMMuKnacBQJRyWX9iPZxICVtJ6d6Bp30Sbj79nd2aG5mSkihAZOd+tS8lk/UM2oPbCGW8HEEW3Y3ZTAq2MJFR8RgsLtVzzwwHBNPQsXCf+AVu6/H0/moIYXPz+1we/1oiwetJZipvnKe44ONlYtptpBF2Vq0XA9f8qLignOJXKkKeth1/7+e6b3uN/NaGOBOfOla4qUAHco17Rl+fuOpMvcZTw0Ayp4UM0p50OsCvAt1yyjRwvYdxTjNi7Yj7Ok652XVVOF+V4F94bbVg/+XNVWU7qiBrSQo2YylW/LoONcCWm9xCe7LgzNM4KxfuOgfno8DYRvvDC4dmHk2WJj4ePTgJEhAZq1QyH7W2yhE7yqRfZzG5TJVl+orc2uv97cpfE3pouXnxqgDlXKAQGfSuMj5sbFvuPShCjAy2hIjH+3dmWJVUPPKdQxmbAHmpYTj36tPXsM7APfr925Av+caR/9kQjlItnlphi8svpDytN9qqf8FzW8ZC38mUarXdStg5T0aB30YZKlheEgJu4udJ8sn/cEmyTqUxRpXczGp/6BLZ8xfgAqRFEDKbimpjCfpuFqNIA2IiDV0F+1zsPUTYsEocFZuof+OQ33Cz9gYRxMgqP1IU1rTHfhkNO8ffTw2cqdCJeiioH8xdyL3dXxqw8Z+DKvZB/mcty0AeI63aEWr6OcRnjeBHIaRE1h7Di44jQNmNBM7p8G55pnfKyxq1APy6WJt5T8J8SD7DKUfJgxxb/+t63PuaYi0EJvUO2fST7c+E0IcycNj9RHf3f9+8Xzf/Q7Atd/pJiCIENn3PJQnexfNkQyhKCQlGQ1hfT/+FEtqw26L6Co6j74wPsIqaWKo/ptl/jD5Cb5ZQ3+ic4DzTPY1s9a6dmbC4YxiDBVl6Jw9gznDI0O4zs38qctq80aRxpW6qZbVZ1r/GSV1QZThQL50+T0/ysh8MCrgHGapw36hNFIj6jXSOMs26ETYpP3CJ7MCRnsnnHQALYFBlGh9si87JH7Pt3jzRTjbuxR38YZYW0YEkl4IbNhyTbmMEpM8pj+RYPyQXcYBE= 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:(13230040)(376014)(1800799024)(36860700013)(7416014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:54:05.6714 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3b83f926-ac12-4bca-e438-08dd6c2a9e61 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: SJ5PEPF000001EA.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4359 The following functions are only used to deal with XEN_SYSCTL_physinfo, then they shall be wrapped: - arch_do_physinfo - get_outstanding_claims Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini Acked-by: Jan Beulich --- v1 -> v2: - no need to wrap declaration - add transient #ifdef in sysctl.c for correct compilation --- xen/arch/arm/sysctl.c | 2 ++ xen/arch/riscv/stubs.c | 2 ++ xen/arch/x86/sysctl.c | 2 ++ xen/common/page_alloc.c | 2 ++ xen/common/sysctl.c | 2 +- 5 files changed, 9 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c index 32cab4feff..2d350b700a 100644 --- a/xen/arch/arm/sysctl.c +++ b/xen/arch/arm/sysctl.c @@ -15,6 +15,7 @@ #include #include +#ifdef CONFIG_SYSCTL void arch_do_physinfo(struct xen_sysctl_physinfo *pi) { pi->capabilities |= XEN_SYSCTL_PHYSCAP_hvm | XEN_SYSCTL_PHYSCAP_hap; @@ -22,6 +23,7 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) pi->arch_capabilities |= MASK_INSR(sve_encode_vl(get_sys_vl_len()), XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK); } +#endif long arch_do_sysctl(struct xen_sysctl *sysctl, XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) diff --git a/xen/arch/riscv/stubs.c b/xen/arch/riscv/stubs.c index 5951b0ce91..7b3f748886 100644 --- a/xen/arch/riscv/stubs.c +++ b/xen/arch/riscv/stubs.c @@ -328,10 +328,12 @@ long arch_do_sysctl(struct xen_sysctl *sysctl, BUG_ON("unimplemented"); } +#ifdef CONFIG_SYSCTL void arch_do_physinfo(struct xen_sysctl_physinfo *pi) { BUG_ON("unimplemented"); } +#endif /* CONFIG_SYSCTL */ /* p2m.c */ diff --git a/xen/arch/x86/sysctl.c b/xen/arch/x86/sysctl.c index 1b04947516..d7da476379 100644 --- a/xen/arch/x86/sysctl.c +++ b/xen/arch/x86/sysctl.c @@ -91,6 +91,7 @@ static long cf_check smt_up_down_helper(void *data) return ret; } +#ifdef CONFIG_SYSCTL void arch_do_physinfo(struct xen_sysctl_physinfo *pi) { memcpy(pi->hw_cap, boot_cpu_data.x86_capability, @@ -104,6 +105,7 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) if ( IS_ENABLED(CONFIG_SHADOW_PAGING) ) pi->capabilities |= XEN_SYSCTL_PHYSCAP_shadow; } +#endif long arch_do_sysctl( struct xen_sysctl *sysctl, XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c index 5803a1ef4e..36424a9245 100644 --- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -601,6 +601,7 @@ out: return ret; } +#ifdef CONFIG_SYSCTL void get_outstanding_claims(uint64_t *free_pages, uint64_t *outstanding_pages) { spin_lock(&heap_lock); @@ -608,6 +609,7 @@ void get_outstanding_claims(uint64_t *free_pages, uint64_t *outstanding_pages) *free_pages = avail_heap_pages(MEMZONE_XEN + 1, NR_ZONES - 1, -1); spin_unlock(&heap_lock); } +#endif /* CONFIG_SYSCTL */ static bool __read_mostly first_node_initialised; #ifndef CONFIG_SEPARATE_XENHEAP diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index ccce7fe963..76622503e2 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -258,7 +258,6 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = sched_adjust_global(&op->u.scheduler_op); break; -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_physinfo: { struct xen_sysctl_physinfo *pi = &op->u.physinfo; @@ -301,6 +300,7 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) } break; +#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_numainfo: { unsigned int i, j, num_nodes; From patchwork Wed Mar 26 05:50:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029745 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E1E5AC36008 for ; Wed, 26 Mar 2025 06:01:09 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927090.1329916 (Exim 4.92) (envelope-from ) id 1txJp1-0006kz-At; Wed, 26 Mar 2025 06:01:03 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927090.1329916; Wed, 26 Mar 2025 06:01:03 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJp1-0006kq-78; Wed, 26 Mar 2025 06:01:03 +0000 Received: by outflank-mailman (input) for mailman id 927090; Wed, 26 Mar 2025 06:01:02 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiQ-0008HQ-KQ for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:14 +0000 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on20621.outbound.protection.outlook.com [2a01:111:f403:2412::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bd294f7f-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:54:12 +0100 (CET) Received: from MW4P220CA0027.NAMP220.PROD.OUTLOOK.COM (2603:10b6:303:115::32) by CY8PR12MB8363.namprd12.prod.outlook.com (2603:10b6:930:7a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:54:08 +0000 Received: from SJ5PEPF000001EC.namprd05.prod.outlook.com (2603:10b6:303:115:cafe::24) by MW4P220CA0027.outlook.office365.com (2603:10b6:303:115::32) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.43 via Frontend Transport; Wed, 26 Mar 2025 05:54:07 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EC.mail.protection.outlook.com (10.167.242.200) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:54:07 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:54:04 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bd294f7f-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=UHLXg3q/yNGN4jx2CJFDrP4BVSdIYc64w4lJ3979yONSbUb/4rEDcAXgfyVMJsOhgKJuNGDPv0RRTbE0VkMC4Vb0yjYtkFCwzpzyqyT1IUWClh2eaWbBo1qSNeMZw8ii4f2wHbKJufQlf3JA3GaWZB40+OC5Yz3vDuzKiJBOD+8KTO+XPApy9Ik8J0N1yRWcHjo3yLg8jjDqI0+adTE3qEeVH++Opl4f5rxojpQKATlW6WEyOCulZGYWMwfrO3yDtGaYUM1nPiXvOsfz2OuaYKHm9g7M/4/y5PFvitXTVK91f81X7PCwgHPnr18/ucrW01zIYo0XrsIobDCJmVr11Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=gqCQBy/NPdR47E/oqD+gJgPZnc9PR5ehQnPBjBa07EM=; b=Ebav8g3iqP6K2Z+Ko4/LZtP/SeRe+/TXkgqG6nYArkV/Y5tJ6Ws4AMKHHnfdV62RmMeAwPsw0+5dy9plr7Ka6TNCjgKgUYk5D+/IViBsl2nRa/Reww6/XHOohPOqymCvyjkl7/UfjJjM7cAZT4bffn86I4M2yq7cYuQ8po4pyqf6JKa8oqEP9/4BHe4YE3D2RkEKiJ1xnxTjXjNc2XqyDvFWUMyPUo0p0Dx5QcQ7Gz5Ejmx9YF2vfxERheOpT1fBxH0IVTfPMDTKCL4NT8bjmGe4tA3zZ6liK9A4KBVebBeHcqr+BGWJhfrdfwS3Ag0v2EjxsLsiNG540op/Jfr0SA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=gqCQBy/NPdR47E/oqD+gJgPZnc9PR5ehQnPBjBa07EM=; b=B4Utn5DFDvs/LO2zpLMb80WZoQmRg95zarxuHGIOTD0nPTRVMAP94Tafd61VSEO7hj7VSUrTrt5lndt4V9UkktN5FYhsh71+Kq4S36RTwzdLpqahsyiP1U2CBivn5dba1YGTZtCbndq+NAOfE+o6PlxS+gpIJoAXIvRYA0fFSyM= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH v2 16/19] xen/sysctl: make CONFIG_COVERAGE depend on CONFIG_SYSCTL Date: Wed, 26 Mar 2025 13:50:50 +0800 Message-ID: <20250326055053.3313146-17-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EC:EE_|CY8PR12MB8363:EE_ X-MS-Office365-Filtering-Correlation-Id: 6e683c2d-66a2-45c6-a7f8-08dd6c2a9f4e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700013|376014|1800799024; X-Microsoft-Antispam-Message-Info: HNHQlFrHA51tKR9JgbDtSu0m45QIJ3TXezgJ9i+ClB5eg9KZuepTfMKo5hwgM+boYcwV4FrhwR8zSzPY/uGpzKLcH+yBkERb6BjMYcQAhonLrMZBWIF7tuOApO6B82FfK02OZWB+jamaaRwBwvSikGQv8vr3jPIKb2IyEPXzHQ0HGC0bZBTDqWsibGZY8iYjVMbZrQsf86SPSamtLX2XAOjVJFoCh3QXkvMHnZODCx+6MubOD6v7/b2VcANb/M0M4CG9oHRgdw215tMZzPSq6AnM+WgmlCPJnL8CdMBSJyGt8Kiiqu9Zi8dXeMVw02Gfj82FrDVymgEdFVAoisZNbT1J56GMnFwkA4iGRwzyabgndeIJo6GKIEELvPnNKxa0vuj2dqs/fG1B5s9UW2TA7YPvPxOMpxUWyCw7duudVj2y5BhQT/a5ZL0KdohGr3CLlSSvB80KRJw7svxURNEhj2h/oxCim2Ncbqc6+YGGBpw30QImEXMrH1ZxBL+5PChtwNvoibxYu4P2NkFQvHdQsQDDqLndWSSgZssJtyv51UiP8U6F9ZFI1r4FcAuTniCFK/+fMpVh8W7MyIwKG00yHdpqX5StiJmzzJsn5dAtofaKJbJU9zSPNvb1jNnJAzHHpkth60G1WlRawqLDrFUO23x1pJf1HBQsqM0z28Mn92I75xCFJ9GxCCNl4O4i0vc9V4A6m8rmOCjsh+LZaz9WOqADCTvHo9GoiUyz/grDm36iNcNnyZqomoIhL7MiDGjsG5MHvc9aTzridOgB3yOPKvtDYvMPx9s/0DeI1sfSG4Aitx3FtfGG3093SfjhLZ7djjzlkushXsGPnPp51emJ/HvgNSfUQEwRiKoVi2ssZd9ZunC7EpsPB8Hqr6bUO5OXV3RQ+X2A/q1iRBcx/54qK4RIYvvn0en6JOCKYGvYaVrwpTaPK+Zeylk/qtsKlG5sADXpemEpQoXZidVPD1cTKTXlC+Zn6MctBPbz37+SlBzGa6NAsZNIEPS40oSAbByj/jQXmkZGj3l2wzRvKkbGIUWcPAejQiwMaw3vbeE2zOGSza4Osryka6N7o/EEIJa4yNselJqQIQ/b2qpyKWacDWScFsXnqMxcap6oUCsO1wp/M8iDjruJ9cs+LIhytl//niugGIMxSHgtw8Qayfnb3gv8LAg+QK7NK4ledQVfyp2zOD36s6JAvl9roBXbzM8yuAFMw969e7OJ8SYUAsa81dQjlzflm8tb1YfF2Fyco7B0jEzAGXdRLSyjbimq3L/3JLYq7mBZPgUwM7EaqlyEdm7+W3wI5KVgHyg9TeS6417CTvzHbQ2YSQsEe1lEklePz3Mb4KAJLX3L5j+rgr+70x02kEY/mrK1n/ikn5TIR5eCLng/aJwsav9aMUf10E1G6hbMOVAUI5lo0kOpXNVAeZo076ykTq1Mim2pAkXfKEO9EAvQRCWCwAjeTskVty7QYYbQ8iXyGtDpARg/sWAXliSqh/2U+GrKo3xARh69p2E= 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:(13230040)(82310400026)(36860700013)(376014)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:54:07.2230 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6e683c2d-66a2-45c6-a7f8-08dd6c2a9f4e 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: SJ5PEPF000001EC.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB8363 All coverage-related op shall be wrapped around with CONFIG_SYSCTL, so this commit makes CONFIG_COVERAGE depend on CONFIG_SYSCTL. Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - commit message refactor --- --- xen/Kconfig.debug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/Kconfig.debug b/xen/Kconfig.debug index f7cc5ffaab..84d26b3f46 100644 --- a/xen/Kconfig.debug +++ b/xen/Kconfig.debug @@ -37,7 +37,7 @@ config SELF_TESTS config COVERAGE bool "Code coverage support" - depends on !LIVEPATCH + depends on !LIVEPATCH && SYSCTL select SUPPRESS_DUPLICATE_SYMBOL_WARNINGS if !ENFORCE_UNIQUE_SYMBOLS help Enable code coverage support. From patchwork Wed Mar 26 05:50:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029748 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7A017C36008 for ; Wed, 26 Mar 2025 06:01:48 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927136.1329946 (Exim 4.92) (envelope-from ) id 1txJpd-0000bV-6X; Wed, 26 Mar 2025 06:01:41 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927136.1329946; Wed, 26 Mar 2025 06:01:41 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJpd-0000bJ-3V; Wed, 26 Mar 2025 06:01:41 +0000 Received: by outflank-mailman (input) for mailman id 927136; Wed, 26 Mar 2025 06:01:39 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiY-00083W-A0 for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:22 +0000 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2062e.outbound.protection.outlook.com [2a01:111:f403:2415::62e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c2a207b8-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:54:21 +0100 (CET) Received: from MW4P220CA0010.NAMP220.PROD.OUTLOOK.COM (2603:10b6:303:115::15) by SJ5PPFC41ACEE7B.namprd12.prod.outlook.com (2603:10b6:a0f:fc02::9a0) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.44; Wed, 26 Mar 2025 05:54:10 +0000 Received: from SJ5PEPF000001EC.namprd05.prod.outlook.com (2603:10b6:303:115:cafe::49) by MW4P220CA0010.outlook.office365.com (2603:10b6:303:115::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:54:09 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EC.mail.protection.outlook.com (10.167.242.200) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:54:09 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:54:06 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2a207b8-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JF9QiQBLmAQMQLSVNqMebKMWrRctP8jvGggd3n8R+CU/GXhj+d1UhKPjJLBsuGQhCgqvMy/5qIMnkIP/fJZoZDkJOhH6sV1WA6ZeMt77/lGakZwSBib3Jk+9cPy0elEDE6+l6HQx2vlE5SNIvRTFM2dUlYL4Lfcz5/0DwtIirE/X9spqcspA1bL6002mhsTJ2e8Beu8SodaQwleN6AEwrXBkB8faGkd4WbvdZy1gYyWQ9Vw3/qD6PwzIBSQ5fXKuYEHSFlY4jRXEkan3b6NpQ4bA7vvA5tEl8nOFD8YHySe8aHSVX41bD6oay0eKVIhLBb97UyjdUDz2H3cOiR90Yw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=fLupjByiJ57ZhQoY7Kk9prb3LBq+7sgHpLsMgB0Rgx8=; b=wAFOEEeaNLtOSp2uT5biQPJwgkoiNPJmHoh4PPmSU34eUGXa8mJQ5bRWjSlCLN9/p/bNta3sMDYZFxbT3djqQiZEXYcIfrCVnfV9SMtJH9jTgNpEZBlhT1rVj/W7hufvi2ngmQL0Dqfo3xft/8kXzu3bQmPVsp8n9WFXTiOYu1w+Zy1jEbbngno+UcOYfORXOD8kFow5ilyzk1dp40kTyzs98Do/+NqcKh2AsCbm30A5ESuVtAIerYHnrzylcyQkSjEGqi1rDfKezZIyJ5rOjrKG72G2U3ehFw7YtPN9JQn2ParqsF3mGlXdfmRpF0n9ekK4w7RLGvczsuqwlsYzmA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=fLupjByiJ57ZhQoY7Kk9prb3LBq+7sgHpLsMgB0Rgx8=; b=ZkGz9txPaPeNSGrRUBpsGrRMfl3tpnVaX/erjik3mvImmTXnKVQp/3v79W/5dzozooBkrIPMx5sfnSEqmPTmUPGu7eCTv4GZm9M/Ci+0UgDSANIvrJfVqTDPTYvqYKusyE69IYeT9qcLXVErerj7UB4fAd8Qy6DpQ+Wp0oIVyqM= 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 From: Penny Zheng To: CC: , Penny Zheng , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , "Julien Grall" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Stefano Stabellini Subject: [PATCH v2 17/19] xen/sysctl: make CONFIG_LIVEPATCH depend on CONFIG_SYSCTL Date: Wed, 26 Mar 2025 13:50:51 +0800 Message-ID: <20250326055053.3313146-18-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EC:EE_|SJ5PPFC41ACEE7B:EE_ X-MS-Office365-Filtering-Correlation-Id: 440aea4b-ca4a-4751-970d-08dd6c2aa0c2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|1800799024|36860700013|376014; X-Microsoft-Antispam-Message-Info: Yc8aN+YD3HR5HnKwu/Jzg756T1PBAbq617QTAQcEwHwlRs+QbfumfbpSvgSAfmNBgPo6GK5wCIWSqvwS3ihdgXhIYbWeaSF4mmS2Agd+Rso+DwYIpHMhINJqrFzAp2XPrySRRjv8CqxzZjj149z41ZaqoUma7N8sqRjmncVgCQotBTqnQv4zokkIW5HNUg4ROmHaDJQnkcm/jYf+9X0pBEEVqX9ocpkmWZt9bsy4JEeyphrLsGnpK3lFjoU8ndLsLke0VUSSvRohmrhx3F0pUfP4jBYm6PehwGrJ8Q4cs7YpU+VCHY3337V36KqkfluLi3CB6pTqBtRiE7HHNbwwS/DXnfsydqBT+wGxvs3Y5naPdaI0e9IEXHvgFGyjF72E0lVpbs/rDTMqICgXpsZ9O94yuKzufp2Mw8A0crZQUee7WBH7pbjLj6zP9tNA149S5lMIdvzKeual7oVYdTVAd4Y0WygCPqEe0CUqpLaSeCYz6lLiarcERPUhKCvb7B8cOT8HRusMBKrTS5sGfFAs6IeGhjTpg5wwINtglofzh+kf4tBdh+2by3BNWC9Hnp+Sl6RfUWDuhHVOJb7jCb2l/ejN0RptBg24o2rSCTNuj+8/0G96D5qOeZg0KWjJ0SlsFbk6DpuRhjVSgdRFlauyDf4r7Ovk9ujrlA+OSdYeGgk+MlNe1r7EgXxO5Fg1LyrokvRUQ0mdmiQoTV6Qh9XMBgd03vdlLRKM5pbPQNkFtdZuVm8udhGBf20UtJFnOrhDk+xAqbDAjIRHrTo+hxCdlLY6bKTCKrbrco63q6gsGTnYd7pqIs1dMOJ5Lh/vmekyL9QaA9XWsbXGY89/spRn0ZbNIjfMJ5eC7hijcFlZ1Orsy2oAfvOJ/Vl3piv+I9r2p4Hri2vVjzQZM8RDQq/gYhYv4IOeTlUOMK9uUyWmBzl+ggZcqWnYpubr+vTrxsr9ES9uAkIINugVH1G76kge8EaARHiWQCuzgyHE/OuuZtG3Sl2xRf47Y7sJyBFPnOR6IUqkE7Me4iQ5rNvxrWfM9S2ccQyCRUuShWSRyQ+6a/rARP9tspdHd/IPXA2SUY4djoCush5Plau2V9aISam9ybNWLuE4uS9HYymAvr3xT/l0EIIfiOJiDnkS4AxpodrI6NO30bzEG2PllDw0Lmz9izOqzBkeAdJ5J6H1GCfWSKXxgMXI99wQ067sNC+yJFyKKjqUCYzbmitPiARG0U2RYWtNjAgvT4ZUGX2NVkRImN+LVQ7+Q/tQ7U+Ucpn7tyA6PW2Rva0dvyZtw2LukByDG5NwkgKvsgTWs+9z0D/IKV/ZC66EVWtk3fBQTea/k5eoYhh2ukVFg5Pj1dDeLRqzE4wu3OeXZlepXfqv1jJg9+vHwrBFLG8GJAs5fkenxi7W7U00FJ4/geUQZrJA8c/YpN44pwZ9Ki7PoTvBcOK5o35XTLyN5SQ3hzI2dZYJlXcbge1r3U4tmOIsCIP2WQ8XJy9c6nJdhX6n5D7X7siW4J4= 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:(13230040)(82310400026)(1800799024)(36860700013)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:54:09.6605 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 440aea4b-ca4a-4751-970d-08dd6c2aa0c2 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: SJ5PEPF000001EC.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ5PPFC41ACEE7B LIVEPATCH mechanism relies on LIVEPATCH_SYSCTL hypercall, so CONFIG_LIVEPATCH shall depend on CONFIG_SYSCTL Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- v1 -> v2: - commit message refactor --- xen/common/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/common/Kconfig b/xen/common/Kconfig index 426fa8fcc2..a7e1147e8a 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -421,7 +421,7 @@ config CRYPTO config LIVEPATCH bool "Live patching support" default X86 - depends on "$(XEN_HAS_BUILD_ID)" = "y" + depends on "$(XEN_HAS_BUILD_ID)" = "y" && SYSCTL select CC_SPLIT_SECTIONS help Allows a running Xen hypervisor to be dynamically patched using From patchwork Wed Mar 26 05:50:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029749 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 57287C3600E for ; Wed, 26 Mar 2025 06:01:50 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927140.1329955 (Exim 4.92) (envelope-from ) id 1txJpe-0000t4-Dn; Wed, 26 Mar 2025 06:01:42 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927140.1329955; Wed, 26 Mar 2025 06:01:42 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJpe-0000sx-Ai; Wed, 26 Mar 2025 06:01:42 +0000 Received: by outflank-mailman (input) for mailman id 927140; Wed, 26 Mar 2025 06:01:40 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJiZ-00083W-AA for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:23 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2062b.outbound.protection.outlook.com [2a01:111:f403:200a::62b]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c2ed825c-0a06-11f0-9ea3-5ba50f476ded; Wed, 26 Mar 2025 06:54:22 +0100 (CET) Received: from MW4PR02CA0007.namprd02.prod.outlook.com (2603:10b6:303:16d::33) by CH0PR12MB8463.namprd12.prod.outlook.com (2603:10b6:610:187::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.43; Wed, 26 Mar 2025 05:54:15 +0000 Received: from SJ5PEPF000001EF.namprd05.prod.outlook.com (2603:10b6:303:16d:cafe::67) by MW4PR02CA0007.outlook.office365.com (2603:10b6:303:16d::33) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:54:15 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EF.mail.protection.outlook.com (10.167.242.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:54:15 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:54:09 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c2ed825c-0a06-11f0-9ea3-5ba50f476ded ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=aS5U2wdPHPyqviX7lS3GuMDnxskm3zpwoC7mYVxIv+2LXlBt0nxc5oIX+06jPEUNMKxeYW94OkWvrT49Osrgj4xkn+TVtqxUeMABQl/MONrvUnhBpv+hUjby3L3kBtaBGrOQNq7rwQDuHTaVV9F2WSfnSbv8T7GjdIVRTlNmGcEhJIbmRH+Wr0BFqzD93ZTrCRC4FuEkinLpkWAbEH+u/L9lq7G6imKhUodWJQHGs9YgngWOgEP5O6guB13kYoZPqr6lpmWaeQBhMwNzV0X1/gCznijl69uBGYD81xaZYxDkLXDZPFDHFcFVU1ec0TPbDKZn0/RF9A3NLKIWoXGV0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=UhP3wDm2HcbDP/Jr6t5e2kUjv8IqtbnFN3jumgtN+lg=; b=cjWNDXtKbsFvpevNtLr+AxXhUxN5Ohw4edLZKthcASXF/qD1ehXdSaEOKsZfla+JW3vBhRbyNjgy6xaK/az5u1JwzmERqFZ/DpVBGyAsx+VFaNGIR26KM5bdltlYXG7F0B27PxVhzWdwE7SkknKb1PEy4F9hbQHB+FkO9Er5+WhvCYVilasYdeUOiDro3BN6qo4tQulqO3vYd8sX6ri0SP7LWag9ee943I1vfnjy5ITpoanem2WbM4gNrSuy8rves6IfqjG4zCH3Y953U50oEX2t1+QhlOOViaeFFjDVIG9ZBjOvaQQrI9jYZWxCSsGSx5g6VBNTJmkZmz5KtgOdMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=UhP3wDm2HcbDP/Jr6t5e2kUjv8IqtbnFN3jumgtN+lg=; b=gq+neaWufP8MsFu1dR7qxASYRCx40BCCtq0EAtgxFTNRkGW36Uiz4ROgNIr+c/1ESADfRas0XWBWcsjq8iM7rfu0qBf8yYZa/6aguKurjMiBHNZZ5MO88sgLIHguxfAayXreIJKqb0Ce1on1VTSeIHcR//CPkoIovrBArjMpvoo= 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 From: Penny Zheng To: CC: , Penny Zheng , Stefano Stabellini , Julien Grall , Bertrand Marquis , Michal Orzel , "Volodymyr Babchuk" , Andrew Cooper , Anthony PERARD , "Jan Beulich" , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Alistair Francis , "Bob Eshleman" , Connor Davis , Oleksii Kurochko , Stefano Stabellini , Sergiy Kibrik Subject: [PATCH v2 18/19] xen/sysctl: wrap around arch-specific arch_do_sysctl Date: Wed, 26 Mar 2025 13:50:52 +0800 Message-ID: <20250326055053.3313146-19-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EF:EE_|CH0PR12MB8463:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f984c3f-90f6-49e9-2b77-08dd6c2aa3f9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|1800799024|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: hDYjutqxNuDyUQjNW1MwtYqbzXYz2TTaYUJ7b3FLUKT5n71jZgh93jcxl/qSccVebM8/i3OXz0PD6ibGLjXjh+3rq1G0gRVVv5enLoDMrr3eWXLlqdgDwaypt9cLa8VmtU9+LYrf69Vhq0MPsRA+051kRLnRWNmq/lFRmBIpSD1sVQkyoYbzwfPDSktill+iRQCMRqy+AZtwjcCcpUbncXf+wViwqe5tZ5xkyTfra0slL35zq7WJnoYO7VjT0P+ayQ+mhp9Y+MUe1aLOJF8/fHbQXItxi/whgZaQ254JOPEGapxAbzF0t6CdwZ9qwe+dDqY8ECDL7LyIAJE+aQPMif1/wX6OH7qgcjC4vd9I9JDqHmWeIG57htStV5EPT1q6AnVouKeaEMtsCalEjlbfVSMgp8aP8mbtJYvhWp6ZMskfXCD+G1XyY2s/G2WaCEUMWjCAxHcpKWC4sNVjKQcADEyVZKAFV/VDixmPMZC4VO+uT05CM42iZXd9D4x1zvkEE2UBzdtu7VMk1xHxkF9Vwsh2PpFy6BwucgMvuv8sT4H2pqqcvI4/nd77N325olMLzoHVxFX5wztltVlbvvHoqUGwMBqs2G5PnpacTiKZb8R5Bt6EA3knS9yf00JzmEJKPtPxF89LKS0LgbpGJDXMCTYcgSN05wJe06c6xVR+lzX19tkR6DpQvlL+O3FhwNs1FV9dRhjvnObzXFcSo7B5ZkVnS7eAQqS03qdujdk0cB+A6vStVnxdlvQJFI5XX+/PAcXEdfEWhFUoQDKRqpQRL1JuwTxnuwLm7G/FThek90rD5VgNOQHIayE8QTTf+YA6FHHROwkGep2IMy2dsd59651rXtwuOBoLMXAHdtbNCoAsbPohYPu8TK8frXZI2mSJxP02VQkW01Y+DyhTQU9r68Rsu9yVlwXHGNlck2uD70wUmtWBl/OeQBQg2Z11CEyrvLMlXxiTcO3zGQ2Q/BzD+hQzaAfZnBevwqyg0mqa+068j8GIOqTDIiTR8b0GKf39rT3lektc21HW8BuJlT8ccxcGC89IGEY8BuBRmY/+uzX2GxOJHunUrkmuTqWRebXhBHNRnwuw5AUsfs2ryWWlBOqxB8/ta3LOP23U5FNTPCzpt7psiH1H0lBKusjHuAgI/YCw+uvq3ssTIhvdXzGRNN8nxGeAKsKiywPs/YNXHfS4nx1F0BwGEcasud3IwOJFPxWZJisyD0QGqzBC0Gt9wUGDltSlmfUUw7ZU7v4TDb3P1GULNBiEfgpM/8PomHhRtGZfequZ04pEZNc2ffzy8XvCcI9N7VNZAQftpqU6tZEQsRpWrVoTCMZR8phP7rl5Wh8soGZ9i9xwiTX9MKyu5oI8+A09aiI9FM1CEtjClaZ8FT07QPhpy/RnPXRIi/xtsSypxC5VFXfnllhcxL8cKpUrpnK+F0smFkHjf2rIlpgLySucRht2EKOffqX/+wWb+jgRF3dvH+ikIcPgKuIZI2y0xItMD3cvqTABfUq0L08= 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:(13230040)(376014)(7416014)(1800799024)(82310400026)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:54:15.0514 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4f984c3f-90f6-49e9-2b77-08dd6c2aa3f9 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: SJ5PEPF000001EF.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR12MB8463 Function arch_do_sysctl is to perform arch-specific sysctl op. Some functions, like psr_get_info for x86, DTB overlay support for arm, are solely available through sysctl op, then they all shall be wrapped with CONFIG_SYSCTL Also, remove all #ifdef CONFIG_SYSCTL-s in arch-specific sysctl.c, as we put the guardian in Makefile for the whole file. Signed-off-by: Stefano Stabellini Signed-off-by: Sergiy Kibrik Signed-off-by: Penny Zheng Reviewed-by: Stefano Stabellini --- - use "depends on" for config OVERLAY_DTB - no need to wrap declaration - add transient #ifdef in sysctl.c for correct compilation --- xen/arch/arm/Kconfig | 1 + xen/arch/arm/Makefile | 2 +- xen/arch/arm/sysctl.c | 2 -- xen/arch/riscv/stubs.c | 2 +- xen/arch/x86/Makefile | 2 +- xen/arch/x86/psr.c | 18 ++++++++++++++++++ xen/arch/x86/sysctl.c | 2 -- xen/common/sysctl.c | 2 ++ 8 files changed, 24 insertions(+), 7 deletions(-) diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig index ffdff1f0a3..aa1b4a6e6b 100644 --- a/xen/arch/arm/Kconfig +++ b/xen/arch/arm/Kconfig @@ -141,6 +141,7 @@ config HAS_ITS config OVERLAY_DTB bool "DTB overlay support (UNSUPPORTED)" if UNSUPPORTED + depends on SYSCTL help Dynamic addition/removal of Xen device tree nodes using a dtbo. diff --git a/xen/arch/arm/Makefile b/xen/arch/arm/Makefile index 4837ad467a..7c6015b84d 100644 --- a/xen/arch/arm/Makefile +++ b/xen/arch/arm/Makefile @@ -54,7 +54,7 @@ obj-y += smpboot.o obj-$(CONFIG_STATIC_EVTCHN) += static-evtchn.init.o obj-$(CONFIG_STATIC_MEMORY) += static-memory.init.o obj-$(CONFIG_STATIC_SHM) += static-shmem.init.o -obj-y += sysctl.o +obj-$(CONFIG_SYSCTL) += sysctl.o obj-y += time.o obj-y += traps.o obj-y += vcpreg.o diff --git a/xen/arch/arm/sysctl.c b/xen/arch/arm/sysctl.c index 2d350b700a..32cab4feff 100644 --- a/xen/arch/arm/sysctl.c +++ b/xen/arch/arm/sysctl.c @@ -15,7 +15,6 @@ #include #include -#ifdef CONFIG_SYSCTL void arch_do_physinfo(struct xen_sysctl_physinfo *pi) { pi->capabilities |= XEN_SYSCTL_PHYSCAP_hvm | XEN_SYSCTL_PHYSCAP_hap; @@ -23,7 +22,6 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) pi->arch_capabilities |= MASK_INSR(sve_encode_vl(get_sys_vl_len()), XEN_SYSCTL_PHYSCAP_ARM_SVE_MASK); } -#endif long arch_do_sysctl(struct xen_sysctl *sysctl, XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) diff --git a/xen/arch/riscv/stubs.c b/xen/arch/riscv/stubs.c index 7b3f748886..ae865e1972 100644 --- a/xen/arch/riscv/stubs.c +++ b/xen/arch/riscv/stubs.c @@ -322,13 +322,13 @@ unsigned long raw_copy_from_guest(void *to, const void __user *from, /* sysctl.c */ +#ifdef CONFIG_SYSCTL long arch_do_sysctl(struct xen_sysctl *sysctl, XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) { BUG_ON("unimplemented"); } -#ifdef CONFIG_SYSCTL void arch_do_physinfo(struct xen_sysctl_physinfo *pi) { BUG_ON("unimplemented"); diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile index f59c9665fd..837eafcbc0 100644 --- a/xen/arch/x86/Makefile +++ b/xen/arch/x86/Makefile @@ -79,7 +79,7 @@ ifneq ($(CONFIG_PV_SHIM_EXCLUSIVE),y) obj-y += domctl.o obj-y += platform_hypercall.o obj-$(CONFIG_COMPAT) += x86_64/platform_hypercall.o -obj-y += sysctl.o +obj-$(CONFIG_SYSCTL) += sysctl.o endif extra-y += asm-macros.i diff --git a/xen/arch/x86/psr.c b/xen/arch/x86/psr.c index 5815a35335..499d320e61 100644 --- a/xen/arch/x86/psr.c +++ b/xen/arch/x86/psr.c @@ -133,9 +133,11 @@ static const struct feat_props { */ enum psr_type alt_type; +#ifdef CONFIG_SYSCTL /* get_feat_info is used to return feature HW info through sysctl. */ bool (*get_feat_info)(const struct feat_node *feat, uint32_t data[], unsigned int array_len); +#endif /* write_msr is used to write out feature MSR register. */ void (*write_msr)(unsigned int cos, uint32_t val, enum psr_type type); @@ -418,6 +420,7 @@ static bool mba_init_feature(const struct cpuid_leaf *regs, return true; } +#ifdef CONFIG_SYSCTL static bool cf_check cat_get_feat_info( const struct feat_node *feat, uint32_t data[], unsigned int array_len) { @@ -430,6 +433,7 @@ static bool cf_check cat_get_feat_info( return true; } +#endif /* CONFIG_SYSCTL */ /* L3 CAT props */ static void cf_check l3_cat_write_msr( @@ -442,11 +446,14 @@ static const struct feat_props l3_cat_props = { .cos_num = 1, .type[0] = PSR_TYPE_L3_CBM, .alt_type = PSR_TYPE_UNKNOWN, +#ifdef CONFIG_SYSCTL .get_feat_info = cat_get_feat_info, +#endif .write_msr = l3_cat_write_msr, .sanitize = cat_check_cbm, }; +#ifdef CONFIG_SYSCTL /* L3 CDP props */ static bool cf_check l3_cdp_get_feat_info( const struct feat_node *feat, uint32_t data[], uint32_t array_len) @@ -458,6 +465,7 @@ static bool cf_check l3_cdp_get_feat_info( return true; } +#endif /* CONFIG_SYSCTL */ static void cf_check l3_cdp_write_msr( unsigned int cos, uint32_t val, enum psr_type type) @@ -473,7 +481,9 @@ static const struct feat_props l3_cdp_props = { .type[0] = PSR_TYPE_L3_DATA, .type[1] = PSR_TYPE_L3_CODE, .alt_type = PSR_TYPE_L3_CBM, +#ifdef CONFIG_SYSCTL .get_feat_info = l3_cdp_get_feat_info, +#endif .write_msr = l3_cdp_write_msr, .sanitize = cat_check_cbm, }; @@ -489,11 +499,14 @@ static const struct feat_props l2_cat_props = { .cos_num = 1, .type[0] = PSR_TYPE_L2_CBM, .alt_type = PSR_TYPE_UNKNOWN, +#ifdef CONFIG_SYSCTL .get_feat_info = cat_get_feat_info, +#endif .write_msr = l2_cat_write_msr, .sanitize = cat_check_cbm, }; +#ifdef CONFIG_SYSCTL /* MBA props */ static bool cf_check mba_get_feat_info( const struct feat_node *feat, uint32_t data[], unsigned int array_len) @@ -508,6 +521,7 @@ static bool cf_check mba_get_feat_info( return true; } +#endif /* CONFIG_SYSCTL */ static void cf_check mba_write_msr( unsigned int cos, uint32_t val, enum psr_type type) @@ -545,7 +559,9 @@ static const struct feat_props mba_props = { .cos_num = 1, .type[0] = PSR_TYPE_MBA_THRTL, .alt_type = PSR_TYPE_UNKNOWN, +#ifdef CONFIG_SYSCTL .get_feat_info = mba_get_feat_info, +#endif .write_msr = mba_write_msr, .sanitize = mba_sanitize_thrtl, }; @@ -808,6 +824,7 @@ static struct psr_socket_info *get_socket_info(unsigned int socket) return socket_info + socket; } +#ifdef CONFIG_SYSCTL int psr_get_info(unsigned int socket, enum psr_type type, uint32_t data[], unsigned int array_len) { @@ -839,6 +856,7 @@ int psr_get_info(unsigned int socket, enum psr_type type, return -EINVAL; } +#endif /* CONFIG_SYSCTL */ int psr_get_val(struct domain *d, unsigned int socket, uint32_t *val, enum psr_type type) diff --git a/xen/arch/x86/sysctl.c b/xen/arch/x86/sysctl.c index d7da476379..1b04947516 100644 --- a/xen/arch/x86/sysctl.c +++ b/xen/arch/x86/sysctl.c @@ -91,7 +91,6 @@ static long cf_check smt_up_down_helper(void *data) return ret; } -#ifdef CONFIG_SYSCTL void arch_do_physinfo(struct xen_sysctl_physinfo *pi) { memcpy(pi->hw_cap, boot_cpu_data.x86_capability, @@ -105,7 +104,6 @@ void arch_do_physinfo(struct xen_sysctl_physinfo *pi) if ( IS_ENABLED(CONFIG_SHADOW_PAGING) ) pi->capabilities |= XEN_SYSCTL_PHYSCAP_shadow; } -#endif long arch_do_sysctl( struct xen_sysctl *sysctl, XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index 76622503e2..b0e2e43c7e 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -490,8 +490,10 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) break; default: +#ifdef CONFIG_SYSCTL ret = arch_do_sysctl(op, u_sysctl); copyback = 0; +#endif break; } From patchwork Wed Mar 26 05:50:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Penny, Zheng" X-Patchwork-Id: 14029741 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 69AB8C36008 for ; Wed, 26 Mar 2025 06:00:53 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.927051.1329882 (Exim 4.92) (envelope-from ) id 1txJoh-0005AW-EC; Wed, 26 Mar 2025 06:00:43 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 927051.1329882; Wed, 26 Mar 2025 06:00:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJoh-00059n-8b; Wed, 26 Mar 2025 06:00:43 +0000 Received: by outflank-mailman (input) for mailman id 927051; Wed, 26 Mar 2025 06:00:42 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1txJia-0008HQ-Q1 for xen-devel@lists.xenproject.org; Wed, 26 Mar 2025 05:54:24 +0000 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on20617.outbound.protection.outlook.com [2a01:111:f403:240a::617]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id c355996f-0a06-11f0-9ffa-bf95429c2676; Wed, 26 Mar 2025 06:54:22 +0100 (CET) Received: from MW3PR05CA0015.namprd05.prod.outlook.com (2603:10b6:303:2b::20) by MN0PR12MB5930.namprd12.prod.outlook.com (2603:10b6:208:37d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.42; Wed, 26 Mar 2025 05:54:18 +0000 Received: from SJ5PEPF000001EB.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::81) by MW3PR05CA0015.outlook.office365.com (2603:10b6:303:2b::20) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.42 via Frontend Transport; Wed, 26 Mar 2025 05:54:17 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001EB.mail.protection.outlook.com (10.167.242.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Wed, 26 Mar 2025 05:54:17 +0000 Received: from penny-System-Product-Name.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.39; Wed, 26 Mar 2025 00:54:13 -0500 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c355996f-0a06-11f0-9ffa-bf95429c2676 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=OCceUlYjnHpbA8W4g01S2OWlFq68u6+fYt5wo2j+wzeX/RbJWBESsJvsdPCnvcIgZLjAwBf7hjazgrpGcqoV/uMV6Wa81bl2VdZo3oUUD5UaZHkNtf/iTcG8QaFTtFt9E1oViF+OPyl6W7LiDtxivWASChGm3H3IdzPEhqpE2Px45OGRD3gIoDZ8VYZQNMGuOOHdu0Ww4QOSQ1Q2pFrs22aKJyPA4I7sNJNe5ZmFm1566WvnSLEi0Hj5fLs666MDATrBGLvalVz70f0WP3kkVZ2KOrQAlr/DaJrEUSqoZnNO2Y1SST/hpESMRBlN7DfQEd9/dtuXXVdqs3S57Kv+zQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=/8MPf0x6OdT8+nJ6fBz2zA9OxP0+BJ0rh/tuxbi05co=; b=tUpPysRkztT0B68nlg2ZdHb9kGG1+3WxZdx9qcSmX1vxhMoLrH5XL82AeZLW/StdO6lPMPOjYRaFGEJf0Ggj+clWG96c1Nxz0lBrIqRNihTcj5K2woqC1AXhAb+XZAbnkd302eEYUCKJu4/LY7IfxiUdSyXTbgxkVMayw6vmRGZV8z+Pa1+vSuO5T7kTCmOtPj40h0sh1CL6/uZ71gEYbD1Bgk0/KXlv4yImQlfIXRQAPfmfjr9Q4EkahfiyVdfWkcVoOIhC55FIFctEhncM4Kc/GuIMP5Chav7O8Eg1KhZztadLl4KqcoMKfyEK/jpUzscqDJ66tyGI9/H+OVIY/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=/8MPf0x6OdT8+nJ6fBz2zA9OxP0+BJ0rh/tuxbi05co=; b=jXovIAjHagOQnw1g0WpA8PniPhINeFQg/GKoLEXm9P7sCH66YNsxV44FvBa6D/uN4EKGkKNIgt4d8urOysOy4zAhJBJoXlpH55WCJVkxTsnC3NP7qnECFIHajMPF/Iu5NvwgbE2F7L9G4P/uEjenYGD9RI/NgnVyJesNxR9pwkA= 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 From: Penny Zheng To: CC: , Stefano Stabellini , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , Julien Grall , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , "Stefano Stabellini" , Sergiy Kibrik , Penny Zheng Subject: [PATCH v2 19/19] xen/sysctl: wrap around sysctl hypercall Date: Wed, 26 Mar 2025 13:50:53 +0800 Message-ID: <20250326055053.3313146-20-Penny.Zheng@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250326055053.3313146-1-Penny.Zheng@amd.com> References: <20250326055053.3313146-1-Penny.Zheng@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EB:EE_|MN0PR12MB5930:EE_ X-MS-Office365-Filtering-Correlation-Id: 244b3b3a-4207-44d6-b0ad-08dd6c2aa55f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|1800799024|376014|36860700013; X-Microsoft-Antispam-Message-Info: skzT9pFq23cY9jgQqQD50Uh6z9X2yKH9S7Y2AiZ45+fYfwvUmqbKEZsH31l8RJCBqZuYgZVM3WY++E19p1sg2TuIx80ItD4rKNpT6o49FeisGpuO9C6KWL49Q0kOhj7W3oGZcR1ewnoyDbetzowQTzdUQYHIEQJnSzuEF8MGbf4MpgB5WbQ+jyra4JNbLNAKEevhf6cziTb4KCf3Ueryn8xUJMdsxfiF5rvQ0KfKrB1zkEheyKqrlS6QdZfhlQJbnpIfZbrruDZeiQAU5xM+/F1ui7Om2NKilVEQpfmxXmu/2TWPtWWqAWZCF+O0OI043/46HHYpJwuxHkqQkB1Ti4soM4FbQATNfuVPkvPtWP1MyyIj6e1Ln3cHsL8qCy/yROmfKb6Nkhnig3/nsrLZ0R2I5YM5jwsVobECCJ7kOpjz8+erBhUJ+z063QA+lsnmeWufeJMsa2yjT7Zhy5tIsKcTfyNdWU/WcfQCFbU89xq6EfqDxBuGE5PitQC2OGcFQhkCD8D9NS7hW0fL1yf9RhGpVrWEVpEJK/mr2LtcQRLUS533e+vt13W1JEq8NJse6yh/ZocFsbnLGHJ+yDI03JSfVN9l0WvyudT4Vu9nN3gwL2J184yIYjWgM8BwuUezPgcKH1YGURzeUrluq1PWp6ujXabY3pkRXlmrUIISaa0eY3iB2SJPA8wtLPT1WqQDcFIWyJ2uYMtVnBevH7soJBCj/l/rNvJ2ndvUeizumazhgmSW7hY8X/jL3rQ0LprLuGL2MNYFQ6Ap6Z3aSCfAtXpOZWddpN+MjtqreETKitpzLqroCoLuWjIyGWz4fpsZ/MZIO+0ehfo5CDsmNZjANuWHUrcXdiiXhSQVUNNvBjYBP4nWfrMoNWmLGPQ4u+lspFMSJF8Ro7OTvS6px6lpn15SFEt55aW086eMuqBcFY9PlXCkfhkoJDQOJiZjAO2/6+B8u3rp4mQZ1jItifSYO78lPEdsDQ2U/qa9EAPQp5GvbwMCww/RahS4gipBCTvu6BQAEdSUDe5KSAeCHCT826BGPsYsQh7uYwxolpoKwsOdmNdqZmXt3ziO5OLjNCW5CdB6+h2C6W335lcArOXD2HX3tKjSkjIdn+jB+yQXNJsHnCNZ2ghkXfCYWGC2y4bS0nHvnLW6QNsY8qyBycZicvlKMjRksC3h9oHn2l2ZqDbiq+ZrJhqP3HsCCL3OcIK3McstT9NvXMqeFVMzhv2yoLz4BlcWRo1oMeNkYUondjBcUkhHhhAiV3FDguZfSu5bC3jySXFeBF/Yx609BtId5Zk23W0w/x/88H1UBYIY2OfEhaIh/KaVT9HlsYJ5odX8gg7vYL1sFWt02NIHi8j3Oxd99pRm6eQRTjTqDx0GLpMsZHiQx0wH4SY15rWIp7ZA4PrHwcsKnXldqn8sWNKLyQ8H1i5SUc4Yr54JhgV74JZny4xniaeh57FSkiSgQZq4G8U3CPkNaX4JkDrotqY6qUWWiTwP5awrQI6qzFfJNJ8= 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:(13230040)(82310400026)(1800799024)(376014)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Mar 2025 05:54:17.4010 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 244b3b3a-4207-44d6-b0ad-08dd6c2aa55f 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: SJ5PEPF000001EB.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB5930 From: Stefano Stabellini We intend to wrap around sysctl hypercall, and also correct the order alphabetically We also need to removes all transient "#ifdef CONFIG_SYSCTL"-s in sysctl.c. Signed-off-by: Stefano Stabellini Signed-off-by: Sergiy Kibrik Signed-off-by: Penny Zheng --- v1 -> v2: - remove all transient "#ifdef CONFIG_SYSCTL"-s in sysctl.c --- xen/common/Makefile | 2 +- xen/common/sysctl.c | 10 ---------- xen/include/hypercall-defs.c | 8 ++++++-- 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/xen/common/Makefile b/xen/common/Makefile index ac23120d7d..d45dfeb5b6 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -69,7 +69,7 @@ obj-$(CONFIG_COMPAT) += $(addprefix compat/,domain.o memory.o multicall.o xlat.o ifneq ($(CONFIG_PV_SHIM_EXCLUSIVE),y) obj-y += domctl.o obj-$(CONFIG_VM_EVENT) += monitor.o -obj-y += sysctl.o +obj-$(CONFIG_SYSCTL) += sysctl.o endif extra-y := symbols-dummy.o diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c index b0e2e43c7e..ba8c5e2266 100644 --- a/xen/common/sysctl.c +++ b/xen/common/sysctl.c @@ -58,7 +58,6 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) switch ( op->cmd ) { -#ifdef CONFIG_SYSCTL case XEN_SYSCTL_readconsole: ret = xsm_readconsole(XSM_HOOK, op->u.readconsole.clear); if ( ret ) @@ -67,17 +66,14 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = read_console_ring(&op->u.readconsole); break; -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_tbuf_op: ret = tb_control(&op->u.tbuf_op); break; -#ifdef CONFIG_SYSCTL case XEN_SYSCTL_sched_id: op->u.sched_id.sched_id = scheduler_id(); break; -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_getdomaininfolist: { struct domain *d; @@ -117,7 +113,6 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) } break; -#ifdef CONFIG_SYSCTL #ifdef CONFIG_PERF_COUNTERS case XEN_SYSCTL_perfc_op: ret = perfc_control(&op->u.perfc_op); @@ -129,7 +124,6 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) ret = spinlock_profile_control(&op->u.lockprof_op); break; #endif -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_debug_keys: { char c; @@ -188,7 +182,6 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) break; #endif /* CONFIG_PM_STATS */ -#ifdef CONFIG_SYSCTL case XEN_SYSCTL_page_offline_op: { uint32_t *status, *ptr; @@ -300,7 +293,6 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) } break; -#endif /* CONFIG_SYSCTL */ case XEN_SYSCTL_numainfo: { unsigned int i, j, num_nodes; @@ -490,10 +482,8 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t) u_sysctl) break; default: -#ifdef CONFIG_SYSCTL ret = arch_do_sysctl(op, u_sysctl); copyback = 0; -#endif break; } diff --git a/xen/include/hypercall-defs.c b/xen/include/hypercall-defs.c index 7720a29ade..322aa6eb09 100644 --- a/xen/include/hypercall-defs.c +++ b/xen/include/hypercall-defs.c @@ -195,10 +195,12 @@ kexec_op(unsigned long op, void *uarg) dm_op(domid_t domid, unsigned int nr_bufs, xen_dm_op_buf_t *bufs) #endif #ifndef CONFIG_PV_SHIM_EXCLUSIVE -sysctl(xen_sysctl_t *u_sysctl) domctl(xen_domctl_t *u_domctl) paging_domctl_cont(xen_domctl_t *u_domctl) platform_op(xen_platform_op_t *u_xenpf_op) +#ifdef CONFIG_SYSCTL +sysctl(xen_sysctl_t *u_sysctl) +#endif #endif #ifdef CONFIG_HVM hvm_op(unsigned long op, void *arg) @@ -274,8 +276,10 @@ physdev_op compat do hvm hvm do_arm hvm_op do do do do do #endif #ifndef CONFIG_PV_SHIM_EXCLUSIVE -sysctl do do do do do domctl do do do do do +#ifdef CONFIG_SYSCTL +sysctl do do do do do +#endif #endif #ifdef CONFIG_KEXEC kexec_op compat do - - -