From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293779; cv=pass; d=zohomail.com; s=zohoarc; b=ICM1TjtdmSQafKMyJzAJ6BJgS0v4r3UwS0IVPRhgIntI3QgxctcGxbzvo/KOA3ckLeZOvh3IA2YTlGh294/uMmQ7wHqX6XilLmwRWqJpgWcbkGuaLnsTfNFkdwPAMZpfEz4cHKk5E1z5zqVNqBk9unuoaA1w/TE3NV1svA++xQg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293779; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=GVn2duUPp9hjMB8CoqALfiWNheVOsXnVO9y1TaPjV/s=; b=MrZbicGVPlCMitxobcR7whT2xPI5YjuCeq+4fUd8qQAhVzcl6/mKjLL3uTzMGe4Wg4cgScn7x6C22rgplsCj69ExtU3hmpMdNIXsOFZSjiRn/Jh8GntR+JtFnTKlxUdEILKaE3MZEKMn7/ITFxe/eianoCUgwE4vfDie7vhy6t4= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293779238797.4585093927637; Fri, 15 Aug 2025 14:36:19 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084083.1443496 (Exim 4.92) (envelope-from ) id 1un25f-0005Ct-Oh; Fri, 15 Aug 2025 21:35:59 +0000 Received: by outflank-mailman (output) from mailman id 1084083.1443496; Fri, 15 Aug 2025 21:35:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1un25f-0005Cm-Jg; Fri, 15 Aug 2025 21:35:59 +0000 Received: by outflank-mailman (input) for mailman id 1084083; Fri, 15 Aug 2025 21:35:57 +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 1un25d-0005Bt-Oq for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:35:57 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2062f.outbound.protection.outlook.com [2a01:111:f403:2413::62f]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d35bb020-7a1f-11f0-a328-13f23c93f187; Fri, 15 Aug 2025 23:35:56 +0200 (CEST) Received: from SJ0PR05CA0194.namprd05.prod.outlook.com (2603:10b6:a03:330::19) by MN0PR12MB6004.namprd12.prod.outlook.com (2603:10b6:208:380::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.18; Fri, 15 Aug 2025 21:35:51 +0000 Received: from SJ5PEPF000001E9.namprd05.prod.outlook.com (2603:10b6:a03:330:cafe::f2) by SJ0PR05CA0194.outlook.office365.com (2603:10b6:a03:330::19) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:51 +0000 Received: from SATLEXMB03.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.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:50 +0000 Received: from Satlexmb09.amd.com (10.181.42.218) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 15 Aug 2025 16:35:50 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by satlexmb09.amd.com (10.181.42.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1748.10; Fri, 15 Aug 2025 14:35:49 -0700 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:45 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d35bb020-7a1f-11f0-a328-13f23c93f187 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uPtkbm23uPCfYDWELpsvlmSOeHEl8wk7RR8AKt6x4uTdbck3fLVTXem71xf4PGmGmRmj4WPZeNRF1D64jEKJGQhppv4PzssogLk1HsfOYkF7rymeHoqods2mr3zOv3lU54p0DHYok+Q5YDGh5c8WkjwGhdCXuZLCZ3yqI45/hNA0tL+Q1ZXlaX4Af7OxJLUe7nrtTYsKLYVvauGgZ6PzTt3lGzd4CPs0q1gWOl2/4yOf22++UValaXGWiI7taTexEvYHfiE4PxUnCuIRcJbvMJ8GRQGX3ZzWDCrKMnMO8/5cVI+F1DJNtDu+/FOH60eLghrX9O9PjD1JJ9l3IlgFsQ== 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=GVn2duUPp9hjMB8CoqALfiWNheVOsXnVO9y1TaPjV/s=; b=iOgqRK0ozg1geOZtrEFW+u0UpObRdfp5FIGFkY/ttRdr2HQmkcW8yjCDnQySDZr72l4asawhaM/vw96QZ+gj4wK330H9twpxxn5d7sfm+KuY3Zd2IuAaTgSUtbKH5pRmyweRR9SNyzTFmefdqNCtq39Q9TtQq5ltNWkQmCu3Brt0vjzzj+Eev5EaUV668BuYlLQuDkLEu2jYLCMlTL8mxPQPMsyZKJDOD8z63uVdswWBFMxzrL8ofBtdj4MHmmk5Eed+73+4YKoaUje8J5Chz/w45VJf08BjKcoA9LLk9aMsMSwEzE3jPhOdKxsC60Q2fDcmj5R6dzaODHVu3s+4LQ== 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=GVn2duUPp9hjMB8CoqALfiWNheVOsXnVO9y1TaPjV/s=; b=ZyiffDc9P65mKZ0Rq3mRxzlJc9B3f0XbNkjWhPkeSOyBa3taKbSba6LEE00rlFhVi5eFHlIFe3CrGygF9rka8MaOtQTevTGtnpj5oFYRmNvfyz6JZkDgZUbr13ClvhxZJRQ/5ReN/0cD2QTpaXCW1Jmy6qL61Pu8RtscvqUWtqw= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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=SATLEXMB03.amd.com; pr=C From: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 1/8] tools/xenstored: Read event channel from xenstored page Date: Fri, 15 Aug 2025 17:35:49 -0400 Message-ID: <20250815213556.90068-2-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001E9:EE_|MN0PR12MB6004:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d8980c5-5113-4b8e-7456-08dddc43b4d1 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: =?us-ascii?Q?q2iWiQfB3VnN4jwIp6UZmXVaohc8S6XK2yYWDuLkTbCIIEcwi7qRdavPQSDa?= =?us-ascii?Q?AgU08rVZfYhiwwarzPdXvwwor5UP196Zw/Ph/RWovJs0qXIPHzI67q+Wmv4q?= =?us-ascii?Q?Sk30azgqTuZZVZRRJS9Zg4LISnbKoG0dCXYPXXcW6IUHELECD5/IEdv3JWSc?= =?us-ascii?Q?wH2myzwBSPsqs8UFN8vw4pM0e/RuwgfbGAPht9DRcZ5sIGIHSwwceWMrgZKe?= =?us-ascii?Q?1bDqFquaDhXCDae1T02RIqBG2ckGnRSZqx8nTliRfJ2QRqubloqO4r/58oca?= =?us-ascii?Q?uORdMOUwI+zIqungdiL4+6I7ekFguCiTL1Q66pXizs2GO502+lAAuEQ81CSC?= =?us-ascii?Q?brrdsBz4vew4JvwmiocTRhJCEIjGeb/dAkJLEjNTv8mNSqvP197i9W/deyFE?= =?us-ascii?Q?vDD8AnDr/A/61bVxjPzOsVlHfP/zdKFO+mkcezd7Nv+A83L9oqRyrxXjNOeq?= =?us-ascii?Q?aDsuKZIsRUcwuW9otNwFbqw+6rIQ9QTjDgJBxqWknXKVPs2vQNX+3HsZrpis?= =?us-ascii?Q?wv8YXhD/LFNe4l60rfZSh/H+GBvSfNseFTOQxBk4VndYnAdxH2ONcdKna0L1?= =?us-ascii?Q?ONcrAdYgJlQgFjhjMKkECA57LBs3pBztfeTYROdyEd8N6qfdwJUGdYfOq50K?= =?us-ascii?Q?FuyyaAzTzxDMWD98xFnZjag0OaO009xn4Hl5SK21yY/ScyAsqNfy/CmmtPwO?= =?us-ascii?Q?y4J5qn93uZrp02IfB49pruzqEtMORl2ag5ePIoLNqv0mRDNZlovMUF2OaaEG?= =?us-ascii?Q?3rU10khBm7KASL9Sgt5q4zHVLbUo4nB4KUET36FY5XYc/yS3MLxYDswIzotM?= =?us-ascii?Q?mwYHlF9tTasiUF06QDxxOFO2lPpwb2mlTx6up1HCk7bvdhCygd2wuI3LJVSa?= =?us-ascii?Q?U+0yHXjfW7lGuO2PU9fXS5LdSY3GuNC0z1wg55yNOMeTFvW9kyCkoUgIqKO+?= =?us-ascii?Q?B7YEHCNtff9fb/Jndqf8ioOdd84iEMPFqCGRZ/PiQ60Ofh57HwYj4/HsKjLq?= =?us-ascii?Q?tW16kNQI27w/oLggeNDD7uucp3Ks7C5k02aSyqC0pbkkM8BzjVB9wdJdJXsd?= =?us-ascii?Q?5O9GrHuBbLwQMZFb8ww/Z/Y6vxEyxZzdmG5rFaImkm+F0UzRkhvr+EP9l7XJ?= =?us-ascii?Q?MVlBNuOiLQYCx7YFGs+AWD0mykDo+LiCyvdQtx8/oAuK93BlcsYMFRxbjqGj?= =?us-ascii?Q?ZRa1lk01FZ4sJvzgAlO187vYNTZZpMjq0NfDAjzIpjvjY7243yRy29QNEmmj?= =?us-ascii?Q?3M76X0ANtFL2V1OCF2OgJ4jrT7VogjwT4oXshfVefano95xl2YkmRp7H6Bz2?= =?us-ascii?Q?Px3YEbwNITPmzXvGy0CMgZvxGslllF1Po9sTToPsA3LxZeUwf0iKTG5lysKP?= =?us-ascii?Q?yFmEgeq+WMGohCn1tPhTgjz9Rpn70CHk7LfoHOeMjay+EW/Ap7jtdX1H8aw7?= =?us-ascii?Q?SLAPjYDP0+/DST1PzhLkOlLf9YJ8OG9XpCzc1ek+PWV+AUY44NXVfeWVF0s5?= =?us-ascii?Q?Gtm6kyEY1v3Ey8TQiJF6SE99MhqOA2OSX7g8?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.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: 15 Aug 2025 21:35:50.9589 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0d8980c5-5113-4b8e-7456-08dddc43b4d1 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=[SATLEXMB03.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: MN0PR12MB6004 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293780566124100 Content-Type: text/plain; charset="utf-8" Make introduce_domain() use an event channel from the the xenstore page. It is only used if non-zero. Otherwise the passed in event channel port is used. The is useful for a xenstored stubdom to configure domains autonomously. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v4: R-b Juergen v2: Remove iface_port variable. --- tools/xenstored/domain.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index 34ebeaac9b..60d398682f 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -1036,6 +1036,10 @@ static struct domain *introduce_domain(const void *c= tx, interface =3D map_interface(domid); if (!interface && !restore) return NULL; + + if (interface->evtchn_port) + port =3D interface->evtchn_port; + if (new_domain(domain, port, restore)) { rc =3D errno; if (interface) --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293779; cv=pass; d=zohomail.com; s=zohoarc; b=huZaGnR3u04LaJFBISomLKyea7w1ajDFLMDnyoKkSchoFoC6XxG9Y5q9q2plBCwM7mJ0VZ9j/dSsSP1t8AIQtzcWNMUQPk1ciF9BcJRjMX/b8JN1riDbtV6ezwk9Z+mODFYxZp81UCOkC4gqgWs8XWYZd00mHOOS9oqAYwoNBGM= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293779; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=yAfHh+BbqPgNLnkNywYk6LkBNqhFeDrqPgFaeMFhZ5E=; b=CMW7XbMaFgZ4JEBjzMd5rEa1/A/dvIVLuf6j07YczDMtkN3Nm9VrgSLgpwhcAHHOS9Oc1xiIF9w+RG/+3S4vZ2thFxhYuuKeDJPEYfqknPYCH5g2QR2AJ3/PGAu7cdu88dwGYGQoBFGPuBfeyZhVuP4jlbCcgwy/6f1kQSOC9vE= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293779256373.8738420871247; Fri, 15 Aug 2025 14:36:19 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084084.1443502 (Exim 4.92) (envelope-from ) id 1un25g-0005G9-1x; Fri, 15 Aug 2025 21:36:00 +0000 Received: by outflank-mailman (output) from mailman id 1084084.1443502; Fri, 15 Aug 2025 21:36:00 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1un25f-0005Fz-SE; Fri, 15 Aug 2025 21:35:59 +0000 Received: by outflank-mailman (input) for mailman id 1084084; Fri, 15 Aug 2025 21:35:59 +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 1un25e-0005Bt-Va for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:35:58 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on20607.outbound.protection.outlook.com [2a01:111:f403:200a::607]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d444bda3-7a1f-11f0-a328-13f23c93f187; Fri, 15 Aug 2025 23:35:58 +0200 (CEST) Received: from BL1P223CA0044.NAMP223.PROD.OUTLOOK.COM (2603:10b6:208:5b6::17) by DS7PR12MB8081.namprd12.prod.outlook.com (2603:10b6:8:e6::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.18; Fri, 15 Aug 2025 21:35:53 +0000 Received: from BL02EPF00021F6E.namprd02.prod.outlook.com (2603:10b6:208:5b6:cafe::29) by BL1P223CA0044.outlook.office365.com (2603:10b6:208:5b6::17) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9031.19 via Frontend Transport; Fri, 15 Aug 2025 21:35:53 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BL02EPF00021F6E.mail.protection.outlook.com (10.167.249.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:52 +0000 Received: from satlexmb10.amd.com (10.181.42.219) 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; Fri, 15 Aug 2025 16:35:51 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by satlexmb10.amd.com (10.181.42.219) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1748.10; Fri, 15 Aug 2025 14:35:51 -0700 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:51 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d444bda3-7a1f-11f0-a328-13f23c93f187 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=t1BpfoxercyfzxMEQduwjJEPQwlgMHC4Bj2K4tOiAYikcaNQjl/YXl+Ex0maBkJMI68SG4V5g1pJv89qF2Gkg6j7kQJ0Uk0k9NQ0RCydF8uaKqLNYbQZKTKGzM9I/GrJcw/rDZ4X6CASid6/2ZJ/l+X5p7pHEGWMvmEBrLGlHBCyoSwVZgBSnjwPWNYbvyTEnV/6TU25sEqLFUIjgC9zV/8XgDDyr2yGR5lcGYCWKLD4+0snFo9OK1O2pxI8Iv1jyVi324j1C/+QAZ6yx4jv8FBz++kM0G/PIW8iLCtH4BVoG15UHEDv6kFHfKPlwguTaR0nC8dlqyNtAVlHIx/XSA== 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=yAfHh+BbqPgNLnkNywYk6LkBNqhFeDrqPgFaeMFhZ5E=; b=jJvgVoDBUeJK23iJ0hq3BApxZYgbBMeKsULPWRxwvaKYiqSecttPc/vOtRwLa1vYRNHO3mRZysxpSNfiVUTRXjv6+B0/bY+nMPUFKAysD5uBzLsch8lSX/0zTc8+nriYXe+/mpQg4vSGQ5s+Sr2KpwB//aGfUVJ53hTqlOoTUYKXU5DS9s63X0B0dXYAZSNZsFNTZL2WESFDfr8dPUokb4PLhInFwH752wob5e352yG2krNdWQHbzkXwhlgw5A02cG4lwxp7jdXJ1GpGK4pC1gPc96UskNHF/iaLIlPu3CwEqFx0oQ3eXENom2K4o021+RV8S71039O76SbuFkFZsw== 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=yAfHh+BbqPgNLnkNywYk6LkBNqhFeDrqPgFaeMFhZ5E=; b=s8oP1BYSLzAGBWiHFD1sPKIpZ5e4+IIKdMg7G+IhSpxNEKUsvTecGWGtZfaYwwwrq+eq4cPsYCv3AcUhS2LCJnuLtkEaLLQoaV7RWK2y55KQEsYGpcAgYaCnn+whszmBXax2p5L9Ukmo/VKTPh5m9fCCm79GBWeI20/AEQzV29g= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 2/8] tools/xenstored: Add get_domain_evtchn() to find evtchn Date: Fri, 15 Aug 2025 17:35:50 -0400 Message-ID: <20250815213556.90068-3-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00021F6E:EE_|DS7PR12MB8081:EE_ X-MS-Office365-Filtering-Correlation-Id: f62508f5-f0c0-4395-3c89-08dddc43b591 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|82310400026|1800799024|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?AD6TJ7uTY52ynfyrXbMFj5X/k3R15bF8SvFBhA+ziofY83s2DDvQluND/+93?= =?us-ascii?Q?PZ8g9TnLWG6aq1gblk/O8AtJYeqzkdPwNjlXtHrR4ncqqzeOugpKes6b5gah?= =?us-ascii?Q?C6t96fo3s8DDQ262+oenmm1UMv+6YOvNRAe3jxxMeOc3OLnSIxmd9MIfA4YE?= =?us-ascii?Q?e78KtybvsaeMd8wAZR/iY8DzI+3QuYMT1MW7rbPttP7SdY8RPtb+l60rh16q?= =?us-ascii?Q?okwrHd1ZAmnNzd7c1CV2myudRrEy8uDxO1sV1TRIvncfV2dsngQmUiFXx9ea?= =?us-ascii?Q?ZUKuOL60xw9BREshS45O+8pyJTDsdwSrUWVRyJSHp98YHs/3ArSSooBJaaOR?= =?us-ascii?Q?aak8bvKzDZvVW9VscAo2XsfjflvnVHDKoTa1H5NeRQphlTI2v1K7JTmy8XtB?= =?us-ascii?Q?tV9nP3NOut963Gi4olhUn0c1yLce54HuytFRLHjiQBM0CF1WaXoYfVMDWbDO?= =?us-ascii?Q?2MWpbs8OUxMNWQtWLABAEHC42dZpwAZFDUXhDBsygrN3V3VzMNxMlxPkvTzU?= =?us-ascii?Q?HFl0NWgP74R8HxBcZiBZfU76gGcTjWHnZqFF2FfYo0+QZa8y9k19NTbd9s8f?= =?us-ascii?Q?avFsZR49uHeTfhmFXO/vqNstz6syelU4PVIREsWWAjwaxBXQWwiN+9bP9DO3?= =?us-ascii?Q?Xy1E6flO0sC/6pps/U3x2s4WtvFSmiSAw536fKP5CWcD3SMibMaxYKnwr8gU?= =?us-ascii?Q?8KiKXOaQgQfY3faetOIYkwc4+N/jbPYCqCQkpvVK7AzveakckEiFDYGMnM7m?= =?us-ascii?Q?8dbXUUzSO2C2OoZwonyNR/a9uZSJB8KMBhf8jE+A/V4cPjcUEwNhezU4X+ic?= =?us-ascii?Q?TicoPigS3LkZgOOq6BdVaB5qlnaNlAp9N4DYIXAP8rYASdz/+ErshL7ocj47?= =?us-ascii?Q?KUNMrMefNc1v3ogTu5eUpv7N11ZkaUZHpZlEN2yUbzNJgFIwZh4WEzIgL8V/?= =?us-ascii?Q?0EAeXzm1srnq01Cb3o0/Nt3/XeIMqw3IdSsDvWUPjJN/sN4K5Bp8MJ7Ghk4z?= =?us-ascii?Q?OWxAjp07eemf66b7kZB25L7PgBK9sBHmds7BjCgQLCI9k1oFrUFnx17JCLNF?= =?us-ascii?Q?POc78zKp2PqAeAwtNBctRjVRLqCBAB1Bc4NlsYME3FStiVfeGc0mDrl4sk4h?= =?us-ascii?Q?v8OcRdkT0ADlqy3m4iTLA9h60XRrZhHKhiWQt9OpsR3ZKryTxGw13cix2GDf?= =?us-ascii?Q?cBKtYyoO516SF0bZwFzRKArR6+djgtlYpwUlJSVcwrkYpeJcYNQ15urVgCKQ?= =?us-ascii?Q?6nBNBQGO6EaPvqVy+nvJtMITSLjr2O5AGjTXuVGCfkSZJpcJQKS1a19S93hY?= =?us-ascii?Q?I3bu6zwYLJy2bq1i6gl9WH5yxOXRAowRBkHcEZ5fwZRrE+0r77O8TOs59lkh?= =?us-ascii?Q?EEcxygWMxhaJjHQzoIf1NhxocMFMgEwAwiOSU6eVmLWLQxuYQSqjNddeWrqn?= =?us-ascii?Q?eOiAmgFApFrZdXSQcsY3PoSU1iXQMu0csokCx2UvF35tU7SLvI+1SXiAwma7?= =?us-ascii?Q?Cb1ECcfoPCBesYtss4ihnDsFQt4EstLR7p4S?= 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)(1800799024)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:35:52.3156 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f62508f5-f0c0-4395-3c89-08dddc43b591 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: BL02EPF00021F6E.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8081 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293779600116600 Content-Type: text/plain; charset="utf-8" Add helpers to lookup the event channel for a domid. This hides some of the differences between dom0 and stubdom xenstored. Each version defines its own. It highlights the different meanings between get_xenbus_evtchn() in a stubdom, where it looks up dom0's event channel, and dom0, where it looks up the local event channel. get_domain_evtchn() replaces get_xenbus_evtchn(), and get_xenbus_evtchn() is removed from minios.c as it is inlined in the new function. The default return 0 will be fine as any other auto-introduced domain will needs the event channel populated in the grant. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v6: R-b: Juergen v5: Split get_domain_evtchn() in minios.c and posix.c versions s/dom0/stubdom/ --- tools/xenstored/core.h | 2 +- tools/xenstored/domain.c | 10 +++++++--- tools/xenstored/minios.c | 19 ++++++++++++++++--- tools/xenstored/posix.c | 16 +++++++++++++++- 4 files changed, 39 insertions(+), 8 deletions(-) diff --git a/tools/xenstored/core.h b/tools/xenstored/core.h index 5071f1dedd..cef3c71eb0 100644 --- a/tools/xenstored/core.h +++ b/tools/xenstored/core.h @@ -397,7 +397,7 @@ static inline bool domain_is_unprivileged(const struct = connection *conn) extern xenevtchn_handle *xce_handle; /* in domain.c */ =20 /* Return the event channel used by xenbus. */ -evtchn_port_t get_xenbus_evtchn(void); +evtchn_port_t get_domain_evtchn(unsigned int domid); void early_init(bool live_update, bool dofork, const char *pidfile); void late_init(bool live_update); =20 diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index 60d398682f..0866e04aa9 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -1330,7 +1330,7 @@ void dom0_init(void) evtchn_port_t port; struct domain *dom0; =20 - port =3D get_xenbus_evtchn(); + port =3D get_domain_evtchn(xenbus_master_domid()); if (port =3D=3D -1) barf_perror("Failed to initialize dom0 port"); =20 @@ -1345,13 +1345,17 @@ void stubdom_init(bool live_update) { #ifdef __MINIOS__ struct domain *stubdom; + evtchn_port_t port; =20 if (stub_domid < 0) return; =20 if (!live_update) { - stubdom =3D introduce_domain(NULL, stub_domid, xenbus_evtchn, - false); + port =3D get_domain_evtchn(stub_domid); + if (port =3D=3D -1) + barf_perror("Failed to initialize stubdom port"); + + stubdom =3D introduce_domain(NULL, stub_domid, port, false); if (!stubdom) barf_perror("Failed to initialize stubdom"); =20 diff --git a/tools/xenstored/minios.c b/tools/xenstored/minios.c index f04423fe09..60d921cf01 100644 --- a/tools/xenstored/minios.c +++ b/tools/xenstored/minios.c @@ -41,9 +41,22 @@ struct connection *add_socket_connection(int fd) barf("socket based connection without sockets"); } =20 -evtchn_port_t get_xenbus_evtchn(void) -{ - return dom0_event; +/* + * minios stubdom looks up dom0's event channel from the command line + * (--event). The stubdom's own event channel is returned directly. + * + * Any other existing domains from dom0less/Hyperlaunch will have + * the event channel in the xenstore page, so lookup here isn't necessary. + * --event would not be set, so it would default to 0. + */ +evtchn_port_t get_domain_evtchn(unsigned int domid) +{ + if (domid =3D=3D stub_domid) + return xenbus_evtchn; + else if (domid =3D=3D priv_domid) + return dom0_event; + + return 0; } =20 void *xenbus_map(void) diff --git a/tools/xenstored/posix.c b/tools/xenstored/posix.c index 97561701ae..4a97f53dc0 100644 --- a/tools/xenstored/posix.c +++ b/tools/xenstored/posix.c @@ -139,7 +139,7 @@ void unmap_xenbus(void *interface) munmap(interface, getpagesize()); } =20 -evtchn_port_t get_xenbus_evtchn(void) +static evtchn_port_t get_xenbus_evtchn(void) { int fd; int rc; @@ -166,6 +166,20 @@ evtchn_port_t get_xenbus_evtchn(void) return port; } =20 +/* + * dom0 xenstored uses get_xenbus_evtchn() to lookup with XENSTORED_PORT_D= EV. + * + * Any other existing domains from dom0less/Hyperlaunch will have + * the event channel in the xenstore page, so lookup here isn't necessary. + */ +evtchn_port_t get_domain_evtchn(unsigned int domid) +{ + if (domid =3D=3D xenbus_master_domid()) + return get_xenbus_evtchn(); + + return 0; +} + void *xenbus_map(void) { int fd; --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293783; cv=pass; d=zohomail.com; s=zohoarc; b=kfZ8FcqT06i0/s/9Dxg3K6cdIG1TCguYSCDPI+rwS/vdqh9Fnf366MG24SzjiOA+6/EX6bKB/lvmg3qy2GkVh36GjcvGM/jfKPp4VWo2Pg8QlKUOeYxB5YhQB0MqSGH7u+5Rhwh4kWo/fuJp6mE+5jVgN/UGf1tq/nKEt2uDKt4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293783; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Y9OMkaeEj/AsuDXHj8i2+xAiSM5DDL4gA9WvTiPcZo4=; b=jWBaJBcaLI2ZERYGqqyZsYo6W85NUw4IbKPSSTkKf7uurjDXUkcGS9zAR0L+zZLsNCJoyLFw/nLvbPUzBAxwbE8f3CncJSg6BYnt4ekEJWKHHAR8yxAiUF8JmeDp9xDu2aF+ssb1sOBC1nkHfvaQ0NTbAMUyUirHRO6R3CbpMD8= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293783420515.6863354990887; Fri, 15 Aug 2025 14:36:23 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084085.1443515 (Exim 4.92) (envelope-from ) id 1un25j-0005iF-9Y; Fri, 15 Aug 2025 21:36:03 +0000 Received: by outflank-mailman (output) from mailman id 1084085.1443515; Fri, 15 Aug 2025 21:36: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 1un25j-0005i8-5p; Fri, 15 Aug 2025 21:36:03 +0000 Received: by outflank-mailman (input) for mailman id 1084085; Fri, 15 Aug 2025 21:36:01 +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 1un25h-0004xK-N8 for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:36:01 +0000 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2061a.outbound.protection.outlook.com [2a01:111:f403:200a::61a]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d499c129-7a1f-11f0-b898-0df219b8e170; Fri, 15 Aug 2025 23:35:59 +0200 (CEST) Received: from MN0PR04CA0019.namprd04.prod.outlook.com (2603:10b6:208:52d::33) by IA0PR12MB7723.namprd12.prod.outlook.com (2603:10b6:208:431::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9009.13; Fri, 15 Aug 2025 21:35:54 +0000 Received: from BL02EPF00021F69.namprd02.prod.outlook.com (2603:10b6:208:52d:cafe::ff) by MN0PR04CA0019.outlook.office365.com (2603:10b6:208:52d::33) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9031.19 via Frontend Transport; Fri, 15 Aug 2025 21:35:54 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BL02EPF00021F69.mail.protection.outlook.com (10.167.249.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:53 +0000 Received: from satlexmb08.amd.com (10.181.42.217) 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; Fri, 15 Aug 2025 16:35:53 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by satlexmb08.amd.com (10.181.42.217) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1748.10; Fri, 15 Aug 2025 14:35:53 -0700 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:52 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d499c129-7a1f-11f0-b898-0df219b8e170 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HSqN9e8Zd3XQXuZ2+Um6F2v+huF+EF1zooBN9VK4UzTrpHpR44L74Em3NtL8CAowAnIwMUAEn2Sc2GsAmWWY6my+ga//WBdMjaNH7/BUNvz/IMrnNvvp25xXiBvFZI+rBMdIT2ps/KQJC6N/s/mFSTAYVzudPrNjftfkU08WjlTy8cOmQcmo0OnDd0OPZJVmehg/OBdF5xDPsmEYur/PBgXJKcFV5YcTvk93ktaKiu349Z13nmqD6OtnMh4TPfVe09PEQm108r1jZtzgKAuh//6Xg0tvmY50UCJADFp+jHcZRcfhFvFnpyaDZr0Hik2zKBvMkF9xXfFMMF1gds2hBw== 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=Y9OMkaeEj/AsuDXHj8i2+xAiSM5DDL4gA9WvTiPcZo4=; b=ttZQWWyAxvb1NH1m8pwCOy6XbiKd9R4495Le8YkD6USnXRFsEhksOjJNCgbeHCCHH1oJXkxFXVCKkCeNqkKnM0wayPH5Oajp0pcjlDu1ycmdMKnac1zuH4YtcAuRRX6S7TMTN+nHycGv2J0/Vv1XP9HrbXsqU50xtLcpi5cWMfGMFchSw/igo9VgeHG65VczbALb4G8RwffUcCkkQ3VxqnCthx5iUWR3gtJ8iVLE/rbQ4tuHE/BXPt0tcsKxaGfniaF86uIyEnVcOGLV29F0nw/SrYeWwKfqVEuIql0U8SUuEKFzT5wFmGtT3YvIFIIHtg+g/BTSeB3CpmIE4Z4ppw== 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=Y9OMkaeEj/AsuDXHj8i2+xAiSM5DDL4gA9WvTiPcZo4=; b=ie3xYLNI998GwocH2nlKH4UFWwXqAmlgdSRcz7gztgwmBzi9zC76CYJh9doXQShval65xIh9waNAZcP48XtZajnFXhgXYAlYyT2X4qMHn8vp856z128DFRk6lh60SOt4P+Ndfj3aZ4v7JYJXs9aMCETBf7R2w4S/H+8GnIx2q0Q= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 3/8] tools/xenstored: Auto-introduce domains Date: Fri, 15 Aug 2025 17:35:51 -0400 Message-ID: <20250815213556.90068-4-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00021F69:EE_|IA0PR12MB7723:EE_ X-MS-Office365-Filtering-Correlation-Id: 2d4b6c8b-800a-4dd4-2782-08dddc43b683 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?SrVyB97rxNylzhm8pykIfhpSf47iObKdpP9v0bMqDvp/9Y5eoaSJUPQOcyoG?= =?us-ascii?Q?JtuJw7Pxpz0xJj3HdLBgcSehTEGVeNJXk4+dkxYmhGiQHukLanXB8NoVTFhg?= =?us-ascii?Q?9b0Kj1jp0TxRi2jOhad/aR7/4l8poejVEjw42JRWU51ushTlLQghM7A2PXfJ?= =?us-ascii?Q?5mtUQ8oq3ocIzFLww0Bj2hzlxa337M1Ur+qtwIPzHAvfDzBwdoHtIu6M0RKA?= =?us-ascii?Q?qxVa9kt3k61+UdnDnTooZCxzrOw3Za94sy5ad13pN91eBEBzNRATT9VevdSn?= =?us-ascii?Q?GNfKjWSmhR24F1+1S6+F/L9DcWkqjLu1WuAdmg2mGyKE6v00/SK8fSEAzkDi?= =?us-ascii?Q?gTW3uzlySaFBq77Ti/OazVdwY9xdrH5plG9F8Svko4dvlxnGyoATOj/nZn0O?= =?us-ascii?Q?d1D4EFgBHXzk/vW0M3YsgmJ7wzaiibBtgmvYws8FDrvXNaXDKhA6gn+GRQJM?= =?us-ascii?Q?/eZf2qyyUqEwh2fpgtoEAvMzjI+D5dmO3QRzVcZVilCGAt8sATZM07Zg4EF/?= =?us-ascii?Q?xUpPnI7BFkG7uAVOwLS6vKX0DsATh05ArOxKQtLW/cDOaniLRptUfgOsznq5?= =?us-ascii?Q?Zh3340VOKDNBypnkEtghwziGA0JMYFJEbyEboUA02Nv0yRhEqTK/mi4Ft5+h?= =?us-ascii?Q?SyZ2WKs7yusfS306tj6m7q4JYrWTNHGv+zNwmQ5HIzrmAMmmxY9ba+B4ZhFB?= =?us-ascii?Q?Xy04eB3kXpibjcfGfRnlsSj6Ejm0S1A11qFxEeknudbShYRF69OBzEWXhiX1?= =?us-ascii?Q?egLqN75/bbZWflExPCk9ue+3Vt5Rotrr9OBVed3B/x1yTbE3fQ3W9L+PunDF?= =?us-ascii?Q?1QrkfREUUG1C26gLV1DM+bESxDY2xjIoYhfZiDttLyFSXnuJF/yO5Oakr1Od?= =?us-ascii?Q?MMVKHTzPzuOuhOj/ADtd3x5JbIPYTz6rtPLSB8Bchq+zi6EVYPGB8jg1F+uN?= =?us-ascii?Q?eFuPXwXL0Bk64oi6UeUtk+rsLT7Rwtc838JxxN1cj1LPqDhRjBxUDp3EFNwN?= =?us-ascii?Q?hmZqkfqMhvyrh2Iw+SinVRBJfR1/+thva6KXuXE9jonJMZkXThOgwqLw4bjk?= =?us-ascii?Q?Tgu7WS0XEjSlLihPmTenPdGQN1hPIZ226OZUm4NMbHw56fCTEVhUX2CS4nHg?= =?us-ascii?Q?ZgKv2uw07iUE1+k9IkI69+gx8L8jSHc4UmGf/M38vnQ8XvdKzOCYzA+zUWyH?= =?us-ascii?Q?jaxi7cRTBBWr+6e/6zfpCNqdjdvqNYuEKgmnxohgP40ofpKckWIFDL+LOiRY?= =?us-ascii?Q?NCFIdFbObUwswAOptUT/HAc3GUh2KlxDzVWCwuqi3OvJ/+VAtbfxjgOjUnJD?= =?us-ascii?Q?nRN9O/m5yihwzlT8WFxSnRQsGSZ+SH9NTJt5sSfalcjJISLtb+i7Bw7GFOV/?= =?us-ascii?Q?QPJtIPlgmC4wLQVzUbbjbdQg3XKjUPBqRfwML1OdpZQNx6rA103CkKIw3v3u?= =?us-ascii?Q?3zN2qPSIgugyFXfNqxgvJp1Dvwvn9tjzfRJ8DmHS4axD99MTU8b/1gukXoOk?= =?us-ascii?Q?0YHn4eP+77y4IuOD1fZPAsWYoR4Y026Tuncz?= 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)(376014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:35:53.9000 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2d4b6c8b-800a-4dd4-2782-08dddc43b683 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: BL02EPF00021F69.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7723 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293785991116600 Content-Type: text/plain; charset="utf-8" Replace dom0_init() with init_domains() which uses libxenmanage to iterate through all existing domains, storing them in a list. The xenstore domain is introduced first, and then all the other domains are introduced. The xenstore domain needs to be introduced first to setup structures needed for firing watches. dom0_domid is updated with the xenstore domain, since it really indicates the local domain. priv_domid is set to the control domain. This makes it limited to a single domain. These features let xenstore automatically connect any existing domains, which means it doesn't need to be done manually from init-dom0less. For a legacy dom0, the result should be unchanged. For a late xenstore stubdom it should also be the same, but priv_domid would be set automatically to control domain (which default to 0 normally). Always signal the event channel for initial domains. This gets dom0 (a local xenstored domain) to connect. Also always write XENSTORE_CONNECTED since we know we are connected at this point. To support ARM dom0less domains with xen,enhanced =3D "no-xenstore" a failed introduce_domain() becomes non-fatal. Normally, HVM_PARAM_STORE_EVTCHN is used to identify . priv_domid from the command line is used, or the first control domain is used. dom0_domid will set to the last xenstore found. This will handle dom0 or dom0less, where only 1 xenstore domain can exist, or stubdom, where dom0 and dom1 exist, and we want to take the stubdom. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v6: R-b: Juergen v5: Add init_domain() helper and call for dom0_domid first outside loop. Fix HVM_PARAM_STORE_EVTCHN typo Only take first priv_domid and respect command line setting Take last dom0_domid Set priv_domid & dom0_domid default values - bail if both unset Use talloc_realloc Remove domain_conn_reset() --- tools/xenstored/core.c | 6 +-- tools/xenstored/domain.c | 100 ++++++++++++++++++++++++++++++--------- tools/xenstored/domain.h | 2 +- 3 files changed, 81 insertions(+), 27 deletions(-) diff --git a/tools/xenstored/core.c b/tools/xenstored/core.c index 5377d72f54..d447e1167e 100644 --- a/tools/xenstored/core.c +++ b/tools/xenstored/core.c @@ -2567,9 +2567,9 @@ static struct option options[] =3D { #endif { NULL, 0, NULL, 0 } }; =20 -int dom0_domid =3D 0; +int dom0_domid =3D DOMID_INVALID; int dom0_event =3D 0; -int priv_domid =3D 0; +int priv_domid =3D DOMID_INVALID; domid_t stub_domid =3D DOMID_INVALID; =20 static unsigned int get_optval_uint(const char *arg) @@ -2760,7 +2760,7 @@ int main(int argc, char *argv[]) /* Listen to hypervisor. */ if (!live_update) { domain_init(-1); - dom0_init(); + init_domains(); } =20 /* redirect to /dev/null now we're ready to accept connections */ diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index 0866e04aa9..051e3fd164 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -1325,43 +1325,97 @@ const char *get_implicit_path(const struct connecti= on *conn) return conn->domain->path; } =20 -void dom0_init(void) +static bool init_domain(unsigned int domid) { evtchn_port_t port; - struct domain *dom0; + struct domain *domain; =20 - port =3D get_domain_evtchn(xenbus_master_domid()); + port =3D get_domain_evtchn(domid); if (port =3D=3D -1) - barf_perror("Failed to initialize dom0 port"); + barf_perror("Failed to initialize dom%u port", domid); =20 - dom0 =3D introduce_domain(NULL, xenbus_master_domid(), port, false); - if (!dom0) - barf_perror("Failed to initialize dom0"); + domain =3D introduce_domain(NULL, domid, port, false); + if (!domain) { + xprintf("Could not initialize dom%u", domid); + return false; + } =20 - xenevtchn_notify(xce_handle, dom0->port); -} + if (domain->interface) + domain->interface->connection =3D XENSTORE_CONNECTED; =20 -void stubdom_init(bool live_update) + xenevtchn_notify(xce_handle, domain->port); + + return true; +} +void init_domains(void) { -#ifdef __MINIOS__ - struct domain *stubdom; - evtchn_port_t port; + unsigned int *domids =3D NULL; + unsigned int nr_domids =3D 0; + unsigned int domid; + unsigned int state; + unsigned int caps; + uint64_t unique_id; + int introduce_count =3D 0; =20 - if (stub_domid < 0) - return; + while (!xenmanage_poll_changed_domain(xm_handle, &domid, &state, &caps, + &unique_id)) { + nr_domids++; + domids =3D talloc_realloc(NULL, domids, unsigned int, nr_domids); + if (!domids) + barf_perror("Failed to reallocate domids"); + + domids[nr_domids - 1] =3D domid; + + if (caps & XENMANAGE_GETDOMSTATE_CAP_CONTROL) { + /* + * Only update with first found - otherwise use command + * line. + */ + if (priv_domid =3D=3D DOMID_INVALID) + priv_domid =3D domid; + } + + if (caps & XENMANAGE_GETDOMSTATE_CAP_XENSTORE) { + /* + * Update with last found. dom0 or dom0less will only + * have 1 domain. stubdom there will be dom0 and dom1, + * so this will take the second for stubdom. + */ + dom0_domid =3D domid; + } + } + + if (dom0_domid =3D=3D DOMID_INVALID) + dom0_domid =3D priv_domid; =20 - if (!live_update) { - port =3D get_domain_evtchn(stub_domid); - if (port =3D=3D -1) - barf_perror("Failed to initialize stubdom port"); + if (dom0_domid =3D=3D DOMID_INVALID) + barf("Could not determine xenstore domid\n"); + + /* + * Local domid must be first to setup structures for firing the special + * watches. + */ + if (init_domain(dom0_domid)) + introduce_count++; =20 - stubdom =3D introduce_domain(NULL, stub_domid, port, false); - if (!stubdom) - barf_perror("Failed to initialize stubdom"); + for (unsigned int i =3D 0; i < nr_domids; i++) { + domid =3D domids[i]; + if (domid =3D=3D dom0_domid) + continue; =20 - xenevtchn_notify(xce_handle, stubdom->port); + if (init_domain(domid)) + introduce_count++; } =20 + talloc_free(domids); + + if (introduce_count =3D=3D 0) + barf("Did not initialize any domains"); +} + +void stubdom_init(bool live_update) +{ +#ifdef __MINIOS__ mount_9pfs(live_update); #endif } diff --git a/tools/xenstored/domain.h b/tools/xenstored/domain.h index 3ca702f56d..3b1fce74cf 100644 --- a/tools/xenstored/domain.h +++ b/tools/xenstored/domain.h @@ -92,7 +92,7 @@ int do_set_feature(const void *ctx, struct connection *co= nn, =20 void domain_early_init(void); void domain_init(int evtfd); -void dom0_init(void); +void init_domains(void); void stubdom_init(bool live_update); void domain_deinit(void); void ignore_connection(struct connection *conn, unsigned int err); --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293782; cv=pass; d=zohomail.com; s=zohoarc; b=R2wenbXo9oNnaVH1wx680VlBVCOElS9zBmdsXQJn3Swx2DQOTmg8ApkWYXCtPcZM7y15B9RwlpSNur+KILExKfjUMCf4qSL/0DAf5S9JRFh8GZzNzWZLcS1pXPcmdCBSFosQ3XSEpWcv7ljV4jPY4YdKmb0TX/PTEXpRDGAwtYY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293782; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MfnTWYT+hidron2wSySDF7eq4i9pLVKgrFQZivNWi+0=; b=Gbq9K6FUGLREmNII81M57dGjw3WImBwAcV3LbZLcrDnhkg8h9JC8hlIzcMLodyzuW8c+bv77K+APCa8GKh0QCizKYgml6/FxEcjyzH4nknzNmkZxGBoba3J5CPkkLAOTdwt/+OB3VfspL1QbUukDpOeN6EuLm0qKrMkFxZd9BGc= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293782576791.6773849055925; Fri, 15 Aug 2025 14:36:22 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084086.1443524 (Exim 4.92) (envelope-from ) id 1un25k-0005xo-Mf; Fri, 15 Aug 2025 21:36:04 +0000 Received: by outflank-mailman (output) from mailman id 1084086.1443524; Fri, 15 Aug 2025 21:36:04 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1un25k-0005xh-JS; Fri, 15 Aug 2025 21:36:04 +0000 Received: by outflank-mailman (input) for mailman id 1084086; Fri, 15 Aug 2025 21:36: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 1un25i-0004xK-NM for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:36:02 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on20611.outbound.protection.outlook.com [2a01:111:f403:2413::611]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d57553bc-7a1f-11f0-b898-0df219b8e170; Fri, 15 Aug 2025 23:36:00 +0200 (CEST) Received: from MN0PR04CA0007.namprd04.prod.outlook.com (2603:10b6:208:52d::12) by CY5PR12MB6083.namprd12.prod.outlook.com (2603:10b6:930:29::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.18; Fri, 15 Aug 2025 21:35:56 +0000 Received: from BL02EPF00021F69.namprd02.prod.outlook.com (2603:10b6:208:52d:cafe::62) by MN0PR04CA0007.outlook.office365.com (2603:10b6:208:52d::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9031.19 via Frontend Transport; Fri, 15 Aug 2025 21:35:55 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BL02EPF00021F69.mail.protection.outlook.com (10.167.249.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:55 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) 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; Fri, 15 Aug 2025 16:35:55 -0500 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:54 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d57553bc-7a1f-11f0-b898-0df219b8e170 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=oN790B/dhLgF92Q9Pj7f/82XLVQXMXxSENmlPkyJE9aEddTF/f9fOM1smcSkAdMNrVXkKbtaLjeqnx7PHYaTMnds+JsJfxrxXZ3VcxakzKhCnaFLZ0DM/j8Mpk1aQouwKSCZGg9oPZ+O0VeWKY2AV+BBP+kUXtvpLEEe8bm9dY27FTE5LoR6osJqxhryROYDkxVF/7UdIPnSX1YTTOah+ZiejdAmciLJ//Kono3doC7u0w+8Rx5IY/HLGgrjQtWHm2gF8IVoiTtl3FplnEOwSOP6UB9GzI7G+XXKlYyUyYujtJwZAuqksKr+jwx6pW9a1gLvin2AXHGm07WLKS1WxA== 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=MfnTWYT+hidron2wSySDF7eq4i9pLVKgrFQZivNWi+0=; b=c6jIVBCQE0dqlucOPJvRk0NmraTBv71Gks5+gCFp7Q7JR3F/GPnhzebbKeIFxzdBH92yY49QqaS3QZyGjWHKpQymbWcGdjhiHhxKp1fVIZPqM0Eo2qoz6v/uNhlh5hdAose6vRXcrTYlvVM6XxeiihUAYnNYPW//yDCJtJSiq32K6PDm6Q6l0+f4hx06LihcS+ld6E2kC2o1WhWnIP5ebTF83HTcMujled78h5l1xRVBqxHHDIoNkduoGLZrx8pbLu+Rw6E1a3OSs5phOMDPH/7b/6rLHmZ3Qq7WYG7CvydkQfpeau1okjN6VBPdLfmIEj838BXF9ks/4SFBnp7G9g== 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=MfnTWYT+hidron2wSySDF7eq4i9pLVKgrFQZivNWi+0=; b=1VkWkj7wOLXLszo12r0dPdjlyRZHzNTIwRBWlkz6OAbrUD3D69gNIU/I47rPcZwNF2nhCnEWzoNG003pzdxqnhWtLASaJmFCTfmJVDEND4EPwKoygTm1WpbHl19tZSi31M7i2XYN+JBLUThApJrAASCc8hL4kNbR4rJe64VFgHE= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 4/8] tools/xenstored: Check NULL domain in domain_chk_quota() Date: Fri, 15 Aug 2025 17:35:52 -0400 Message-ID: <20250815213556.90068-5-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: None (SATLEXMB04.amd.com: jason.andryuk@amd.com does not designate permitted sender hosts) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00021F69:EE_|CY5PR12MB6083:EE_ X-MS-Office365-Filtering-Correlation-Id: 2ec94166-b4fc-46f7-7120-08dddc43b7b7 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|82310400026|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?IlLT80jKXitCSMyPa9zaAxLMT123UqTevSr6QCI6If7oxkx3MykMe94ygHDD?= =?us-ascii?Q?l77/Pot50z8r8lGPXP32z+i8FgyMmmKLa25Vmdeg/ukA21Xidgp43ybzbQlF?= =?us-ascii?Q?Df1Lgs+7UCOJL2ywcyI3OJgtjkmJmGq7ZXIbFbDpmjD+yLmZz7LK5sn3z98A?= =?us-ascii?Q?jyYUFU7vhUXHGME+GNDkVDIkLh5upPPrbo2e31Y0f36O7mgwnkXHKnk/Y3Fa?= =?us-ascii?Q?BcEwQEfzqmcNKvprcyeQ05ktrsm6RV+CnqwukQnuAEI+6Hje6q0VZsVLSsCs?= =?us-ascii?Q?NUzMiYpA5Taqi4uctkVCsytuTW4IUjXWPCFh30DAyGJhyzsE2DovFRcgaCYs?= =?us-ascii?Q?eF2txzgcm/6hkQrsCFrIT3IyD/68hf11Sh8A46vA+z4aFSEGU3QwralMDDoN?= =?us-ascii?Q?6VYkfMZSlvavUMN5Hmtk+1JeXBLcUlasc7B6SK0yJ42hMyDZsl9lVOJIxvPD?= =?us-ascii?Q?rNdiCysliM6w5hM8Dv3+KpZpq0NChIk6cg6FELVgr5kIAsufPEB3vCD3Hgzu?= =?us-ascii?Q?T9nOhmprZ4Htq3vzqUQlRd5CMIsLRIq5ZggOVp65lvE6Ee+snj/Tuwaqvi48?= =?us-ascii?Q?WlSAJwddz2ch6AZdizJr2N1MbkIRrJxyomaKcytR9y3R9nHLBYmaXTEuJCwC?= =?us-ascii?Q?wJM64T2MAB5EOCeIn8reqbOLVSYi+9KaSqvTI1SNz7KdC4r6hIE2r5e7Q6sr?= =?us-ascii?Q?JO4r0QuAyGFeVyzWiQ0//MwHqOuexzeGp8clF6ZYTjONt80c/wBviy+pd1RH?= =?us-ascii?Q?D/o+lSf4T2aKFj3hGhZHBNjnVJPVN0TYeo4c0qQ4ol0d04ME7a9hMGRJszye?= =?us-ascii?Q?BYeV5p4I1rjMc9QtGUKRmGa3Kv/dq9vGei0F8MbE4y9JviKhxe/IigJZsY5G?= =?us-ascii?Q?/MhEiBHLHeGW3eak3AFgKBxR0z2IxV+xnlOMbZpx+0vZG4fWAYdNLpl4g+bk?= =?us-ascii?Q?lMHzw+iBv7TnkcviV6PMXEm0c/ehfJmYdPQm1McLnIGN4LpgrfBpY5nF0YaD?= =?us-ascii?Q?XYHcvQOqdnd9znleHvHM1WF+hgN4EVPVyeXsrn93HWee3WGDG9x7EUIVuejR?= =?us-ascii?Q?0iQcCLVdl8GNGW3P9i/XaZBD0gdnvHswzP1fKe6b+YWpmw13q776yYmGmO/M?= =?us-ascii?Q?eXzXhGUz0bgks4AWmCeqIcb9Jnhn3ylyNr9SrfxO7FlNEwI9zFVe+h5oRby8?= =?us-ascii?Q?e4pjOh/Igygz1M6kLOwtEw6f/a87yZtlSvj2MiP0k0QB0rV0lpkQ1EpRfDIm?= =?us-ascii?Q?23gfJK14Zgmm+jfd5fGKPkdJmSSAq0HpIEI3pJlt/K8Tgw0xeB15BLuMiWKx?= =?us-ascii?Q?s0pHw+ErjJAzOoXbAOw3EAuGfuXq9YrnwiIdX362kbmGNreOZMqPLdkE1iib?= =?us-ascii?Q?M4ICjS4vFaiu7P6JqTYO46HtddP6l8qnZublOwerqUY+kRrc63hkAPj+DcoW?= =?us-ascii?Q?GhWz0dS4Uhjq9SJL5n/oQ7MoNqwJnw0RPlRpKnsY9QWNgCz6P+zHqguWWnAR?= =?us-ascii?Q?PHNoUaV+BNQ9q8KM9SqefCkly/YRKlRY9+9+?= 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);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:35:55.9218 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2ec94166-b4fc-46f7-7120-08dddc43b7b7 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: BL02EPF00021F69.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6083 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293784385124100 Content-Type: text/plain; charset="utf-8" With separate control and xenstore domains, the xenstore domain itself is no longer privileged. Local socket connections do not have conn->domain assigned, but domain_chk_quota() will go ahead and dereference it. The !domid_is_unprivileged(conn->id) check usually means the function would have already returned. Bail out on !conn->domain to avoid faulting. This adds a similar check to that in domain_max_chk() Signed-off-by: Jason Andryuk --- v6: New --- tools/xenstored/domain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index 051e3fd164..c74bafa165 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -1762,7 +1762,7 @@ static bool domain_chk_quota(struct connection *conn,= unsigned int mem) time_t now; struct domain *domain; =20 - if (!conn || !domid_is_unprivileged(conn->id) || + if (!conn || !conn->domain || !domid_is_unprivileged(conn->id) || conn->is_ignored) return false; =20 --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293786; cv=pass; d=zohomail.com; s=zohoarc; b=jtgD0taVD7Y6maopUCIB21Muq8cFVLvHzROi9j8frjrybWZWsdj++FOOO4/YD/vcAaVmA0nnfyiKnFoiecOGhMCDwbnbVrxmlfF168jI1LsJE06H4taltmX6y3ix2JwdHhlEJPwaE6atGtpTl6+qdwARMvJLeaV8bH55gDgDdl0= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293786; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=AYlxeCuUWQFVD2Lqd3WOg1K+vgoKT/PL3YrRM2td0dw=; b=bzTuSUt6MbnOYA+UkOY0X8V5xASyL4ZlzLUCF7IXazo+R73FxyVpupa1pa0S1unoUOD6ZweLIKytiD3cllFCU5FiBfhBth8eA/48L/rjuQa6/rWQIA/00562OtRO6xBaDN2CAQmiq6NogrsnOZulZGRwXzqIIUIfL2p+mmqSt4g= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293786765110.61388288856347; Fri, 15 Aug 2025 14:36:26 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084087.1443535 (Exim 4.92) (envelope-from ) id 1un25n-0006Fg-0N; Fri, 15 Aug 2025 21:36:07 +0000 Received: by outflank-mailman (output) from mailman id 1084087.1443535; Fri, 15 Aug 2025 21:36:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1un25m-0006FX-T7; Fri, 15 Aug 2025 21:36:06 +0000 Received: by outflank-mailman (input) for mailman id 1084087; Fri, 15 Aug 2025 21:36:05 +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 1un25l-0004xK-Gw for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:36:05 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20621.outbound.protection.outlook.com [2a01:111:f403:2009::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d797e75e-7a1f-11f0-b898-0df219b8e170; Fri, 15 Aug 2025 23:36:03 +0200 (CEST) Received: from BY3PR10CA0006.namprd10.prod.outlook.com (2603:10b6:a03:255::11) by CYYPR12MB8732.namprd12.prod.outlook.com (2603:10b6:930:c8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.17; Fri, 15 Aug 2025 21:35:59 +0000 Received: from SJ5PEPF000001EA.namprd05.prod.outlook.com (2603:10b6:a03:255:cafe::2c) by BY3PR10CA0006.outlook.office365.com (2603:10b6:a03:255::11) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9031.19 via Frontend Transport; Fri, 15 Aug 2025 21:35:58 +0000 Received: from SATLEXMB03.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.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:57 +0000 Received: from Satlexmb09.amd.com (10.181.42.218) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 15 Aug 2025 16:35:57 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by satlexmb09.amd.com (10.181.42.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1748.10; Fri, 15 Aug 2025 14:35:56 -0700 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:56 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d797e75e-7a1f-11f0-b898-0df219b8e170 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=UeMN+4wmElynPYLdrILMLDjMIqU8je+i0dolCtvD9JfQjbfQ8Ekp4ZxAZER7pW579S11e5Ae13yPboicOXEfDDz9m5Bob1VGjuJq+MOD9oUhNBPDvy9GLjoPNTrPHbiIT0uV4OSEzgtV1KXliSJD0kvEb2oTaejjj1F1qTulutD3wE+k5fqiYrVS8CQ1ZiUwPMfJGQ9OInnb7IWVlUbQchS3Ry10GWqGvNK+yLD/daGF6q9U8K1/84Nukx79jCdkomC1icON1+FGUohn8bvbp0yHq4hV/vTEI1yadK2z6/MLOMC0GgJFJDfbSJgNGhd2Ir/TgIxnbf5h5W0CMrL6DA== 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=AYlxeCuUWQFVD2Lqd3WOg1K+vgoKT/PL3YrRM2td0dw=; b=pIm2fIxjHFM3SA1j72JihVfrUzT4324UOXJebFbLkRDcjNZPwwXEz1XN6ADfDCcMMc5CFbJpsKyZRbE0vxU1CvWsnlNG5XlRZRBZvPk0sR8vz3QJ1Q4BGTvjR6OEJO+BwpvLJUhFFg153HAYUlL31QPfTdIGKLVpnXIpYQQXoF/1WLalLircxWlq9PrvswrscFrwDiWARyIzXgEWF7Vbq9EKrmsROdrA8Arsxlv9PF4Gi9ZUpyIY1CLup3+rVK5D5CCNHXZgnKwn13pBr5zqf22/8aeQ0XClK5TTHuRAYHvGxfpTWowVwOMalJayOKqL4LIYHzoOl1nOqKepYrVUWA== 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=AYlxeCuUWQFVD2Lqd3WOg1K+vgoKT/PL3YrRM2td0dw=; b=nle9G64PJHQJLp7gIDPAecESI707bOG74BBAutpKk7aqLMzd5zLIMFqoyssejNDn9DcoOPYLSjS6HQ/jwLypPwtYTbmcoDY7lTDgu9GPy0wAt6WxEC08Zlozb/hFlur5dGIe4oZzEeRQROF+uwJebn/VppG33C7//1BgrI02hxo= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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=SATLEXMB03.amd.com; pr=C From: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 5/8] tools/xenstored: Use priv_domid for manual nodes and permission Date: Fri, 15 Aug 2025 17:35:53 -0400 Message-ID: <20250815213556.90068-6-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EA:EE_|CYYPR12MB8732:EE_ X-MS-Office365-Filtering-Correlation-Id: 099e23d6-1c01-4c69-d5b5-08dddc43b8fc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|82310400026|36860700013|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?YR+BLkoi9Pv451Mb/gbtkoVPaxH2E1EJ9kWHGffGQC4LXzjaVwrNtNEtk8K6?= =?us-ascii?Q?AiAomoXtgSGWq3vwIAOAw98iTz21628Co1pBym+RKoDrVeyh/r0AaDqEDxX8?= =?us-ascii?Q?eoYSYw2IEU/MDY0JCev+is2owA8whyKc9mzxY14pEt/hcTh/X048F9enHxBN?= =?us-ascii?Q?klb5873KHNu0PAiI5jAC79QyWt2jypU3302qN7gFq36gaDbZCYtdWXCIy9Z0?= =?us-ascii?Q?oQLWqx4W0NrlFaAkN3TLoYZp/qmH/eGAGE1hE50fbLTVoabuf8Q6EsUdmCyX?= =?us-ascii?Q?gH84JEQga7xycZ6bFZlJfk3216APBj9KXFPKDseSgnueQx9dKqCIM2mtJTHT?= =?us-ascii?Q?UKsGNl9qA5wcA0Kz9NgDT9dkpWNurCbXTNudm65nYdyP20KOoOjcvypUTzS2?= =?us-ascii?Q?el4QwdMEjTkGgfmm6YYFuSo1Vpw5VWVsw+Lb6xN+hqV6weceiKaPPuGcFluQ?= =?us-ascii?Q?AM0OJ08eCf1qZcx3wGxXFYKJIUWVyvAs6U9wnkICYplEJsNxswybmNIAh6aD?= =?us-ascii?Q?OORxJeoQrvVin1C8iGM9H32bKoiFDSCp9P7pr1Mkp0P36Zo+HeyUmAQI7Qkk?= =?us-ascii?Q?JuGOVSYUBWlhzQZt67M3r7PFWRAkeTOpb3SD5DORylhG19pWPX3gH8aIreLU?= =?us-ascii?Q?rL745JHaVniFzpq/+QDV0GUiqOMd6n6TkAJ1wUI8CIfnHLzhD359njJAW7Ve?= =?us-ascii?Q?qBvdgJrzMXZhYM46a+yiWr/lODVTks1NSxJ/2Kp2MG6UvZn8T7kZMXhYBa2r?= =?us-ascii?Q?tn3O8sxRAvbxPqaQL5Yjz5PFN2COH+6G3JN9i2YZgqMRKGxEXNw2n8HltIhB?= =?us-ascii?Q?XX1eofBa2OdBpeMJ3KQMzIoiJ9AqkvmsA2zsRKnQrLFBFLnTBwG6oOpyNrBT?= =?us-ascii?Q?afSJHFfVz8971tn+vmqzJdSSXqFlRhC8WkEh9RDJFyrDHFkiM0Wh3Ydj6/lE?= =?us-ascii?Q?S6PMRg7YcesMNvUZCNTg1Hhy4PaBG7DVCJTe1yiLWj1ktWwERMeEjAzU8eNe?= =?us-ascii?Q?BMIPWx5raMjY/Tf6HSDk529rYP2g3MbbnCMcectbemm1uNLZRzsfBVstvAwF?= =?us-ascii?Q?E+0i+Nn7srH2JUanLe1yMPgW2emqPIhaveYJ2XEoUo30TD676ZL7Vr5bKsBQ?= =?us-ascii?Q?xrhmi8hjNQ9MsG8tJcmzdBmbrWo3p/hGTcUdE4FKrQogvfJ3v6n19zpL3bz1?= =?us-ascii?Q?UjhpN/jAv2h8vT1fHJYmwhU/nohTQs7BR2+vCYd7PiuoKMNN5uBQ098Te8oY?= =?us-ascii?Q?GHsMbRS1PDzk2AzNEC4O3GEOhgSjohjDVNtd8bbR//nWruHg3pS6RbwA9mYt?= =?us-ascii?Q?mv9z6EKVgV6e/9WIjuF7aP4mWNUMgETQqtw9D5VNxORmkPh6lBA6XmnDE6lK?= =?us-ascii?Q?OkBfMEDl2c7zAsfD+pAPGHJfhbleyBrYwve8NwOZ9R6SziTiWnfnQ2wtcflD?= =?us-ascii?Q?N0bhIXY/MQeI/MDrUj+cshvhqlIU2HJwj6yfubbyw8vJc2Lafx/t2tmjdut2?= =?us-ascii?Q?Kz2MB0gj3Sg2qNBW38QKlEhxTX6DohcaPOn7?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(82310400026)(36860700013)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:35:57.9614 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 099e23d6-1c01-4c69-d5b5-08dddc43b8fc 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=[SATLEXMB03.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: CYYPR12MB8732 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293787583116600 Content-Type: text/plain; charset="utf-8" Usually, priv_domid =3D=3D dom0_domid =3D=3D 0, and that is what is expecte= d. If we rename s/dom0_domid/store_domid/, it seems more likely we want to actually have the priv_domid as the owner. That leads to follow on changes to ensure that the priv_domid is created first. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v5: R-b Juergen s/Local/Privileged/ in comment --- tools/xenstored/core.c | 4 ++-- tools/xenstored/domain.c | 14 +++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/tools/xenstored/core.c b/tools/xenstored/core.c index d447e1167e..7a65ddb585 100644 --- a/tools/xenstored/core.c +++ b/tools/xenstored/core.c @@ -2269,7 +2269,7 @@ struct connection *get_connection_by_id(unsigned int = conn_id) static void manual_node(const char *name, const char *child) { struct node *node; - struct xs_permissions perms =3D { .id =3D dom0_domid, + struct xs_permissions perms =3D { .id =3D priv_domid, .perms =3D XS_PERM_NONE }; =20 node =3D talloc_zero(NULL, struct node); @@ -2320,7 +2320,7 @@ void setup_structure(bool live_update) manual_node("/tool/xenstored", NULL); manual_node("@releaseDomain", NULL); manual_node("@introduceDomain", NULL); - domain_nbentry_fix(dom0_domid, 5, true); + domain_nbentry_fix(priv_domid, 5, true); } } =20 diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index c74bafa165..bcc63104b7 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -1026,7 +1026,7 @@ static struct domain *introduce_domain(const void *ct= x, struct domain *domain; int rc; struct xenstore_domain_interface *interface; - bool is_master_domain =3D (domid =3D=3D xenbus_master_domid()); + bool is_priv_domain =3D (domid =3D=3D priv_domid); =20 domain =3D find_or_alloc_domain(ctx, domid); if (!domain) @@ -1051,13 +1051,13 @@ static struct domain *introduce_domain(const void *= ctx, if (!restore) interface->server_features =3D domain->features; =20 - if (is_master_domain) + if (is_priv_domain) setup_structure(restore); =20 /* Now domain belongs to its connection. */ talloc_steal(domain->conn, domain); =20 - if (!is_master_domain && !restore) + if (!is_priv_domain && !restore) fire_special_watches("@introduceDomain"); } else { /* Use XS_INTRODUCE for recreating the xenbus event-channel. */ @@ -1392,15 +1392,15 @@ void init_domains(void) barf("Could not determine xenstore domid\n"); =20 /* - * Local domid must be first to setup structures for firing the special - * watches. + * Privileged domid must be first to setup structures for firing the + * special watches. */ - if (init_domain(dom0_domid)) + if (init_domain(priv_domid)) introduce_count++; =20 for (unsigned int i =3D 0; i < nr_domids; i++) { domid =3D domids[i]; - if (domid =3D=3D dom0_domid) + if (domid =3D=3D priv_domid) continue; =20 if (init_domain(domid)) --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293783; cv=pass; d=zohomail.com; s=zohoarc; b=cmrlbyGcvLhjXr4FmZU9Tq3eFUf9jGkInf5rRDIpSmBebci0w8hcgy5fgyfQDN5SsTpe9MDw+Z4vov+wveaL+0SP8lxNlOjzA9MNXSl+ibu2ujRGU+vtGAlVWgEnpO/1TStn3gGDPXgol9iXlGx6LirgPA49T2dcDX5CSxVZEP0= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293783; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=T+7OuLM8ujWFjQdwdbY3VEN6ufQX8/ZTtd1lIhEbSQ4=; b=lqvWsLaoINf5lwuqz8hoi15bFjxBnpFAHMyDXEQxq/4cqKfAhvfb8g62p3juVJp/4OZqT0uERQE1BqALzGk19yAPy1WOLASrSrS9oPn/f2iozuXWl2onQS/Jl1E7mrCJzUR7y4gMgKHZB8/xaam/pDNkM7WKRK3bBSzCBv3Iad8= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293783029731.3649828123739; Fri, 15 Aug 2025 14:36:23 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084088.1443545 (Exim 4.92) (envelope-from ) id 1un25o-0006Vt-9G; Fri, 15 Aug 2025 21:36:08 +0000 Received: by outflank-mailman (output) from mailman id 1084088.1443545; Fri, 15 Aug 2025 21:36: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 1un25o-0006Vh-4t; Fri, 15 Aug 2025 21:36:08 +0000 Received: by outflank-mailman (input) for mailman id 1084088; Fri, 15 Aug 2025 21:36:06 +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 1un25m-0005Bt-Ou for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:36:06 +0000 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on20616.outbound.protection.outlook.com [2a01:111:f403:2009::616]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d93c5cf6-7a1f-11f0-a328-13f23c93f187; Fri, 15 Aug 2025 23:36:06 +0200 (CEST) Received: from BN1PR14CA0026.namprd14.prod.outlook.com (2603:10b6:408:e3::31) by BN7PPF0D942FA9A.namprd12.prod.outlook.com (2603:10b6:40f:fc02::6c7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.27; Fri, 15 Aug 2025 21:36:00 +0000 Received: from BL02EPF00021F68.namprd02.prod.outlook.com (2603:10b6:408:e3:cafe::5d) by BN1PR14CA0026.outlook.office365.com (2603:10b6:408:e3::31) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9031.19 via Frontend Transport; Fri, 15 Aug 2025 21:36:00 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by BL02EPF00021F68.mail.protection.outlook.com (10.167.249.4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:35:59 +0000 Received: from Satlexmb09.amd.com (10.181.42.218) 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; Fri, 15 Aug 2025 16:35:59 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by satlexmb09.amd.com (10.181.42.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1748.10; Fri, 15 Aug 2025 14:35:58 -0700 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:58 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d93c5cf6-7a1f-11f0-a328-13f23c93f187 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HwsNIf6F+5RmvZcWKCnZ+WKiy8IPyzWYTVPa7hyTebWvAnCBBhGCShaBwqBEhNegUx2z4NnRQF04OaUtSpiEkxQTfO/LF7jS8a3ZPIKbgXpj43jUv4TMS2jpjYSy6bCEjLMuI88L1v6K7PW71RuAaBL83Wr+K2QNYdH0rcGLwt1oeBcXCJDBiIu8KeKId+yVPRHa/Yu8kAW3gIFkzM8lb7yGkd+JvDETjgnbihouJauUXIT/dkpJq2ETcxeWYOBZxs6k0T/TxR0Qpuj/4B1+T7U/LjJnbSywC8eFrum+1lA/nYvJ9mEkhiZCJ4jjSjZ1xkyjszCsqfb3Pb4JdWGbvQ== 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=T+7OuLM8ujWFjQdwdbY3VEN6ufQX8/ZTtd1lIhEbSQ4=; b=TBFeKYmmrbOpV4XuqpPg3HtCGE6OflcLrss5ykDOuSdUk1A6COFMtm73DjmO8Mb/eg/MNkRsCj2pIP4Q/2N9khPMn9FrCUYcLWoYd+oA0E5Wcl/UBX5bV0p4eNuff9FfXtKxcDUaIeDPtjbD7BdspRaL2J+FvnL5jCOuu1tD59pNZvynDgL336YFqKJzaR4VL4HASZgqBdBiP9FT6A8lnsiVqljmZNHo4FRtdu75befVXADrja8I+4SaD4Qp6lHagMzSGP8No4tq+gpC2utAcZH1NoeJhO2TuLoUMze8N3AArFTZ59AA2TDNsc0rmOci/XqhUwzZZR7R2mn4OZjq3g== 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=T+7OuLM8ujWFjQdwdbY3VEN6ufQX8/ZTtd1lIhEbSQ4=; b=tUaAXX5gQZxplhnjE1+pTJYcKZQZfdaRmznsdgzUhAQ7EopFf0wo5U8vlRFpkEoPFx0sYKnRcDJMkFfuEnER3/t1L1T2W1WMbEVRwlUl1qfG1A3YP6yWH5ITadgiNwBJWasqa8+fHTKxOIB3lPqv+9GxhQQiIkqxLaC6oluA8bk= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 6/8] tools/xenstored: Rename dom0_domid to store_domid Date: Fri, 15 Aug 2025 17:35:54 -0400 Message-ID: <20250815213556.90068-7-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00021F68:EE_|BN7PPF0D942FA9A:EE_ X-MS-Office365-Filtering-Correlation-Id: ab9fe8a8-1dbf-4d4e-ed8b-08dddc43b9e0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|30052699003|82310400026|1800799024|376014|36860700013; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?MbBCNNumPkrTmmvRgd6QWWtH5JAcC5erQ15zNCyzF3R6+b8djx3QMqq4Gvkb?= =?us-ascii?Q?fkx2cOd+mesLVedJPumA8gt9ZB2Mmb85Nuy2rU/F2EuC2iapfYH1sDUmfnTV?= =?us-ascii?Q?ExBDoag+WhzTZtt/wKCF/rHuuH8/nQ/6XlVHd/3dZgomG6X56XgBl8qOSzOO?= =?us-ascii?Q?gsbJ/vlaA8P6hrXCASCPeYKbqi/1CFjOwL415hZcMziAvkS+nhCJ3c1kzeUU?= =?us-ascii?Q?isxQu1N/21ttsFK7CcEkmhWgInwKPKcmhcbHeRLtavYyuji/gKjgQdu8ufQq?= =?us-ascii?Q?9dCXVFIT4R+eQ8isMW0NJQu7eOIL5kYrqB+TKVlhwBeZz6vCB1HrDjohLnNe?= =?us-ascii?Q?Xuydj79uchjjEPZWrizhQnN7bbfarZah76EYy+kZaoUKuFVvjIodAUfvOlZt?= =?us-ascii?Q?aXSETHv//7vp42nIs2/tZzlq36fRz9rMrFR9BYoZRj7SA6z1bNH9OPe7Nm0J?= =?us-ascii?Q?V/pmjRWts5ujKC82HhDuZOeWVtz/1Ss/KxzM6EaYInn+qBwLxH/YxsmPmJYx?= =?us-ascii?Q?fT9WS4aVRkMnSualXUua58W+rR9dBMlsNcXohwjby2E2PS7Aala0nhafWuo8?= =?us-ascii?Q?4EzYzBU9ai2qO/3Tr8B6jWcsAmMJxOXTNa8jfu81DcLqIsiJWkR09TvD2GZ5?= =?us-ascii?Q?cIMVox42JmOP82SWOpHcxhSk2ZK/MbEUuvxW74YQIc2Eygv6CEjceCH08MPM?= =?us-ascii?Q?wqcNs5zz+rrqzJyDnp1n68GmIPugh8HH98j7iRxeR2ahfGgHrNmLf2PnBCic?= =?us-ascii?Q?ZAoxTiNYdZCoBp0OlZKbpDd+PnqTMLVyEqbHeSozIW+23un+SJwTz76rdsKA?= =?us-ascii?Q?B+ZMZ+r42xqIsrdQYPR5KSRZnsAzpPPQ99RPVePCp8snj2GYMLTknJI5gPEX?= =?us-ascii?Q?r3qLwtpJthp0/jtmZFIpFM5nTVy6vEZV4+OFZVRFSmXrvH0lfdZKB75wNrPh?= =?us-ascii?Q?wMGmMRVEa4VlkavVNNy1CB5cLvBGMvfAZfX+VMvCnqYSzBmzxJTIlL+AUWWj?= =?us-ascii?Q?P8jpSf7NcSt9tNt+LqWBgtrtBMo2q1m8zHxE9qJmGzwpaBVQEjEhck5MZBsK?= =?us-ascii?Q?l/MBDzh/k8viw3INOPIDM4lTRhoOUD4txu9kHU8dnCecdCNyDnVeRAcyInt9?= =?us-ascii?Q?OF85+IbZDo82F42X+6Z+VcRWbNqsqSNxVt6TOP+Yw0NJnvvREY/wsPatQqIJ?= =?us-ascii?Q?u6nSmEKxZXofnOoZNeNpA6kqO/7UmLjeKL7kzADDgbN9fMoZqBT0ukgt8pXY?= =?us-ascii?Q?4qUY+F/OgH4jycH0juPnK5ZQ0LEfb1vPKUlM4W6bLbPP4CX8RD+J70hwDfYZ?= =?us-ascii?Q?49y4ilkhCK3/ZSslzUwahQIg6216ecGRio9Pc89s1uNfjG+4I/fxMi1qBwl5?= =?us-ascii?Q?tfWQnwD8mg+tHphawyzhU7Xh+WUB2ZhviJUepwz6f+GAaRCdLEiBkwHEXpCR?= =?us-ascii?Q?DOPc2ArlzzMvS8CSsZUcQLiPnkWLkei3GNkEQ/eyGcP4U6/xJyzyX9/rQ1Xg?= =?us-ascii?Q?phJ4wPTuipijd6XfJFVazxS5KBr01lrrmz0a?= 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)(30052699003)(82310400026)(1800799024)(376014)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:35:59.5481 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ab9fe8a8-1dbf-4d4e-ed8b-08dddc43b9e0 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: BL02EPF00021F68.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PPF0D942FA9A X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293784470124100 Content-Type: text/plain; charset="utf-8" The dom0_domid variable is misnamed and conflates purposes. If we have xenstored running in a Linux domain that is not dom0, this variable controls the lookup of /proc/xen/xsd_kva and the event channel. Rename to store_domid to better show its purpose. One implication of this change is that the xenstore domain is not privileged by virtue of considering store_domid as privileged. domain_is_unprivileged() removes the dom0_domid/store_domid check, so xenstore domain is no longer considered privileged. onearg_domain() is updated to return EINVAL for store_domid or priv_domid to maintain the ability to call XS_RESUME. xenbus_master_domid() is removed with store_domid being used instead. Add a description of the -m/--master-domid options while doing this. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v6: R-b: Juergen v5: Remove xenbus_master_domid() domain_is_unprivileged() drop dom0/store_domid. XS_RESUME/onearg_domain() check store_domid || priv_domid --- tools/xenstored/core.c | 9 ++++++--- tools/xenstored/core.h | 6 ++---- tools/xenstored/domain.c | 14 +++++++------- tools/xenstored/posix.c | 4 ++-- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/tools/xenstored/core.c b/tools/xenstored/core.c index 7a65ddb585..64c478a801 100644 --- a/tools/xenstored/core.c +++ b/tools/xenstored/core.c @@ -2539,7 +2539,10 @@ static void usage(void) " allowed timeout candidates are:\n" " watch-event: time a watch-event is kept pending= \n" " -K, --keep-orphans don't delete nodes owned by a domain when the\n" -" domain is deleted (this is a security risk!)\n"= ); +" domain is deleted (this is a security risk!)\n" +" -m, --master-domid specify the domid of the domain where xenstored= \n" +" is running. defaults to 0\n" +); } =20 =20 @@ -2567,7 +2570,7 @@ static struct option options[] =3D { #endif { NULL, 0, NULL, 0 } }; =20 -int dom0_domid =3D DOMID_INVALID; +int store_domid =3D DOMID_INVALID; int dom0_event =3D 0; int priv_domid =3D DOMID_INVALID; domid_t stub_domid =3D DOMID_INVALID; @@ -2736,7 +2739,7 @@ int main(int argc, char *argv[]) dom0_event =3D get_optval_uint(optarg); break; case 'm': - dom0_domid =3D get_optval_uint(optarg); + store_domid =3D get_optval_uint(optarg); break; case 'p': priv_domid =3D get_optval_uint(optarg); diff --git a/tools/xenstored/core.h b/tools/xenstored/core.h index cef3c71eb0..e0b48e4978 100644 --- a/tools/xenstored/core.h +++ b/tools/xenstored/core.h @@ -365,7 +365,7 @@ do { \ trace("tdb: " __VA_ARGS__); \ } while (0) =20 -extern int dom0_domid; +extern int store_domid; extern int dom0_event; extern int priv_domid; extern domid_t stub_domid; @@ -382,11 +382,9 @@ uint64_t get_now_msec(void); void *xenbus_map(void); void unmap_xenbus(void *interface); =20 -static inline int xenbus_master_domid(void) { return dom0_domid; } - static inline bool domid_is_unprivileged(unsigned int domid) { - return domid !=3D dom0_domid && domid !=3D priv_domid; + return domid !=3D priv_domid; } =20 static inline bool domain_is_unprivileged(const struct connection *conn) diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index bcc63104b7..e282b5c5ed 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -509,7 +509,7 @@ static const struct interface_funcs domain_funcs =3D { =20 static void *map_interface(domid_t domid) { - if (domid =3D=3D xenbus_master_domid()) + if (domid =3D=3D store_domid) return xenbus_map(); =20 #ifdef __MINIOS__ @@ -524,7 +524,7 @@ static void *map_interface(domid_t domid) =20 static void unmap_interface(domid_t domid, void *interface) { - if (domid =3D=3D xenbus_master_domid()) + if (domid =3D=3D store_domid) unmap_xenbus(interface); else if (domid !=3D stub_domid) xengnttab_unmap(*xgt_handle, interface, 1); @@ -1158,7 +1158,7 @@ static struct domain *onearg_domain(struct connection= *conn, return ERR_PTR(-EINVAL); =20 domid =3D atoi(domid_str); - if (domid =3D=3D dom0_domid) + if (domid =3D=3D store_domid || domid =3D=3D priv_domid) return ERR_PTR(-EINVAL); =20 return find_connected_domain(domid); @@ -1381,14 +1381,14 @@ void init_domains(void) * have 1 domain. stubdom there will be dom0 and dom1, * so this will take the second for stubdom. */ - dom0_domid =3D domid; + store_domid =3D domid; } } =20 - if (dom0_domid =3D=3D DOMID_INVALID) - dom0_domid =3D priv_domid; + if (store_domid =3D=3D DOMID_INVALID) + store_domid =3D priv_domid; =20 - if (dom0_domid =3D=3D DOMID_INVALID) + if (store_domid =3D=3D DOMID_INVALID) barf("Could not determine xenstore domid\n"); =20 /* diff --git a/tools/xenstored/posix.c b/tools/xenstored/posix.c index 4a97f53dc0..0ec7babb7a 100644 --- a/tools/xenstored/posix.c +++ b/tools/xenstored/posix.c @@ -174,7 +174,7 @@ static evtchn_port_t get_xenbus_evtchn(void) */ evtchn_port_t get_domain_evtchn(unsigned int domid) { - if (domid =3D=3D xenbus_master_domid()) + if (domid =3D=3D store_domid) return get_xenbus_evtchn(); =20 return 0; @@ -280,7 +280,7 @@ static void accept_connection(int sock) conn =3D new_connection(&socket_funcs); if (conn) { conn->fd =3D fd; - conn->id =3D dom0_domid; + conn->id =3D store_domid; } else close(fd); } --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293789; cv=pass; d=zohomail.com; s=zohoarc; b=l1HJLOJbiTllj5MWkJjN7y+RvrDfARNoc32lrK8DS7UqM5WljP8sJZB9xO9CA50c+ncu9HopAsOBAkCXJzrtI5Nznl0U9mrndCeLUQ/pwZQR/tBA1tDdRWJgdOdLKpu13+NVXYdbYJjsXxFLPOQ8lZLh7AQVLEGuMK5iaPJymbY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293789; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ew1kABlxkh9uuRA1y1N6NUP22h+9pypvGUCR2HNQr2Q=; b=FqwGw6kL6pK3h7cGGU8GgeNLIvh8kWoeaRIlv1sr7cq6bOfU2LE1PXs4jjVIg3b4jzYaqWli6EFcK3Y0jVxkyZVgh1W+9d95b7UJeShldLYffuHHxPRddvrz4Q194fzpo0o2G5yIAhI7XdAmd1XCZFm2Mv+FFo75lJEQyr+oBfs= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 17552937891121013.0112700632542; Fri, 15 Aug 2025 14:36:29 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084089.1443555 (Exim 4.92) (envelope-from ) id 1un25p-0006nr-Q8; Fri, 15 Aug 2025 21:36:09 +0000 Received: by outflank-mailman (output) from mailman id 1084089.1443555; Fri, 15 Aug 2025 21:36:09 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1un25p-0006nb-MZ; Fri, 15 Aug 2025 21:36:09 +0000 Received: by outflank-mailman (input) for mailman id 1084089; Fri, 15 Aug 2025 21:36:08 +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 1un25n-0005Bt-Ul for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:36:07 +0000 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (mail-dm6nam04on20609.outbound.protection.outlook.com [2a01:111:f403:2409::609]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id d9c9aca6-7a1f-11f0-a328-13f23c93f187; Fri, 15 Aug 2025 23:36:07 +0200 (CEST) Received: from BY3PR10CA0009.namprd10.prod.outlook.com (2603:10b6:a03:255::14) by MW4PR12MB7483.namprd12.prod.outlook.com (2603:10b6:303:212::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.18; Fri, 15 Aug 2025 21:36:01 +0000 Received: from SJ5PEPF000001EA.namprd05.prod.outlook.com (2603:10b6:a03:255:cafe::c1) by BY3PR10CA0009.outlook.office365.com (2603:10b6:a03:255::14) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9031.19 via Frontend Transport; Fri, 15 Aug 2025 21:36:00 +0000 Received: from SATLEXMB03.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.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:36:00 +0000 Received: from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 15 Aug 2025 16:36:00 -0500 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:35:59 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d9c9aca6-7a1f-11f0-a328-13f23c93f187 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=VgrSNPaEKBw0Zz8vvdp5zm6E446U3Kjcme/EK2Xv3lG+/0GF8kQSHtMOjEPMUpmvlrjDzg6ZIk/bmjtvic410Qmz5d901vGo4gF38xIDO5iYstMHGEKAesV5LliwhpwmCLNDF9pT+9D5YLsneBAu0wGn+piJeEZoeq1TE67BbjOA7HuDK6+Q/S3FPHOqoRvNwLZDUkEINR2qzmfTWIHg9cbmjGJ3hAfyayixGPBkyI7QeAYH6Ce+LhAFHf3OEMicHO1lBfNwIhjJ4Efdv0oYK9hXhHcwUyKSKmCjn3S1dBLy9M0NhcqLTH03s064jnqHtRZ1b4IfbjXaIrQtGsonxQ== 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=ew1kABlxkh9uuRA1y1N6NUP22h+9pypvGUCR2HNQr2Q=; b=BwScjzo6So78v0yW06DXXh4ulV+V58a0t3JHUMXg/7SrYbsTMSAOFDx6RKo2aH2SxHPD/0zE7GexW0Sj1oDgvWQL8b7qDx3LhY2VF5Vwgx5l+YaAU6Mw8ZLs6jAeTwJ04+d6u4xFNjZ/S6kW8Eivjmtfi4o6psFPeTUPHby/xcEoqYAH0dqzBytX/QIZMgm7SL0D7xDZ80xr5y9Q2hVYJXm1DP2Ct/VS5FHfbZLgehN56d6rHxBIJ3rieS7hTpOj7Q11pAg3RbN+6EJgwHMYN0CrSJR5mt4Gmx8+MC3oM1To0qZks6dBgiF7du7BNP0R/nn08HArCsqO2h5TuqckwA== 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=ew1kABlxkh9uuRA1y1N6NUP22h+9pypvGUCR2HNQr2Q=; b=zNN8+L/l5caYJvYrW0zsO+a4EGYlSasCQfGZ2sxSHnvh4VZwCw4aiMrnXPQfa0dB9QM4lpfP+7Y0NqVdqrwX6YMwk+rAdxeFwWDovkBKxPH30I4Z29GjPRu4A5nckhenxojqlhsS/t2Bvos953Vv4JHzWDOriZleJo9ZPLv1jwY= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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=SATLEXMB03.amd.com; pr=C From: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 7/8] tools/xenstored: Remove stubdom special casing Date: Fri, 15 Aug 2025 17:35:55 -0400 Message-ID: <20250815213556.90068-8-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: None (SATLEXMB03.amd.com: jason.andryuk@amd.com does not designate permitted sender hosts) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EA:EE_|MW4PR12MB7483:EE_ X-MS-Office365-Filtering-Correlation-Id: f751c741-02a8-4471-054d-08dddc43ba9e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|1800799024|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?A6/ZpUxuB9jyBR5zSp8pkhSaIWhwJvCjWv9bW0dj3l+WEPE3f5y+thUGtL8l?= =?us-ascii?Q?MtBEd0SlMri618J3wHAuDbh1SrtFWBlEWmNHgmJ4MPPSJIn0nVXZb4IeyZwa?= =?us-ascii?Q?5RY2S8Mvvw2uO7kubzUzO3+bvQtNb1xHW/hQBsXyAy4gM0MUIloNyDdCDgJ+?= =?us-ascii?Q?83S/9hEeiiS13vUV2AIezC4JWHkhhMFu9L/VN2CYrIKf8al3UNdsT1T6LIr+?= =?us-ascii?Q?TH+pbb153APjmBBLrNFSTx1xIdM7Y9AbReAzrq0nRf3CQTbwFsBbUXJyQwiW?= =?us-ascii?Q?IokOC5Wg1gV2JVUo2q141xkYZHYz2tYj3XChWttgCWnYiCyOK44D64Yu/aSZ?= =?us-ascii?Q?/Mcd3+e6f+oxzyBLRiz/7KVyTZw4SQoKMzI30/IdZxtwmRo+T/zgasF6n0qU?= =?us-ascii?Q?FvsZ1dTG5Vh2t3ZZLFqBPVU1/aRWVFfo0g7gq2EYqa8hv05GlMKKtngN19bk?= =?us-ascii?Q?P8WT/FsAs8hHupgj/ON2PyV11M2CNkNPz3QIOAZPlBidGwa/++nE/Go55Jbv?= =?us-ascii?Q?CNfYWG6P2Ud5IR8fmNCBpolW+0PdUuheWeUM7bK1hlnyUcmxyjcMokhuFjY4?= =?us-ascii?Q?AEo8CjvSAphhOeMusUn8cPSzWsVMBQUe/e5hywE3ZkyRbEx+/6ihROg12YaE?= =?us-ascii?Q?bJH5HsftBy8AVh82///G6T8uEPZI6kh4jAoKWqpd9qqb80KjCFhabfFimkJ+?= =?us-ascii?Q?tFQLdxMbKzbAN/rBifm25bPPVPmGVvTjXMhnSpQXtJe08uWk+wQSMdrdJIl1?= =?us-ascii?Q?FsXLUO4RiYe0SKNPfLQMJiEK0XmJo3XrzvE0oeEgRclRO0uYVdR8527nrJgl?= =?us-ascii?Q?yNVcDkSXUNPeLNxBheb4pyICjxAGZLeOLFicrfnGTeCkwisW4oGzZCbZZeA9?= =?us-ascii?Q?EanNygmJbeO01H/99ykPgXMNtCHtYVOXJhAASh5HavRYu/FVjoLZZLEtiPzz?= =?us-ascii?Q?dhSoJQ6MqjsBvjldnqLMKBpgflihVW1bhdLVbZEGTula5cUYi7eE75eZNdnN?= =?us-ascii?Q?uLe+IGGJ9TfZHdDZVCn9zjfkCD2Hro/DmTPG7imTm6Q6rMWuLQn0CsoslTfg?= =?us-ascii?Q?/kcFHVTUPYfgiOypZvq7I3EZ2SNUO9DcMn8EZvi3eZRWn1yKcb6mSUbW3RJ3?= =?us-ascii?Q?+whD/LjeMCIjpGk+1voqvjL6nSfSaG6037vvWtV+78vU2r5jS/V7DB6VylzC?= =?us-ascii?Q?6ii+1s52Orw5sa+Olni92ddZPrS6m60do7MW1rwR849wTIlntGSMJ+HX17Gr?= =?us-ascii?Q?WrMTjfkrFTv9UloV+r0jkEym8QZf0hK1blYjy/cagtdH0n9mQqFXb4lIHlFT?= =?us-ascii?Q?4QPqafusJD2ybjl9mhRLdPzPzKO9Bhn5lRLcKBldP3T40jX5iAcCOypuutgK?= =?us-ascii?Q?NZlk7WIrVuQfaRm/bkKHSiwy+XVJyrhLTp9cyOcq4+bVpWSRgP7yznr419z3?= =?us-ascii?Q?mEJEpQrhit8FT/Rkhl8+YJ5mHG/grStcPOJN9DTEJ2EK4yieKdl1N0aS4dfk?= =?us-ascii?Q?NT8CNCpx1Y0U/kCJSZc8xG0JhKqejQhKx1vc?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(1800799024)(376014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:36:00.6957 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f751c741-02a8-4471-054d-08dddc43ba9e 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=[SATLEXMB03.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: MW4PR12MB7483 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293789600116600 Content-Type: text/plain; charset="utf-8" posix.c and minios.c implement the same named functions serving slightly different purposes. For xenbus_map() posix.c maps the local /dev/xen/xsd_kva minios.c maps dom0 via grant and there is open coding for stub_domid in map_interface. Change xenbus_map() to map the local domain's interface. The default grant table mapping is performed otherwise. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v6: R-b: Juergen v5: Re-order later --- tools/xenstored/domain.c | 5 ----- tools/xenstored/minios.c | 4 +--- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index e282b5c5ed..cf5a54965a 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -512,11 +512,6 @@ static void *map_interface(domid_t domid) if (domid =3D=3D store_domid) return xenbus_map(); =20 -#ifdef __MINIOS__ - if (domid =3D=3D stub_domid) - return xenstore_buf; -#endif - return xengnttab_map_grant_ref(*xgt_handle, domid, GNTTAB_RESERVED_XENSTORE, PROT_READ|PROT_WRITE); diff --git a/tools/xenstored/minios.c b/tools/xenstored/minios.c index 60d921cf01..a214e23907 100644 --- a/tools/xenstored/minios.c +++ b/tools/xenstored/minios.c @@ -61,13 +61,11 @@ evtchn_port_t get_domain_evtchn(unsigned int domid) =20 void *xenbus_map(void) { - return xengnttab_map_grant_ref(*xgt_handle, xenbus_master_domid(), - GNTTAB_RESERVED_XENSTORE, PROT_READ|PROT_WRITE); + return xenstore_buf; } =20 void unmap_xenbus(void *interface) { - xengnttab_unmap(*xgt_handle, interface, 1); } =20 void early_init(bool live_update, bool dofork, const char *pidfile) --=20 2.50.1 From nobody Thu Oct 30 18:40:04 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1755293784; cv=pass; d=zohomail.com; s=zohoarc; b=WE3A7BWD7Ml+47Ae9owHtEk/j5KqwTa80or/wtoVdKje2bSrCk+DwOBOGzje8MiaIJk5hQmOzwmCZX5VsHbSqCtEPY8NoaBY9T0uiTdaOvCelGrPqWUHtO/QcyvT8xhoaPshwrMyGKTrnLa30/vCfWowf45PvHn3UMiaeq4UH3c= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1755293784; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=6o2KKFuYGe9DCLPgWqQt6Y96aL0o/a+ZBCaV0wZywVI=; b=YwXxo5nW23qrQze1sYfsEMC+q2rLiSkkWKkSPiTGL4YZJbNpUFwzq3cDAS0Me4pjDQ4k/no9VP1VXh8TCf17zd2vw2zfKmWSAfZqh0RlKSvV/DUBkyaFC1IgWwxfyIZ/RILtK5kx6EHd2IY7/b3RvDgG5vnAb2WTX9Xjj+nxMjo= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1755293784647605.1352328497854; Fri, 15 Aug 2025 14:36:24 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1084090.1443565 (Exim 4.92) (envelope-from ) id 1un25r-00077i-75; Fri, 15 Aug 2025 21:36:11 +0000 Received: by outflank-mailman (output) from mailman id 1084090.1443565; Fri, 15 Aug 2025 21:36:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1un25r-00076h-1a; Fri, 15 Aug 2025 21:36:11 +0000 Received: by outflank-mailman (input) for mailman id 1084090; Fri, 15 Aug 2025 21:36:09 +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 1un25p-0004xK-AA for xen-devel@lists.xenproject.org; Fri, 15 Aug 2025 21:36:09 +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 d99759af-7a1f-11f0-b898-0df219b8e170; Fri, 15 Aug 2025 23:36:07 +0200 (CEST) Received: from MW3PR05CA0016.namprd05.prod.outlook.com (2603:10b6:303:2b::21) by SJ2PR12MB9212.namprd12.prod.outlook.com (2603:10b6:a03:563::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9031.18; Fri, 15 Aug 2025 21:36:03 +0000 Received: from SJ5PEPF000001EE.namprd05.prod.outlook.com (2603:10b6:303:2b:cafe::c6) by MW3PR05CA0016.outlook.office365.com (2603:10b6:303:2b::21) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9052.7 via Frontend Transport; Fri, 15 Aug 2025 21:36:03 +0000 Received: from SATLEXMB03.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.9052.8 via Frontend Transport; Fri, 15 Aug 2025 21:36:02 +0000 Received: from Satlexmb09.amd.com (10.181.42.218) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 15 Aug 2025 16:36:01 -0500 Received: from SATLEXMB03.amd.com (10.181.40.144) by satlexmb09.amd.com (10.181.42.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1748.10; Fri, 15 Aug 2025 14:36:01 -0700 Received: from fedora.mshome.net (10.180.168.240) by SATLEXMB03.amd.com (10.181.40.144) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 15 Aug 2025 16:36:01 -0500 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d99759af-7a1f-11f0-b898-0df219b8e170 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qcbn4taXH5N+gmU7zSCkzic2vVK9BfbjPL0GPbXGM5OYPqJ1P8/p8On1svOLLNO7L7ycHflBmauwSB/BgQ1SUKqAdk9dEDNEXXUQoe2I7xaIHf0Ab/21EBJKM0AnRpvFL5dOjAwTwjUicaDOlilEpSWv9LwCkYfTMB4ioVn4e4gje7mq8J7rnsyHmyuRbgmFlEix/OZ1tlHsJ1aU1laIxSzCZ5BDj+0YRCXrtdYV4qQ9jVKAaurApdrYcPsL7+ZLBoYvXiE+mHR0y/ipOytViNB1U9uxuuMJuX8mMJmeXofa9/hombCM461FuaC/HK+CITLzMFhVZe+rwz+Rz4mBxA== 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=6o2KKFuYGe9DCLPgWqQt6Y96aL0o/a+ZBCaV0wZywVI=; b=QdfTS1pOZKvD3B5eEzws+XGpp/6yagNXfnA+ee1tp80h9BNzBNWfbS/j+9A7cSlfgo10b12QVbjD5jelWlciQbt8jevb1o+hievnYDjASqsLnLa+acskDmdhkwJroTlU4p8vfpGC6/5B2pbDDJA9h+A6tN9xnW0IdpOl9JtG6XnxGGhykxKTIgoFUEVriqHLRSeGOlAWii7ItVBJsMrmW3zJes4ZdgtrQPrk6nIj1SvvvTaiQIi4ZwXWkvlX5r9Bg7rVIcwMZrIVIALNdB8yGn45f8vIS7quTec/3F0aTzrfK6NhID2NUM5yUYh4McN3kxSAaYA3sM1lrvtvVTpbYA== 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=6o2KKFuYGe9DCLPgWqQt6Y96aL0o/a+ZBCaV0wZywVI=; b=QrcbNczmLlt/dQJkc2UClJq0G4x3O6PztXDJIS/+Uuh9mdAafk8WNp+fqupoEsut40ir3hoy9LMpPY8bWvcllZmLQLCSAJhbTMUOOuN2N6x9ErUkbCCI/xW9agUoDOTp3mCveMy9fTco+/QPLWIfWxvoqUaEUtckN8Oo1CndAr0= 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 (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; 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=SATLEXMB03.amd.com; pr=C From: Jason Andryuk To: CC: Jason Andryuk , Juergen Gross , Julien Grall , Anthony PERARD Subject: [PATCH v6 8/8] tools/xenstored: Remove hardcoded implicit path Date: Fri, 15 Aug 2025 17:35:56 -0400 Message-ID: <20250815213556.90068-9-jason.andryuk@amd.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250815213556.90068-1-jason.andryuk@amd.com> References: <20250815213556.90068-1-jason.andryuk@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001EE:EE_|SJ2PR12MB9212:EE_ X-MS-Office365-Filtering-Correlation-Id: 86644da7-bb35-4510-ba7d-08dddc43bbdf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|1800799024|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ZYjBAGuKHmy5E0NsrK2wEaSwu03icErZ/yPsLpCo0GOPXTkroJnh9b7DrvG/?= =?us-ascii?Q?1/xxl7gyZmFW4x+8XRTiB8aUHqD6byaWBzpR3xG5nppbe9YqHyfY3AhbqbX1?= =?us-ascii?Q?WpcyfeLiAOpxJeWVpsqrxf9qo3knptIcRjQ2ZFyusvwhJjQSC+J05ii5BDo7?= =?us-ascii?Q?VV67hUWr2YRjqOATXmoPetpqex/64w5Uljdtm/2F8ZxeVCu7stv/wijkQ3Ti?= =?us-ascii?Q?mIA48effSlkwzWRWaqiPkzFIUav7yL6Egd4chyVUVPbLYZ1KSO5oRyQSyYKQ?= =?us-ascii?Q?mSfFF0xWXVAfXsvbVGGRpmwIY7lxDnjuYS9UrFkbwc2ZobakF3zOc/kVWVqS?= =?us-ascii?Q?njUJmq9l5sR16wP7FF9NJqeK85M0PQ19sQoSbDk4h0ND3824vTL3+QCvpfJE?= =?us-ascii?Q?AYvupKQa2gEDOsi5jlzqIrhrAooCBhEv34Op/g/uAGbfrOwNoo5X7bjboSfC?= =?us-ascii?Q?3JQlvM+qYemu+khEuzz7LTI84ZRSnhcu+JylNCtrEAU8Ba3eNuBMU2GS3zfN?= =?us-ascii?Q?qBoDY4AUEQWXuF9tkm+WO/Gj5pYCm67t6pSntLOsCt1i8PxXXiBTxxmQglYH?= =?us-ascii?Q?STSLOQWpDZohIFbUNjimn2XMQ6bepSIxEuAJIqpz24A6rw06wiHGfhjhV4oB?= =?us-ascii?Q?S13yKAgqr37WoGrRbOA1JWFzhE1mbNbUxBEX7Qwnj/3dU88F0Y1VJWebgpjb?= =?us-ascii?Q?CpooKJSOQw6q5qghwtAXCLU8fMBHeoRyZNX0vAN+bOfASdUSthSH7aCcjDi/?= =?us-ascii?Q?D8DTLLB16veEmahn/j6CYN0RN5AgXD0NynaWllBNOJ00YQbC0xPFnqjrxUDF?= =?us-ascii?Q?h6I9EJwWHtdhv5eB2cZiYNyPZbT97pBpK++p/UhmFKzUpHCAd5Seqy4rd9Do?= =?us-ascii?Q?aRDj5HaBj0zo/ZRYjqxI8eGbjL4to2DWR0tDDP6wojOAMJNp8FqJ0ZPXb2Cc?= =?us-ascii?Q?uQRuNsZJEGEEvlrD9CQ42JUjaxhnqahl2aeZPTxh1cmOc4upR18jJbhCQBL3?= =?us-ascii?Q?9YdoT1XO9AMzPwztl9E2dzFBZYgYyk0qii2xNXGbVQjSUiCnrbUpHnBuTqgE?= =?us-ascii?Q?GOO9tJ3COMDQRXQCIaZBdrurDeRpuJROM5UHXamYsGqjfddDPmkk0EiYV+n1?= =?us-ascii?Q?xaZqF3PuizQRuZSgcy/g57DrIlFQI1wKdAFy6NAqVVIhkSjH+zgdHOQjbNEp?= =?us-ascii?Q?Fd5WbAihY510V7IOL35sxrPS4N3AYUMPetOdhCRLPFHF1BoHnNv65MrlO9FO?= =?us-ascii?Q?EwMfYiTtBZtkgP9JbavwLvIg7OGKRpV3ElfsGy1/wber0ow7v9KzsZsXkrR6?= =?us-ascii?Q?AGVGeZvIj4vc8O898tKFUhr+BMO8mhyGW0qfMggzwbeA1D71ZyevuqdHyPyf?= =?us-ascii?Q?6YrbxwF8R0n2QnlaiA7Cua7awNs3plQRU2B5VS8fjTZoh6+B2KXFryN+nAl5?= =?us-ascii?Q?7ibvGXkm98XmE9xI1yftIxu6vfVMJ55XbkNUzqXzvV/iZ0nTWLImNk8NVDq9?= =?us-ascii?Q?1Ko3PSg2fyryVnUGCWybUvJofj8NcYmCfOzf?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB03.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(1800799024)(376014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2025 21:36:02.7648 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 86644da7-bb35-4510-ba7d-08dddc43bbdf 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=[SATLEXMB03.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: SJ2PR12MB9212 X-ZohoMail-DKIM: pass (identity @amd.com) X-ZM-MESSAGEID: 1755293785794116600 Content-Type: text/plain; charset="utf-8" Update get_implicit_path to return the correct value for a non-dom0 xenstored domain. Signed-off-by: Jason Andryuk Reviewed-by: Juergen Gross --- v5: R-b: Juergen --- tools/xenstored/domain.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tools/xenstored/domain.c b/tools/xenstored/domain.c index cf5a54965a..694d68670a 100644 --- a/tools/xenstored/domain.c +++ b/tools/xenstored/domain.c @@ -1312,11 +1312,13 @@ static int close_xgt_handle(void *_handle) return 0; } =20 +static char store_domain_path[] =3D "/local/domain/65535"; + /* Returns the implicit path of a connection (only domains have this) */ const char *get_implicit_path(const struct connection *conn) { if (!conn->domain) - return "/local/domain/0"; + return store_domain_path; return conn->domain->path; } =20 @@ -1386,6 +1388,9 @@ void init_domains(void) if (store_domid =3D=3D DOMID_INVALID) barf("Could not determine xenstore domid\n"); =20 + snprintf(store_domain_path, sizeof(store_domain_path), + "/local/domain/%u", store_domid); + /* * Privileged domid must be first to setup structures for firing the * special watches. --=20 2.50.1