From nobody Sun Apr 12 19:29:33 2026 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=ford.com); dmarc=pass(p=reject dis=none) header.from=ford.com ARC-Seal: i=2; a=rsa-sha256; t=1770951061; cv=pass; d=zohomail.com; s=zohoarc; b=ks7qZQSHVRqd+6LAEE+Ou3lYufBEbR+mo45LL0grRMtgLw7TXRRC56qjczuoa4az0haszxcfK6633px2jRt+DT/6kYKyiDqCKmb/FequcUbdfRlYpZJV9WoNZ/6R4iiyWkdI7W970XZPq7a2d3hmNb/Rl5tDSPcio/MN6SsYgjo= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770951061; 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=gwKKWwFQSxOL2nXP9KGBiAgclLhKYOLn3uWhkxYkz78=; b=ZNHOrsOyl02mnzQ0XkEyaR4DGkMPN/WYKs14CWcafkU9IggQAjTaQ1739h63NjzvWDLzj6ZZTq6Qr4Ism2Kkhx1lT8NH/Mqv20mSPhL/j29+RF6lzh6ALdhiDsEGJSm6V/01fWQIZDa0W9YZtAs3q04RGvoOvDe75pceHgnCFfA= 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=ford.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1770951061065444.92304395539077; Thu, 12 Feb 2026 18:51:01 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1230087.1535676 (Exim 4.92) (envelope-from ) id 1vqjGA-0007SX-CM; Fri, 13 Feb 2026 02:50:22 +0000 Received: by outflank-mailman (output) from mailman id 1230087.1535676; Fri, 13 Feb 2026 02:50:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vqjGA-0007RT-81; Fri, 13 Feb 2026 02:50:22 +0000 Received: by outflank-mailman (input) for mailman id 1230087; Fri, 13 Feb 2026 02:50:21 +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 1vqjG9-0006yU-Ge for xen-devel@lists.xenproject.org; Fri, 13 Feb 2026 02:50:21 +0000 Received: from mx0b-00498f03.pphosted.com (mx0b-00498f03.pphosted.com [148.163.143.241]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id b9360b3f-0886-11f1-9ccf-f158ae23cfc8; Fri, 13 Feb 2026 03:50:16 +0100 (CET) Received: from pps.filterd (m0482515.ppops.net [127.0.0.1]) by m0482515.ppops.net (8.18.1.11/8.18.1.11) with ESMTP id 61D26ClX3521405 for ; Thu, 12 Feb 2026 18:50:14 -0800 Received: from ch1pr05cu001.outbound.protection.outlook.com (mail-northcentralusazon11010013.outbound.protection.outlook.com [52.101.193.13]) by m0482515.ppops.net (PPS) with ESMTPS id 4c9tvm855f-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Thu, 12 Feb 2026 18:50:14 -0800 (PST) Received: from BL1PR13CA0159.namprd13.prod.outlook.com (2603:10b6:208:2bd::14) by IA2PR16MB6348.namprd16.prod.outlook.com (2603:10b6:208:4ad::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9611.10; Fri, 13 Feb 2026 02:50:08 +0000 Received: from BL02EPF00021F69.namprd02.prod.outlook.com (2603:10b6:208:2bd:cafe::3) by BL1PR13CA0159.outlook.office365.com (2603:10b6:208:2bd::14) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.11 via Frontend Transport; Fri, 13 Feb 2026 02:49:41 +0000 Received: from mx0b-00498f04.pphosted.com (148.163.138.245) by BL02EPF00021F69.mail.protection.outlook.com (10.167.249.5) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.8 via Frontend Transport; Fri, 13 Feb 2026 02:50:07 +0000 Received: from pps.filterd (m0373461.ppops.net [127.0.0.1]) by mx0b-00498f04.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61D01AZg008731 for ; Thu, 12 Feb 2026 21:50:05 -0500 Received: from smtp-us.ser.proofpoint.com (pmta-use.ser.proofpoint.com [44.208.76.22]) by mx0b-00498f04.pphosted.com (PPS) with ESMTPS id 4c6mw9we1h-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Feb 2026 21:50:05 -0500 (EST) Received: from localhost ([19.12.76.221]) by cmsmtp with ESMTPSA id qjFrvl2LU4XAgqjFsvcASk; Fri, 13 Feb 2026 02:50:04 +0000 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: b9360b3f-0886-11f1-9ccf-f158ae23cfc8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=ppford; bh=gwK KWwFQSxOL2nXP9KGBiAgclLhKYOLn3uWhkxYkz78=; b=SuT6al1mxsfiBroU6jV sX5o1ikNLrDMvRjZ0R0YAOrFuPclDR2a3ncNBNxrYawxRRZI925HwsvGehSan+Yn pqR2cXVn2jnLguplEm9K0Us34JOjBgn+QbcAn8MNt3KnxY0qqzlikyfgg49TqHkI Jxq7sraB/buEEXw24fqhHprd3JZxkg5zc+bITgl/Vp+mE+ITbTTTIJGsfMMzq8L5 2MrzrGKqaZrTsOLYg73EXgTBWXDsc22SjzCb1TJnLhrkXURh5LPhL+RxbMNhVi+O ZgPWz0v7ZV25A2iyzvF1S+xgrkKLOSd9Py4/sVkpAW1fI9YSTZeg+Im4H4heHByb Z3A== ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XjdIFgOky16Ql43XpphN5yJNrmjOlzpexS0wJw4oZEdnRkIJ7b3F5FrgiGa9Bq8av8bs/4gLQkjOjQ8cgkmWvE0wr+4tcSd8xyTrKG9utqKT3+Yx/8bZ/aFlDNJqgyRtQouOdFHtJi9QseCaAXHcHzIWYMp4qx7ZYs5+wT4pe+JFMtjW3FFui2P+I3hVVyZov3PDoo8YqyCYSKxpez9UWS46dKuCQ/qDUdqOY2WuXvvZOTxyxndgRV/1Ldh5ZfcD3FEpT5CJV8NAV3RJMDMipmRuE1uaPtwdvw/iBI9YPXd2reN79XCd0QE9y9UOjCBv5qgC8mM+H84dqOBkwIw+5g== 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=gwKKWwFQSxOL2nXP9KGBiAgclLhKYOLn3uWhkxYkz78=; b=Y900s3dqp3kMxUWmTDmyblFPaS0rZsXrBLd+jaRGvfM0M2OLivrQo9xOC4x/0AePNPMPsenqaNspdtgywDPLTiKcy6ggM131OMHch0ggPmTy4Tb8AA1wKNLOP663PF9qTCUjBmiYWRLMtozqDtzmsBCI07V57TC8epf0lv4ocRsmKrkrTLTHhxhRSbI3MTb3Z3+pQ0AdytPs77IzBZOm1mofsvvECvfP5ns4B23ZDPg1w7ISGRLc/qQvGDHtidse7EiMJZqryl0ed2/VN4YdC1Oh9kDre/aMJRkBeEs9ht9zTn7xfUxd+w+uaK9QLtI4KJe2/hBedMnRC02YESTD1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 148.163.138.245) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=azureford.onmicrosoft.com; s=selector2-azureford-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gwKKWwFQSxOL2nXP9KGBiAgclLhKYOLn3uWhkxYkz78=; b=ITONXQGTF6+ZAvC7icSft2BT0sToLCwGbE8iTDD1FSyoiLSaPVOeZgDcnMrekf0qNU4fhwO8m5ERK4RR72DxxNM4rRsELszsS0Lbe0gfdVoEKJiEak6gI8FGsSVIQpcPGO8M5ETbI3j6T18jBmanm9QE5+zplBF4hpNQVlTT4ik= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 148.163.138.245) smtp.mailfrom=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com;dkim=pass (signature was verified) header.d=ford.com;dmarc=pass action=none header.from=ford.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 ford.com designates 148.163.138.245 as permitted sender) receiver=protection.outlook.com; client-ip=148.163.138.245; helo=mx0b-00498f04.pphosted.com; pr=C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= saarlouis.ford.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= ppserprodsaar; bh=gwKKWwFQSxOL2nXP9KGBiAgclLhKYOLn3uWhkxYkz78=; b= ZTkbwIdcSIC4oZcm0Q0L3LGkuk7Z/JyyOjaQ7CtaZi/ex4/CjR94ObRoRHGCLNen 6+yIcxp3nDBaSKjmHHCrr6pz2e8VzV/0K4Uc0Fi9u9kgnASwDGXAWIZGRUvRkZAi tqwBMrK6osXXQ+EDR0ZGFm2GX7FKkS7SDjg4xDs/YBKSLMFRJlcdBpbnXBZmMUEb NbU5wdbEb7z/ojY2JX+9qdLgRgng8SfldfhOKtQZXc8z8suL2MKCHYmNQn0YxLPC Y1TSSrVJXT9yvugfeyCLCtvf03xma976YbmJ41U277/s2Pw0htAbB1aZqOnDEJ0M kyRkk8eGDNOrGovUdA0buw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=ppfserpocford; bh=gwKKWwF QSxOL2nXP9KGBiAgclLhKYOLn3uWhkxYkz78=; b=U4FVsTcORNQJHtfoZnkuYlo uILFRH982igFElsR7jGL12l1WY2vNq3ZwSySIrzlTzbL6b5uzrfmtEo9xiWlULMG 6oSO67cDl0fjfle0tAuv1AqE/RcFzp5lexPLEoPMc7ty37tLxuN31own6LDqVida imn4WVHccW6yiR2uHTCIURswUC/VYpF9U87haQFzz13RyljEGCTvbW+fD+FIOjHv cUJ9EUD2f4QziWRN9KPVm2POFzgKcm4/GC1KXyX7b09KLzwFUxTQeYhQoZmYz5rb dMb+nIj1jvGWZ2qj3JW86ksgLytkG4FbT/r976W0azaDQfEoSpWCQnMMdo56xDg= = X-Mailer: SER-76bead168636dc6ed1c9e51ce4dea80dbdd4163750742b614a4d871e565792b7 X-Cloudmark-MID: qjFrvl2LU4XAgqjFsvcASk X-Proofpoint-CID: eb09f7eb-2dc2-34ab-a188-7b293c1db1fe From: dmukhin@ford.com To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, anthony.perard@vates.tech, jbeulich@suse.com, julien@xen.org, michal.orzel@amd.com, roger.pau@citrix.com, sstabellini@kernel.org, dmukhin@ford.com Subject: [PATCH v3 1/5] tests: fixup domid make fragment Date: Thu, 12 Feb 2026 18:49:48 -0800 Message-ID: <20260213024952.3270112-2-dmukhin@ford.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260213024952.3270112-1-dmukhin@ford.com> References: <20260213024952.3270112-1-dmukhin@ford.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable PSER-M365-App: SER-APP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 adultscore=0 suspectscore=0 malwarescore=0 lowpriorityscore=0 phishscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF00021F69:EE_|IA2PR16MB6348:EE_ X-MS-Office365-Filtering-Correlation-Id: e576522f-e5dd-4ed7-678a-08de6aaa9902 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?FsilxcRhPqT6CPS/M6U0mf+MNC1JeQKi78+mMdl4tCZxm+zRCG9tlLzuI/KN?= =?us-ascii?Q?n4A8RGm4A9/mQlg5y6nkvxKiKZVhaka13RfjIMRhsKKU1hsogj9hIvRVE4NF?= =?us-ascii?Q?rG79dZ/KlpyVy8q+ft5anY1yEiF1OTwDGryT4+TSFxOQ5g7hp3r78iQzTm1q?= =?us-ascii?Q?uc4Pu/1kij2J7icZuGJWvk6EWMDWLWBpAI+mLaxagVDuowfSn5pZVT4LFJ8Y?= =?us-ascii?Q?U2UZ9mcj+rDvqDIg1/dQ+wt/oWevd/kvmIIydRnK2dDx//o7cp6Xv6VtiJmq?= =?us-ascii?Q?LXHtzNEpUfdgS4glRVXeY5QVXcEg1HD+QrmGRxemmjNgmZQEvlV5hOH7GN7q?= =?us-ascii?Q?gG1EFgRXii6V2zj5ty/2ghH9jQnduiTI5gSV0ren3pH08CT3hJDP9f1sUK4u?= =?us-ascii?Q?gwhxIdFTFrGHQFXiJe0P1O53lVFdN92rdFysGd8fx9n18/poiY0xEoGp8wji?= =?us-ascii?Q?qD2KdBKC5Xc1n10RYGpEKYn0tJtDHMVxSgIZXGxYXuGnu3AUnK26QYzsJKhs?= =?us-ascii?Q?4ggG+9GHFXW1AvbDUE0gFEig+KOTHIAAP/czmdcOMPZUGglSvEGi8m8qXus2?= =?us-ascii?Q?Fus7McmrLlecI1gvtwh6fFqn6Yq8fS5tj0sMGbyr9Rol4yFyXxZPfCxWOr+O?= =?us-ascii?Q?yNPu4QNIqnltuPtKwQ1Un1SYd7f7Gj0O12GofWK0xC2ARKdLdZ9HNemb0Cyx?= =?us-ascii?Q?tejn2z1jpEPZ1xjpWPjUsErjuwO99PnRhGBMxjBGU4sLz6RYlayn8rjykfip?= =?us-ascii?Q?ph+DXGRfd1AbRUdIOrOCdozJP4aZSn+am8UHgK6aEfySCUUVHV3zwQlUUz1j?= =?us-ascii?Q?aS12anb7Qcph0xzQO4rICct7rV9u9aaWmpBUKJyDQBpV+2qegMUkEea5KFOS?= =?us-ascii?Q?WpEuUAmOwk5ul1MFBXu8lAlqSyMecMJiWDvYSL3czJfiPejrxB9sekgRF2Yp?= =?us-ascii?Q?Rhcctq2Gm3AerWUgo3NiMnnHiUqJsJN8YVhDjgaS9o9iAaq2qCyDDwd1ibUV?= =?us-ascii?Q?hFHLajyUmIxmfEIbwY3mSCfEyfi2g03zvSw5BBAmJ3J1lgZZw+lNcnVn4v72?= =?us-ascii?Q?UnE0Vm8PoUkwEH7sNMOePKFOozF4ptVYAF3r/KWFRcClfGoeBUrcMHTZp75Y?= =?us-ascii?Q?JswSPqj8zuI0IH65smiL+7ksiU4/I7/vxPxeOwQNCoo4+ikQ6l9AVi3qEvgt?= =?us-ascii?Q?1CT5n/qtBRIzrcJrz6b5ADkSZDSudfQ5aUXOisXMf/bb7RBS3Xmkn6EDBRW4?= =?us-ascii?Q?1DPwYjwjUGTHRwpHweVX1KqCHyoNfWa4hriSgDY5veBOTEcEwF2iHYwZv817?= =?us-ascii?Q?77Bc7NLUl92Zv9g8Cgg1uHu7JVygSmiBwOElA6NLx2HDwHS3rYzFzLB2i2gl?= =?us-ascii?Q?ps2AszxjDdLN+x3A3XThgOjpq3rjfR+04gst5zF7DVoQoP1xDSkufxgBJOD6?= =?us-ascii?Q?y1cOBYTdzOJ5wX0k97MNY32b35oyJnMfjU/tbTsjlnh4rauFs+b6iuMo6WvL?= =?us-ascii?Q?T/L8gLgQQKV7oQfiGJ17z6/L9+69QKBCpzAu+YTBNGo02AWUWNddf5axYwBE?= =?us-ascii?Q?aBlhKJTSU0M6sTjL/eAOICRA40u16ome/CG99N6RGF0sA4Sl2iZxMVPWRnYE?= =?us-ascii?Q?jDhDCg60+DLv4azV2msEwXDTISqrsQlFlbjMIEbTRb1Mzy4nKRMrCjehU2z6?= =?us-ascii?Q?uqDRbA=3D=3D?= X-Forefront-Antispam-Report: CIP:148.163.138.245;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mx0b-00498f04.pphosted.com;PTR:mx0b-00498f04.pphosted.com;CAT:NONE;SFS:(13230040)(82310400026)(376014)(1800799024)(36860700013);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: u5Zije45qs3w56HAHjnqOoJaKnk14NMc9WZX1s0nqNC+8cC1XI0658Doxq8Y/E5U3oAwGPMlBqW69LsjszbKjZvGRhhVbA7sb0yuUkuSkKaY6JhDBDhEDBV2xMOFCUUEvuClV/o/EuNBSPvAMpdBojsdJ7mqIL4fR64AzP5GzaOiagaD5LwqTfmVjFOz9weM/4O9A5h8t1txVw9wziRh1lEC0zfoAqMfOj7NFMiXc32FUGqMbLI/CJXH2e8ELDPhrPclRCrT1AkcA8PiiVc87vAKo3Wt27qMIyn2+SRgLKIy+Q9xKhrAoMNY1Tt1L68aFRm3suZwiGSzpiI3SP356XFNLYPd+t6IRorTr8UONTuIXCFxejKRoe59DXLQUmGJVahQ3W7ZISgcnuv1CQkkRhjC+lxu0SwP+YLWvUPnliSesxLvO4BJdbUMdmTcdN06 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 7NPI0d7wMjsnHS+h1rQPjEIaSkH5sRPvotmonX2UIR4d8DQuRkx14WMoUFnBf2oOP65TCE6iUfk2MEln8kSoEfPHyyawqJRzNy9r6gHzDEzkqX3TfAarUE1w+RPchT6aiQNWPAWzZiQRON6bGrX/Qtcu30sQZNb0Q2DASWbFhd65ALJhO6KX2hpWf5PA9xjpUh1KZQzjKoQsqGeoyZc0V4dF9O6joTeUzQ2J/l4AAMff5ZA8OhJ0xxX56nrrUJGkqY5BfAaLHrKo+zS7j2T3DW5gqnKGHWTYAjJBiPFbnB9vpdjkreUXq3iUKk4OSg8MLSMyHrK1tKCvYQfYKGzmCghuFOrKNJeVLs2oM+57dKtBbbkABH6tKx2u0V2d7W1dg6hn3NsGGrndAln3ds2MlxOgX1H5vbGMnaPKK1Gm+i9NiAhySW+a88kuZkMUU28eTd+T73BKsQ4Z4hz5Kwco9WJGKpXHoJ0RhZR0AoR+FDCfqqVbxjsms+o3a4Z12xXPLYRqusRl6vCjkyKKxLaO8B6U/LrdYCCmEwOHQLYL45ncCcZ2Y9dyKREjV/IzOh2ZYWyfSby7wKEktPbSESTlInfDZsUVVJHXNbQBg82WSJEAXUMEaYdqWf231pR3kwKeQVwqZiz5HqS6YAC+fQoziw== X-OriginatorOrg: ford.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Feb 2026 02:50:07.6214 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e576522f-e5dd-4ed7-678a-08de6aaa9902 X-MS-Exchange-CrossTenant-Id: c990bb7a-51f4-439b-bd36-9c07fb1041c0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c990bb7a-51f4-439b-bd36-9c07fb1041c0;Ip=[148.163.138.245];Helo=[mx0b-00498f04.pphosted.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: IA2PR16MB6348 X-Authority-Analysis: v=2.4 cv=Kv5AGGWN c=1 sm=1 tr=0 ts=698e9166 cx=c_pps a=N2Bp1sGBA0q5hqNMPvyVyQ==:117 a=b7IhknPlfT0FN1EembXvig==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=HzLeVaNsDn8A:10 a=3PXLN80vpJUA:10 a=6NUGLSImWEsA:10 a=w9pew1qAHqMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=cbNQJ9GKAAAA:8 a=WxjMYAsaG4aR2vMT2MYA:9 a=3whSkbs7g9Me0DR5EJEX:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjEzMDAxOSBTYWx0ZWRfXwp0c0qPCOata USc/zSSp84fwzlN7bghMfOwun3rmebmlqG2x5Ui6kyw6fyfzvXRusKuMIGIk5c0ss1Mgai4Ar/o Kc+5TWi2GIde7XBGv/5R+U36K8J+xBlgrwgV74K1lY9RdQvxaOeNIVeI+mOR0VDqAfRoKCPM274 Ns7wUU/P+HKwft9ep+OW+6yFS0Ag94LcLWGgoM1q0OhA9rz3OWAdJ/0YBrekX0flDB04i0+FULt mSVOStINciPgBEYs3daQlaDuilTyR0Pbc4pvFrXJg/H6Re2eSCVrd9lJDl8XaLKu+ggsRXfFZHn ZMRuKqXV+Fxb8SYIQ90/3Sn0vX4EwmQSDjpfkI8DG05Ct+ew9Po4iuiqgAsnCriKkk5zqXDl+ty yns+Ev6Gd6Ieqn4Ha9KkcI3dssfSq+85GF0SIIP2tEJhOqLlRQ4Mjcf5aTcNg3shM8LcU6dHbDk 2HVEitAu1/UtxCWifQg== X-Proofpoint-GUID: ocnhx_Sb35YkR_6ikN0VmZcc2n6lKbqn X-Proofpoint-ORIG-GUID: ocnhx_Sb35YkR_6ikN0VmZcc2n6lKbqn X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 spamscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 suspectscore=0 bulkscore=0 clxscore=1015 impostorscore=0 priorityscore=1501 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-ZohoMail-DKIM: pass (identity @ford.com) X-ZM-MESSAGEID: 1770951063637154100 Content-Type: text/plain; charset="utf-8" From: Denis Mukhin =20 Add guard against HOSTCC !=3D CC (similarly to how its done in PDX unit tes= t). Account for multiple test targets in install and uninstall make targets. Honor mocked hypervisor header over tools/include/xen symlinks. Finally, add some clarifications for the functions and do some cleanup. Amends: 2d5065060710 ("xen/domain: unify domain ID allocation") Signed-off-by: Denis Mukhin --- Changes since v2: - fixed emit-harness-nested-rule - honor LDFLAGS_APPEND --- tools/tests/domid/Makefile | 59 +++++++++++++++++++++++++++----------- 1 file changed, 43 insertions(+), 16 deletions(-) diff --git a/tools/tests/domid/Makefile b/tools/tests/domid/Makefile index 753129029ed9..74cadab25b2e 100644 --- a/tools/tests/domid/Makefile +++ b/tools/tests/domid/Makefile @@ -14,26 +14,44 @@ $(shell sed -n \ 's/^[ \t]*# *include[ \t]*[<"]\([^">]*\)[">].*/\1/p' $(1) 2>/dev/null) endef =20 -# NB: $1 cannot be a list +# Generate mock environment by replicating header file hierarchy; +# each mock header file will point to a harness header. +# +# $1 Hypervisor header. +# $2 Test harness header. define emit-harness-nested-rule -$(1): $(CURDIR)/harness.h - mkdir -p $$(@D); - ln -sf $$< $$@; +$(1): $(2) + set -e; \ + mkdir -p $$(@D); \ + [ -e $$@ ] || ln -s $(2) $$@ =20 endef =20 -define emit-harness-rules -$(foreach x,$(2),$(call emit-harness-nested-rule,$(CURDIR)/generated/$(x))) -$(1:.c=3D.o): $(addprefix $(CURDIR)/generated/,$(2)) -endef - +# Helper function to emit mock hypervisor code dependencies. +# +# $1 Hypervisor filename. +# $2 Harness filename. define emit-harness-deps -$(if $(strip $(2)),$(call emit-harness-rules,$1,$2),) +$(eval c-file :=3D $(abspath $(1))) +$(eval c-name :=3D $(notdir $(c-file))) +$(eval c-headers :=3D $(call list-c-headers,$(c-file))) +$(eval c-deps :=3D $(addprefix $(CURDIR)/generated/,$(c-headers))) +$(foreach x,$(c-headers),$(call emit-harness-nested-rule,\ + $(addprefix $(CURDIR)/generated/,$(x)),\ + $(2))) +$(c-name:%.c=3D%.o): $(c-file) $(c-deps) + $(CC) $(CFLAGS) -o $$@ -c $$(firstword $$^) + endef =20 +# Emit dependencies for mock hypervisor code. +# +# $1 Hypervisor filename. +# $2 Hypervisor source path. define vpath-with-harness-deps vpath $(1) $(2) -$(call emit-harness-deps,$(1),$(call list-c-headers,$(2)$(1))) +$(call emit-harness-deps,$(addprefix $(2),$(1)),\ + $(CURDIR)/harness.h) endef =20 .PHONY: all @@ -41,7 +59,11 @@ all: $(TESTS) =20 .PHONY: run run: $(TESTS) +ifeq ($(CC),$(HOSTCC)) set -e; $(foreach t,$(TESTS),./$(t);) +else + $(warning HOSTCC !=3D CC, will not run test) +endif =20 .PHONY: clean clean: @@ -55,13 +77,12 @@ distclean: clean .PHONY: install install: all $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC)/tests - $(INSTALL_PROG) test-domid $(DESTDIR)$(LIBEXEC)/tests + set -e; $(foreach t,$(TESTS),$(INSTALL_PROG) $t $(DESTDIR)$(LIBEXEC)/test= s;) =20 .PHONY: uninstall uninstall: - $(RM) -- $(DESTDIR)$(LIBEXEC)/tests/test-domid + set -e; $(foreach t,$(TESTS),$(RM) -- $(DESTDIR)$(LIBEXEC)/tests/$t;) =20 -CFLAGS +=3D -D__XEN_TOOLS__ # find-next-bit.c CFLAGS +=3D '-DEXPORT_SYMBOL(x)=3D' \ -Dfind_first_bit \ @@ -69,9 +90,13 @@ CFLAGS +=3D '-DEXPORT_SYMBOL(x)=3D' \ -Dfind_next_bit \ -Dfind_next_bit_le \ -Dfind_next_zero_bit_le -CFLAGS +=3D $(APPEND_CFLAGS) + +CFLAGS +=3D -D__XEN_TOOLS__ + +# Honor mock hypervisor headers over tools/include/xen +CFLAGS +=3D -I$(CURDIR)/generated/ CFLAGS +=3D $(CFLAGS_xeninclude) -CFLAGS +=3D -I./generated/ +CFLAGS +=3D $(APPEND_CFLAGS) =20 LDFLAGS +=3D $(APPEND_LDFLAGS) =20 @@ -85,4 +110,6 @@ $(eval $(call vpath-with-harness-deps,domid.c,$(XEN_ROOT= )/xen/common/)) test-domid: domid.o find-next-bit.o test-domid.o $(CC) $^ -o $@ $(LDFLAGS) =20 +ifeq ($(filter clean distclean,$(MAKECMDGOALS)),) -include $(DEPS_INCLUDE) +endif --=20 2.52.0 From nobody Sun Apr 12 19:29:33 2026 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=ford.com); dmarc=pass(p=reject dis=none) header.from=ford.com ARC-Seal: i=2; a=rsa-sha256; t=1770951054; cv=pass; d=zohomail.com; s=zohoarc; b=aG6YmOOk1CNBvf2PUB1xEKo1QhvrwvWH5Eeq1uREfVh43poK04WZj/Flux/M5Zhjf+2TQEYXy4Tg9Muk+gKQclx0FrdkDwwhHKWzcWj7umn3rs4K9o6mDUR/psBugwruDVYnhpQegP8R1SVaq79JMqm2Q3kqqkuENe12G6zMAks= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770951054; 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=D+K4AlEnp22qTNZLqCdKEdqhzmvY/R2xKikFORG7B4I=; b=AGjx3K/5B4DspZVyt8aegommzdOBIyXWqIMZHsgDQ2e8ATOrtJtSutFcgGyq+SCf+VddrNMGlrnigSjtXV20Ge/FQztt7YnBNmfwiEW8CExZzXjy+DaY4FAHFoH/UlOflUQTYZDPFXjk7vgoJhZXyGxwBZo7o1UehOemycJmZl8= 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=ford.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 177095105405971.84080643920015; Thu, 12 Feb 2026 18:50:54 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1230084.1535652 (Exim 4.92) (envelope-from ) id 1vqjG8-0006yi-Ed; Fri, 13 Feb 2026 02:50:20 +0000 Received: by outflank-mailman (output) from mailman id 1230084.1535652; Fri, 13 Feb 2026 02:50:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vqjG8-0006yb-Bn; Fri, 13 Feb 2026 02:50:20 +0000 Received: by outflank-mailman (input) for mailman id 1230084; Fri, 13 Feb 2026 02:50:19 +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 1vqjG6-0006yN-I2 for xen-devel@lists.xenproject.org; Fri, 13 Feb 2026 02:50:19 +0000 Received: from mx0a-00498f03.pphosted.com (mx0a-00498f03.pphosted.com [148.163.146.23]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b8f5c4f1-0886-11f1-b163-2bf370ae4941; Fri, 13 Feb 2026 03:50:16 +0100 (CET) Received: from pps.filterd (m0367123.ppops.net [127.0.0.1]) by mx0a-00498f03.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CLDfkm438691 for ; Fri, 13 Feb 2026 02:50:14 GMT Received: from cy7pr03cu001.outbound.protection.outlook.com (mail-westcentralusazon11010012.outbound.protection.outlook.com [40.93.198.12]) by mx0a-00498f03.pphosted.com (PPS) with ESMTPS id 4c9pkesr2c-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Fri, 13 Feb 2026 02:50:13 +0000 (GMT) Received: from CH0PR04CA0081.namprd04.prod.outlook.com (2603:10b6:610:74::26) by IA3PR16MB6725.namprd16.prod.outlook.com (2603:10b6:208:520::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9611.11; Fri, 13 Feb 2026 02:50:08 +0000 Received: from CH1PEPF0000AD80.namprd04.prod.outlook.com (2603:10b6:610:74:cafe::47) by CH0PR04CA0081.outlook.office365.com (2603:10b6:610:74::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9611.13 via Frontend Transport; Fri, 13 Feb 2026 02:50:01 +0000 Received: from mx0a-00498f04.pphosted.com (205.220.161.53) by CH1PEPF0000AD80.mail.protection.outlook.com (10.167.244.90) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.8 via Frontend Transport; Fri, 13 Feb 2026 02:50:07 +0000 Received: from pps.filterd (m0426318.ppops.net [127.0.0.1]) by mx0a-00498f04.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61D2GRnp2516936 for ; Thu, 12 Feb 2026 21:50:07 -0500 Received: from smtp-us.ser.proofpoint.com (pmta-use.ser.proofpoint.com [44.208.76.22]) by mx0a-00498f04.pphosted.com (PPS) with ESMTPS id 4c6mq5denq-2 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Feb 2026 21:50:06 -0500 (EST) Received: from localhost ([19.12.76.222]) by cmsmtp with ESMTPSA id qjFtvl2OM4XAgqjFtvcAUl; Fri, 13 Feb 2026 02:50:06 +0000 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: b8f5c4f1-0886-11f1-b163-2bf370ae4941 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=ppford; bh=D+K 4AlEnp22qTNZLqCdKEdqhzmvY/R2xKikFORG7B4I=; b=efJbAw6dMBfJTpVc0LF wX7c8akTh/6UE2DzI6y7d9vV/VgUZrm3dDhbt8K+4GoDqkF4lfccjbDPM7p49Pey 0I+SRjQm6Fxt9ou+COtdauglqQMFFew6Nd1yVnrXKaMMlwvPjSjp2DtvCNhHwx2T jDjyGf/tn9+EZw/0bUH+MUN4Vruc/FeTmRQQ9sRdstjUXj8Mvi9iYitZGwEzrKSL LWgnmggaX5HvJmnm1BERXGC0GhEHM/ys7Ctrhpe3xydb9uJRFZeKV2ZqZXlhJZyC aFTdxzdoKGqS0WF5pl/vD9wSXEUytJGHqxO/j0ffBmPZ5WkvEGYgGOAnOmXrCP7s Fhw== ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=eBSew6fgw5NjfL4W+q28Ftnwbma1Ss/K17Ot7XvWmOM1iGKOExcl7vVmlkDf8P/rvKh36s4FVPf1TG6IFnnBMhI6QgPIbAJqqHfvNzQ95KWL25QwTYzI+TignZmbQGtC+KHRdivezMkSVjO1NELIw5etiDOtJ3JsdbdD7hWKLhMOEccSq4+yAzBg9lzvUIEkHnvUUHCJkLuS+iH9PYLwNxlKT5IBpJir6b329zVXTEWMN2B1LiVb7H2SZm0Td6MgBcENcnRD9qIQLpJLVm+nTqlULjxKLMTHOJXeVowe5ieKcIx6BffnQhc+QQlUXkiOMZo9i0shRD900SCUiv33SQ== 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=D+K4AlEnp22qTNZLqCdKEdqhzmvY/R2xKikFORG7B4I=; b=EckWBDaOzH6xxGzFtvnOeGmnwDI60KnMXHVAayFaYcuydNG0POgTuqvoKAR2PNbY5+VnamM+OQkulMtEfFweaTN3uvSQErecBsWwTiyPDNMDe2GR6vYo/VQIkLXMCqriR8sAhH70I7LHqxXap8jp/00i8rYGxKXpzgCAtIwKL2ZtbFLqr9ZTYf3KO4hIHvyjyl5XZftl4AiiZBuFMOqjv8nktpoVT08NVn/irRi4kcX7//M7scYyL8tAM+CVrMtbUURzBdmC8fMjFw4jjx9VDTihjwsDYwZqKXGgH17Lvq+JeOpLqevSXT1F1NObaJ+m342LXAWkZsRE6e9lcy4CRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 205.220.161.53) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=azureford.onmicrosoft.com; s=selector2-azureford-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=D+K4AlEnp22qTNZLqCdKEdqhzmvY/R2xKikFORG7B4I=; b=ikdlWV8viCwPLzcQaBaNuFrXQKAZDZ7s6IPbGCZxVBIGswP06cdJR81M/lGYqKjxwx17RwuiEeOAMfGr0RslVXNtmRuuBzf+aD2bvOU9I5GtLfsjmh3Wl4fiURLVcyYJwspZ3M4EosFOYiVVFbEsiNbdvGE10aY0cLgIWW6pG7A= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 205.220.161.53) smtp.mailfrom=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com;dkim=pass (signature was verified) header.d=ford.com;dmarc=pass action=none header.from=ford.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 ford.com designates 205.220.161.53 as permitted sender) receiver=protection.outlook.com; client-ip=205.220.161.53; helo=mx0a-00498f04.pphosted.com; pr=C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= saarlouis.ford.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= ppserprodsaar; bh=D+K4AlEnp22qTNZLqCdKEdqhzmvY/R2xKikFORG7B4I=; b= Q0wmPxyG2NNp7o07niA0EhjPSGUyBYl3mJ0HUNbMZaECemDDC4oV1XjfEob8g1Ba K8xD/ijYWF9dU+D6HkUFuqYJKNkKzQ2u936dc8OsWAox53TESQZEhpQUP4yINDqs eNrLXWcJpSOgBPz02x0Z3uMARvLaJ1ykJnDT8XYu/B25aKUTksBhZFsMdQe4+vsN vAsTNhZ/ujtUGkvTsRdrTER7zVAEYpxw6jvv2K1gB70qtVOeDZLWfLnIVEEpokTj v1ShjOFqiKjrgk8Mgj4Uiuf4I5aJXquaxDr+I/WtdUfyR0iEbuYfptitREsZqYaF Evfb73b0DFIjOP6iczuRGw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=ppfserpocford; bh=D+K4AlE np22qTNZLqCdKEdqhzmvY/R2xKikFORG7B4I=; b=LUfQyG38sPwFZ4jsxihM0YM ru2YljJK8NiGiXS7IN2OwNMy86HfZlIqGAR32YTDv7H+Fpx1G8rj9VZ1UPerAkYZ eDpz0nsdufCptd3LCIESYYDC9/Z0Cp1H/hIJawCKBO9SavZ/RfFLOlxo48Q7HDjg 3cvSWtmgcKy4dpRyMkdFdc8e4z76j1dfS7/400ix43/Eb16F/ZmDUMjacl6TJJXU IB6+rMGOogD2YK+YFyaZuH7HWAv0aH/34+DlqxhCicFbx1YFiqkFpL8UMrfKs04m 11laPQPUqR+22rbHlcseGIem+rQ40zSKynrbGu5yP2CrnN3E/PetiQNTeviCbkg= = X-Mailer: SER-76bead168636dc6ed1c9e51ce4dea80dbdd4163750742b614a4d871e565792b7 X-Cloudmark-MID: qjFtvl2OM4XAgqjFtvcAUl X-Proofpoint-CID: eb09f7eb-2dc2-34ab-a188-7b293c1db1fe From: dmukhin@ford.com To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, anthony.perard@vates.tech, jbeulich@suse.com, julien@xen.org, michal.orzel@amd.com, roger.pau@citrix.com, sstabellini@kernel.org, dmukhin@ford.com Subject: [PATCH v3 2/5] tests: use unit test fragment in domid test Date: Thu, 12 Feb 2026 18:49:49 -0800 Message-ID: <20260213024952.3270112-3-dmukhin@ford.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260213024952.3270112-1-dmukhin@ford.com> References: <20260213024952.3270112-1-dmukhin@ford.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable PSER-M365-App: SER-APP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 suspectscore=0 phishscore=0 spamscore=0 bulkscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH1PEPF0000AD80:EE_|IA3PR16MB6725:EE_ X-MS-Office365-Filtering-Correlation-Id: 05d4fe57-cb57-46fd-c0ba-08de6aaa993c 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?dYS1LUEVjXJE1r/AeAJftHUyXmaHAqcSGFn8ZfKcNZBaNk33zkDkBgSaXcMU?= =?us-ascii?Q?YpriShHl8E5W0UufoOC2e3Cm+06hbOGByeFOBVZcvXgg/1mA1/Dth0ophA9A?= =?us-ascii?Q?WSrAaL/8t4ccdtBuEBcMIv+UlzPbvicP05Il2CEwlxHBdLZ2N2hq4/ei1yzG?= =?us-ascii?Q?Op/g/S2zDx6X5UJQPyGkgPEHYgyLcaSQT27++xwrrWvacxjvrF1q0papfQYm?= =?us-ascii?Q?mUq4Ojtj7dXAMgFaekx863hc5OyC9f2+TzoSlj7VfTBedXlKjkO+Yuf36WwL?= =?us-ascii?Q?DBJN9GWyDwcdsM7pX/hAnd4Z67rjVByARSuZHIXBA84CgO78s/g64PQihS/s?= =?us-ascii?Q?aDe3add49BFsY1Ql+THpSI3DitrQlj3BJpYNVlgWQLmEaipxZ593xrForUcq?= =?us-ascii?Q?MNtCOI9Pnx8IfqeEXE0tz3icyFwFhx8133O19KGf1K678w3BV8zsVqEwCyCX?= =?us-ascii?Q?v1jzX/dcJn2c70Z92gWZOkATQJ7LFqUrrS3nDrjG5wrWzg//KHoe5Am4Y+SA?= =?us-ascii?Q?rkeA1IkBcSK/tQvTb49HBfpdiRQ9jNHdyzGKV1Pvc3I5O3Q1F9cZd+CFwhE/?= =?us-ascii?Q?yq094n5MDijcNFs8hw+sogULyqdE8Kvf0Fm3NqGY8Uz6vu//XoWDCj95E5/N?= =?us-ascii?Q?m4G9xHjRZyq1JN4mFKiy22jWM8WYgsQpVWuC9RqYesAXnB99PtZnhSD4F4kS?= =?us-ascii?Q?CosBRoKbZWm/d16ZjOSUnr/2e8xH0KU/dLp+GX6SBzDkpfbmgnk3+KrFql7E?= =?us-ascii?Q?oARqLmmflCD4lgkL0Cgx4gfnshG/XW6GYtgUhN0p4eTb66VF3xT92EXSp+3F?= =?us-ascii?Q?e4IUcsTlESCBqzlnzPllddqoUEHtSuHpnP10FldDShmbTsMz2Tl26bw6qZR4?= =?us-ascii?Q?iAwHTsUI/+A9C8gQeT7WN3RRftnB8NlAxpPTB9KksVgZsACl4keu+DiK4uQm?= =?us-ascii?Q?23MxyBOPbs0nAbJPEMRKgLu58OLEyITFKOJqqnMx1APxMwRf1gyG00SKerp8?= =?us-ascii?Q?KpcAxhTcqTwXkQ94LTRSuQUnv9Nj+x3tyJhlQ6DOmI8azsSVOoiUMlwQVx2T?= =?us-ascii?Q?AePudwHpFYk/0geWhblM3MSiEyAuAQrQS0ABvywf13mD0kgX4zgyZMIcFcWw?= =?us-ascii?Q?EamV011frlSgI0caqSFRnPX5mEzpv3vFJWd4xo8BktBFgU54jy2Irinpx2ya?= =?us-ascii?Q?ydqX7gEYckY+B1Wu4rTp+s7qV2NmKDE1Lsfp8BsN3kX7CTjNM6V9V2KrWwPK?= =?us-ascii?Q?/QOJZET+23CD4G/nzBH80NIZO0JNYBYYLIbvTlaWHOm2C53tdOJ5Vtdr5Z5f?= =?us-ascii?Q?7z2AfkuOs29YtkDNRjq9HRLqag0l90nBbN7BKNW6fO5njqJL87OjWB3yqUG7?= =?us-ascii?Q?f92ykw9lYyFCSdyZspMF9gQUG41tOTKDX2J/fnEAuuForxR2aiJ0vqHLdY7F?= =?us-ascii?Q?eDzgF+MmKo2JOVoE+sb/E59RYfTe2SSvyUh5S2FLBV3I2uCodV4MV2P0OOlD?= =?us-ascii?Q?ajdNYu5sE5GEYa3BjU5Stgb44VRBUXOqW03FRQhgqQu6hMyrwvGgtpjANF/H?= =?us-ascii?Q?oxY7Rf5H0J1lqLqPsoWdikDugRvxZ16Zm6XXCLBgN5kR+T+v1BGw9zOz96LF?= =?us-ascii?Q?8Ak6YM6WMd69B/lamP3Ei8hMS4lSQWYGn/Gu3UF2phXWikrnFWLPZ20xqcAC?= =?us-ascii?Q?q8OK1Q=3D=3D?= X-Forefront-Antispam-Report: CIP:205.220.161.53;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mx0a-00498f04.pphosted.com;PTR:mx0a-00498f04.pphosted.com;CAT:NONE;SFS:(13230040)(1800799024)(36860700013)(82310400026)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: vCoCItotyctSe8lnd6oJmcHqMXLtYe+4eH9pbPmy239kXgUmRXYP/FEfiGoZPRzgNxBBGNicFUI3R3aAROHUpnvQGJcCYLEzT3zIrikP9QKY6GgyAEqbDub2eW69c/wFtZVwzeR4hilCjUzyoFaWBhwnpyXFJE7zV0Xt62R+QS/Fz2NKGyr8bScWY4O/npCQ8xIkQ9GeGZddXF6wkFzmUpeYsiEjmXtypjdcrXlhFhom3SawtpdvJwNC9/Gb57cGcJz+5yfSb5QFPBFtpddhSluuyxo3ZVFy2eECMyl56sjmZMt7GlublGdhdIhBp6KQb5KU43h0Jrqh6oqi4eI55gmw+RVHsBl5F0gbIGj3KkkCt5fOCvoOTEhHK4dcqQYe3706bWdL5VK2r7a/voIB7WEHqKGv1MYVmDwhnmFddYioB/ryDbQs0KZxAW8flthx X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: AOL7KYMduhxHOlUdgpsQE13wQL0cVsISYhWAf0expwyxNkAndF2UNAmSSIgMY5+pALanF8FJZApX0Tl92wBSP5jpUy5ybbqCMnTDnZIui+PROnmvVHh3NUshOVlOSjJCCKGv1aEF02162diMzMuSwsCmwdhDDKWJh11iYqiep/Q1m3aJ4sbKvX7cA8OilXIEFe0J8zwAUWdNQMgcMnDaRceW8NWqBuSlejTJ50mrcyGftfGXl6H0iHPdEhTvoD5NkOo6qtenJJtfS5O4+rYIhdwIQ6Td0j9x+wsXupcH7vWudY0Send9LFTca+NTocScpwhAO5WPp6MGw0yOZeTReFou+/SQanUmcyPO66RY4PnYD12FYxSZKsvcvO67/BfAZDWhPwAxULMVFa1A2Nns90FyLvDyIlp/Rk1FvkGpg78N0EM/yQslgkL2DxUbPW6Ht3h42LBh4lTvP7yx7z+d1F27f+DSjbyn1t1nwiL+IUeuF9Rv5T0tiT8NaAX597jRaxmjFuSFdC8XCPN1tZFFNWgzbaTBJtTUSd3Sx1xHALzX/P/U8ctfz1Xw2/HTGLnrYlvBSjpiuOtO470FN8pimFwfTEzVHSPTSrJCS9vJ6qPKBYzPGH6cJRxXmDDddyAiok52MEI3DBq2xAK2cxIJbg== X-OriginatorOrg: ford.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Feb 2026 02:50:07.9024 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 05d4fe57-cb57-46fd-c0ba-08de6aaa993c X-MS-Exchange-CrossTenant-Id: c990bb7a-51f4-439b-bd36-9c07fb1041c0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c990bb7a-51f4-439b-bd36-9c07fb1041c0;Ip=[205.220.161.53];Helo=[mx0a-00498f04.pphosted.com] X-MS-Exchange-CrossTenant-AuthSource: CH1PEPF0000AD80.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA3PR16MB6725 X-Proofpoint-GUID: HNWxEtJkl6nMP74S7BA4n4T3HKI3w2PZ X-Authority-Analysis: v=2.4 cv=Wuwm8Nfv c=1 sm=1 tr=0 ts=698e9166 cx=c_pps a=Ho/Krdd5x/ljPkV1+9yTnA==:117 a=lOEMawUel/sSvQipkIvNbg==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=HzLeVaNsDn8A:10 a=3PXLN80vpJUA:10 a=6NUGLSImWEsA:10 a=w9pew1qAHqMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=cbNQJ9GKAAAA:8 a=yHvfKUB0eRiEYTVKTk8A:9 a=3whSkbs7g9Me0DR5EJEX:22 X-Proofpoint-ORIG-GUID: HNWxEtJkl6nMP74S7BA4n4T3HKI3w2PZ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjEzMDAxOSBTYWx0ZWRfXyoCexlBTaylw 7PqM1PJQY9kx20MDqT3Dhkh8piOIfjXT4wEFC8EnzYK1JP/QL9YnRL2Qtg82fXbujz5bOW4u04S L+t+/lqAJKheuTFXcvaVNQu9+ovuM5JVHdgN6uWMyZRHWIxn9z8EJbkVnjIOdhD2hI8K8kvo8Jm hJoXOqO0P1lAiRNw8ivZiKdP/8ngrmh4Ds5UxStpqBNwyExPV9fziNVtjMYDrGELXXTa0nJKjlr ZdqZQIaOh7RShvqc2a/CwotyY4pR7vaLDDcSnbkJhRMpZk/tHQ4bINlS6ysyjesrQaOsn9TiwPx +SjRAdjcerFzOzDn/SbkDcAvWQtL/rZLFYB63U+8OFMdk0MSNU2liroYWobj8A5JH0K+k6AduH+ YgNxa41aBHd39JH9kZ94Jm3xDiaVH1Ukj18F2D+jdXZ3N8Brwo7cZ3mMfQJx0/lfcccUlqRzMvl Qh86pteJdUHsPHvwzzQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 spamscore=0 priorityscore=1501 bulkscore=0 suspectscore=0 phishscore=0 impostorscore=0 clxscore=1015 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-ZohoMail-DKIM: pass (identity @ford.com) X-ZM-MESSAGEID: 1770951057939154100 Content-Type: text/plain; charset="utf-8" From: Denis Mukhin =20 Introduce common fragment for unit tests to minimize some code duplication. Use the new make fragment to generate test harness code for the domain ID allocator unit test. Introduce CFLAGS dedicated for find-next-bit.c only to avoid contaminating global CFLAGS. Signed-off-by: Denis Mukhin --- Changes since v2: - honor LDFLAGS --- tools/tests/Rules.mk | 93 +++++++++++++++++++++++++++++++++++++ tools/tests/domid/Makefile | 95 ++------------------------------------ 2 files changed, 98 insertions(+), 90 deletions(-) create mode 100644 tools/tests/Rules.mk diff --git a/tools/tests/Rules.mk b/tools/tests/Rules.mk new file mode 100644 index 000000000000..8c4881e35da1 --- /dev/null +++ b/tools/tests/Rules.mk @@ -0,0 +1,93 @@ +# SPDX-License-Identifier: GPL-2.0-only +# +# Common unit test fragment. +# + +include $(XEN_ROOT)/tools/Rules.mk + +define list-c-headers +$(shell sed -n \ + 's/^[ \t]*# *include[ \t]*[<"]\([^">]*\)[">].*/\1/p' $(1) 2>/dev/null) +endef + +# Generate mock environment by replicating header file hierarchy; +# each mock header file will point to a harness header. +# +# $1 Hypervisor header. +# $2 Test harness header. +define emit-harness-nested-rule +$(1): $(2) + set -e; \ + mkdir -p $$(@D); \ + [ -e $$@ ] || ln -s $(2) $$@ + +endef + +# Helper function to emit mock hypervisor code dependencies. +# +# $1 Hypervisor filename. +# $2 Harness filename. +define emit-harness-deps +$(eval c-file :=3D $(abspath $(1))) +$(eval c-name :=3D $(notdir $(c-file))) +$(eval c-headers :=3D $(call list-c-headers,$(c-file))) +$(eval c-deps :=3D $(addprefix $(CURDIR)/generated/,$(c-headers))) +$(foreach x,$(c-headers),$(call emit-harness-nested-rule,\ + $(addprefix $(CURDIR)/generated/,$(x)),\ + $(2))) +$(c-name:%.c=3D%.o): $(c-file) $(c-deps) + $(CC) $(CFLAGS) -o $$@ -c $$(firstword $$^) + +endef + +# Emit dependencies for mock hypervisor code. +# +# $1 Hypervisor filename. +# $2 Hypervisor source path. +define vpath-with-harness-deps +vpath $(1) $(2) +$(call emit-harness-deps,$(addprefix $(2),$(1)),\ + $(CURDIR)/harness.h) +endef + +.PHONY: all +all: $(TESTS) + +.PHONY: run +run: $(TESTS) +ifeq ($(CC),$(HOSTCC)) + set -e; $(foreach t,$(TESTS),./$(t);) +else + $(warning HOSTCC !=3D CC, will not run test) +endif + +.PHONY: clean +clean: + $(RM) -r generated + $(RM) -- *.o $(TESTS) $(DEPS_RM) + +.PHONY: distclean +distclean: clean + $(RM) -- *~ + +.PHONY: install +install: all + $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC)/tests + set -e; $(foreach t,$(TESTS),$(INSTALL_PROG) $t $(DESTDIR)$(LIBEXEC)/test= s;) + +.PHONY: uninstall +uninstall: + set -e; $(foreach t,$(TESTS),$(RM) -- $(DESTDIR)$(LIBEXEC)/tests/$t;) + +CFLAGS +=3D -D__XEN_TOOLS__ + +# Honor mock hypervisor headers over tools/include/xen +CFLAGS +=3D -I$(CURDIR)/generated/ +CFLAGS +=3D $(CFLAGS_xeninclude) +CFLAGS +=3D $(APPEND_CFLAGS) + +LDFLAGS +=3D $(APPEND_LDFLAGS) + +ifeq ($(filter clean distclean,$(MAKECMDGOALS)),) +-include $(DEPS_INCLUDE) +endif diff --git a/tools/tests/domid/Makefile b/tools/tests/domid/Makefile index 74cadab25b2e..b6ba0c4e14ee 100644 --- a/tools/tests/domid/Makefile +++ b/tools/tests/domid/Makefile @@ -4,101 +4,20 @@ # # Copyright 2025 Ford Motor Company =20 -XEN_ROOT=3D$(CURDIR)/../../.. -include $(XEN_ROOT)/tools/Rules.mk - TESTS :=3D test-domid =20 -define list-c-headers -$(shell sed -n \ - 's/^[ \t]*# *include[ \t]*[<"]\([^">]*\)[">].*/\1/p' $(1) 2>/dev/null) -endef - -# Generate mock environment by replicating header file hierarchy; -# each mock header file will point to a harness header. -# -# $1 Hypervisor header. -# $2 Test harness header. -define emit-harness-nested-rule -$(1): $(2) - set -e; \ - mkdir -p $$(@D); \ - [ -e $$@ ] || ln -s $(2) $$@ - -endef - -# Helper function to emit mock hypervisor code dependencies. -# -# $1 Hypervisor filename. -# $2 Harness filename. -define emit-harness-deps -$(eval c-file :=3D $(abspath $(1))) -$(eval c-name :=3D $(notdir $(c-file))) -$(eval c-headers :=3D $(call list-c-headers,$(c-file))) -$(eval c-deps :=3D $(addprefix $(CURDIR)/generated/,$(c-headers))) -$(foreach x,$(c-headers),$(call emit-harness-nested-rule,\ - $(addprefix $(CURDIR)/generated/,$(x)),\ - $(2))) -$(c-name:%.c=3D%.o): $(c-file) $(c-deps) - $(CC) $(CFLAGS) -o $$@ -c $$(firstword $$^) - -endef - -# Emit dependencies for mock hypervisor code. -# -# $1 Hypervisor filename. -# $2 Hypervisor source path. -define vpath-with-harness-deps -vpath $(1) $(2) -$(call emit-harness-deps,$(addprefix $(2),$(1)),\ - $(CURDIR)/harness.h) -endef - -.PHONY: all -all: $(TESTS) - -.PHONY: run -run: $(TESTS) -ifeq ($(CC),$(HOSTCC)) - set -e; $(foreach t,$(TESTS),./$(t);) -else - $(warning HOSTCC !=3D CC, will not run test) -endif - -.PHONY: clean -clean: - $(RM) -r generated - $(RM) -- *.o $(TESTS) $(DEPS_RM) - -.PHONY: distclean -distclean: clean - $(RM) -- *~ - -.PHONY: install -install: all - $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC)/tests - set -e; $(foreach t,$(TESTS),$(INSTALL_PROG) $t $(DESTDIR)$(LIBEXEC)/test= s;) - -.PHONY: uninstall -uninstall: - set -e; $(foreach t,$(TESTS),$(RM) -- $(DESTDIR)$(LIBEXEC)/tests/$t;) +XEN_ROOT =3D $(CURDIR)/../../.. +include $(XEN_ROOT)/tools/tests/Rules.mk =20 # find-next-bit.c -CFLAGS +=3D '-DEXPORT_SYMBOL(x)=3D' \ +CFLAGS-find-next-bit.c +=3D '-DEXPORT_SYMBOL(x)=3D' \ -Dfind_first_bit \ -Dfind_first_zero_bit \ -Dfind_next_bit \ -Dfind_next_bit_le \ -Dfind_next_zero_bit_le =20 -CFLAGS +=3D -D__XEN_TOOLS__ - -# Honor mock hypervisor headers over tools/include/xen -CFLAGS +=3D -I$(CURDIR)/generated/ -CFLAGS +=3D $(CFLAGS_xeninclude) -CFLAGS +=3D $(APPEND_CFLAGS) - -LDFLAGS +=3D $(APPEND_LDFLAGS) +find-next-bit.o: CFLAGS +=3D $(CFLAGS-find-next-bit.c) =20 vpath find-next-bit.c $(XEN_ROOT)/xen/lib/ =20 @@ -108,8 +27,4 @@ vpath find-next-bit.c $(XEN_ROOT)/xen/lib/ $(eval $(call vpath-with-harness-deps,domid.c,$(XEN_ROOT)/xen/common/)) =20 test-domid: domid.o find-next-bit.o test-domid.o - $(CC) $^ -o $@ $(LDFLAGS) - -ifeq ($(filter clean distclean,$(MAKECMDGOALS)),) --include $(DEPS_INCLUDE) -endif + $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) --=20 2.52.0 From nobody Sun Apr 12 19:29:33 2026 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=ford.com); dmarc=pass(p=reject dis=none) header.from=ford.com ARC-Seal: i=2; a=rsa-sha256; t=1770951053; cv=pass; d=zohomail.com; s=zohoarc; b=mpV3RhBF3FYxU9Z8ZY/z/05lZC3PkASOFRE13fdGNMGKiLoT96k9v4lcYvHJM1unhYo7hW/QwQd/rE6AUqkT11OtZ8kySse/i11OlI1BzyivejjRuWFfDF1DxVQEjzMN4xHT71AY2d2n+9dDjGsspBZtMUE5RQZKf0L4tRozwF8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770951053; 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=fOUWfQtEpLW+O91WgiS4xNRvSlc7HEqZhzWoRw/fWwE=; b=lkzqE0CjO8z0oqBbsF/5gD8Y08ErAoMz7anVhajzPkV+aXjJyvrY3o8FkTkKL41y5YPmZHhMzuq4Obz8j3s+zQxnukkl4ggeK3Bu9W5H+9n1j1HoG8CiGpjhP0r6YhufyMP0msArXGDJ/3bcJ9sV0S7DbHex+8Xuc+U+NjOBOxQ= 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=ford.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1770951053443124.6843798128167; Thu, 12 Feb 2026 18:50:53 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1230089.1535699 (Exim 4.92) (envelope-from ) id 1vqjGC-0007vD-Bt; Fri, 13 Feb 2026 02:50:24 +0000 Received: by outflank-mailman (output) from mailman id 1230089.1535699; Fri, 13 Feb 2026 02:50:24 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vqjGC-0007ux-3J; Fri, 13 Feb 2026 02:50:24 +0000 Received: by outflank-mailman (input) for mailman id 1230089; Fri, 13 Feb 2026 02:50:22 +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 1vqjGA-0006yU-5i for xen-devel@lists.xenproject.org; Fri, 13 Feb 2026 02:50:22 +0000 Received: from mx0b-00498f03.pphosted.com (mx0b-00498f03.pphosted.com [148.163.143.241]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bb454bb3-0886-11f1-9ccf-f158ae23cfc8; Fri, 13 Feb 2026 03:50:19 +0100 (CET) Received: from pps.filterd (m0367128.ppops.net [127.0.0.1]) by mx0b-00498f03.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CKJwSu949884 for ; Fri, 13 Feb 2026 02:50:18 GMT Received: from sj2pr03cu001.outbound.protection.outlook.com (mail-westusazon11012064.outbound.protection.outlook.com [52.101.43.64]) by mx0b-00498f03.pphosted.com (PPS) with ESMTPS id 4c9nt9t9mu-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Fri, 13 Feb 2026 02:50:18 +0000 (GMT) Received: from CH0PR04CA0119.namprd04.prod.outlook.com (2603:10b6:610:75::34) by CH4PR16MB6763.namprd16.prod.outlook.com (2603:10b6:610:221::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9611.10; Fri, 13 Feb 2026 02:50:10 +0000 Received: from CH1PEPF0000AD83.namprd04.prod.outlook.com (2603:10b6:610:75:cafe::c) by CH0PR04CA0119.outlook.office365.com (2603:10b6:610:75::34) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.12 via Frontend Transport; Fri, 13 Feb 2026 02:50:10 +0000 Received: from mx0a-00498f04.pphosted.com (205.220.161.53) by CH1PEPF0000AD83.mail.protection.outlook.com (10.167.244.85) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.8 via Frontend Transport; Fri, 13 Feb 2026 02:50:10 +0000 Received: from pps.filterd (m0426318.ppops.net [127.0.0.1]) by mx0a-00498f04.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CMYP251194520 for ; Thu, 12 Feb 2026 21:50:09 -0500 Received: from smtp-us.ser.proofpoint.com (pmta-usw.ser.proofpoint.com [50.112.124.217]) by mx0a-00498f04.pphosted.com (PPS) with ESMTPS id 4c6mq5denu-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Feb 2026 21:50:09 -0500 (EST) Received: from localhost ([19.12.76.221]) by cmsmtp with ESMTPSA id qjFvvotfkRfmuqjFvvR3TA; Fri, 13 Feb 2026 02:50:09 +0000 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: bb454bb3-0886-11f1-9ccf-f158ae23cfc8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=ppford; bh=fOU WfQtEpLW+O91WgiS4xNRvSlc7HEqZhzWoRw/fWwE=; b=eRpmvpADU9ZjLhrsHHF lDgUz87yRsssbFo/16Yu3CoLJQJDK0I6FcT348fmXqjzon9xY830dJuaJ5OtUwxk JsrJ+IPyEH4bDoJcMlQTOEkQWk6FGr9Xi5iHYAGLtz18W/BzZGOKhIKaVEjCV02U C8QhhrzP/ahdOFYiOOzsPhfoiyuuu8cyQ5Rg8+8WWnWTnQUkLPo2Eoq2EREfwwQg gUdy9ZYU0JvBYJoYSfGhwVC/XgLOwC3AM9yfzJnRqNajm916u+bBatO0sq3rP3Or Eaq2q+vMVHqAIPQ8XprFy5Fa1r9W1cT4S4tJz90h4EihRekl6wJBeXL28uxX3a4a KDQ== ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=izXyZAdZn1WdnlEF+bzS5u7XHRjA82wU7QkbvSCnDw8Lsrh0dARt/0SUZB2Kyhf2RqsBx4ResF1ZISK125yw5VayaArzw7kFPQyOTqKKvOhqKA9sKPE8d843Q2UcbsFWQN8Klu37rdrhIG5+S1Ru1QHPWTnSXGoaKZGy7gBYgkMCh2Az5PzGGzGaQIQFTQyK5Zx8ly4CQL5kW4K5tef0iGPLzcr6pCU0Y7vT5LwByjR9imcfDHJG9UKLA4QuBjK9VWOY75Sypw4iEEwcyQcpO0JWybR3eIzs8Q3lb/3pXZOZXfhjUs6y2IvVWV6VZHAmATnT1Zka/tkSqcL7mYRMZA== 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=fOUWfQtEpLW+O91WgiS4xNRvSlc7HEqZhzWoRw/fWwE=; b=zGTR7S5Ai+5/n+4DbAZ+G9OU9YJOU18V5hTEni71OSDZ5YWljgb4DSb1KW+GrUt6zqfOAMApURUlxoaATDb/ZWTz6kyzBbw5qR1d+Sy/iIGJ31bRRUlY9TA6S+2jcRy7dBbzzTmiP7LjCL5zDfRripEIuaLXjOkn8rZiWkXpxY+IRwhxMlaem+isc/QJTXIK/jNz0xPTNO6La71Bk23Em4slSEPJBJZcHvE999+1/bJZymFvJpEDuIQoBJcO4P+HlT+7woaY7Q8v8IV7JMzGSewOiJGTerGxyNckCcyhonTmSXmQvMR99YwyXok2+WlUyyuLs7xk7a79ocu3whTHNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 205.220.161.53) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=azureford.onmicrosoft.com; s=selector2-azureford-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fOUWfQtEpLW+O91WgiS4xNRvSlc7HEqZhzWoRw/fWwE=; b=INkXM8tb53Lm97WYu2Xj8WxcXbYph9lAgWsju41qBKZPsYOjsA0OY+3jm3Lptp+0g4iXtPVGYa20ZSDv7pbqsQVmap75MInfgI+lIBM2asLHzuqJaW27U7sKaEGHSz19x4r+wt9gGK8H9B9uIBR/+vx07kqE38WwivEUccqeUlU= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 205.220.161.53) smtp.mailfrom=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com;dkim=pass (signature was verified) header.d=ford.com;dmarc=pass action=none header.from=ford.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 ford.com designates 205.220.161.53 as permitted sender) receiver=protection.outlook.com; client-ip=205.220.161.53; helo=mx0a-00498f04.pphosted.com; pr=C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= saarlouis.ford.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= ppserprodsaar; bh=fOUWfQtEpLW+O91WgiS4xNRvSlc7HEqZhzWoRw/fWwE=; b= eVTJKT1OJWiAcN0LoNoyNYVRFkUtQPviuC1HJBSKP8O0e55DKTTLe/dnR6VekS+5 MU36n0KeUxwmj9C+7g4tjAqmJJt5sRd7cIJRb2RyY6eueE8mGjIfEc+g+k1i0gnv jw6G56vfPeht/GjrDlKt3g4tC1YjgIrl7grnAhl+g6jsrOvy8CJY64P3J4lXwpoG 97JpEMM6yXRh5liFN343jV3btLAZi7vtvVNbvPfAQ06+lVyiZNa+hr6Xy9DZnJLH Ui5hPAzfP7aS7kg1/ijfi44ZvPL+7a37l5VCI0s6YwHjwAjEq35HKQErzknMmAFw JtG11GjzxXOaCwfXfHlarg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=ppfserpocford; bh=fOUWfQt EpLW+O91WgiS4xNRvSlc7HEqZhzWoRw/fWwE=; b=nRRvO3dU8LnwSSIYpIr8y8h enw4nuBTyMtrbchEAnotCxv564KQAZfkzlltASaQRNFJFmRlqGXiITdLY4B6HYKq b8M5E82Mr6nZuOBVX5VGSqaHNTyT0dpke/Zs+JZbwW2t++2GNmnTsj9VxLRpeF+3 4V6KVcQEoEr04InFdjPWubDwMv2opRV9FeP+BeAdrtOUreMZyb3+au2ByvozIzGi 1MtU07GbGWhzBmTOKKkABCeTvkY3/qBrXtl2iqpFZe9fQo8nS6Mx9Fjqtc4Pfvja NTu+VXOIXDVLwWNnVdsKxyxEqoaIHJMGZorMr4waO9tQDijPvMTyHQEWRUCwi3Q= = X-Mailer: SER-76bead168636dc6ed1c9e51ce4dea80dbdd4163750742b614a4d871e565792b7 X-Cloudmark-MID: qjFvvotfkRfmuqjFvvR3TA X-Proofpoint-CID: eb09f7eb-2dc2-34ab-a188-7b293c1db1fe From: dmukhin@ford.com To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, anthony.perard@vates.tech, jbeulich@suse.com, julien@xen.org, michal.orzel@amd.com, roger.pau@citrix.com, sstabellini@kernel.org, dmukhin@ford.com Subject: [PATCH v3 3/5] xen/include: customize headers for host builds Date: Thu, 12 Feb 2026 18:49:50 -0800 Message-ID: <20260213024952.3270112-4-dmukhin@ford.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260213024952.3270112-1-dmukhin@ford.com> References: <20260213024952.3270112-1-dmukhin@ford.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable PSER-M365-App: SER-APP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 suspectscore=0 phishscore=0 spamscore=0 bulkscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH1PEPF0000AD83:EE_|CH4PR16MB6763:EE_ X-MS-Office365-Filtering-Correlation-Id: ae7b2de1-19b7-446e-c672-08de6aaa9ab9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?gvJ02nx2evg+ZCyx/ADgGqxJodVOl38Z6NgM7FizDi1QHEgSIctjLLcdi6vU?= =?us-ascii?Q?6KDPTuJ04klVuFJY82ynCP9Z/rnNiXrhuiIE1oogGw2Sq2sebmIrofLBdGMS?= =?us-ascii?Q?VtgZ5EUhJkbCGWkt4sNkkGM/sVQdHs+kFK1WVAJgWcbxAmVYHVnr3eIbvwMs?= =?us-ascii?Q?p9aLQRrPWniM4pdh93b/Eoys4Ff73uS4lxCR/1YSVZTmlVDBhqogwGEk5xsd?= =?us-ascii?Q?TpjLWLMjy7iYwN6VzJoB94GH/DAHQYtwHv6d1pm2arOYVLOfVSKZoWS5ybua?= =?us-ascii?Q?XQo6QMVillhwOjVCIlWmG5PxsQxiuwl+AL3ZGG34e7nUwi+GWfTwj9u3xkEG?= =?us-ascii?Q?nZCWvM09/r8WxbxOOHJMClS6jfRfTkHLRQtn98rIgkXhFYIMT4IuNJWU2VBe?= =?us-ascii?Q?7yocAX44Xmrq0k7Zyyt2J0ASPr1yYS0/c5t23unR6yMQNqiwaB26teYEKEni?= =?us-ascii?Q?fAUlEfej1h+wxxQaUkGqaNjtErstSNSfMmQ1RWjya7jqTKmfW9dMHKg0rd64?= =?us-ascii?Q?t/0E8kxulUL8U9OwkDF6JFZCdteV6ftzETWFfKELXhMSusbh7eS9AFuz+5D1?= =?us-ascii?Q?p3bPWXMPZBOhj3MO+ortOfxI5iHMQkbW//QTKv9OHBucrrnq/myZF/CWp18j?= =?us-ascii?Q?1x9nTBc5DXJHou8WNW7wwpnGW7TfVW5CmsA/yZXcuACY/Uf7v4OUr6o4C2cJ?= =?us-ascii?Q?YWP2ruLvpE0IQAp7b5WCTSxrmk7k+kCdgup1OrKS+raO4oooTWZevh5GBoqz?= =?us-ascii?Q?I0UK/Xft8xki6WgYfFTyEHxIhe6n93k3oqP6pS8kZIcn27oLk+G9rHSSnRa4?= =?us-ascii?Q?PZYa77aUuOgahAPouiIPr/F97k64jhwP+wePKJK/le3Fj9JiF96/yaZ33Nkr?= =?us-ascii?Q?PPjcnSXirCABDxO9phy4Gs1YRswy1qJiY7zotBOP3AeCNdQ8m8+EfHm4L3x0?= =?us-ascii?Q?vAY2hZwjh63RC7+/+20XAaxg/CZEnq8yle6zBxEBCrImiHwO34dfzzOWLhft?= =?us-ascii?Q?aPycGz3dBFu18s2wcroMMWH0f4xvJQKV6v2Q6gM6wWuvECHvlG6asse9yZbj?= =?us-ascii?Q?0ZXb7I50IwG/TfkniUBZIzL8m3/VezfXeIbmsn6rQiWoDxtkldpLret3sbu1?= =?us-ascii?Q?N/X1v0DoBIoWb0tJ3Ka7GD14Uf/8l+p4t/OlxIbWaAcQkzfQLhDXKKFYU193?= =?us-ascii?Q?F8GXhOl3kCTpUbAKRs0NMsAkILaxPlvXyrRzINdK9BOxOF+F799949U7jqpz?= =?us-ascii?Q?d1gdFjPMHk8qmtjoqUGtcGVraY0ZGv/w+eWLduCaFdH2QpWVDKwP/lZsSBST?= =?us-ascii?Q?VQUutssNprN2poThw8Ff0kOTzJyaz92VHnKMc7KdyjfZem/QeVY7FBNK8joC?= =?us-ascii?Q?xyoi2q4Y5ZkeBoi6CHsQwHWXr0z5VQtul0NUePSJ7yoZsoC6goWOmrVZqU8p?= =?us-ascii?Q?4uPeoji8LoniRNCncwzqPYy1ZacdbJEsAtD8zvMvn9xmhgjTSFPv3/IKOAXt?= =?us-ascii?Q?IVYN5LXofOiWMnhEaZpS7Z9AlGVcft4mW/79dKw2JsMqJ0Thgnu4jCTHtKgk?= =?us-ascii?Q?7Fqf8gGXAdCJo+666JKbgiKfY4U4b3lIXXOV5VDC2GGozcardZJYpyjDXEC+?= =?us-ascii?Q?2FAuzzV6gjabDuoJaN4zuQDgclH53Oa2AXdfebuwtJNrK08GB4w459xlcgOb?= =?us-ascii?Q?hwb+5w=3D=3D?= X-Forefront-Antispam-Report: CIP:205.220.161.53;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mx0a-00498f04.pphosted.com;PTR:mx0a-00498f04.pphosted.com;CAT:NONE;SFS:(13230040)(376014)(1800799024)(36860700013)(82310400026);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: CxL239nFRyHhONXwVSxIaiSgBaWEvhFaq/PtMAXGzkmhUi1Uzavv3mje+Rh49fen1pJ3rnXDliM8+maKJZMdYXDC/zMn3KBkIyLJhEnPzHcm8fPu+61NxQ3A+E/MCiqDw13W/kMHsnFJNhsxQkxX0vyewRG9fXGsqOWW3LoECKPsCzVHiZiCWOrnaYgBUaiv06XM9aRAw179ezuojbJu/FeK6N2lqZASABcZ1UDIlXMieoMCBU7t9bHd8URxGDUlPo+yOTMp3aPfmMesC0sEuYo/e8WHJk5llAcGcoZ6V1N5WYvSybopVWk7DOYNyS2H/RvlEawDujHkci9g5LF7o2K+L9xZj5nmrkinFt77Hl7a/L3MFfkK2w3aMQ0MDcvfzS5sSKSzYQFv5N0o5Ovn+VdI+U5wMHExurVwEffIymqIYdg7M3h9stW/OyMe4F8f X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: aAiLoezWHprwMFyazRjIk4or/ClJzSdw5TOM+V6e3JTA9hdHFNcKmvn7CQZ17Wk2zQSsSBH4AjzCIWFcmGqJI7JX9GHwuw/yizC4CsE6VnvYGL3ojNxU0w7VJCHjjjhces491nP6QtPw6Sk9KN/ZGrrvNVxb6eLmKzT7/zEj0Q2AkRKtWq/CoPuyABD6W9XofK34L6esrbf7U2WbnUgB8v3nRDaN5UXpekQufc8/05I4aSpoPH7r/mDiB3XxFRh9nFAWc7szhu81IpWONkPBr815j4uiMMWgP0l4eASW0+/HJO0mGrQeaFcxuvZpOth6XcbhzL8XCx1EfUJJcacuIi1n41lOliZKANrUBD26OESGap78P1t3RrYT5OHpsjBiTZjsaGdPf8eXMmgmrPS1IsXMKF41wC72wrm65JFBXSJiAgFF0UtdXiNpq6KyuoBm4p0+5/WAP+UIxXC2sROGW3VcOQZ5uchzNjoTais6wT1+nCZU0MlcsR+qX+pGCwo84FX09o/wFrULBmsrxASPyjdXJjqlIwwqf8AStIPh2u2usipKyeYof9c8I8R4C/kMXvUluI3xlCgW28Uo1tjyqLvlQm/LiffLSTeDQxxEE4t7fkyp8X3EcTr+3XOV9Fk4pLDrsHSSN8NWww59fIHtyg== X-OriginatorOrg: ford.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Feb 2026 02:50:10.3462 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ae7b2de1-19b7-446e-c672-08de6aaa9ab9 X-MS-Exchange-CrossTenant-Id: c990bb7a-51f4-439b-bd36-9c07fb1041c0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c990bb7a-51f4-439b-bd36-9c07fb1041c0;Ip=[205.220.161.53];Helo=[mx0a-00498f04.pphosted.com] X-MS-Exchange-CrossTenant-AuthSource: CH1PEPF0000AD83.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH4PR16MB6763 X-Authority-Analysis: v=2.4 cv=Se/6t/Ru c=1 sm=1 tr=0 ts=698e916a cx=c_pps a=vzG6OqJaKuDO37FI3iuMvQ==:117 a=lOEMawUel/sSvQipkIvNbg==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=HzLeVaNsDn8A:10 a=3PXLN80vpJUA:10 a=6NUGLSImWEsA:10 a=w9pew1qAHqMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=cbNQJ9GKAAAA:8 a=CsCi3mX3UFN2opcwia0A:9 a=DqJYxgmhk6moR-_7_KoZ:22 X-Proofpoint-ORIG-GUID: qebA1s16s7xsMUXS_9H3VKTfCrVkljWu X-Proofpoint-GUID: qebA1s16s7xsMUXS_9H3VKTfCrVkljWu X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjEzMDAxOSBTYWx0ZWRfX67lFaBJ8teOT T9u6iIO8mpV6+BqMA/Cjh92lsjfK/I706B1btYYSF/XTFmUA9xVcuxQZrgZbkO5/8nhXhxEG3AI Fc+AjsJQJ8ehWVD5KIYf3bGxEs6GkLDoxcCyncqMDHcZ+2J6zi82pbhXLZ993SHhA0iH0X2QUQT vZtCGoCJdObwqfS3s1mg8RRmUegCVQTuZ6BvZ62xzpkgvW6UipuPVtHHrc+muTXTwO2pExFeW5G EkGwbOm3nmHawXG4/YS/9giVTY6UFrgFHfhFsSNfCsnIjBcP06R3MCKueKagFGEX7SG2dQ1XVUK xq0YdMxz2b/gu1z0isYs4m5qf4RA2QiXf07qtASPRfYiTnd+N/tjI1Bh+FosTKIz+xM3/5woSGV hx0rNaEbZJxsGkHUq8hOw62NzDDyYWOcngt8jrT6H5lj1VHOrd+rriUeaOqDVisuKhGC9db9Gs6 g3skd328Ez+s2fVissA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 phishscore=0 malwarescore=0 priorityscore=1501 lowpriorityscore=0 spamscore=0 suspectscore=0 clxscore=1015 impostorscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-ZohoMail-DKIM: pass (identity @ford.com) X-ZM-MESSAGEID: 1770951055433154100 Content-Type: text/plain; charset="utf-8" From: Denis Mukhin =20 Update hypervisor headers to allow vpci.c to compile in a host build environment, as required for the vPCI unit test. Signed-off-by: Denis Mukhin --- Changes since v2: - new patch --- xen/include/xen/irq.h | 2 ++ xen/include/xen/list.h | 2 ++ xen/include/xen/numa.h | 2 ++ xen/include/xen/pci.h | 2 ++ xen/include/xen/pfn.h | 2 ++ xen/include/xen/spinlock.h | 2 ++ xen/include/xen/types.h | 4 ++++ 7 files changed, 16 insertions(+) diff --git a/xen/include/xen/irq.h b/xen/include/xen/irq.h index 6071b00f621e..f7fa1d0fa29b 100644 --- a/xen/include/xen/irq.h +++ b/xen/include/xen/irq.h @@ -1,5 +1,6 @@ #ifndef __XEN_IRQ_H__ #define __XEN_IRQ_H__ +#ifdef __XEN__ =20 #include #include @@ -208,4 +209,5 @@ unsigned int arch_hwdom_irqs(const struct domain *d); void arch_evtchn_bind_pirq(struct domain *d, int pirq); #endif =20 +#endif /* __XEN__ */ #endif /* __XEN_IRQ_H__ */ diff --git a/xen/include/xen/list.h b/xen/include/xen/list.h index 98d8482daba1..06d2fa3aed15 100644 --- a/xen/include/xen/list.h +++ b/xen/include/xen/list.h @@ -7,8 +7,10 @@ #ifndef __XEN_LIST_H__ #define __XEN_LIST_H__ =20 +#ifdef __XEN__ #include #include +#endif =20 /* * These are non-NULL pointers that will result in faults under normal diff --git a/xen/include/xen/numa.h b/xen/include/xen/numa.h index f6c1f27ca105..80d60fd49178 100644 --- a/xen/include/xen/numa.h +++ b/xen/include/xen/numa.h @@ -1,5 +1,6 @@ #ifndef _XEN_NUMA_H #define _XEN_NUMA_H +#ifdef __XEN__ =20 #include =20 @@ -152,4 +153,5 @@ static inline nodeid_t mfn_to_nid(mfn_t mfn) =20 #define page_to_nid(pg) mfn_to_nid(page_to_mfn(pg)) =20 +#endif /* __XEN__ */ #endif /* _XEN_NUMA_H */ diff --git a/xen/include/xen/pci.h b/xen/include/xen/pci.h index afb6bbf50d05..f52dc7875e16 100644 --- a/xen/include/xen/pci.h +++ b/xen/include/xen/pci.h @@ -14,7 +14,9 @@ #include #include #include +#ifdef __XEN__ #include +#endif =20 /* * The PCI interface treats multi-function devices as independent diff --git a/xen/include/xen/pfn.h b/xen/include/xen/pfn.h index 1ca9b095e0df..98ff669d7def 100644 --- a/xen/include/xen/pfn.h +++ b/xen/include/xen/pfn.h @@ -1,7 +1,9 @@ #ifndef __XEN_PFN_H__ #define __XEN_PFN_H__ =20 +#ifdef __XEN__ #include +#endif =20 #define PFN_DOWN(x) ((x) >> PAGE_SHIFT) #define PFN_UP(x) (((x) + PAGE_SIZE-1) >> PAGE_SHIFT) diff --git a/xen/include/xen/spinlock.h b/xen/include/xen/spinlock.h index ca9d8c7ec0a1..ad5094c4eb92 100644 --- a/xen/include/xen/spinlock.h +++ b/xen/include/xen/spinlock.h @@ -1,5 +1,6 @@ #ifndef __SPINLOCK_H__ #define __SPINLOCK_H__ +#ifdef __XEN__ =20 #include #include @@ -360,4 +361,5 @@ static always_inline void nrspin_lock_irq(rspinlock_t *= l) #define nrspin_unlock_irqrestore(l, f) _nrspin_unlock_irqrestore(l, f) #define nrspin_unlock_irq(l) _nrspin_unlock_irq(l) =20 +#endif /* __XEN__ */ #endif /* __SPINLOCK_H__ */ diff --git a/xen/include/xen/types.h b/xen/include/xen/types.h index 73ddccbbd5dc..e5d702b48ac0 100644 --- a/xen/include/xen/types.h +++ b/xen/include/xen/types.h @@ -4,6 +4,7 @@ #include #include =20 +#ifdef __XEN__ /* Linux inherited types which are being phased out */ typedef uint8_t u8; typedef uint16_t u16; @@ -15,6 +16,7 @@ typedef uint64_t u64; typedef __SIZE_TYPE__ size_t; =20 typedef signed long ssize_t; +#endif /* __XEN__ */ =20 typedef __PTRDIFF_TYPE__ ptrdiff_t; typedef __UINTPTR_TYPE__ uintptr_t; @@ -33,6 +35,7 @@ typedef __UINTPTR_TYPE__ uintptr_t; #define NULL ((void*)0) #endif =20 +#ifdef __XEN__ #define INT8_MIN (-127-1) #define INT16_MIN (-32767-1) #define INT32_MIN (-2147483647-1) @@ -52,6 +55,7 @@ typedef __UINTPTR_TYPE__ uintptr_t; #define LONG_MAX ((long)(~0UL>>1)) #define LONG_MIN (-LONG_MAX - 1) #define ULONG_MAX (~0UL) +#endif /* __XEN__ */ =20 typedef uint16_t __le16; typedef uint16_t __be16; --=20 2.52.0 From nobody Sun Apr 12 19:29:33 2026 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=ford.com); dmarc=pass(p=reject dis=none) header.from=ford.com ARC-Seal: i=2; a=rsa-sha256; t=1770951048; cv=pass; d=zohomail.com; s=zohoarc; b=C37mZp4Uzu8cWnl95/KzzUfTCfEarNMyLNr01206Drq8eNapw85GxUfVwgeDP8VDQmgk8B901g2f/dGJBOEMosEvr+Z8jfrdO0TRhfFbvPP2Y+obaAAZ4kGfpae968sCFsZzsVnkp0/yBediQDjFQuZLftnJ81sw+a+OLecA8L4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770951048; 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=cr34swkzcPcEXFdzaCMCfFmOvkyK/MxDYdRkiiZHB64=; b=S2ilo6l4fAjTm7Xh91ssMYJw9eQNXZTjkj/zlbN7sCcjKeai0M1H+MhLmP3xWmQcHZe4jlgfeL5A2FIxG4iIPCWievmR0VDfKqd4JfyS1lZJ63r7FvoNV5fsyOjJsAbNiDyFf/HQbTp4PJC84ZW5/pyeHBYx4/zAY1ET+DXcpeI= 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=ford.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1770951048307886.1397224729063; Thu, 12 Feb 2026 18:50:48 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1230086.1535672 (Exim 4.92) (envelope-from ) id 1vqjGA-0007Pc-2f; Fri, 13 Feb 2026 02:50:22 +0000 Received: by outflank-mailman (output) from mailman id 1230086.1535672; Fri, 13 Feb 2026 02:50:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vqjG9-0007PV-Vy; Fri, 13 Feb 2026 02:50:21 +0000 Received: by outflank-mailman (input) for mailman id 1230086; Fri, 13 Feb 2026 02:50:21 +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 1vqjG9-0006yU-5U for xen-devel@lists.xenproject.org; Fri, 13 Feb 2026 02:50:21 +0000 Received: from mx0b-00498f03.pphosted.com (mx0b-00498f03.pphosted.com [148.163.143.241]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bb2b3b1b-0886-11f1-9ccf-f158ae23cfc8; Fri, 13 Feb 2026 03:50:19 +0100 (CET) Received: from pps.filterd (m0367129.ppops.net [127.0.0.1]) by mx0b-00498f03.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CNHjn81146939 for ; Fri, 13 Feb 2026 02:50:18 GMT Received: from sj2pr03cu001.outbound.protection.outlook.com (mail-westusazon11012026.outbound.protection.outlook.com [52.101.43.26]) by mx0b-00498f03.pphosted.com (PPS) with ESMTPS id 4c9rd8s08m-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Fri, 13 Feb 2026 02:50:17 +0000 (GMT) Received: from SJ0PR05CA0057.namprd05.prod.outlook.com (2603:10b6:a03:33f::32) by IA3PR16MB6656.namprd16.prod.outlook.com (2603:10b6:208:524::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9611.13; Fri, 13 Feb 2026 02:50:14 +0000 Received: from MWH0EPF000C6184.namprd02.prod.outlook.com (2603:10b6:a03:33f:cafe::89) by SJ0PR05CA0057.outlook.office365.com (2603:10b6:a03:33f::32) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.8 via Frontend Transport; Fri, 13 Feb 2026 02:50:08 +0000 Received: from mx0a-00498f04.pphosted.com (205.220.161.53) by MWH0EPF000C6184.mail.protection.outlook.com (10.167.249.116) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.8 via Frontend Transport; Fri, 13 Feb 2026 02:50:13 +0000 Received: from pps.filterd (m0426318.ppops.net [127.0.0.1]) by mx0a-00498f04.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61D2GRns2516936 for ; Thu, 12 Feb 2026 21:50:11 -0500 Received: from smtp-us.ser.proofpoint.com (pmta-use.ser.proofpoint.com [3.215.31.156]) by mx0a-00498f04.pphosted.com (PPS) with ESMTPS id 4c6mq5denw-2 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Feb 2026 21:50:11 -0500 (EST) Received: from localhost ([19.12.76.221]) by cmsmtp with ESMTPSA id qjFxvwTiNP7uEqjFyvDLMl; Fri, 13 Feb 2026 02:50:10 +0000 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: bb2b3b1b-0886-11f1-9ccf-f158ae23cfc8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=ppford; bh=cr3 4swkzcPcEXFdzaCMCfFmOvkyK/MxDYdRkiiZHB64=; b=FlvdE6UGhioOJdsYC5R qYz3qWLavepjydteh72FAwKrSKY1yueBi9Z5roB7VU4RewBpj4xgt9fwAL+ZBty3 cfJ84piWZMP2EU+4PMG7McEJhAmlZIMMBTGUFlSUKo8nHz1+LeQPAVst2dBMGnkD AnMh1hfjoHd9RSzKdMhffvGWVUpjtZ6f5/Cf4FLM+d4U28Xr8s0agtvjk+51b5oz 5cSp2iBH6uCtC5mcFESVLZxz083i1SyDWsn8K+2bt6MmC31K4qRlrvQqevYNvEzn LiPc12oTu5p9nRWLD5Z7NciDWnaEjXHWXqhHmXNtiI5jdRSHxCDTzB5qsRMeWUgE qUA== ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=WcJvPb7UUCQyQxCSk4Fshr7AZB1UJC6TIfZzFGuCOSTZinuthgVLtI5HRPU9ImG2uzQegKpQ8O9QbTHNLX5FWqXAmUNDiSSIanSPJBP0fgnhHEzMIF5QnQ8B1poDILsX7is2EEqH9Bk4FNWWXH7Mjc+QeayVUhOXLWwBRX0h26rGPx1cYxJD9PU1tgoMF0dJcMkSweISAO1gn38Ul/PiE590AsRdRTr4NAanYrQJYxa0S3mxHeJtmCGIhUwga2M6ro/xXUJpmJJJu4EXRz7APgPfTVTZWR59OSadI1LJzRV+iHcYDObmV8TEZPcal93UyH0ce7bMrigKsIQAHVWN7w== 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=cr34swkzcPcEXFdzaCMCfFmOvkyK/MxDYdRkiiZHB64=; b=f2jaJfKT5WkIOCJqGY12u8c+7tOnSLnz9Xm6wBMwoHu+qhBdJDEAaZ5cMvi0a+uYVGr9qii7tQX5qKDrkqZmPpLDnE3MkYckQUBP3xy8phe24FY4xSXczP/DwqPZn1BlASMDN6F2AEhxtpB8lB9GVnGdyAnd9BbF6CKR+sYY2P+OZjKTe64Bb9FbbT8IofONgdSMSCnAL2R8T/VtyYLILC6ba8oYAr7d76lQtRU/G995+CXWrIV2mF7+GvCNDoTVSYBO2oH2rUupv4RzVGAqYyEIsZM4MJi+pbkUSVVOxWuOx1YY6DfUEy8/U27OMLprLyV0YrRqPaJf2F3djXrurg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 205.220.161.53) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=azureford.onmicrosoft.com; s=selector2-azureford-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cr34swkzcPcEXFdzaCMCfFmOvkyK/MxDYdRkiiZHB64=; b=RaR/4P2GLekKtdZdhWyexYY8MU31OcnNUveix9B7oRCpp9FZC68hxnGFDUUczfa9U3kDAg6kji8GMwZK5Wo+P1doCpsu2Wzr0TKeWKm/ndNP51XfuJb/WK7eS4DMPlLjVCuelD2/2qKNkRNvmSlshLOZk2JXt/dx4dcuEmUTGJw= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 205.220.161.53) smtp.mailfrom=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com;dkim=pass (signature was verified) header.d=ford.com;dmarc=pass action=none header.from=ford.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 ford.com designates 205.220.161.53 as permitted sender) receiver=protection.outlook.com; client-ip=205.220.161.53; helo=mx0a-00498f04.pphosted.com; pr=C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= saarlouis.ford.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= ppserprodsaar; bh=cr34swkzcPcEXFdzaCMCfFmOvkyK/MxDYdRkiiZHB64=; b= VdWnfmQ4o6RzDBLEdttxsZqdnIfF7GQMqLhdlbAbOnJYOU7XDsRzCERMm3Rh1zVx o+6vCq8ToVu1Ab5r6glu8QJ1xAYlO+qA6ejG/ZbGS7BdT2Xj1tdzy7XjL+M8pXEf ECZHBn6K45ykRGc3ojy10mKyxYIvKBTTgUtniQbytwrLJQHJdIUFQV5poc13ltTB +npniI4b3j7Yb0zr50uTWki7lC2IpUivHiXgVC5Gi4wOKCOJPW6cZP9F32x+5noz zeRQzgpfZAvmYIlNNW6UQRO5gT23e0u52YOW5ukSTkCJKlB0nNvHzetsWyId6/mY zpuBT24D0GULCymydOkHOQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=ppfserpocford; bh=cr34swk zcPcEXFdzaCMCfFmOvkyK/MxDYdRkiiZHB64=; b=XtURWT2GNgxrdbQ+WjQuVyI 1jD/QYRIowwtD0qTdS2Pn9Lrk99nmgOTsr5iUSTcGthRWklYlubTJqU3CshAGD2Z /9MJ3pvI3OzVPfC9DYrr8vhcT9X91vt0afSnNfS+3BmACgisU3VrW/oX1yAuHOmP ObYDaneOW0X+sziXryxmAbSih3R8TfHsiOGZ1x3uoj4pAvE79GODEDFotHB9jl8i FT7jmWVSmADtJtk3lwBAxgSJwlwZnJ+RHt69q1yaOGD70LOX41+YZ/tDTADj21NX WJAjQDQHjyov7OmCZFwl8+ZDeBq2NU0HwjllKulC7cBiouj2ueheaW3RtwNQmvA= = X-Mailer: SER-76bead168636dc6ed1c9e51ce4dea80dbdd4163750742b614a4d871e565792b7 X-Cloudmark-MID: qjFxvwTiNP7uEqjFyvDLMl X-Proofpoint-CID: eb09f7eb-2dc2-34ab-a188-7b293c1db1fe From: dmukhin@ford.com To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, anthony.perard@vates.tech, jbeulich@suse.com, julien@xen.org, michal.orzel@amd.com, roger.pau@citrix.com, sstabellini@kernel.org, dmukhin@ford.com Subject: [PATCH v3 4/5] tests: use unit test fragment in vPCI test Date: Thu, 12 Feb 2026 18:49:51 -0800 Message-ID: <20260213024952.3270112-5-dmukhin@ford.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260213024952.3270112-1-dmukhin@ford.com> References: <20260213024952.3270112-1-dmukhin@ford.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable PSER-M365-App: SER-APP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 malwarescore=0 suspectscore=0 phishscore=0 spamscore=0 bulkscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000C6184:EE_|IA3PR16MB6656:EE_ X-MS-Office365-Filtering-Correlation-Id: 125db805-8d80-423a-ea48-08de6aaa9c69 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|36860700013|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?0a+tlNDUQLoUg7FE92BcMziy2vV/peSDJQGXjHkQbiLYqZcs6qJysa0TeM4O?= =?us-ascii?Q?AigjAuhf7P1zsA1yMsbCruQmZTTOPlLEnn80EmheCi0BBzodvRw12+u12VCG?= =?us-ascii?Q?BrYlIEGminkpHn2rvFISSiz0RaNaj5tVI1sAXuhHz87eR4m3QPyleSfMLCqv?= =?us-ascii?Q?X9tYO39tj+c9hbboFwCbtgriIl0Cp2F6o5njTq09kB1rQwvTI/7pJPD1DQ+v?= =?us-ascii?Q?8UH/TFZP3NkrIul4YlR6dkXY6vdDh2BwiD3hObjjdvfK7ikt8mfFB2NJH3gE?= =?us-ascii?Q?XnsQAoaIZ+Y6v9p9oINd6kowY1tFVHgI+D4euZI6Fa14QNUDB6KAiFPsMP/n?= =?us-ascii?Q?TbMp77wOl0vxRdNZD0x4d/yvwZmNTb/1aUaVOfvr5kS8pJssNExa5pdOwu2x?= =?us-ascii?Q?TlWuZx2r/btpNwBhW7gOMAeF7ohXtyIhqGLZyJOWdNd25Tw/Zbl2Y9+9cjfT?= =?us-ascii?Q?dhHLuSWnzJgiHDOpBgnTVaTr53EyyLmoVab/gbzoD3nDQpUVuaV8RxfdwbwQ?= =?us-ascii?Q?zG08Xs+7r0znTYXbAV9zfsHx7G7wmiRJx/MrBuqfQMhQ1Rhg5TKsrEAGbgw/?= =?us-ascii?Q?ssMXs1bgF8sY/DK3VNq5OIIQpEYXOgEKn9MfLPuSANqSNbpRy5UpLQCVO2HN?= =?us-ascii?Q?yjzJNq+2z9K89t36+gYA3EhcZo2J6eUxlP0pCTNc/Wvz6EZnba6ZnETqE0yP?= =?us-ascii?Q?rdHazsYeTP/z0vo05ctuBEoJBc6DeDjtOCeeYVPmAnlBut9lmK6YMJgPld1b?= =?us-ascii?Q?XKfxreYXDoGjbnbKOQpL84rE3cniMr45uitJUdRH+M7AgWTwD+Kpf7oxJC/4?= =?us-ascii?Q?+Pe+Sg/eQYRul9QdxEKMn4PghZarLGYYPqEm6rM0+C5XHNBOkmm2Qqt4qH5B?= =?us-ascii?Q?RNDlehRN8eAtQDvtRU0N8GJhaYTXS9nsFeAWvKYOl6Hfqt0TZFqgImo7z3yj?= =?us-ascii?Q?wyt216b4+EjEaKk/H11biMhb/J5j4fDUFWSDitvArcZblw7H0GifRF6AWbOF?= =?us-ascii?Q?n3ptYgQSMGxq+MUateKLl8r2jz8/Uao1lksUtumQdE+5gNOLmvD5H7LR3Qlj?= =?us-ascii?Q?DVPcMiFw/kbOymeBEPyiu0eZoRXhffTi8OTiFkqG8xqmDUhYlQdIkrkEXrAB?= =?us-ascii?Q?zHX0aa3f8tFQ72/D2BQFnBHuBUzMSMsQeOOPDD9zR7iEzX0OeatawXOTKM5g?= =?us-ascii?Q?wxvqk9r8hSKIDP9owVvhFoktaQqzPB++faKoTbCaGzZOs9aDkjyqazTYL+Vb?= =?us-ascii?Q?9SQ8VkBNYFFsgxMj6axcNArUVj9H0aIoA+s6A3ncPT1xNy73w5jsUlXgPG32?= =?us-ascii?Q?/X/ktvA8sKn9xQ++IrKSs3pOAksgimKCyIkZyOCtiPxHd0CQfaznvg627p7u?= =?us-ascii?Q?UlEHm3n7mniMgqUFT+sI+oSIIBUkcs9hYut67t219CXvx4FdlOuoc2qehP6D?= =?us-ascii?Q?KvUjlp4O+tCqBrHAI5CIcpKlvF4N3sZkEkCA8J1yQ8KvVPduh9D0zrvrVPzf?= =?us-ascii?Q?Almdsrp/O757UuYShdzJBsMry1rWEnoZ7neB+lVokr+zRwHWBaS7nVXNRkEe?= =?us-ascii?Q?DeWTDPXatWHJkJ+vIZInffKZoL+d3Fl42c72NeU1KxATKquKjvMbdskhbt45?= =?us-ascii?Q?SADN/1hNmkpWJ86je6f7RxOBTZJWm7kfFF8tj6T4lIC30Gt9zHCzEH860evP?= =?us-ascii?Q?KwmMCQ=3D=3D?= X-Forefront-Antispam-Report: CIP:205.220.161.53;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mx0a-00498f04.pphosted.com;PTR:mx0a-00498f04.pphosted.com;CAT:NONE;SFS:(13230040)(82310400026)(376014)(36860700013)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: SpTvt+w5NOsdoxKHglmCCbhmi2yjBXzYYjuJiKRBfye96a1EYnYmV/9joUw8l532cIbYdV/XJo8vd1rnc/TVmckZyjbNB/MExedUmpvDPlcyW5P6lqLXAY3wDDyprEaFmUE6fnot3ScZ8vClbgG0FYoPJAOqCpmAbyhSCR2luEr6J/kloopZoi5ZLuWP/a2Qih0RbZDKpY/i406gEUWjZNUXqtNF0eJiIJ4Zv3UKCof2auTiiOOEynTQ7TqK4Gbz15NhHOCWVN1XX4tM7s1d1xDdNCEv20yM7m8XQltuF5s/7m54u4RLW8NgMgb5GP5fHZbHfGbpK2Z1A6Pkrns3w5ifkCWJz+YghjePQIIR8virAQLeY6kr6df65yCoZyBUqfoXTIvH4mCfy+IL1aDrnquxLzdpePSHtPU4TG18ugwp0bkXmiR8C/hfKjSRInfp X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: emsIhVwOUrAPl3hoX33MC1qa2SABx7k8tYCDWPX3UaEZDM0C5RfTxtVHZuVyJHzG60zJf+VngE4MVTp95CM3i2ogKVaQmHz+KPY8Ywf3NsYg6VN8C86og1Q7XxeBg058yFiT8SfYpp9lQQJ53H39XSIZRNsmZzcNWNIEsHJ0Z7Yms1qwG9tgy+0oxljF4ZrABcbIVs4eY3EML91hCHIZQEbU3uL+U/qgA+ZDaOLWB8Vz34FwBsIjzNqyhmLpVsr+z1GjqjZwH4Plxea7lqBQAkuhmGMoEpYFY1FxHqrhL9ldYvAW1bLfTczQLxuoYo8XrUFr4ydR/TrpzJFzXgPjio8333Ke+qKW1jqSW6f0+ygD3KpOkcoWYIemr5RhcwjZmSlz6bKAJITihqpASBD+/1eaiayE+exVI75iEnAA0ZgaGRYmBcc6CzEjpHpArwcdrvrn1M4dnlRSne10O62CAiCAubpGQj3UYKNBWmJj0vQH1/wkpwJxe1GfKgbeVHkJvK5SPxWR0gEHN5FDV9hsmd/EB+D1pP8CGk9ku6yAXPGCJKGW74Yf7vG8D0IlIQVlWupAep6/DjERCrSz1WY8rZ8iz2NU0mziFmHJSc0Bi38e9JRi3drOFDKodnCb/Y6ts54BQ7RsPt+FLXJY81LVTw== X-OriginatorOrg: ford.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Feb 2026 02:50:13.3035 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 125db805-8d80-423a-ea48-08de6aaa9c69 X-MS-Exchange-CrossTenant-Id: c990bb7a-51f4-439b-bd36-9c07fb1041c0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c990bb7a-51f4-439b-bd36-9c07fb1041c0;Ip=[205.220.161.53];Helo=[mx0a-00498f04.pphosted.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000C6184.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA3PR16MB6656 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjEzMDAxOSBTYWx0ZWRfX51gKSNGCgWoe TLrEDXWzNhrCJxiplWj0J2HbKuxSGab1CpqHkMBdDHdWLwFDiH6wwHuke9lrG4X8LjyP+zNKMB4 m14JDDmhMn4RbpQ4H3y+EndzKrneZCbB0pufGm5lfU6X0MFS40qpZOYACZbjDxDGg7Y/ydcJfah UDG6I0aciWCTFVEwflIulNGrBYvECAj4sr8kSEPt0fVj3keetZnKe5W/GJUo6MOLv+Wy4aRpvWW DAPFVFD3+xqFylPZafvsbj6ozsYT2+OGMK3SyHSd/ZD9OyvGgwbdG0VFaP0CUmQadLxI7gVUhXc s0tyu5cCyLqrv3uzebJQUOIUDdxbza0ndOKKGNUhqZtq7tWdq0pP1cX5uzfgpqYcvX4OZ2U+Ti4 GuPXbe7Tp2Q5UggQmZsv7h+c0l1ZGNi2GpcUzbO2hS5cYZav93nkIDdZQZYjoD1XALFXz8EknKO AN16LUaitmuOOCXz8zA== X-Proofpoint-GUID: hVYd24ooeBcXJfvepN7LdCS0vGs8Zsno X-Authority-Analysis: v=2.4 cv=SZ/6t/Ru c=1 sm=1 tr=0 ts=698e9169 cx=c_pps a=KbXMGX1SJVu0lhZGOc8PIA==:117 a=lOEMawUel/sSvQipkIvNbg==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=HzLeVaNsDn8A:10 a=3PXLN80vpJUA:10 a=6NUGLSImWEsA:10 a=w9pew1qAHqMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=cbNQJ9GKAAAA:8 a=iIiM3PgN9BBgacVs8QQA:9 a=G69WFyCBNqGPyalROSdv:22 X-Proofpoint-ORIG-GUID: hVYd24ooeBcXJfvepN7LdCS0vGs8Zsno X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 priorityscore=1501 malwarescore=0 lowpriorityscore=0 spamscore=0 adultscore=0 clxscore=1015 suspectscore=0 impostorscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-ZohoMail-DKIM: pass (identity @ford.com) X-ZM-MESSAGEID: 1770951051909154100 Content-Type: text/plain; charset="utf-8" From: Denis Mukhin =20 Use the new make fragment to generate test harness code for the vPCI unit test. Add new prepare-harness target to tests/Rules.mk as an optional step for setting up mocked environment for building a test. Add ability to override the test harness header file. Fix hypervisor headers used to compile vpci.c against host environment where necessary. Fixup emul.h by adding missing mocks to account for new unit test infra. Update .gitignore to exclude generated test build-time dependencies. Signed-off-by: Denis Mukhin --- Changes since v2: - moved hypervisor headers changes to a separate patch --- tools/tests/Rules.mk | 8 ++++-- tools/tests/vpci/.gitignore | 2 ++ tools/tests/vpci/Makefile | 52 ++++++++++++------------------------- tools/tests/vpci/emul.h | 50 +++++++++++++---------------------- tools/tests/vpci/main.c | 2 -- 5 files changed, 42 insertions(+), 72 deletions(-) create mode 100644 tools/tests/vpci/.gitignore diff --git a/tools/tests/Rules.mk b/tools/tests/Rules.mk index 8c4881e35da1..e8a9e82320cf 100644 --- a/tools/tests/Rules.mk +++ b/tools/tests/Rules.mk @@ -10,13 +10,16 @@ $(shell sed -n \ 's/^[ \t]*# *include[ \t]*[<"]\([^">]*\)[">].*/\1/p' $(1) 2>/dev/null) endef =20 +.PHONY: prepare-harness +prepare-harness: + # Generate mock environment by replicating header file hierarchy; # each mock header file will point to a harness header. # # $1 Hypervisor header. # $2 Test harness header. define emit-harness-nested-rule -$(1): $(2) +$(1): prepare-harness $(2) set -e; \ mkdir -p $$(@D); \ [ -e $$@ ] || ln -s $(2) $$@ @@ -44,10 +47,11 @@ endef # # $1 Hypervisor filename. # $2 Hypervisor source path. +# $3 Harness header filename (optional). define vpath-with-harness-deps vpath $(1) $(2) $(call emit-harness-deps,$(addprefix $(2),$(1)),\ - $(CURDIR)/harness.h) + $(strip $(or $(3),$(CURDIR)/harness.h))) endef =20 .PHONY: all diff --git a/tools/tests/vpci/.gitignore b/tools/tests/vpci/.gitignore new file mode 100644 index 000000000000..d66c2cd56be6 --- /dev/null +++ b/tools/tests/vpci/.gitignore @@ -0,0 +1,2 @@ +/generated +test-vpci diff --git a/tools/tests/vpci/Makefile b/tools/tests/vpci/Makefile index 97359ff67f86..a885ce41b73e 100644 --- a/tools/tests/vpci/Makefile +++ b/tools/tests/vpci/Makefile @@ -1,43 +1,23 @@ -XEN_ROOT=3D$(CURDIR)/../../.. -include $(XEN_ROOT)/tools/Rules.mk +# SPDX-License-Identifier: GPL-2.0-only +# +# Unit tests for vPCI. +# =20 -TARGET :=3D test_vpci +TESTS :=3D test-vpci =20 -.PHONY: all -all: $(TARGET) +XEN_ROOT =3D $(CURDIR)/../../.. +CFLAGS +=3D -DCONFIG_HAS_VPCI =20 -.PHONY: run -run: $(TARGET) -ifeq ($(CC),$(HOSTCC)) - ./$(TARGET) -else - $(warning HOSTCC !=3D CC, will not run test) -endif +include $(XEN_ROOT)/tools/tests/Rules.mk =20 -$(TARGET): vpci.c vpci.h list.h main.c emul.h - $(CC) $(CFLAGS_xeninclude) -g -o $@ vpci.c main.c +# Do not mock xen/vpci.h header for the test +prepare-harness: + set -e; mkdir -p $(CURDIR)/generated/xen; \ + ln -sf $(XEN_ROOT)/xen/include/xen/vpci.h $(CURDIR)/generated/xen =20 -.PHONY: clean -clean: - rm -rf $(TARGET) *.o *~ vpci.h vpci.c list.h +CFLAGS +=3D -I $(XEN_ROOT)/xen/include/ =20 -.PHONY: distclean -distclean: clean +$(eval $(call vpath-with-harness-deps,vpci.c,$(XEN_ROOT)/xen/drivers/vpci/= ,$(CURDIR)/emul.h)) =20 -.PHONY: install -install: all - $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC)/tests - $(INSTALL_PROG) $(TARGET) $(DESTDIR)$(LIBEXEC)/tests - -.PHONY: uninstall -uninstall: - $(RM) -- $(DESTDIR)$(LIBEXEC)/tests/$(TARGET) - -vpci.c: $(XEN_ROOT)/xen/drivers/vpci/vpci.c - # Remove includes and add the test harness header - sed -e '/#include/d' -e '1s/^/#include "emul.h"/' <$< >$@ - -list.h: $(XEN_ROOT)/xen/include/xen/list.h -vpci.h: $(XEN_ROOT)/xen/include/xen/vpci.h -list.h vpci.h: - sed -e '/#include/d' <$< >$@ +test-vpci: vpci.o main.o + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ diff --git a/tools/tests/vpci/emul.h b/tools/tests/vpci/emul.h index dd048cffbf9d..979e86e2692e 100644 --- a/tools/tests/vpci/emul.h +++ b/tools/tests/vpci/emul.h @@ -34,8 +34,16 @@ #define ASSERT(x) assert(x) #define __must_check __attribute__((__warn_unused_result__)) #define cf_check +#define always_inline inline =20 -#include "list.h" +typedef int64_t s_time_t; +typedef uint8_t nodeid_t; +typedef uint8_t u8; +typedef uint16_t u16; +typedef uint32_t u32; +typedef uint64_t u64; + +#include =20 typedef bool rwlock_t; =20 @@ -43,10 +51,6 @@ struct domain { rwlock_t pci_lock; }; =20 -struct pci_dev { - struct vpci *vpci; -}; - struct vcpu { struct domain *domain; @@ -57,35 +61,17 @@ extern const struct pci_dev test_pdev; =20 typedef bool spinlock_t; #define spin_lock_init(l) (*(l) =3D false) -#define spin_lock(l) (*(l) =3D true) -#define spin_unlock(l) (*(l) =3D false) -#define read_lock(l) (*(l) =3D true) -#define read_unlock(l) (*(l) =3D false) -#define write_lock(l) (*(l) =3D true) -#define write_unlock(l) (*(l) =3D false) +#define spin_lock(l) (assert(!*(l)), *(l) =3D true) +#define spin_unlock(l) (assert(*(l)), *(l) =3D false) +#define read_lock(l) (assert(!*(l)), *(l) =3D true) +#define read_unlock(l) (assert(*(l)), *(l) =3D false) +#define write_lock(l) (assert(!*(l)), *(l) =3D true) +#define write_unlock(l) (assert(*(l)), *(l) =3D false) =20 -typedef union { - uint32_t sbdf; - struct { - union { - uint16_t bdf; - struct { - union { - struct { - uint8_t func : 3, - dev : 5; - }; - uint8_t extfunc; - }; - uint8_t bus; - }; - }; - uint16_t seg; - }; -} pci_sbdf_t; +#define lock_evaluate_nospec(l) (l) +#define block_lock_speculation() =20 -#define CONFIG_HAS_VPCI -#include "vpci.h" +#include =20 #define __hwdom_init =20 diff --git a/tools/tests/vpci/main.c b/tools/tests/vpci/main.c index 2ef8d4e03f1d..3753417e866d 100644 --- a/tools/tests/vpci/main.c +++ b/tools/tests/vpci/main.c @@ -189,8 +189,6 @@ main(int argc, char **argv) uint32_t r24 =3D 0; uint8_t r28, r30; struct mask_data r32; - unsigned int i; - int rc; =20 INIT_LIST_HEAD(&vpci.handlers); spin_lock_init(&vpci.lock); --=20 2.52.0 From nobody Sun Apr 12 19:29:33 2026 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=ford.com); dmarc=pass(p=reject dis=none) header.from=ford.com ARC-Seal: i=2; a=rsa-sha256; t=1770951058; cv=pass; d=zohomail.com; s=zohoarc; b=RrZbKkxPA91r5XKTuvyN9XG0KJV/G9McfDg1z6jA7CavlUrAoWDKBTaWV+1i3AmT+W6zoBX+njmY8Pn6TeWA430GpU5D96A96xBSL8fJkscFTytJ2tvWzpg+9yDElRep8pDIgKMqyFWHB/SiPp05vUgjJ73MpYT2JNHJsyiq1+E= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770951058; 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=QZz0RdBUzIq+6LfiYUuswSgwU3nj3aTiG/f1W9D2zWY=; b=Xk6YShAaMuXj1o2LJFMIZPXgwnRKRUvjXsSO8QZReNUEwV/o4BdZ8gH0nwcCwQNqWnnicPYzy80lxAuQSgG891qkr2dkwPPqCB6qyQgqJLaYUmeSOIKtSlhkH16GAn5RyAAFSNvfsl9SZSuUiQ4mV8IAXn5v1OJ6EvA1mBCu/wY= 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=ford.com); dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1770951057992703.219071174087; Thu, 12 Feb 2026 18:50:57 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1230088.1535692 (Exim 4.92) (envelope-from ) id 1vqjGB-0007rl-Tj; Fri, 13 Feb 2026 02:50:23 +0000 Received: by outflank-mailman (output) from mailman id 1230088.1535692; Fri, 13 Feb 2026 02:50:23 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vqjGB-0007rV-QI; Fri, 13 Feb 2026 02:50:23 +0000 Received: by outflank-mailman (input) for mailman id 1230088; Fri, 13 Feb 2026 02:50:22 +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 1vqjGA-0006yN-1o for xen-devel@lists.xenproject.org; Fri, 13 Feb 2026 02:50:22 +0000 Received: from mx0a-00498f03.pphosted.com (mx0a-00498f03.pphosted.com [148.163.146.23]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bbf2dc26-0886-11f1-b163-2bf370ae4941; Fri, 13 Feb 2026 03:50:21 +0100 (CET) Received: from pps.filterd (m0367123.ppops.net [127.0.0.1]) by mx0a-00498f03.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CLDYCa438235 for ; Fri, 13 Feb 2026 02:50:19 GMT Received: from bn1pr04cu002.outbound.protection.outlook.com (mail-eastus2azon11010063.outbound.protection.outlook.com [52.101.56.63]) by mx0a-00498f03.pphosted.com (PPS) with ESMTPS id 4c9pkesr2k-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT) for ; Fri, 13 Feb 2026 02:50:19 +0000 (GMT) Received: from BY3PR04CA0030.namprd04.prod.outlook.com (2603:10b6:a03:217::35) by SA5PPFCC01D6535.namprd16.prod.outlook.com (2603:10b6:80f:fc04::923) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.18; Fri, 13 Feb 2026 02:50:15 +0000 Received: from MWH0EPF000C6188.namprd02.prod.outlook.com (2603:10b6:a03:217:cafe::8c) by BY3PR04CA0030.outlook.office365.com (2603:10b6:a03:217::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.11 via Frontend Transport; Fri, 13 Feb 2026 02:50:10 +0000 Received: from mx0b-00498f04.pphosted.com (148.163.138.245) by MWH0EPF000C6188.mail.protection.outlook.com (10.167.249.120) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9611.8 via Frontend Transport; Fri, 13 Feb 2026 02:50:14 +0000 Received: from pps.filterd (m0426316.ppops.net [127.0.0.1]) by mx0b-00498f04.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61CMPDc42547170 for ; Thu, 12 Feb 2026 21:50:12 -0500 Received: from smtp-us.ser.proofpoint.com (pmta-use.ser.proofpoint.com [3.215.31.156]) by mx0b-00498f04.pphosted.com (PPS) with ESMTPS id 4c6nag5bmq-8 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Feb 2026 21:50:12 -0500 (EST) Received: from localhost ([19.12.76.222]) by cmsmtp with ESMTPSA id qjFzvwTkjP7uEqjFzvDLNo; Fri, 13 Feb 2026 02:50:12 +0000 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: bbf2dc26-0886-11f1-b163-2bf370ae4941 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=ppford; bh=QZz 0RdBUzIq+6LfiYUuswSgwU3nj3aTiG/f1W9D2zWY=; b=FqBmqEd7OyO0RtEv17n WDISLFtBqzUyMPTsgxq1qj85EcH8JneeVUMh2hox5QnuOoHATg8EoyJ+YCVSFGYl LfTA9DZfFKZuUH5GwC6Fe76LZzPXh5fC0ZJ5Nzx45wKj++H/RiWsyW/NwYEFazyD dKGi/4/iVBiRtSKArCHLVuiByr4wQxilzgeOHdBiy8OZViWWXHcNNp9mdRH6n2z8 3m77VUgt2gP+QhfJceoOvNNgvdDKv9l5l0X6srV2pTurzzzLRWuvHOcV4E0jMO89 7G5YvTadw7IhEgD4LzrG1AwEnGvN93W+s4WEk3edJmewbTCpluUB5v3RBwgm09xl Zyw== ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=SpNlHX0tSmBCNBBAZjoVGLv0ocJ7D8OV+dApWfL2268/KbLKkrZi2G11AE4xyWummU2SABeY/59rFJJ6g+QCZz92rLKspYSqIddXogHxOq0k6E8QY8F2kj0lYH+1ZN/qCUE0OEQ8zXvFTSPmmepzWXIQINbBV8juiWzwkeCSjrZ0AtERsfW0FMoRHaWy5nQ95sUdVePyKVJkCcxaz4hwKRfV4Vkbjg+veHdTGcWmvkueVW5wTTGOTRJoP+k5lDL4PZPpxuf48vQXDraV22AQxa7T8WNWC7hMaSM+GrRPYHuPDQkb8E18xSrEcxD/fwhTnyiP88XEcjiaMbwStj4KRQ== 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=QZz0RdBUzIq+6LfiYUuswSgwU3nj3aTiG/f1W9D2zWY=; b=IkJ6r8my6UU/wbC7R8xGx1XcACiXalRa1QqyuHVB3EtH23McVEt/RJoQdWyjduRaWX5Firb/mXoioc4glWMcDjHCJZdqIB05who7lSZkFQCgUDUce/AjCFjV7I3X00g3UwcRZUdTEXc4Dr5gzfBKfsQOIHbgGWi4lkx2AY6LalFDro8w6uMyh3ZDFmV/QjenCKSEMz74zF9L1BxQHhJIOMSsYlLpg9BiDOHsSnnpixWrqYHslAD7UONETFAJoqN1KXoG/WfK6BAQSsqpRcVi25JER0a5A60/rYKpvzutZ3w/QQdCT1TAtxLB6W7XwOUw6O0ZIz5Lt+KXKTrGU7mAMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 148.163.138.245) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=azureford.onmicrosoft.com; s=selector2-azureford-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QZz0RdBUzIq+6LfiYUuswSgwU3nj3aTiG/f1W9D2zWY=; b=GuKwEnySYp+Hhv86vBjhsKaN0Xl2xpAWUsgSjSJttJKDAs6lZS9TuanUwU33arvz/tQQtAtW7PB540f4SoGk6kQzG2t1bKPpzQg8txFla0K6uBJOWSmAhr9fAz0NVgCfeP+h6uIXiKDRfev3KNlExkt5PmH55XENF6ZKL8sZ5nI= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 148.163.138.245) smtp.mailfrom=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com;dkim=pass (signature was verified) header.d=ford.com;dmarc=pass action=none header.from=ford.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 ford.com designates 148.163.138.245 as permitted sender) receiver=protection.outlook.com; client-ip=148.163.138.245; helo=mx0b-00498f04.pphosted.com; pr=C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= saarlouis.ford.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= ppserprodsaar; bh=QZz0RdBUzIq+6LfiYUuswSgwU3nj3aTiG/f1W9D2zWY=; b= TWeHJFhkF3hik088K1Y/D+Tefvzq5EPCkzCds+KL4ijJsp98pVeiprHcxW7y4feY Sj0yPf1stpAo4vh7yf3IHxIlP90hay4RyP840r4QaRuFZn1rMsJYlutGnDHxcxfB t65FzbGn1KwGug7wrUzwwOmY7kurGsxjV13mYTylhl9Y1i02RR5UOtQyXemv4qrs ZRn9LLORlmu813CMybLL87mc6oTWhPLGWu/C9eH01Mfv2WKzhWjPPhhVdg5ND8Ro zDGGTWrOIXUxCAovwo3ThNr2MjvXlPKHUVXq8pTd659nFmtU3WNC7gAwTK21SOOg N3N/kC0u2W7BTYAjZ5Menw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ford.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=ppfserpocford; bh=QZz0RdB UzIq+6LfiYUuswSgwU3nj3aTiG/f1W9D2zWY=; b=mlXPrg50fbFssAdD5sUZz2k JTHjq+IVpep0rPWBnKfdUZ/GP4+Y1xOeUG1mdnCiT7yEBPXFYP+07Tmvc525HgvL LW7S42htqLN7FDO0xFeaAvq4Ad7jIOx9488r2VglB4V1sqJMsmoCZMMq7ygSoxgJ tbhzJNb1PnsoVFjsEe/+Ty2RVT8hj41Y981RgYY0/BKBdbkMRYvikXhaXiSTvGTE suotkQzOCcliWWsIZdtx+qDtb2w8b0FEvpmawNmB8E3ZzLfn9tF3wokb3u7zi+53 XIhj+XxUOuHJQigdQQrgVPSJYLY5TbzsM73sAtfAHW9PJoLpVt/IbMdxwKBmwwQ= = X-Mailer: SER-76bead168636dc6ed1c9e51ce4dea80dbdd4163750742b614a4d871e565792b7 X-Cloudmark-MID: qjFzvwTkjP7uEqjFzvDLNo X-Proofpoint-CID: eb09f7eb-2dc2-34ab-a188-7b293c1db1fe From: dmukhin@ford.com To: xen-devel@lists.xenproject.org Cc: andrew.cooper3@citrix.com, anthony.perard@vates.tech, jbeulich@suse.com, julien@xen.org, michal.orzel@amd.com, roger.pau@citrix.com, sstabellini@kernel.org, dmukhin@ford.com Subject: [PATCH v3 5/5] tests: use unit test fragment in PDX test Date: Thu, 12 Feb 2026 18:49:52 -0800 Message-ID: <20260213024952.3270112-6-dmukhin@ford.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260213024952.3270112-1-dmukhin@ford.com> References: <20260213024952.3270112-1-dmukhin@ford.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable PSER-M365-App: SER-APP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 adultscore=0 suspectscore=0 malwarescore=0 bulkscore=0 lowpriorityscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000C6188:EE_|SA5PPFCC01D6535:EE_ X-MS-Office365-Filtering-Correlation-Id: 5eaa721b-5007-4da6-eef3-08de6aaa9cf5 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?HdDjsgY5Zs9ijPLoVjj0iiYpn9LyINHlATmSYn0KqAVLKu4Y72YMvzpx67eg?= =?us-ascii?Q?x0usi+Ktu33urfL7Vvsx8rLEUM/KctaL54UuI2uAAbPmuiAl8256iL5KKH6I?= =?us-ascii?Q?lkmKu7rS+41a5a/essP584I5wWQK7Jp5QAvP0kn+STvFzoZUmHDz8Tgshdmg?= =?us-ascii?Q?28BYiQKmVljSpH27nj7HwxQcg3/kjyKgDEm7u8dtrfuNr2NmsZcH0uoF66dl?= =?us-ascii?Q?0sZMqy5vKM9oSLch8a9c5Tb4MQfaXYQneUJI+SqsQ2DJs4Q41EdQtBfDhrbn?= =?us-ascii?Q?J7M8gJ3UD/hJlHBVplojVh5MWnQW/LfSDdDyIclPxB/EuYwqODExrkgzqs7p?= =?us-ascii?Q?l1Yt/w6mrli+BY6iqndOxcbKnsP711XTmVGlGeTsEQ4Ult7IY33SXLFc7MGh?= =?us-ascii?Q?sLBBHEnCrJuY0uJOnC0XEBd/n7NIFuvFOB49pvO3sb8VJUvdSVayt+M0wjP9?= =?us-ascii?Q?PfZ1qj8V49/h2ZkQdx+ixsgOzwQL0tx59uYSORXVrM/f4aLurPxCeQc5o0Pu?= =?us-ascii?Q?AT9cdE1BH5NdbEMXyYEyEdJAvxQtRZQd+EVxpZJMbcS0WpKVmVo/5x0KOGVM?= =?us-ascii?Q?5gV7d3vWYcgJn2fVGls66DpsMxh3ndNQjeFz9uiFU4VWmX5/YAd13oZMxg9Q?= =?us-ascii?Q?rDNWVHQqH2JIgINU/M7EdkZdUZkL/wvSsJnbNS3duo7Pw3DvDrXQ3oGSIdjl?= =?us-ascii?Q?s5FtBClLmcjwkfagDE3jU8P75ZkQ2jf7p2thONQ5LSCTaflYv9lIygJa8Qd9?= =?us-ascii?Q?c5tqNSM1QpPbF1yHe6Zgh7DWgY0XXCHUQzsI3MIy3tvP9wgpPG21WsKdDfcL?= =?us-ascii?Q?TPflD0LlVyDTXmiKEWNudQNpZpchsS/C3LDE2d+ADylPc4QYrsFpZ7pn+YzZ?= =?us-ascii?Q?/EHXuGCNVKl2Cn8MqF0TEE+m70akV3WQD5ZGhMXijVF44KXzWm8N4g29udDi?= =?us-ascii?Q?uwSFiCMvoVM8XKFnGI8uVBvJlUtLqKKmo7CUB5eQo218PkjX6v6m7NgosRcH?= =?us-ascii?Q?DyTLWeJ84TeUVp0817EtPGgNAFl7vwSbKgBjvDbwgJaKR+gW8DYKxpxTrBAQ?= =?us-ascii?Q?U2p5PlvptIJW8egdNpKv3qmHwKc8CpBVB/Wc9u6tax7rxXc++9oM1ixiiM5g?= =?us-ascii?Q?F5qrQqR+rPxAixQqJiOKIfXsjC+ASLx1UsTUKpXFNOrNcQRVI7RuiBG8GgFx?= =?us-ascii?Q?/0narmlwhCH5bOTHgeym4LoqAbVp0XROqJu5l+IuQznXZvhxnvJybXpxSXw+?= =?us-ascii?Q?1Sp3N9JnUsnJY9UHny6XKPMOxsUWgeVooaA53E8N5smXn0K09JItQsklG9C1?= =?us-ascii?Q?RTnqBNIgkUxk79CuCKf3yGeiGqJ1xxiCAQsguaLcsGv2alX+30BL9t6Kk5eW?= =?us-ascii?Q?ng4/sdrMXbdFMOf1uY70N+XqSG1LcR+8YcN/i5XhnyxNQf/fIlQyooM7HRqK?= =?us-ascii?Q?cAyLmtM+qDOao0bLa5d0hSCSZ8fg+0KsgYszVMlnEDKTpM3QReACzp+rR9bO?= =?us-ascii?Q?34oqlaDs2fw9wbWwYF2THI6CVo+O47eZjcy/DxMdSeP7j/9+9N1IoEFGu8jI?= =?us-ascii?Q?/8ZQQ9sFtFMBaVCe1utBDuRjeyJ71YTZ01hiruvueDNWyKQY2ellqfRmiWHv?= =?us-ascii?Q?ZuTPDWH8Naj6yc+KeB0NKxkc5Hlvke3Mri4YZMYc1yhtd3V7jnrRUgRGkeiK?= =?us-ascii?Q?CHJPyw=3D=3D?= X-Forefront-Antispam-Report: CIP:148.163.138.245;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mx0b-00498f04.pphosted.com;PTR:mx0b-00498f04.pphosted.com;CAT:NONE;SFS:(13230040)(376014)(82310400026)(36860700013)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: KqVyl3013furYN8MuHrst47hO/y3uzgNd7fIiAmB91+AiV88nuVJEDkDvMtePWrXTqMnCMmgHsxQuNXVHH3vYSiIPyfuU+7lmdnAMWYjkGX7zQjkosMzCFa/PMxa2LuezRI/TblPJwQnNpYMb0wflY6GLX5HD7bKcBP4zO25W6n6zx0lSDnLbc0tDAMQ2P3qCIAqvf4euRcK3DiPMUXJUBIhPSYgej+7yttgDn3/rXm1I9oUKzsu2SMwNF1E4HNlbxHgbOUivAc6SobXJoUQ8hKw9uDZ6zAudOYFYzybEy3V0Ncp9bJTp3uuSKQLQ4ReEr2Op5FKiCuKTQsZaEn/fbXHtnKt8JvDwh/BQmHNAOIDKEmDkOw6uavvp6bpKTFmBpT09OaUwI16oamviQ87X5ORmhc4wUa0DeR1dYvcuhqsFG/NUVjvFWJIywSwZsUL X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 0D68Ne2SBWSnHeSpPvWlj61MTJr6t9IeUETXSd2HBq2xxJWOq53PNYQ4jXCLQAIHlsZMoMI/0nQC2+wLtgO3MaNiE/YDhpCe/GL3oaK6CPK7MzRsznWYdidQb7E17LLM03c3GXXOPU3yy1DeP856VRhLYyC4cXHR8/8sfkDXOwrkgcKiEGho7c2CcBThp5y1RlmFNnzMsQXYNquOxajNx8oDayWEy4rdHisnFk6FcCINo9a0erXgUENvhBFCX98AVUQVLCjrlXsM6ljjU259jMuzsP43rCY0crlwHRgnTMeT86+ByT2uWJ+DXK2Z++9CpMwlaoY4pElJEusXSq4HyrwUWzzCVsrGWJY6q0xWGUg8degOv7r8rCR13YT5ec+RGVNniV3MszgCqv5ZynhFiIFS8HR3ZXTCuXJGAsuFng1FBNBSKMPhDRwI9ScnK14WSfaqRhAh8PMMb2sVUDHl6LsWu3RsantLz6XqUlomldmSc93HAKbHsKF52h68LM4Y3hN4aRLRhAEfGO4WVb9dRfZKK6hZoDwHUvw2yXyHHZCoYTsJzbA39HR1YmTZFNWVB14tOuc2iQvmhUgtYnvPdLHIr6Piu1/83aJWuhL6Lk+WorXVhxso/31JMRASeqFgqIv/UEqTpViwls+VnrJOAQ== X-OriginatorOrg: ford.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Feb 2026 02:50:14.0359 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5eaa721b-5007-4da6-eef3-08de6aaa9cf5 X-MS-Exchange-CrossTenant-Id: c990bb7a-51f4-439b-bd36-9c07fb1041c0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=c990bb7a-51f4-439b-bd36-9c07fb1041c0;Ip=[148.163.138.245];Helo=[mx0b-00498f04.pphosted.com] X-MS-Exchange-CrossTenant-AuthSource: MWH0EPF000C6188.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA5PPFCC01D6535 X-Proofpoint-GUID: 8HwLCm9bgunVaHS0d0Rd1ktgjK_zvRvL X-Authority-Analysis: v=2.4 cv=Wuwm8Nfv c=1 sm=1 tr=0 ts=698e916b cx=c_pps a=BPguv+Q8Nj9xbNSzergmQw==:117 a=b7IhknPlfT0FN1EembXvig==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=HzLeVaNsDn8A:10 a=3PXLN80vpJUA:10 a=6NUGLSImWEsA:10 a=w9pew1qAHqMA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22 a=mDV3o1hIAAAA:8 a=cbNQJ9GKAAAA:8 a=CTJY7OLnDzyQ9A8_STcA:9 a=G69WFyCBNqGPyalROSdv:22 X-Proofpoint-ORIG-GUID: 8HwLCm9bgunVaHS0d0Rd1ktgjK_zvRvL X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjEzMDAxOSBTYWx0ZWRfX3ujcxBKhb7rA KCaISNmKUNtpyKaTtbzJD7ZbiCeuPswf2Ivf6U+QaG1fy7KQInvyZAUaXNxWmVPooH5TeUzV74U kli9kZeflEghIV9sDqzLLI5+i0E+D68SVpT3y59CMqPiSmT89kQRqnVX8gageUeKUovqi4R+cC+ g4IIS8VQQepe6qtho1Z7OL+JjYPNucNClIivZ9tUxqJjn5lTVKqcimPFFeJ56QUqBvgH6rbCSJj +t0EgPdF8i+Idh5jEW+DC8XPjxF0SD1/tgDyt8JDGJjdWMLoeNyRR+VBkQYmnfAuPSrKvQd4lOq HA0TurMWAlrL74/wymZhWAseRjpyYUnx9c2MGWsZOtCMD6mfyQkPIxxkDrlgmX7iNR71q1QYTzW 2/w2mq4imWiurnEDckRyN/27/so6kr/MdMvQpOljLtvCXew1JFmYK9gCMjFnpFF1K0h/uUf6ct4 n7nx14GjIIhOrvacubA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-12_05,2026-02-12_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 adultscore=0 spamscore=0 priorityscore=1501 bulkscore=0 suspectscore=0 phishscore=0 impostorscore=0 clxscore=1015 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2602130019 X-ZohoMail-DKIM: pass (identity @ford.com) X-ZM-MESSAGEID: 1770951059599154101 Content-Type: text/plain; charset="utf-8" From: Denis Mukhin =20 Use the new make fragment to generate test harness code for the PDX unit test. Add ability to pass custom CFLAGS for mock code and object file suffix. Move earlier in xen/common/pdx.c to ensure harness.h is included before triggering the #ifndef MAX_PFN_RANGES check when building a unit test. Additionally, use real in harness.h instead of a locally copied version. Update .gitignore to exclude generated test build-time dependencies. Signed-off-by: Denis Mukhin --- Changes since v2: - added lost -DCONFIG_PDX_OFFSET_COMPRESSION test --- tools/tests/Rules.mk | 19 ++++++++---- tools/tests/pdx/.gitignore | 2 +- tools/tests/pdx/Makefile | 59 +++++++++++--------------------------- tools/tests/pdx/harness.h | 2 +- tools/tests/pdx/test-pdx.c | 2 -- xen/common/pdx.c | 3 +- xen/include/xen/pdx.h | 2 ++ 7 files changed, 36 insertions(+), 53 deletions(-) diff --git a/tools/tests/Rules.mk b/tools/tests/Rules.mk index e8a9e82320cf..dc16926f0591 100644 --- a/tools/tests/Rules.mk +++ b/tools/tests/Rules.mk @@ -16,11 +16,13 @@ prepare-harness: # Generate mock environment by replicating header file hierarchy; # each mock header file will point to a harness header. # +# NB: double-colon rule for mocking environment for multiple tests. +# # $1 Hypervisor header. # $2 Test harness header. define emit-harness-nested-rule -$(1): prepare-harness $(2) - set -e; \ +$(1):: prepare-harness $(2) + @set -e; \ mkdir -p $$(@D); \ [ -e $$@ ] || ln -s $(2) $$@ =20 @@ -30,16 +32,19 @@ endef # # $1 Hypervisor filename. # $2 Harness filename. +# $3 Extra CFLAGS. +# $4 Object file suffix. define emit-harness-deps $(eval c-file :=3D $(abspath $(1))) $(eval c-name :=3D $(notdir $(c-file))) $(eval c-headers :=3D $(call list-c-headers,$(c-file))) $(eval c-deps :=3D $(addprefix $(CURDIR)/generated/,$(c-headers))) +$(eval c-obj :=3D $(if $(strip $(4)),-$(strip $(4)),)) $(foreach x,$(c-headers),$(call emit-harness-nested-rule,\ $(addprefix $(CURDIR)/generated/,$(x)),\ $(2))) -$(c-name:%.c=3D%.o): $(c-file) $(c-deps) - $(CC) $(CFLAGS) -o $$@ -c $$(firstword $$^) +$(c-name:%.c=3D%$(c-obj).o): $(c-file) $(c-deps) + $(CC) $(3) $(CFLAGS) -o $$@ -c $$(firstword $$^) =20 endef =20 @@ -48,10 +53,14 @@ endef # $1 Hypervisor filename. # $2 Hypervisor source path. # $3 Harness header filename (optional). +# $4 Extra CFLAGS (optional). +# $5 Object file suffix (optional). define vpath-with-harness-deps vpath $(1) $(2) $(call emit-harness-deps,$(addprefix $(2),$(1)),\ - $(strip $(or $(3),$(CURDIR)/harness.h))) + $(strip $(or $(3),$(CURDIR)/harness.h)),\ + $(4),\ + $(5)) endef =20 .PHONY: all diff --git a/tools/tests/pdx/.gitignore b/tools/tests/pdx/.gitignore index 1202a531a7fd..1bf9c05985c4 100644 --- a/tools/tests/pdx/.gitignore +++ b/tools/tests/pdx/.gitignore @@ -1,3 +1,3 @@ -/pdx.h +/generated /test-pdx-mask /test-pdx-offset diff --git a/tools/tests/pdx/Makefile b/tools/tests/pdx/Makefile index 3c431d7c7822..fa0bea8e1035 100644 --- a/tools/tests/pdx/Makefile +++ b/tools/tests/pdx/Makefile @@ -1,50 +1,23 @@ -XEN_ROOT=3D$(CURDIR)/../../.. -include $(XEN_ROOT)/tools/Rules.mk +# SPDX-License-Identifier: GPL-2.0-only +# +# Unit tests for PDX (Page inDeX). +# =20 -TARGETS :=3D test-pdx-mask test-pdx-offset +TESTS :=3D test-pdx-mask test-pdx-offset =20 -.PHONY: all -all: $(TARGETS) +XEN_ROOT =3D $(CURDIR)/../../.. =20 -.PHONY: run -run: $(TARGETS) -ifeq ($(CC),$(HOSTCC)) - set -e; \ - for test in $? ; do \ - ./$$test ; \ - done -else - $(warning HOSTCC !=3D CC, will not run test) -endif +include $(XEN_ROOT)/tools/tests/Rules.mk =20 -.PHONY: clean -clean: - $(RM) -- *.o $(TARGETS) $(DEPS_RM) pdx.h +CFLAGS +=3D -I $(XEN_ROOT)/xen/include/ =20 -.PHONY: distclean -distclean: clean - $(RM) -- *~ +$(eval $(call vpath-with-harness-deps,pdx.c,$(XEN_ROOT)/xen/common/,,-DCON= FIG_PDX_MASK_COMPRESSION,mask)) +test-pdx-mask.o: test-pdx.c + $(CC) -DCONFIG_PDX_MASK_COMPRESSION $(CFLAGS) -o $@ -c $^ =20 -.PHONY: install -install: all - $(INSTALL_DIR) $(DESTDIR)$(LIBEXEC)/tests - $(INSTALL_PROG) $(TARGETS) $(DESTDIR)$(LIBEXEC)/tests +$(eval $(call vpath-with-harness-deps,pdx.c,$(XEN_ROOT)/xen/common/,,-DCON= FIG_PDX_OFFSET_COMPRESSION,offset)) +test-pdx-offset.o: test-pdx.c + $(CC) -DCONFIG_PDX_OFFSET_COMPRESSION $(CFLAGS) -o $@ -c $^ =20 -.PHONY: uninstall -uninstall: - $(RM) -- $(patsubst %,$(DESTDIR)$(LIBEXEC)/tests/%,$(TARGETS)) - -pdx.h: $(XEN_ROOT)/xen/include/xen/pdx.h - sed -e '/^#[[:space:]]*include/d' <$< >$@ - -CFLAGS +=3D -D__XEN_TOOLS__ -CFLAGS +=3D $(APPEND_CFLAGS) -CFLAGS +=3D $(CFLAGS_xeninclude) - -test-pdx-mask: CFLAGS +=3D -DCONFIG_PDX_MASK_COMPRESSION -test-pdx-offset: CFLAGS +=3D -DCONFIG_PDX_OFFSET_COMPRESSION - -test-pdx-%: test-pdx.c pdx.h - $(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_$*.o) -o $@ $< $(APPEND_CFLAGS) - --include $(DEPS_INCLUDE) +test-pdx-%: test-pdx-%.o pdx-%.o + $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) diff --git a/tools/tests/pdx/harness.h b/tools/tests/pdx/harness.h index e49d6bcf92c2..4cdda931feb2 100644 --- a/tools/tests/pdx/harness.h +++ b/tools/tests/pdx/harness.h @@ -84,7 +84,7 @@ typedef uint64_t paddr_t; qsort(elem, nr, size, cmp); \ }) =20 -#include "pdx.h" +#include =20 #endif =20 diff --git a/tools/tests/pdx/test-pdx.c b/tools/tests/pdx/test-pdx.c index eefd54c76815..3633c231abaa 100644 --- a/tools/tests/pdx/test-pdx.c +++ b/tools/tests/pdx/test-pdx.c @@ -7,8 +7,6 @@ =20 #include "harness.h" =20 -#include "../../xen/common/pdx.c" - struct range { /* Ranges are defined as [start, end). */ unsigned long start, end; diff --git a/xen/common/pdx.c b/xen/common/pdx.c index 7e070ff962e8..068a2098b41b 100644 --- a/xen/common/pdx.c +++ b/xen/common/pdx.c @@ -15,11 +15,12 @@ * along with this program; If not, see . */ =20 +#include + /* Trim content when built for the test harness. */ #ifdef __XEN__ #include #include -#include #include #include #include diff --git a/xen/include/xen/pdx.h b/xen/include/xen/pdx.h index 856fc3e8a0e6..8b4a8701a25f 100644 --- a/xen/include/xen/pdx.h +++ b/xen/include/xen/pdx.h @@ -199,7 +199,9 @@ static inline paddr_t directmapoff_to_maddr_xlate(unsig= ned long offset) =20 #elif defined(CONFIG_PDX_OFFSET_COMPRESSION) /* CONFIG_PDX_MASK_COMPRESSIO= N */ =20 +#ifdef __XEN__ #include +#endif =20 #define CONFIG_PDX_NR_LOOKUP (1UL << CONFIG_PDX_OFFSET_TBL_ORDER) #define PDX_TBL_MASK (CONFIG_PDX_NR_LOOKUP - 1) --=20 2.52.0