From nobody Wed Oct 8 13:27:04 2025 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013052.outbound.protection.outlook.com [40.107.162.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8E5E9296152; Fri, 27 Jun 2025 10:09:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.52 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018982; cv=fail; b=YGY3f7pHMrrFH+wYAxS5uVuwXgC70KiGoy8F2AmEJlV5oXLPJ8yG0FfP1R+FCc0y4JqoNtRY2E+QMwzBKoXJ2zxXsX8aU6Hrq65U0N+dxc4z0PEG+r7g65oIT/ojKgxaOCJSH+34EdEgtNRfC+/uSbDd5SuDq3vxesaN7yIRyjE= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018982; c=relaxed/simple; bh=fCmFVSLLKXDdY1FGVa52bmxbThdLvBdERp1O7JgnN/0=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=cgB53KSqU/4R4xWFXyJb6Lp/nn/71016jWswlcJgIEJ/RBlVqT6eTFoa+oaSCXk3aNoMiyxiyArIi0xgAmr+ScgTCsWxEY3B6q5csGTw2kUtdYXHJbrt7yPDbAl+5Db5SIbH2A7SzSyhubCHKXmTwqSqeLMwAe1g5us6kLoJnn0= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=FyX36aor; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=FyX36aor; arc=fail smtp.client-ip=40.107.162.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="FyX36aor"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="FyX36aor" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=aOZq2Tg3bqkQ97BPKz4g43UrFeoHzPWh9MyPy5/GcKG2FLXTEMIOekGoQDRJp9ciAtaLJ/bgvwFtPQf4p4nQaPnGrzwcM2to8oka8VsNkmWlrfNEsg9QH4RnbeAv7cyix1/rZACwsB1W4m9boHpSlgr/Y8KhoSkuUWhPR91uCIiEU200K3x86PUweGKZhh0iwwptIgb1Iq9hGpPDA3tfgejrdNPNIku18E7ZFyER5u+ekzF8Zaw1akSpycegl9JQLrl8Or/ViQOfCK4ya8HF2D7yAw4qspAL6NN6b5MthqpYtC1x6CJCsxBBZcVnffXUnreRBsIwTp4trWYaZwroMQ== ARC-Message-Signature: i=2; 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=0q3NGdWIZdqxluBrO0yGO0dm85042lBhi5zRTvhxF5E=; b=uHxRZxSyznkJlnc4lmruQ0FY4+3+ubueIBVPTGk4pUbOA07hrDGQIaCVQMdqyqDLX23rfXIGn5LuTd93MIQ14lBvpRk6xtVJyBZDk8R0yplWEgJSJ6vLLDxzwvexpZew8bAngnZXIQj4bMkjl0sta0sWrPCBSpd1rWctc3BS4HCCbK3i9XIZNgSjx7YpoO+2s0J/WmU/P6jc1eAxl+ZjsMDS2uPGDjSAgWsURZiAr1HvF74g3qiECMj/HHzSnsYUEsz5r62kPkZ14Xof7RajU8qcHLrkUMMHDkYLMamNUBWZF/rQzOxwZUgu/2xF1/Hs63KzFNsHdGFXiFwwmlUW1A== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.infradead.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0q3NGdWIZdqxluBrO0yGO0dm85042lBhi5zRTvhxF5E=; b=FyX36aor6rvPhgzs/cOwY+gfKWyVW3wkRpGaC1osU0x4XeJJoA6emv0JNOxOq/QeSZrIIj6HLUTHp7YUTKZj8byUTX1MZu5Um85NmdQx4kO/brB9fxPF87tBMKda9vZG+kxD+229+nKFmIHll1z8YHvx3vm0WFvGca7mhMcPFxY= Received: from DU2PR04CA0021.eurprd04.prod.outlook.com (2603:10a6:10:3b::26) by AS4PR08MB7553.eurprd08.prod.outlook.com (2603:10a6:20b:4fb::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.28; Fri, 27 Jun 2025 10:09:36 +0000 Received: from DB1PEPF000509F0.eurprd03.prod.outlook.com (2603:10a6:10:3b:cafe::ba) by DU2PR04CA0021.outlook.office365.com (2603:10a6:10:3b::26) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.21 via Frontend Transport; Fri, 27 Jun 2025 10:09:36 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by DB1PEPF000509F0.mail.protection.outlook.com (10.167.242.74) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.14 via Frontend Transport; Fri, 27 Jun 2025 10:09:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=WgAl7E/5HRCaG3DLhvgVdm3jP61Ivs0ARGSFn3PmE35ia6NXw+vdhNelwhrGTvZCE6JG0SuExOeGsgVmCOYmrG3HuuvhNqIvruOuAal7/QVDHGCKOXGwe6WlEPqaIuPgnlrlILSnGglUcssW+6hF7v+uTx+tS4wAIIEUZWC7odz1WTtcjBhFwQTmgA0RFg5krRTOzMuMTeXkv9Ry3DL8+R8OZiTPhn+f3wDE8My9A8sbOya81FQa6Zs/pj1nB2SAU4OabnhEP9YiNqXsdqbfv9KgtnEmHoDX7GmuROQdvdAIogLo9qO/JNcuXpJKx85eXYN6BAQngexHZ1xQcoz8Pw== 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=0q3NGdWIZdqxluBrO0yGO0dm85042lBhi5zRTvhxF5E=; b=SmsgvjasGGDrldItUfOe71uMXY2cWYlH5iulz8ko/gpd7T/uJaYtD1wzQxFesp4Kyg6Yo2rRodOGoUESvpITORRq64J7t0RvIOgbS1MbBXGqI4AKFyQrYtd80+7h7j1t85MzW/qrnRHaZCZrjELX+jUJ3Z5UU2gjojqjciQW1JmuaD8x7PRXWmH8QEFwvZ0wzi5iyB6rTcKh6NSpKXmjRr1DxDvTCUpKAd5PHn30N0fSs/vmCTFbPbgxA9NNFFyZUEjZdkiy1qOrwahM9DyUNsFhmeya0XD+lulnMib+73MRHn6ku4aaTpxlAe0ER1IMnSZoHtr7XXBQLQg//mp75A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0q3NGdWIZdqxluBrO0yGO0dm85042lBhi5zRTvhxF5E=; b=FyX36aor6rvPhgzs/cOwY+gfKWyVW3wkRpGaC1osU0x4XeJJoA6emv0JNOxOq/QeSZrIIj6HLUTHp7YUTKZj8byUTX1MZu5Um85NmdQx4kO/brB9fxPF87tBMKda9vZG+kxD+229+nKFmIHll1z8YHvx3vm0WFvGca7mhMcPFxY= Received: from DU2PR08MB10202.eurprd08.prod.outlook.com (2603:10a6:10:46e::5) by PAXPR08MB7466.eurprd08.prod.outlook.com (2603:10a6:102:2b8::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.28; Fri, 27 Jun 2025 10:09:01 +0000 Received: from DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31]) by DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31%3]) with mapi id 15.20.8857.026; Fri, 27 Jun 2025 10:09:01 +0000 From: Sascha Bischoff To: "linux-arm-kernel@lists.infradead.org" , "kvmarm@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" CC: nd , "maz@kernel.org" , "oliver.upton@linux.dev" , Joey Gouly , Suzuki Poulose , "yuzenghui@huawei.com" , "will@kernel.org" , "tglx@linutronix.de" , "lpieralisi@kernel.org" , Timothy Hayes Subject: [PATCH v2 1/5] irqchip/gic-v5: Skip deactivate for forwarded PPI interrupts Thread-Topic: [PATCH v2 1/5] irqchip/gic-v5: Skip deactivate for forwarded PPI interrupts Thread-Index: AQHb50uBVT08xxo3SUOh7vh/YrsqMA== Date: Fri, 27 Jun 2025 10:09:01 +0000 Message-ID: <20250627100847.1022515-2-sascha.bischoff@arm.com> References: <20250627100847.1022515-1-sascha.bischoff@arm.com> In-Reply-To: <20250627100847.1022515-1-sascha.bischoff@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.34.1 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DU2PR08MB10202:EE_|PAXPR08MB7466:EE_|DB1PEPF000509F0:EE_|AS4PR08MB7553:EE_ X-MS-Office365-Filtering-Correlation-Id: 175c138b-4bc9-42a4-ac8b-08ddb562b72b x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|7416014|366016|1800799024|38070700018; X-Microsoft-Antispam-Message-Info-Original: =?iso-8859-1?Q?JwSAVw+uuXCnxAecpdrk4KZlx/J+44yl3vvSR6YOg8jLFYoJHpE5dOzNPQ?= =?iso-8859-1?Q?jqhzNMJoLhNxs1vRhHIKX3+mkDLbfCYKvuPWvo0d4zVQFlwhoSBdw0whAl?= =?iso-8859-1?Q?4lIgO9+Deb1x4QPxUI1IF54d/cD57B8FJeDdQo/lBCUXpcBfpw9pFp21M2?= =?iso-8859-1?Q?/YW9/T/6VjmO2i7WvYu5NY2nXFUJGVeIAT/4YPYChdfi7iRhzJVL4+JQRB?= =?iso-8859-1?Q?hMzO71pzBlu0DU5RsoPrnorPjzGWreyZGGfzQ+OrGB7LR+Gn8q7d5IUsBU?= =?iso-8859-1?Q?L4UZZmePeDfUsBLVcN3xiQ6nnHqibTI4iXytGfznjaXU3Hw6k0TQrJrjtm?= =?iso-8859-1?Q?yREsWuNnch51ctV/Jc9gDtM8bP059RnE5tV08uxKT/hKhLZx2KiB/Hbz4O?= =?iso-8859-1?Q?a+NeaG5ySRYAc3O0uRmHvxfQg6V4k4GPjEy3xYEnjOmp4l0fSvPlgJ3OO6?= =?iso-8859-1?Q?Vs+qCSUHlyMvrOMDHvKbLSWHzcicMvx87FWFqfWsJJdxZvB5W3ij6bo18U?= =?iso-8859-1?Q?wW6BQNR6vn2j14mUFkmneWAvFD+aS9jDd9Ps/t3SWuUaLApH7YQ2AtMFre?= =?iso-8859-1?Q?ouAViNzOqXYEIvl1rVTOHqfhmlCFH5F9oYaqXoSVeHH52x7iyFybUSJhh2?= =?iso-8859-1?Q?BO88j37JSPabiMKzc8pikj5qb69LnpGjb5iuVIukOIsStgH/wLMEvjeZzc?= =?iso-8859-1?Q?1vdm59mqLlYB8Cftc3APU7qsSPTuNSVJyPB/XzK+03iwKf84WbUDq9xq3M?= =?iso-8859-1?Q?ltkM8egFayhhSia8w6A+SfKf5JzKm2MXFq982gKIQshah7+ONAC66/4c2w?= =?iso-8859-1?Q?otOX9QwD4zf7pS8dCgh4zx6zyFe+kIFRU+8BGeEwKeu/1zDlUasaYaqKxT?= =?iso-8859-1?Q?nS2zFaTl6+caalR9CNqhTgo6BOBE1F5aWi0W4n/JUNUU5/ztFwnEwAEKp4?= =?iso-8859-1?Q?1PeCZJH5Nk7mq5cJ9Aer3ViOmOUE2aZHcfT7ExDiECqtOOx2DA6E3R22m9?= =?iso-8859-1?Q?6a3NoqOe4xio+uEgPNlk9sZxbAGZRcVIuIG7bPtLT1vNWU6fHkgHhkTwu3?= =?iso-8859-1?Q?Q8vBQAtTjmWsURL6hyNrZuY22KzMadFDAznuZqFTyOPXdZHBuqPbFbZd72?= =?iso-8859-1?Q?nrdOJ/Yol3UbYx0cYr2TW5zzxg/V+eaNkPuLVG0G7D+K0V0T/0HG8kWKJ4?= =?iso-8859-1?Q?iYjJI6WP5j2n/Za8FC/570T8YwRsXpmOclS46y6RVAuXqtPyx1sNakVXI2?= =?iso-8859-1?Q?n+tY3hrLoFAH+/cXacP997nnAWF8eWANbsQdyIayaheO6o9beZyHEDuC+O?= =?iso-8859-1?Q?+ddW7whKnSaH7U8Z0cAfe63VXAULOXQsISJZKzvRQaMoTHEnmTxsNc+XcZ?= =?iso-8859-1?Q?+hUwogVwLfUITE+bXh7LFojrPUve+siFLEGTwXiSIgBAlJ1/PUfsSk1BNx?= =?iso-8859-1?Q?l1Q7TMOYKbdhnbz1aV893ccFWXlXG6w+H6pzr1BIlpIIQS4IBKGv2sa9QR?= =?iso-8859-1?Q?DM6xtMmWTjWKu4Oewq16rGAUvXV6k0qKVHrdp7WhryeQ=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR08MB10202.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7466 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB1PEPF000509F0.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: d5f8c781-b219-440a-74e9-08ddb562a3bb X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|82310400026|36860700013|14060799003|35042699022|1800799024; X-Microsoft-Antispam-Message-Info: =?iso-8859-1?Q?oBTK4ii25/mGDVUL4XYOjRNmd12LrbAwTSFqQvsHBfwkMOvYOu2BFoku80?= =?iso-8859-1?Q?X30tX50/83SjvtbHQU1MHKF4GmOgKac7Ha/kz0PMyWSU0M0pnpP2gbKNTb?= =?iso-8859-1?Q?MIdQxKQxbqmbBUyKP3I5WRKrIuXqhIEJfKT/aWihHO+vGEK+XuFrBdjOjH?= =?iso-8859-1?Q?EzUVzNhYnfCUcPrqG3psm+gIgFasx1j4p7AbNAkSZgQORDse3WUJT9ohd+?= =?iso-8859-1?Q?XUmsc6NcZEFrqrSwI1g1U/y5Hqavb+xsTgRoqphmA2xQX/GpsaZSpqTWQ/?= =?iso-8859-1?Q?jfdYD3D2L+5kafRbcjW4pA9BCvkZRZXZsZdpzKQooUq92qvXXMyzEjVnFP?= =?iso-8859-1?Q?Y0S/GA8pwLj111WrtfHA7LkCawSDYq5PAY14iymp4E/EFaZ+UoMiNibpUX?= =?iso-8859-1?Q?5RCgzzOFQ9C1AgqcCjqCy5w3t1acbLvACBiHSzD2vc0DMs75WkHrdq+e7R?= =?iso-8859-1?Q?Zs62a8ohUUoquVYXzhVaWDk7mM8UxU69UNAs2QD6AyWi4Todi8juCJr6Rb?= =?iso-8859-1?Q?Q7OGey4DLtUFMZWh5FslZ+ftWSi0VNVLlkRmuAchxxvgxoIMgviwYMfiG8?= =?iso-8859-1?Q?/afv07STXWS/rr9ZKjF1M0yAQVyniwLoV1kH7MEcXrmHiZ60NqybeKUfV9?= =?iso-8859-1?Q?WAhUxqxzhZgaJFDovMxY2wsuwd7TXfbEmcTYel62f9HgbC9m5QkytzBI4l?= =?iso-8859-1?Q?4FuDTh/cFsbMVYYImBOseYVcAHlVXpGbGqz1etltoa9bYvkP498XtnoyF3?= =?iso-8859-1?Q?sz5HhiqVG5AAlE2ownPI0fkv+sSQ0pGe5fAsIo0LgfJBeSD+r2hISb39+w?= =?iso-8859-1?Q?3gKq4I3sAol86rHlJQdzQjQk77zUdW23NVRfEylZ5AF8HkavrJT3ZTJy1t?= =?iso-8859-1?Q?HfRQOMduzaVSdUSuIGYe4kUdZm24kFkk8Wghn0UHza3tEVb7kBqsXw0Bl0?= =?iso-8859-1?Q?qI+Kyu4OCQxMJbfVR9JLgsm3Y3aEsBP+uA6xkp5iIg0N3Uy7fEolo5ei1m?= =?iso-8859-1?Q?MJpy7WnoB4bol/8KxinlP3LlX2Yf56g0sHiyauf986MJzTU0LYqGC2eU3F?= =?iso-8859-1?Q?s1kOvYwZEdHxwwr86bfx8OszjPC1rxpLsTIuCxlURCCv5j3rfEkvV6Plv4?= =?iso-8859-1?Q?thj8nphWmra3mndDeDu3qBAtnoKRRxc6X/LlEsx0a3LFZ48rb585awKkzZ?= =?iso-8859-1?Q?SSIB9PF93WgdI2O1LFxToJfWOIFxmaiEbdVenc/13Y/mkWo4LvmX5ssbFe?= =?iso-8859-1?Q?pX3BwrgdF8N9EOYigTNMz70j3Qd3guM2MAF25JrOTRDiAz2Lus28RKahgs?= =?iso-8859-1?Q?ilkJDC2vH0wqoU4xLms8oz9c69bLwwrGgi4ld7apfEFGMy6QV0dhS4yMJu?= =?iso-8859-1?Q?c1joMbnapK+936YE1xs8PRzyddn3PFJUT9ZMEaeuX/xL4DZfseB0jIsCo/?= =?iso-8859-1?Q?0KExrozWJSJTziOJ6xwJGRcVsUnE6alvbRHssHLUkOSTlEOIn9iHt7jYzi?= =?iso-8859-1?Q?QZ0/u6N0FN67r+8kTG/ACQ1QGSIu+M390vJsV3Rm5SguyW3IzExWXsDi0C?= =?iso-8859-1?Q?979vAs9/OAQoa217TtXzTrD9S6t9?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(7416014)(82310400026)(36860700013)(14060799003)(35042699022)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2025 10:09:33.9961 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 175c138b-4bc9-42a4-ac8b-08ddb562b72b X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF000509F0.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7553 Content-Type: text/plain; charset="utf-8" If a PPI interrupt is forwarded to a guest, skip the deactivate and only EOI. Rely on the guest deactivating both the virtual and physical interrupts (due to ICH_LRx_EL2.HW being set) later on as part of handling the injected interrupt. This mimics the behaviour seen on native GICv3. This is part of adding support for the GICv3 compatibility mode on a GICv5 host. Reviewed-by: Lorenzo Pieralisi Co-authored-by: Timothy Hayes Signed-off-by: Timothy Hayes Signed-off-by: Sascha Bischoff --- drivers/irqchip/irq-gic-v5.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/drivers/irqchip/irq-gic-v5.c b/drivers/irqchip/irq-gic-v5.c index 7a11521eeeca..6b42c4af5c79 100644 --- a/drivers/irqchip/irq-gic-v5.c +++ b/drivers/irqchip/irq-gic-v5.c @@ -213,6 +213,12 @@ static void gicv5_hwirq_eoi(u32 hwirq_id, u8 hwirq_typ= e) =20 static void gicv5_ppi_irq_eoi(struct irq_data *d) { + /* Skip deactivate for forwarded PPI interrupts */ + if (irqd_is_forwarded_to_vcpu(d)) { + gic_insn(0, CDEOI); + return; + } + gicv5_hwirq_eoi(d->hwirq, GICV5_HWIRQ_TYPE_PPI); } =20 @@ -494,6 +500,16 @@ static bool gicv5_ppi_irq_is_level(irq_hw_number_t hwi= rq) return !!(read_ppi_sysreg_s(hwirq, PPI_HM) & bit); } =20 +static int gicv5_ppi_irq_set_vcpu_affinity(struct irq_data *d, void *vcpu) +{ + if (vcpu) + irqd_set_forwarded_to_vcpu(d); + else + irqd_clr_forwarded_to_vcpu(d); + + return 0; +} + static const struct irq_chip gicv5_ppi_irq_chip =3D { .name =3D "GICv5-PPI", .irq_mask =3D gicv5_ppi_irq_mask, @@ -501,6 +517,7 @@ static const struct irq_chip gicv5_ppi_irq_chip =3D { .irq_eoi =3D gicv5_ppi_irq_eoi, .irq_get_irqchip_state =3D gicv5_ppi_irq_get_irqchip_state, .irq_set_irqchip_state =3D gicv5_ppi_irq_set_irqchip_state, + .irq_set_vcpu_affinity =3D gicv5_ppi_irq_set_vcpu_affinity, .flags =3D IRQCHIP_SKIP_SET_WAKE | IRQCHIP_MASK_ON_SUSPEND, }; --=20 2.34.1 From nobody Wed Oct 8 13:27:04 2025 Received: from MRWPR03CU001.outbound.protection.outlook.com (mail-francesouthazon11011029.outbound.protection.outlook.com [40.107.130.29]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 10D40296169; Fri, 27 Jun 2025 10:09:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.130.29 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018982; cv=fail; b=kudVQKaN31apussIDt/Yfqov26qQZuskto4jnoN6qzqV8aMBLt8OhxejdI4Rd759327I8wsy68hyVxeg3wNEwvPPV3WYOk0kDThEbLNbEwo7x2yHxcq7lAhNv7vMs37pidutnqQJY6PMVUrKzaXpSTvLyXm+R21nxtugVvweNLI= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018982; c=relaxed/simple; bh=eqtADKyJ0JMnDHZuz1Uf8yI6qvIyqbDOde29Su87xsg=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=XPn+5BYrefJ9yiXgxOfxaLdBiT8Hf3qPm3QXJZMm9EsHbyknZoN+ws8rq/Nfls13WFxU5IBm9JAp2xWiERVx1zBCiuzZhRdE62EapIvFed5ydC4fmDl4d5WFpjx3PNC9+2tHj873uWlfkmHoACgu3+7wZz8meQ2b/SAyxJ84o2c= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=LNHXc+1m; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=LNHXc+1m; arc=fail smtp.client-ip=40.107.130.29 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="LNHXc+1m"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="LNHXc+1m" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=N0Lfm/QaXo8laFOmYITooxFGTefKHfJ5gq+9tjir9Z1J0VMJEe2HjymJdZCyBr9uCNuXS90W+LMxnOwE/5MdbGC34UxMjeucP9u8ZffOSBsprla+1oI4LIQeYZf4Tvi1CAQwocDsexJwbsv5wFvcXDbGj516lgmYPul2mwwSvxQKWMZ+E1Qhodz3gPE678PnMvXQX4t8kXONiHKG98VWMzSZek1ZIj4zJ9Q4aA96smzIqiZ481VFupmwwoWicPp26NiUpXWNRNHg2ypJa0YqS7K9jlKa+inH4cD7l02JHIUjnHR0g8O4x/6DKrLEoGEnwusRcCwt4TiFkRMuE45URA== ARC-Message-Signature: i=2; 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=fF0ATQHd0BxM0xFGeqcvsqseQZYzMeYU6cMt6UkgLok=; b=wqlamt2R5RawNjNk6myO13jnny9RVUJKU3aYB1m/jb89bURjyGtwrk365PX3tHW7JF00u5yHn6ory9CiVsNwbqFU/w53htrY85Mw5r+FIJ5QibVePZkfBx5tkQuhnoyJ3oSrP6031+uVQeI7qhDpuKtCtKiT1WSadbelpIzgkxLWgEumVG/bs1KlLQ2xMo52aUNXSuOOe/32fDlE3pbdIT1+vrdXcmwHHHiCQoeWcnjlY2lMGe+c8g0tNsfQXaDv6uu8yKowfhqZo1B+f6VIC9e+Tr95k20K79Y1kI2jXhWEqmr7klBWayXODMdJTldKT7WZGhkZebQEfuU6CYeBIA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.infradead.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fF0ATQHd0BxM0xFGeqcvsqseQZYzMeYU6cMt6UkgLok=; b=LNHXc+1mBbQS1BWMVHyeqiqL4KNWBGWQQC1Z60K9l7rqimI1sXwro4Mc0VRwfrzHlMhD6zoCOuXV7Ut5PnrR/FtMQxJAcudXjbE8NSesGlUFTPxnx+9W0QLSbpNaVAlArQLS7zEG1pM4BVHnxP+on7WuuZbtKlxZwy1AG/mV9wg= Received: from AS4P251CA0013.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:5d2::18) by AS8PR08MB8111.eurprd08.prod.outlook.com (2603:10a6:20b:54d::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.29; Fri, 27 Jun 2025 10:09:34 +0000 Received: from AM3PEPF00009B9D.eurprd04.prod.outlook.com (2603:10a6:20b:5d2:cafe::b) by AS4P251CA0013.outlook.office365.com (2603:10a6:20b:5d2::18) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.23 via Frontend Transport; Fri, 27 Jun 2025 10:09:34 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AM3PEPF00009B9D.mail.protection.outlook.com (10.167.16.22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.14 via Frontend Transport; Fri, 27 Jun 2025 10:09:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ER7dDN6bwwa8QvUsEPgvvvCP6bVnxQVrPwJnOOss2IUgCrtsssLfBWuPBkLaizO052m4ejubG9MpsHMyd+/k107lRHsRYQiIxVLCkZTAS7IoQndVGhrq62iBPtlbOsLYWcdh8V1uZ51X09XXfOpbr+hq+A4NTl51dJGLEjdr3PSCm+gH/jg/3+n8DaTpQR07k+TRM+/4Vg2OvkFjtJkwNp1d/rip187tv8Qa53ZWL5ysCQ6yERIvlCbgtDkvqYsaZLzr2975F2PvMQn1T54vYv7M5TSUbhR33dR+O5ibQAHhlun4jYZqG8s+JYJsSAqkAiV2g7vkdUS4KadpzkoBkw== 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=fF0ATQHd0BxM0xFGeqcvsqseQZYzMeYU6cMt6UkgLok=; b=HU8Spy+cujJz/OzbCj+Rwmt86Iyy+2N6nrNoPxErKYekdRwgbjSi7814jDTaBuVQnSPkt5sUzD9QsQAxypZx9R1nGBAQtfu0p4nK08tV0mKvdTwU68iqwXbfLYkh8la3CvoLqxYAz+/+VXvul6bqNHD5vUKYMp43mx95pRQGPv8agaRFtJbFnAg0as5Wt3vJ5gHOf4K818EHdA+AxHUqEGWV5wgSAStxwL2rkmzIt99quxKqjNuDk2ierGbHR1tZD+yDdhdp92soVTadMMPcU6kJmx32Zu/nPOC0HqZ0vx5jzx2mJyfmyB0dihAyuIYF7BQhaSqZsx0W6c1eZkjX2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fF0ATQHd0BxM0xFGeqcvsqseQZYzMeYU6cMt6UkgLok=; b=LNHXc+1mBbQS1BWMVHyeqiqL4KNWBGWQQC1Z60K9l7rqimI1sXwro4Mc0VRwfrzHlMhD6zoCOuXV7Ut5PnrR/FtMQxJAcudXjbE8NSesGlUFTPxnx+9W0QLSbpNaVAlArQLS7zEG1pM4BVHnxP+on7WuuZbtKlxZwy1AG/mV9wg= Received: from DU2PR08MB10202.eurprd08.prod.outlook.com (2603:10a6:10:46e::5) by PAXPR08MB7466.eurprd08.prod.outlook.com (2603:10a6:102:2b8::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.28; Fri, 27 Jun 2025 10:09:02 +0000 Received: from DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31]) by DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31%3]) with mapi id 15.20.8857.026; Fri, 27 Jun 2025 10:09:02 +0000 From: Sascha Bischoff To: "linux-arm-kernel@lists.infradead.org" , "kvmarm@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" CC: nd , "maz@kernel.org" , "oliver.upton@linux.dev" , Joey Gouly , Suzuki Poulose , "yuzenghui@huawei.com" , "will@kernel.org" , "tglx@linutronix.de" , "lpieralisi@kernel.org" , Timothy Hayes Subject: [PATCH v2 2/5] irqchip/gic-v5: Populate struct gic_kvm_info Thread-Topic: [PATCH v2 2/5] irqchip/gic-v5: Populate struct gic_kvm_info Thread-Index: AQHb50uBQ+TR0rqMf0qls1RTKMQOQw== Date: Fri, 27 Jun 2025 10:09:01 +0000 Message-ID: <20250627100847.1022515-3-sascha.bischoff@arm.com> References: <20250627100847.1022515-1-sascha.bischoff@arm.com> In-Reply-To: <20250627100847.1022515-1-sascha.bischoff@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.34.1 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DU2PR08MB10202:EE_|PAXPR08MB7466:EE_|AM3PEPF00009B9D:EE_|AS8PR08MB8111:EE_ X-MS-Office365-Filtering-Correlation-Id: 2a68b94e-00a5-4080-b324-08ddb562b755 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|7416014|366016|1800799024|38070700018; X-Microsoft-Antispam-Message-Info-Original: =?iso-8859-1?Q?8gp7lce5/H66xl/5VkELmF7+M2VXq3/PmIyjP4mv8mVMossjbJg5NGj7BK?= =?iso-8859-1?Q?NRxg1kwioGUPrQTHMDyMsNJUYABkbW2L/kIm20qdrtTB9+fq5DCeRleovn?= =?iso-8859-1?Q?BWaHQpzJbL7xeNDGW2bultkjM1jetA34ZknNZq0rWOpB29o0/8ocHlp4n8?= =?iso-8859-1?Q?YNFgPYzTHTmaOJEmL43U3UUs9k/M48LH8p9ipuQOLIa2rEi+1g/2JilADA?= =?iso-8859-1?Q?gv2RA/UNIcOjjhukJGx+454fHC47DXtrJd3J6Tn3RC9+7QBBXvc0HLQTaw?= =?iso-8859-1?Q?jCe/eNjtGA1YtWo4u9STu6CEfr9V6ZQibcqMXfmUP9Mx6RrooU/J8A6AcD?= =?iso-8859-1?Q?4n121TBIVsep8S6A3P8gRkZhRV4PW4L4Yy5laWq/g9ryhw19gpIXXUBdVB?= =?iso-8859-1?Q?fGnUmeFZy9qPVClpcKi6sSUQWAInodrc7F93+cyxUCsdmUQuzljwosOodc?= =?iso-8859-1?Q?lML+mJnTNKJsv67YVu3nEJKs1po4FbdAXmasGQkfG2p214mzRU6qzkvVZR?= =?iso-8859-1?Q?5VzsYd2GiO0yLJYwb575FNtStnWNZOcNpzWWv4mHlMPVhBzuKNHNrduKdk?= =?iso-8859-1?Q?VwjreVoT+zkDJKqqfczFQf8rpgLKT0sB476IPEBx7jke6zLAAG9OyhUg0c?= =?iso-8859-1?Q?yYDzGSkQXECEzWMsjW0ROGmjieJh30+qLj4EiEvgi7kNU1gLLSKhRGjIvc?= =?iso-8859-1?Q?L80hwhNaKeaayqXvgrgF9OE8qnw5Fi4l/a2tC1GCPqXhibiyw5gP1HJ9fa?= =?iso-8859-1?Q?KAtSYRZs8UfC3v6SsDJII0e+30kVTNv88y4/eKfOIoOx9DWP27ciJpoQA7?= =?iso-8859-1?Q?sBO9Jqa8wLDljDvzAJYeee8WrOw0cQ7b67/QNs9RFjhHR3hQVinSHjeM0/?= =?iso-8859-1?Q?MAQQL7Vsrbdn7jEdLx1Wcb8I7lKptSwu1yMTdaitJTQzMZyQiI+ZkyN4PG?= =?iso-8859-1?Q?yR6m86BVer57HUNb3qp1ZNMrKlNoPgShfx4F08shwqqJljRaa5C6xMHubM?= =?iso-8859-1?Q?9tu4VwmZIgH1y+Z5eG/FU+d/NLckWMrOevNTYGKDO/WjjEoTrcCfooaIVn?= =?iso-8859-1?Q?rs4xFWy/vlCK6kwGpUflPyFxp1TqJqC3294dXw30rOvMd3E30ST45yEA1a?= =?iso-8859-1?Q?x7lfwCdV9dQihToUa6HrQWfgmLsirI+0pOD2QaMdmCb7Unmbwb6jIeAG1R?= =?iso-8859-1?Q?NIBZi4KOguDFcQisCDCGtGKptZ0FFgpZ1fiiMrhpz+Lz0VN08zfRYfSAZ2?= =?iso-8859-1?Q?5mrUStysSisIjd+3CWJUwRO74SLO2KKb/4FnZN8jSjmTg+q29kLT9KyhbA?= =?iso-8859-1?Q?Y0qOor8zO8Eke9lQLn7FT+gsEjO1XPUxrAQ4B5O7maXILFOc4tvnVZ4jXn?= =?iso-8859-1?Q?xw5XIQoPIXHdE+6b9HyUKmqjMG+UQ+1AA0jqI9onsCrUb91kPOCq2Jj94a?= =?iso-8859-1?Q?P8CrLx1ONWx3luQSAQuyoAXRBeHzqC4G6Ynwh10iYP6dGyLaGz7cMswSgK?= =?iso-8859-1?Q?O4DmQx7i/LQyS/q9KsR7BFo7Mmf4DG1WVAELGsIDb0sw=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR08MB10202.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7466 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM3PEPF00009B9D.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 93eaf7a0-4229-4ae7-68f8-08ddb562a415 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|36860700013|14060799003|35042699022|376014|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: =?iso-8859-1?Q?zQ1qq7tSR8wQLom4kFuju8RL18rvnF1Mm1UwYCO7wEaGeIDuJVyosdRJcT?= =?iso-8859-1?Q?JW1vMYmV6MmT3XDEQtXOt9r1+wO55sfsjzTZgb4lQD269Kn5V1OeNR/PpV?= =?iso-8859-1?Q?Rv5tY1fhPr8pf6VKasVe7XceoDyq0Z15b/7Rm1CPkFFwBHhpJXnQiTl6L1?= =?iso-8859-1?Q?OCUR7KeLvvgfBxD3drpsmqk+1l2CU2pV1fO3fMLnK2mopywVuIxu5rHHZ5?= =?iso-8859-1?Q?TA5C5bhHeL9hWZ5WCth75YBG/by72W0tX9LEC2X1uo5SPQxPptfkMpsc9d?= =?iso-8859-1?Q?Bo/MUXoaN1u3xbfB4CypC8puy7Zd5fnB0m2fYJWhljVSoNYUJ4gKQDqEy3?= =?iso-8859-1?Q?bD1TV+gJ0mS50JiSdqOZ5ZVKND4HRZ7Ihnusou7ELLB+UzMu8sRp4OjFBq?= =?iso-8859-1?Q?7WN+2Wq30un4BvjnOoP0DXBbaU+sVT1efGqbXng+3UrbrvxrjCzCCeL2/l?= =?iso-8859-1?Q?YvH7wSuaBIgwIpTMEPHMeYtipLVY5XTtCV7Ud/bEp4vlGIa72KniTT+6zU?= =?iso-8859-1?Q?YZJTEcL8XrD05YHzZKUExtBlEooXJy/vQs3edbdZjXuoV0ytNB0eDCpw/l?= =?iso-8859-1?Q?3HKh+iU47732/EIbMXJKBqNcthWb9vn9txbtBbHtXPK4V2lx3Ih//Y4uNY?= =?iso-8859-1?Q?gk6b57deocJ1HiJc0CcbIXgNMBTxr9jhXZGnQclVcAIv0yVcDxIxci590G?= =?iso-8859-1?Q?obqrRAGJ6Hf7PJdgHtIrrTbVMb0MzSfQ0sOIEe5iIb9nA90c15EBMso5kW?= =?iso-8859-1?Q?gOGCJVUl9Yka+yAjhtTKf96D51alEA0MhLjOAA8kKQqw34ftAOHiMHyswC?= =?iso-8859-1?Q?S/AEz0nf2r2d+1fxFjuTBu20o4v49qXnbsIAIWZw4usbfbTF/1nufmddDM?= =?iso-8859-1?Q?vmHpISDd7/d+0uLh8ya66ll0l8cyXP+CZaYCfGj2K++FIjl8cKDoW+JUMi?= =?iso-8859-1?Q?zQ5yreVqbptoDX+uPTCpxVNnB5SiRvz1QbB1njOAaVNh7KjRNkoaxyIsOk?= =?iso-8859-1?Q?6Kc/omNHYaMh1xnMHBAd1dDQHLuVAdG94ML20eeMvGHRydafPOVEYf4uLv?= =?iso-8859-1?Q?pznp+qXly/XtFDTTrq2wwXAHYj5OTtx95PM7hl9VOfFi4XVkOAFcE/Htlx?= =?iso-8859-1?Q?OmdFvv6jeNiiq7KAmuSWLt7SNbfvwLotZUhcnioKPlRvfFTRsIWk8Et47p?= =?iso-8859-1?Q?UZd/O8HXNvukszrQPRe/mv8fC34PjAoIqC0kQF332ZrcLK+G8XtkAleIon?= =?iso-8859-1?Q?FNmc2UkBWuNcqR9cCzo/4twm5yy9eNvtiKNzI2tzfm1K0Lyqeih3HuX7HJ?= =?iso-8859-1?Q?Lxlvl3UWCHuWORIunyzy5VZwnjJTOkBUtyvDOsUhq2qTvva0AGiZolwNxE?= =?iso-8859-1?Q?EWCQHBdpUElS778eVPTGYSnpR+1oK7hCV1eTHld+xid1KGDzkfK9XLe5jm?= =?iso-8859-1?Q?Nbq8WPLIvZZBIExT41moG64V95K6QGdmLClLDDL4Uw23Xqzf55ZFWOyZaN?= =?iso-8859-1?Q?JPtcxQo3Kxg1TD16TVV2ymdEToGK7WpxkptCBXlTnigbsFHskxkm7rExRf?= =?iso-8859-1?Q?BRWXnsFF1/On2nK/7zSpXNr/4yAQ?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(7416014)(36860700013)(14060799003)(35042699022)(376014)(82310400026)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2025 10:09:34.2859 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2a68b94e-00a5-4080-b324-08ddb562b755 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AM3PEPF00009B9D.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8111 Content-Type: text/plain; charset="utf-8" Populate the gic_kvm_info struct based on support for FEAT_GCIE_LEGACY. The struct is used by KVM to probe for a compatible GIC. Co-authored-by: Timothy Hayes Signed-off-by: Timothy Hayes Signed-off-by: Sascha Bischoff Reviewed-by: Lorenzo Pieralisi --- drivers/irqchip/irq-gic-v5.c | 33 +++++++++++++++++++++++++++ include/linux/irqchip/arm-vgic-info.h | 4 ++++ 2 files changed, 37 insertions(+) diff --git a/drivers/irqchip/irq-gic-v5.c b/drivers/irqchip/irq-gic-v5.c index 6b42c4af5c79..9ba43ec9318b 100644 --- a/drivers/irqchip/irq-gic-v5.c +++ b/drivers/irqchip/irq-gic-v5.c @@ -13,6 +13,7 @@ =20 #include #include +#include =20 #include #include @@ -1049,6 +1050,36 @@ static void gicv5_set_cpuif_idbits(void) } } =20 +#ifdef CONFIG_KVM +static struct gic_kvm_info gic_v5_kvm_info __initdata; + +static bool __init gicv5_cpuif_has_gcie_legacy(void) +{ + u64 idr0 =3D read_sysreg_s(SYS_ICC_IDR0_EL1); + return !!FIELD_GET(ICC_IDR0_EL1_GCIE_LEGACY, idr0); +} + +static void __init gic_of_setup_kvm_info(struct device_node *node) +{ + gic_v5_kvm_info.type =3D GIC_V5; + gic_v5_kvm_info.has_gcie_v3_compat =3D gicv5_cpuif_has_gcie_legacy(); + + /* GIC Virtual CPU interface maintenance interrupt */ + gic_v5_kvm_info.no_maint_irq_mask =3D false; + gic_v5_kvm_info.maint_irq =3D irq_of_parse_and_map(node, 0); + if (!gic_v5_kvm_info.maint_irq) { + pr_warn("cannot find GICv5 virtual CPU interface maintenance interrupt\n= "); + return; + } + + vgic_set_kvm_info(&gic_v5_kvm_info); +} +#else +static inline void __init gic_of_setup_kvm_info(struct device_node *node) +{ +} +#endif // CONFIG_KVM + static int __init gicv5_of_init(struct device_node *node, struct device_no= de *parent) { int ret =3D gicv5_irs_of_probe(node); @@ -1081,6 +1112,8 @@ static int __init gicv5_of_init(struct device_node *n= ode, struct device_node *pa =20 gicv5_irs_its_probe(); =20 + gic_of_setup_kvm_info(node); + return 0; =20 out_int: diff --git a/include/linux/irqchip/arm-vgic-info.h b/include/linux/irqchip/= arm-vgic-info.h index a75b2c7de69d..ca1713fac6e3 100644 --- a/include/linux/irqchip/arm-vgic-info.h +++ b/include/linux/irqchip/arm-vgic-info.h @@ -15,6 +15,8 @@ enum gic_type { GIC_V2, /* Full GICv3, optionally with v2 compat */ GIC_V3, + /* Full GICv5, optionally with v3 compat */ + GIC_V5, }; =20 struct gic_kvm_info { @@ -34,6 +36,8 @@ struct gic_kvm_info { bool has_v4_1; /* Deactivation impared, subpar stuff */ bool no_hw_deactivation; + /* v3 compat support (GICv5 hosts, only) */ + bool has_gcie_v3_compat; }; =20 #ifdef CONFIG_KVM --=20 2.34.1 From nobody Wed Oct 8 13:27:04 2025 Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazon11011069.outbound.protection.outlook.com [52.101.70.69]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9479229AB11; Fri, 27 Jun 2025 10:09:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.70.69 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018986; cv=fail; b=ExcFC0lVEoxE/wgbLyL8k6DDwLAedGBfhF0Z6/mqO0xRo1ZOpIz27j+8TQsuCGPcRmi2l3AYX+yYKYJqq+/h3nDBRJW4pZ2kNM+WghtHZ4JgeWq3fJp/2RQm3Zfk2JYAcMr0gs7VOzyLc5mATZeb9Asj/EkSQ0RrBFpbSG931vs= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018986; c=relaxed/simple; bh=6T3zU3ykp6ZocYmSvCsnBk0vCpzvDHlAo7DUvticcFs=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=GfslJWgKSjrECVm4rbj09rbdIoTxPnaJ3ZCzf3f+KeLQLBpCdxm7aVlpCZfnHW2lg3JyfmfA7ITH5BcBBgep5hMaBpLK6NQkfOSyJ7YofFKmEWDxUGh3FD6z6r8feJVcyGyiDJQoxZueSqCW3K2FbehIcV17PRU6+oxAOmIem78= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=L6P2HdBE; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=L6P2HdBE; arc=fail smtp.client-ip=52.101.70.69 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="L6P2HdBE"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="L6P2HdBE" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=Rw22Urmuwh/x1HtGkBN3LtMFcyVMP40svwGUTbU5WDjN8d2W6bqj8KI9Ml554DICuO8pc8qmBjgBOVjt+GbQS6Spe/0OU1c+kfAdVZFU1ClGjA/iJ7ED7eOR2Zx6l352YDPPMY46/Dkk1acjCOhodW/OGcRdssd7o3E0LKKaonk0YTOe78YEM8kMTqaRy73dy0iuGCr3cMuKShpJ5ZEXaMOYfd73RE5QL+C36+wToeLW1E1w6WRajdlKEksqhqBbDUQVU82+cfJKHTDghTVxP2NTb8HZOCxne7KDpj24C4oy1AG5280FnNutrtTHyG9Uqy2qTPxFABPCvP72mc7k6g== ARC-Message-Signature: i=2; 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=1dw68NpwQR9fegNGtN3zsHSuLn+pyiAshEG2fMZT/ro=; b=FEO6PXj5jm59aOGYI9JW4S6qgHFr82ZdIqIreaiGiM+jh2pG03ljUbj9ykGY12pR21SkvF/dPyOp56G+dQj6fmFMNuyOZZARjeFETRyRYL1k03Ogy3fERL+9gmKB5BO+3SNHNTQzQLPIBcb47nFDG0yirLtFX0/9sV1irvjF66WQdRtn/pfYSC4dWdD7TrjnPX+jmRDud7PA9I8mmP2qqFUq5Fns0XzUYb2iTrZmsINq6LFOOpYFylkKUYTEPM09ohZEUhBnUdIYG2TwggHbgRYzHrHCg67XmUkupZ/eLRXMCORNbKhPdkCbkIbzb3eIE+hufmsY0JTT5zJk88qsNw== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.infradead.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1dw68NpwQR9fegNGtN3zsHSuLn+pyiAshEG2fMZT/ro=; b=L6P2HdBEWzu+ZM55zt4B1Sp/oEeojhehdXIaAyF5gbeKSW01lcHqthNACRqxWn+cYxUD6i8vEmE5yW11KXEezT936V86xTYf8u6hCfrX134shxCi6YO0uhE21YXujT/5p4AONbG096JMnOKaB/xc0ay8LgvQtNu5qu9Y2xqGbDc= Received: from DB9PR01CA0007.eurprd01.prod.exchangelabs.com (2603:10a6:10:1d8::12) by GVXPR08MB7895.eurprd08.prod.outlook.com (2603:10a6:150:17::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.17; Fri, 27 Jun 2025 10:09:36 +0000 Received: from DB5PEPF00014B95.eurprd02.prod.outlook.com (2603:10a6:10:1d8:cafe::a3) by DB9PR01CA0007.outlook.office365.com (2603:10a6:10:1d8::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.23 via Frontend Transport; Fri, 27 Jun 2025 10:09:36 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by DB5PEPF00014B95.mail.protection.outlook.com (10.167.8.233) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.14 via Frontend Transport; Fri, 27 Jun 2025 10:09:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Dj0yP3+8KxOp9NXM2kVWYS5PNZkZYH1zozDEzE7kq2EeQWBGDquFlFAXpDroEuIfEarbk3VgzFzU0C24w0amRVyQtYDNzcmI3qQyY6sCmSSTJ6hmv1rsy018bfCsfh9yDVKGUb4Y5dR+l3hYW3yoJCJbZuqccoqk9AuRpHcimnfMSvlYU2l7OaSkH4SDFanyajr20+YYadBsoGrD+9L6b4uMJbz0+/6VG0lXZJz+YHG/ek38TdVbyIy8fnkc+Kv7EDUweJUAhaTEOxL+4VeYB9XQfQk1+n3sBRiKSF9xRb7ssA4WraycTogFBoCnFUkFEBSLP8s6qC5UzsTVnrgbaQ== 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=1dw68NpwQR9fegNGtN3zsHSuLn+pyiAshEG2fMZT/ro=; b=i/fBcGnOuwCrcJWvdaE+TCiIKziT0adV1bYrckdXXkbJlHimie2R+xpmRyeI1jp1yqWOvc1AB+OA0FdHCHhS5LfnKwlThPzR78Vl/x6A8vDTZGoXm0G5/cJa/hPH+JPyiLyejQqjpfvJT7S/71HgymheeyYjF/lPEmSncMkdsWdci5g14mu+wCIM6Hwdpl4M8l2rZ8eVMhpX4GncVd59lbivMwGihLZ5aaevUd4umixGO8tcRf+7VedKOHx1NS3TEsqThIZ5vUYhT+xhorVcbSrgOI4JSlXXvDu2I2BDokmNBoocMKxMQPVGpK7XGg4l2vIL2QQg2f3cFG4fnNlnqQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1dw68NpwQR9fegNGtN3zsHSuLn+pyiAshEG2fMZT/ro=; b=L6P2HdBEWzu+ZM55zt4B1Sp/oEeojhehdXIaAyF5gbeKSW01lcHqthNACRqxWn+cYxUD6i8vEmE5yW11KXEezT936V86xTYf8u6hCfrX134shxCi6YO0uhE21YXujT/5p4AONbG096JMnOKaB/xc0ay8LgvQtNu5qu9Y2xqGbDc= Received: from DU2PR08MB10202.eurprd08.prod.outlook.com (2603:10a6:10:46e::5) by PAXPR08MB7466.eurprd08.prod.outlook.com (2603:10a6:102:2b8::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.28; Fri, 27 Jun 2025 10:09:02 +0000 Received: from DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31]) by DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31%3]) with mapi id 15.20.8857.026; Fri, 27 Jun 2025 10:09:02 +0000 From: Sascha Bischoff To: "linux-arm-kernel@lists.infradead.org" , "kvmarm@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" CC: nd , "maz@kernel.org" , "oliver.upton@linux.dev" , Joey Gouly , Suzuki Poulose , "yuzenghui@huawei.com" , "will@kernel.org" , "tglx@linutronix.de" , "lpieralisi@kernel.org" , Timothy Hayes Subject: [PATCH v2 3/5] arm64/sysreg: Add ICH_VCTLR_EL2 Thread-Topic: [PATCH v2 3/5] arm64/sysreg: Add ICH_VCTLR_EL2 Thread-Index: AQHb50uBf8S0sTTh2kCSK8Nlxbq3SQ== Date: Fri, 27 Jun 2025 10:09:01 +0000 Message-ID: <20250627100847.1022515-4-sascha.bischoff@arm.com> References: <20250627100847.1022515-1-sascha.bischoff@arm.com> In-Reply-To: <20250627100847.1022515-1-sascha.bischoff@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.34.1 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DU2PR08MB10202:EE_|PAXPR08MB7466:EE_|DB5PEPF00014B95:EE_|GVXPR08MB7895:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b0651ad-8f0c-497f-c6f0-08ddb562b776 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|7416014|366016|1800799024|38070700018; X-Microsoft-Antispam-Message-Info-Original: =?iso-8859-1?Q?Cf2qu8eOGyZSk6vdinT2/Vp8MSrGkCKeM4GY0zhjTD4d8JUKh6y46R1kEY?= =?iso-8859-1?Q?LapEk8muP0N04H3bsiiepJoR2zlw4Kc5JaLMRs+3QO/eCteB1JefwYv78E?= =?iso-8859-1?Q?Slu4b8kaFupgjRNKNlHZRpYm/JpnCmFMld71SyxwmRlS2HnpJo8vVulz+d?= =?iso-8859-1?Q?bkMMvuGn0TXWFSbs/SA3yz+B6e+dYiJD7/3N8w/rgtZNEDgdrH8AKxErDe?= =?iso-8859-1?Q?gi5ugJscuDrc6QXU593N9GwDfM9Wfhh0fTD3F1weq9ywMGHdGrF2Exh/UP?= =?iso-8859-1?Q?RVcbjOqWJK3DF16rh/1rk6TiW7CMwoJywhQ4fLxiLSBwNXLF7KkZsbDZAu?= =?iso-8859-1?Q?19PGcw/K1tCuKFB/RpXGqcRluOFzpaA3m8a6oVJ8PtJGAlhE8fz1HUMgJ1?= =?iso-8859-1?Q?wHdLKIXUBU+xiTk8tIvvkRU7SFYfg1MA5S7gEEqlODR4LDN6UBUGHUw1zW?= =?iso-8859-1?Q?ZCkAUAR+GNYo942ZWV6lchV7QDsS4OLmJTIsl00WcjwHqHKzvckYTaONLl?= =?iso-8859-1?Q?o1UEEK8u8MX5x585VupPqMWmww0wkn15D5SbqvxqBkVci8V/aG8w6p3BiX?= =?iso-8859-1?Q?24TpNp2Q3eeU16Vv3mZH19sGG79obQHIsOxLpYoEsz171lXpAYqIhHMTlg?= =?iso-8859-1?Q?rc0K9iZncFn6FzCKJ76hcZxVf651QYAmSrguaNf/dlbSLq4U/9cPrba2ZE?= =?iso-8859-1?Q?hbqGFCH9IIt8Uh/GSyFyTR7chICa5wO69zdMHJtmxCLt+fgbZZVTclacKv?= =?iso-8859-1?Q?qj3mWg5gzCit7xlJCXOfeLRrPf7aIvzM4ijY8WxqhI+IS3BhDg+GeHykNA?= =?iso-8859-1?Q?SqyOkvabBCUNIR6mkQ5A34PsIdJJHI9785YAqXA80usSaoJQmDNywuiEHs?= =?iso-8859-1?Q?9M5XIOPeD+Aw/w/yw02se6T3MEXclyv0GENKao0ter2DvIXsMD/fLW3pdi?= =?iso-8859-1?Q?TvFvYBvqlPnDpH9YkoZSjg1G+eMvnMQ0QFufNlILEi6St+y/RTZA42Ka+f?= =?iso-8859-1?Q?gZjQyOgCvYSyrV3bTFyovys7cUJeAHTEZ8u5maorODmNwIViuj3h6quiFs?= =?iso-8859-1?Q?Ie3AIJkuQuDzVlclWuo+BafNMqUzWTkmycSgYiTg44FLFtcl92NPHAjXyv?= =?iso-8859-1?Q?zYwajtwdWcwQyI2XiXCSoscQp8bjUvQv3T1thseBgKVBffRfUV6x4BTf+r?= =?iso-8859-1?Q?Y2Xvvm61pIyTTcx++JmRAADi/k6oevnjmU991WL/1xD2aDEh5IyY1c9fXe?= =?iso-8859-1?Q?RNbl8NICeWn1qpEGz+UJ5ofwUdqHprlCrM/j8yczTXfElOeVkwSb3Jvsx6?= =?iso-8859-1?Q?F5cOFKIJM2jt8viFO6N/SWvvieMWuQWVwmcxmYsXMUIYHV+MdsEY6rhuAw?= =?iso-8859-1?Q?EeTrYm4UCPqzj7xwRvqhLkJAp0CBCoxaf0wkv+u3hUNTbOPxrbkrozz7E3?= =?iso-8859-1?Q?5hKZXwq4Ep4Bul6VS0Nrg8eFvcR73n0BTEhMkaxKhZJgHEfNYSv9AgKQCJ?= =?iso-8859-1?Q?01Xl5VwPDVkt5lrRAhj8I4iJ3FyejWMjT4cGVqyZxgnA=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR08MB10202.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7466 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5PEPF00014B95.eurprd02.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f6cf9a02-69c0-40f0-9488-08ddb562a43e X-Microsoft-Antispam: BCL:0;ARA:13230040|35042699022|1800799024|376014|7416014|36860700013|14060799003|82310400026; X-Microsoft-Antispam-Message-Info: =?iso-8859-1?Q?HfVvJ4Qrh1zDmAi9i23GAtvsKECp9aw+gMhoFPnLLhM/7y3xD9FQTVBjdt?= =?iso-8859-1?Q?LvJcxP5BGeTfe9m7flOb4ADubVGYcqy1jXY3vaeEJyzVMq6lWVR8iJBydZ?= =?iso-8859-1?Q?PksXlYNkG64HbVLuxV0musW5I+ncT7ByYTmaMLTFjcQ5IwJEl9ZEF6ZbVJ?= =?iso-8859-1?Q?T9RkFtz16NTQeZLlTgFld3qaRk1j6HeiSJ38CG+8AmyqHCmD5ZCHQL5wti?= =?iso-8859-1?Q?zd9yLJprSG7/w04WrjGEd4rtbGTGYtkiDfEudG6q/ZwOHVD8SgvJxW0jDy?= =?iso-8859-1?Q?7o//oLNrZbwcVJ/0LS9xrM2Oig6Mw97VaAy55o9X1OdzCrUFi/b0kDF4Wk?= =?iso-8859-1?Q?/R18nJOwSIUX/3uC6f62szDRJWYkXogB7Ski3JVFsz8qPDgPnKsH570OLy?= =?iso-8859-1?Q?xxANIO9BSHnAnjpbk4Qx0kVblS126/eTK8jdX6KxjpZwo6G+ZO0bsUk9Po?= =?iso-8859-1?Q?C91D+jUeb3teiLSIonOwQw+dRTPMHPtwHqtHviPwieTpwNTdkYQOE/nI/G?= =?iso-8859-1?Q?EpY3KU+6bs1QuIGQNfD+hshfqAu1dNeIqVVusNcl9WbMFWq8n8z1UgDyfF?= =?iso-8859-1?Q?QAjcpIViXsVExaKPc/vymr0CWR4xH2moChFYBiZMKvaesEEsRr3W2qyqTS?= =?iso-8859-1?Q?6P4oCT71EWChinRq5VCBA3TsJfyJZL/Jj/bTvS3eG0mOwQLm0oaQpckTKy?= =?iso-8859-1?Q?ufPPfgukx04cw3F3FUKhT1Xs8eRmVXeaDzdHZdy3Octdhg2va0dGJgefk0?= =?iso-8859-1?Q?Osk6S4Mw6NnZPC8LS4cDPGsFl+DM4ezaYr6r7k8BTyJhoykZVV9x98XZ7q?= =?iso-8859-1?Q?1qjXJqajCYQztaxI9ayMeankzjXhkXbtTp47mt9FUgJBLiTCT2jySjMOI8?= =?iso-8859-1?Q?Wst8RIJ/ewq1DwGQvHMfGMvtLXnFowJ4GbHUVyVMPx7VnJBPQpMDBDNOUK?= =?iso-8859-1?Q?v0G1YyRYzEZ39oigF2Z8gK4xNMUq8xgVcEWr97Sfi09bkjpERBCJxYxtgZ?= =?iso-8859-1?Q?zuR0Fcmn57CRcskRo5NvUbpX6u5b1hu5KaMbAa28fN45jCCpwa4+/Cwk//?= =?iso-8859-1?Q?rZFKUHkQ0Fa2l0E5RkvHUDZV8YC+CLLWe/3FOYt8ZK1/bEs+gqkxBm7rnx?= =?iso-8859-1?Q?s71TK72JBb/6NcaqziQsJXkw9N9CBiTDbGGgFi5DpT7S/lJGAZ89NkDKiP?= =?iso-8859-1?Q?3U0rRyEaIvDukRZYeBoR/4QcFZGd2U4CtwuMO3gWYlMKW9hUhIxYFSFxM4?= =?iso-8859-1?Q?1ZSYKLI9FnbcFVuV84xX7iQ9+bpp4yot+0j1VUMb4FeSZldNi5czj5ELaZ?= =?iso-8859-1?Q?LhyAlWHA/mdB8+kyR/Z9S8RAawC6QRXrufxR7/ojxJs9J6N9OBfPpjZp37?= =?iso-8859-1?Q?5oORN5T5Bh8q0t6ULT9kbpN7UpjRUZ/cj9T2Z/MMFgeEoX5i7B2OvAbODF?= =?iso-8859-1?Q?QfeMiIU6gdCJ9uvytfj8vwMKbhTuQIw1X0wowG9MNIcQ25kMgN1WAOUWUf?= =?iso-8859-1?Q?K8GgwObbOgaekcqzFqHX4cQVlwGtxgV04JxB6FmjivZd+2/tnKunktQjAS?= =?iso-8859-1?Q?KfIne1rXXseQODM8gS3VAuazq26G?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(35042699022)(1800799024)(376014)(7416014)(36860700013)(14060799003)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2025 10:09:34.4936 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4b0651ad-8f0c-497f-c6f0-08ddb562b776 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: DB5PEPF00014B95.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7895 Content-Type: text/plain; charset="utf-8" This system register is required to enable/disable V3 legacy mode when running on a GICv5 host. Co-authored-by: Timothy Hayes Signed-off-by: Timothy Hayes Signed-off-by: Sascha Bischoff --- arch/arm64/tools/sysreg | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/tools/sysreg b/arch/arm64/tools/sysreg index aab58bf4ed9c..dd1ae04eb033 100644 --- a/arch/arm64/tools/sysreg +++ b/arch/arm64/tools/sysreg @@ -4530,6 +4530,12 @@ Field 1 U Field 0 EOI EndSysreg =20 +Sysreg ICH_VCTLR_EL2 3 4 12 11 4 +Res0 63:2 +Field 1 V3 +Field 0 En +EndSysreg + Sysreg CONTEXTIDR_EL2 3 4 13 0 1 Fields CONTEXTIDR_ELx EndSysreg --=20 2.34.1 From nobody Wed Oct 8 13:27:04 2025 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012014.outbound.protection.outlook.com [52.101.66.14]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08DA52980BF; Fri, 27 Jun 2025 10:09:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.14 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018983; cv=fail; b=JkSlrZF3boNoZ5/i2hY9Ywhus+ciV/u1jiJqlVrDPh3hyG3CxFEP5ymnZsDTAXT/T7/b7OarXqBNGWaN+FUVlVRs3PfWbUwRK0KCsdBGRZQF9oQn4yZ/C9lvEez2FLdCuTfl99LkcqZsimxVqloqlXRtjfGm55qhVz6aOzV21rg= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018983; c=relaxed/simple; bh=/T+MKL3wOcoOKwE9gXOh/IZGnwov4rrRN7ITr87R+y4=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=umrmknITCnQgDn6GGC8x+Rd13vMxSuBjL1HTboyg6n1zYrksC11JIMbylZVPIG3fNnRpiUfBxinizCqy/bgklUi8rSkcCJ+v5kYcWSJAE2ohqTiqY7pf50T/UOjpLWe40qrJlhyIYoyzC6tNfdVEzBHktTuQ/WxjTCmTP2MO9qc= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=omISiRsG; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=omISiRsG; arc=fail smtp.client-ip=52.101.66.14 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="omISiRsG"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="omISiRsG" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=g61nzWohS3PnVh60Iwf4zmzNkTLbUDacThqlLPFBxWtYwt7oh1HBMHPPspD7EnYi2NsuY2zFNg7lIIctdApa8+W+bzCNDrhSTRAMxuaB1oIDPGCshNAD/avSFP1SqodrDG1ItWe9bDBHDMxJ7B+/mG7sRhE2piVzixH90cPnOxodT2rHlH8E7jiTZaO/D9XCaH8n4VbKSPTEKEJYcKU6V7L+qouGGGokh1MYNiYx28g/+sHWrSHM5WUn+ij6xt18uxYH/AplWY0Hcy9xAq2XjAHLPDFoKglT85zqebqiX8sWBrSGvRC36vNum5SfwxI3hD1VFacX+rFch6oig58Z8A== ARC-Message-Signature: i=2; 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=1JZWyBHQ4DdI0xlEbAxmeEvzN1yQPqX6oatqt7IA7hM=; b=QhGVt8Nb+MNOl93qV6lUsRQtlupY5p/1MoYpBxhRPltWUHFaLjDnNo3B1Jcuq73XZny/+3M3+R8Hqt/iVFsTFVGkfDC248mT4aSjprM1MAH8J4qCqaoTT8VJZR+1y/KtV346Vz5gHakQ42+pIBTivzOHvh7sPGNDstB5yag0M50wE6s+smXPWlyg9MFOUEhP8Zg1OGwbCOKXvdGW/YjRjSQFq42Et6/ABN6BeogTC0Wml7uXEF2MV5+AzNo+nHcu2Ur5tCx9AhtYMcJ450M4N06/Oz3XF+ZU5KxCFG/YcyJBa/3w9m5hANn/QPfgwr3y+e4dOzOUk/abkHE2YWaTbQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.infradead.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1JZWyBHQ4DdI0xlEbAxmeEvzN1yQPqX6oatqt7IA7hM=; b=omISiRsGsl1Zvpd13uj18OW4cWQY+4CQIZzElKE0RkbBD7nYyIMudiXRym9Pl3NJPB+rPg9wwT1irTS/ZCHx++S97/kD3e+0dy0NzlCfM17B3VrWtdY3xXiTCcwPOPX8qtRaVcpHq9wMjx4pRho2lfhZ3St13oRkwwD7pP85CQY= Received: from PAZP264CA0171.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:236::33) by PR3PR08MB5724.eurprd08.prod.outlook.com (2603:10a6:102:85::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.21; Fri, 27 Jun 2025 10:09:36 +0000 Received: from AM1PEPF000252E0.eurprd07.prod.outlook.com (2603:10a6:102:236:cafe::ad) by PAZP264CA0171.outlook.office365.com (2603:10a6:102:236::33) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.23 via Frontend Transport; Fri, 27 Jun 2025 10:09:36 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AM1PEPF000252E0.mail.protection.outlook.com (10.167.16.58) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.14 via Frontend Transport; Fri, 27 Jun 2025 10:09:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=k0DgNkbVGx49+urOun6eFC28y+7MZwzysPHzJauCWnP8U+t5LwRCqaVJXeMcCqfDU4rCrzCIQPFG6C3w+ZXBtF38X36MqSgnkQ0ZFYLnRh5NctnTR4ewMhRcn+WUcMwSzr+AlrlntNvuUw4QWB3jgD0YTRqGBr8FnVPPe7TxprCQwtOy2RB07UveQF0gn3IgBlYKdO/7kdTJewZPETgM5wbEOMuBci7XHTTdRgLmP7u+ENfGF3LmojDaqHxKi08I28C0oNUX8qnu4+9YA+Q9DoQGgVKg7g2DTGuWhLPtqxJmV2KinUazSlGmauO5Ie4B6z/8E+TMfTBSJYfgOI3ewg== 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=1JZWyBHQ4DdI0xlEbAxmeEvzN1yQPqX6oatqt7IA7hM=; b=XI72jcp5qb6CSdLvk6Gm78xPYJhFQ6sSelkP3R7Hlc4eB19SbVJDl4cCI9njGoMug+CqLN+pKDuICUCAikyNPZWIeFE+bkj2FhEaRutzyFXX5EHwWRK846EnA38qq33CGIZKoRELNU3FiHZaci38o1TsFh02WiJUcXCQZ1hlmtb9zhKhmIWRWM8VMI9O09kR2ewfe5/GmrLsLblmahVHdMX6fwizZ6zVHsFQd93lrp7thFoW16Gz7bJrfdmRmR5q59Kz4fY17kfdDypfsOaE0WxVQylicsIlMM4qo0UxjvcvwASHjvdyVRsrRxA/U8rIUpQmEr4V325yhgyf6TCX+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1JZWyBHQ4DdI0xlEbAxmeEvzN1yQPqX6oatqt7IA7hM=; b=omISiRsGsl1Zvpd13uj18OW4cWQY+4CQIZzElKE0RkbBD7nYyIMudiXRym9Pl3NJPB+rPg9wwT1irTS/ZCHx++S97/kD3e+0dy0NzlCfM17B3VrWtdY3xXiTCcwPOPX8qtRaVcpHq9wMjx4pRho2lfhZ3St13oRkwwD7pP85CQY= Received: from DU2PR08MB10202.eurprd08.prod.outlook.com (2603:10a6:10:46e::5) by PAXPR08MB7466.eurprd08.prod.outlook.com (2603:10a6:102:2b8::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.28; Fri, 27 Jun 2025 10:09:02 +0000 Received: from DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31]) by DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31%3]) with mapi id 15.20.8857.026; Fri, 27 Jun 2025 10:09:02 +0000 From: Sascha Bischoff To: "linux-arm-kernel@lists.infradead.org" , "kvmarm@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" CC: nd , "maz@kernel.org" , "oliver.upton@linux.dev" , Joey Gouly , Suzuki Poulose , "yuzenghui@huawei.com" , "will@kernel.org" , "tglx@linutronix.de" , "lpieralisi@kernel.org" , Timothy Hayes Subject: [PATCH v2 4/5] KVM: arm64: gic-v5: Support GICv3 compat Thread-Topic: [PATCH v2 4/5] KVM: arm64: gic-v5: Support GICv3 compat Thread-Index: AQHb50uBjf2gMU8QZUm8oyds38bs7g== Date: Fri, 27 Jun 2025 10:09:02 +0000 Message-ID: <20250627100847.1022515-5-sascha.bischoff@arm.com> References: <20250627100847.1022515-1-sascha.bischoff@arm.com> In-Reply-To: <20250627100847.1022515-1-sascha.bischoff@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.34.1 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DU2PR08MB10202:EE_|PAXPR08MB7466:EE_|AM1PEPF000252E0:EE_|PR3PR08MB5724:EE_ X-MS-Office365-Filtering-Correlation-Id: 795b0223-c009-49b3-86c5-08ddb562b863 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|7416014|366016|1800799024|38070700018; X-Microsoft-Antispam-Message-Info-Original: =?iso-8859-1?Q?jGf1/Gm/hNPlkMu3ksB2Zmc5Pe6Pq9dO0iUhPNZdRJVho7l7lnor2b3gRF?= =?iso-8859-1?Q?qYtOVx9aQ4fo3nODnz3i5N6IDg86VYtHRox4LTJdLVOu4Tmu2dCtRag4ae?= =?iso-8859-1?Q?x3odO1DbXy6sP0IxzsMDZ1Nqm1tf496lS+LOpsOVIW3Cgpm5Xshd8ejH5q?= =?iso-8859-1?Q?heDfvWyyKIDN9t5NQN68AI2BlVaRf0SGbBKT+0VIxNKTv3CDns6GsENzmv?= =?iso-8859-1?Q?S2txaeZqaNwSD5T9UwiNFRQWFnERFQHOqfNTzAEwryMgtp4YHwgBjihshU?= =?iso-8859-1?Q?6JWKqmcZuTm7fkFucX2WcskSb27pjNrTOdDE0Gv6ORaASGqSvOls9j7Dhn?= =?iso-8859-1?Q?e9CeujtQkUGfCl2LS9mluv71HUhqLFvkutOSPsKBQICzc0vcbfWGo6Hbd+?= =?iso-8859-1?Q?QVyuT86KC9GEKcgUr+dSvin+oel9wPYwh421a/4oT3JOT6sCOVRB7eFH0x?= =?iso-8859-1?Q?6ud7A5AzrNNz6N+MRyJXVldch08G33YgfTv+VukGgUmT0QEShWUuFhgA1Y?= =?iso-8859-1?Q?xzuQzMtxoUw+a6m1YUzO1Y+x78upeTp50QXexd6AWAiXC9WluGdD1+HtGs?= =?iso-8859-1?Q?o5WdoOUoUl3lebcNHM343tK6or8NiNJGvUM4KAC8oaQEr6rJ/VUE9hbs7J?= =?iso-8859-1?Q?U6lTkutNx+nk53mwacNEgdBd4uf+MFxJUj2+TSeVEu4CdnRff9h6wVF4X3?= =?iso-8859-1?Q?2elOfkl0/rpWE92V041dhX/mULYqMmzRtPntYlDya99ZTlG63gTMdP2ppR?= =?iso-8859-1?Q?QPKQR8PTl/DR5vwh6S6YY3tBHpawysI+BwgBQ7+suQDlGGzj4pwzne/XKT?= =?iso-8859-1?Q?tP3tAvGST3NaM2UI5kBBJF6F/VUPX2X7p4g91Bt4UbUzLFeO9lRhKiKUtX?= =?iso-8859-1?Q?8V3UIJECzXq+4a4xiNGP42cgcJAlv2Tl12I6UUGyh5dm6JDWhor138S4k1?= =?iso-8859-1?Q?CjOt3npch8zDiNtVpnpbcYEd8lPOubpNc8M6EfvkN5H089jc91WNUV+T1h?= =?iso-8859-1?Q?p07iRZRzuUwN7vf6LKQMGT/iJtBBp5IhVhb6+HMzwopxoe/DyWPztJJnYk?= =?iso-8859-1?Q?8qgmbPCijhSV0K0Gv0jAriWU5GcnMfR8SI6aZx15+Kwi4Llsi1NDZGAabX?= =?iso-8859-1?Q?U7S53GRkQqQTSW0pFtl5LM928ZYz8+iPLLJ7TSzVu52WJACpVPOK6lUOjj?= =?iso-8859-1?Q?8kNHEYPFbi4ILzczwSPDom1EOzXDHBWsc+PHi/wWwl7pP7qdvYV6fSvvwL?= =?iso-8859-1?Q?/GFUsMwspHIZmggVFn5DnAPBNiEkdg7buIdetbASwJjQTixpH0gbM2k+Db?= =?iso-8859-1?Q?6mRlEunFYZs1kS9XFkewZlvhlUtIEXxI1QmgAFFuY5xH61a9l9jY0N97Je?= =?iso-8859-1?Q?nKN71Dj7hIfMFhgDJ4pHqZdCSf259++nZxIE6NXvbpdW7NErvVpMY/KcBC?= =?iso-8859-1?Q?StfdYVgWwFR7vbtA5bd4GLeyefBaYho7H7i+I4dUESqqO6vHzXfl4dt9qH?= =?iso-8859-1?Q?V1U0VJrBNNBmGn4JkrtUELFtrP37TQoCnH49hEO9dlmw=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR08MB10202.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7466 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM1PEPF000252E0.eurprd07.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b776e6ea-a240-4263-6bee-08ddb562a47c X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700013|1800799024|14060799003|376014|7416014|35042699022; X-Microsoft-Antispam-Message-Info: =?iso-8859-1?Q?z4iqUoYGWmWEAyvC/4reVc95rTChNyuVtWj+C/z7/1CABryaWlw4SV8I1z?= =?iso-8859-1?Q?/QgouupiSTba2YCPaiS4FgZnZhaanHzwpg+yY5Yjxzd/vrPKws8LyBCsNA?= =?iso-8859-1?Q?GDNv2XOn/7NZQASOC7tBALTKrdGqeSqX2S7UeUXJlWv3xDujcJFURzYQgG?= =?iso-8859-1?Q?rUNpPJZeILNRTm6v7RpYDfp7oa0JQ4cJcX4wU7+eX7WsiYx4BZuft4qQjZ?= =?iso-8859-1?Q?fGYYg4MEsz0QSbWby8CZGJNG5AafBI/FExpOU4t5bVu3DkjGHKZ1jwQ0lS?= =?iso-8859-1?Q?PSRwt1jTeBBYWgutRFeJpt/apbFfoSiku0Mo3KWnWNQpKUx6MTLg81Da01?= =?iso-8859-1?Q?eaPX455mzkUOZlazPol1qc1D0l+kANKLEPhqtHkwd0oxQnw2tXBERXW1rj?= =?iso-8859-1?Q?2x3B++PsI8CMfMDAQYbRFRL2QjYq6YtXejiCD8KlRv7KqUw9TRb+UV2UNo?= =?iso-8859-1?Q?aBnfIpsqX3H2J6wQmKbpBG6bZbcC6tUrtuq8eXfoiTGQpvHKmIuBg3zzO3?= =?iso-8859-1?Q?ic8wAxtJh6+xnVSjoHgeKF7TAF67A5VQnRlPb6ie2DEp9NcpRAu9kClFNW?= =?iso-8859-1?Q?x9Mf9jWLiQrCPbUJRo46mEA6VrzIUYdD+eGlNncAmsmVV4ZqDRC2UbiNdK?= =?iso-8859-1?Q?XXgAjqx1r9bKj5cJ6TwSiQ5y7+cS3iJoVQB9eRlOfCc6WIyxfDufCIvxmZ?= =?iso-8859-1?Q?WmXqP2jQ+JeRREOZc4xymOq1XKeg0JfJJyZu6NiSUFiV6X0b/aSJuYzlNr?= =?iso-8859-1?Q?SAk4N8hnMrAUezEFqcjt0bVwineKy3RDZ6gnzdWQZjOJkmoeuCNVeMkxRV?= =?iso-8859-1?Q?nUhOvjU9hgi31xzchPm7YrKFc2I5RZXJv0sF0c4qcZ4kk+idZAl55v6ud2?= =?iso-8859-1?Q?iwu4Q22UPiNVEb/9Ha2pDPl17ZZO7Ui9/g949fYC4Cp6QBK3BJAcPAvIhR?= =?iso-8859-1?Q?62ficTQOCx3ioHuNT/t9/IZaVo56tgSojaFuj4vcbjEq2C98GxOVU521Ia?= =?iso-8859-1?Q?HcNLdIbku3ruTkt8O9JNrP90zsza9WIR9vBMmCYNfmvuVFNVSTg8zEU82e?= =?iso-8859-1?Q?MNsEhPsl2Zk/MrhRNIs2VVXoUuwLoWdRxQ/JNjnsgaK/UJZkyaJVSqui9F?= =?iso-8859-1?Q?lLCFDlS/+iYwXJwCUDp7YQA9ckQTzGBggzE87lA5cy6yCvm1PYHD8e/HaR?= =?iso-8859-1?Q?PQBd9Yaop02J7XuexNKdhY8rA5ser5/lkDDKEgeR436K0ZZ0F01/7M16bb?= =?iso-8859-1?Q?DUfz25Ylhlt326oNw42p6UwzSaUeAigS7gSNerphPcP3V2VE/+GwE1n2GI?= =?iso-8859-1?Q?bAB517zmpDnH+Irosv/VSygHVgADfccKxvNYH8RoYRsmIRz91jE7LjmV79?= =?iso-8859-1?Q?4O4vweSgBO/6CNBQFk6SUOrVAufbpSSkwVwZc+yj474bmsNSvikDN48zhU?= =?iso-8859-1?Q?smSjZILbLFful5Fdtl0qhpZ7cdiIfMGxXYDu5ALhcqEjk7iAgCoWj2Livb?= =?iso-8859-1?Q?Z1gY014rFU1xZqR+sStJO4uzlljSxwek8NzFE6fcn8MD/KPsZigia0Q00w?= =?iso-8859-1?Q?FjVLj6jch51ONDGTgEEEEq9TiyKd?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(36860700013)(1800799024)(14060799003)(376014)(7416014)(35042699022);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2025 10:09:36.0413 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 795b0223-c009-49b3-86c5-08ddb562b863 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AM1PEPF000252E0.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5724 Content-Type: text/plain; charset="utf-8" Add support for GICv3 compat mode (FEAT_GCIE_LEGACY) which allows a GICv5 host to run GICv3-based VMs. This change enables the VHE/nVHE/hVHE/protected modes, but does not support nested virtualization. A lazy-disable approach is taken for compat mode; it is enabled on the vgic_v3_load path but not disabled on the vgic_v3_put path. A non-GICv3 VM, i.e., one based on GICv5, is responsible for disabling compat mode on the corresponding vgic_v5_load path. Currently, GICv5 is not supported, and hence compat mode is not disabled again once it is enabled, and this function is intentionally omitted from the code. Co-authored-by: Timothy Hayes Signed-off-by: Timothy Hayes Signed-off-by: Sascha Bischoff --- arch/arm64/kvm/hyp/vgic-v3-sr.c | 51 +++++++++++++++++++++++++++------ arch/arm64/kvm/sys_regs.c | 10 ++++++- arch/arm64/kvm/vgic/vgic-init.c | 6 ++-- arch/arm64/kvm/vgic/vgic.h | 11 +++++++ include/kvm/arm_vgic.h | 6 +++- 5 files changed, 72 insertions(+), 12 deletions(-) diff --git a/arch/arm64/kvm/hyp/vgic-v3-sr.c b/arch/arm64/kvm/hyp/vgic-v3-s= r.c index f162b0df5cae..6ce88e56ccb8 100644 --- a/arch/arm64/kvm/hyp/vgic-v3-sr.c +++ b/arch/arm64/kvm/hyp/vgic-v3-sr.c @@ -296,12 +296,19 @@ void __vgic_v3_activate_traps(struct vgic_v3_cpu_if *= cpu_if) } =20 /* - * Prevent the guest from touching the ICC_SRE_EL1 system - * register. Note that this may not have any effect, as - * ICC_SRE_EL2.Enable being RAO/WI is a valid implementation. + * GICv5 BET0 FEAT_GCIE_LEGACY doesn't include ICC_SRE_EL2. This is due + * to be relaxed in a future spec release, at which point this in + * condition can be dropped. */ - write_gicreg(read_gicreg(ICC_SRE_EL2) & ~ICC_SRE_EL2_ENABLE, - ICC_SRE_EL2); + if (!cpus_have_final_cap(ARM64_HAS_GICV5_CPUIF)) { + /* + * Prevent the guest from touching the ICC_SRE_EL1 system + * register. Note that this may not have any effect, as + * ICC_SRE_EL2.Enable being RAO/WI is a valid implementation. + */ + write_gicreg(read_gicreg(ICC_SRE_EL2) & ~ICC_SRE_EL2_ENABLE, + ICC_SRE_EL2); + } =20 /* * If we need to trap system registers, we must write @@ -322,8 +329,14 @@ void __vgic_v3_deactivate_traps(struct vgic_v3_cpu_if = *cpu_if) cpu_if->vgic_vmcr =3D read_gicreg(ICH_VMCR_EL2); } =20 - val =3D read_gicreg(ICC_SRE_EL2); - write_gicreg(val | ICC_SRE_EL2_ENABLE, ICC_SRE_EL2); + /* + * Can be dropped in the future when GICv5 spec is relaxed. See comment + * above. + */ + if (!cpus_have_final_cap(ARM64_HAS_GICV5_CPUIF)) { + val =3D read_gicreg(ICC_SRE_EL2); + write_gicreg(val | ICC_SRE_EL2_ENABLE, ICC_SRE_EL2); + } =20 if (!cpu_if->vgic_sre) { /* Make sure ENABLE is set at EL2 before setting SRE at EL1 */ @@ -423,9 +436,19 @@ void __vgic_v3_init_lrs(void) */ u64 __vgic_v3_get_gic_config(void) { - u64 val, sre =3D read_gicreg(ICC_SRE_EL1); + u64 val, sre; unsigned long flags =3D 0; =20 + /* + * In compat mode, we cannot access ICC_SRE_EL1 at any EL + * other than EL1 itself; just return the + * ICH_VTR_EL2. ICC_IDR0_EL1 is only implemented on a GICv5 + * system, so we first check if we have GICv5 support. + */ + if (cpus_have_final_cap(ARM64_HAS_GICV5_CPUIF)) + return read_gicreg(ICH_VTR_EL2); + + sre =3D read_gicreg(ICC_SRE_EL1); /* * To check whether we have a MMIO-based (GICv2 compatible) * CPU interface, we need to disable the system register @@ -471,6 +494,16 @@ u64 __vgic_v3_get_gic_config(void) return val; } =20 +static void __vgic_v3_compat_mode_enable(void) +{ + if (!cpus_have_final_cap(ARM64_HAS_GICV5_CPUIF)) + return; + + sysreg_clear_set_s(SYS_ICH_VCTLR_EL2, 0, ICH_VCTLR_EL2_V3); + /* Wait for V3 to become enabled */ + isb(); +} + static u64 __vgic_v3_read_vmcr(void) { return read_gicreg(ICH_VMCR_EL2); @@ -490,6 +523,8 @@ void __vgic_v3_save_vmcr_aprs(struct vgic_v3_cpu_if *cp= u_if) =20 void __vgic_v3_restore_vmcr_aprs(struct vgic_v3_cpu_if *cpu_if) { + __vgic_v3_compat_mode_enable(); + /* * If dealing with a GICv2 emulation on GICv3, VMCR_EL2.VFIQen * is dependent on ICC_SRE_EL1.SRE, and we have to perform the diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c index 76c2f0da821f..f01953c7c2a9 100644 --- a/arch/arm64/kvm/sys_regs.c +++ b/arch/arm64/kvm/sys_regs.c @@ -1811,7 +1811,7 @@ static u64 sanitise_id_aa64pfr0_el1(const struct kvm_= vcpu *vcpu, u64 val) val |=3D SYS_FIELD_PREP_ENUM(ID_AA64PFR0_EL1, CSV3, IMP); } =20 - if (kvm_vgic_global_state.type =3D=3D VGIC_V3) { + if (vgic_is_v3(vcpu->kvm)) { val &=3D ~ID_AA64PFR0_EL1_GIC_MASK; val |=3D SYS_FIELD_PREP_ENUM(ID_AA64PFR0_EL1, GIC, IMP); } @@ -1953,6 +1953,14 @@ static int set_id_aa64pfr0_el1(struct kvm_vcpu *vcpu, (vcpu_has_nv(vcpu) && !FIELD_GET(ID_AA64PFR0_EL1_EL2, user_val))) return -EINVAL; =20 + /* + * If we are running on a GICv5 host and support FEAT_GCIE_LEGACY, then + * we support GICv3. Fail attempts to do anything but set that to IMP. + */ + if (vgic_is_v3_compat(vcpu->kvm) && + FIELD_GET(ID_AA64PFR0_EL1_GIC_MASK, user_val) !=3D ID_AA64PFR0_EL1_GI= C_IMP) + return -EINVAL; + return set_id_reg(vcpu, rd, user_val); } =20 diff --git a/arch/arm64/kvm/vgic/vgic-init.c b/arch/arm64/kvm/vgic/vgic-ini= t.c index eb1205654ac8..1f1f0c9ce64f 100644 --- a/arch/arm64/kvm/vgic/vgic-init.c +++ b/arch/arm64/kvm/vgic/vgic-init.c @@ -674,10 +674,12 @@ void kvm_vgic_init_cpu_hardware(void) * We want to make sure the list registers start out clear so that we * only have the program the used registers. */ - if (kvm_vgic_global_state.type =3D=3D VGIC_V2) + if (kvm_vgic_global_state.type =3D=3D VGIC_V2) { vgic_v2_init_lrs(); - else + } else if (kvm_vgic_global_state.type =3D=3D VGIC_V3 || + kvm_vgic_global_state.has_gcie_v3_compat) { kvm_call_hyp(__vgic_v3_init_lrs); + } } =20 /** diff --git a/arch/arm64/kvm/vgic/vgic.h b/arch/arm64/kvm/vgic/vgic.h index 4349084cb9a6..23d393998085 100644 --- a/arch/arm64/kvm/vgic/vgic.h +++ b/arch/arm64/kvm/vgic/vgic.h @@ -389,6 +389,17 @@ void vgic_v3_put_nested(struct kvm_vcpu *vcpu); void vgic_v3_handle_nested_maint_irq(struct kvm_vcpu *vcpu); void vgic_v3_nested_update_mi(struct kvm_vcpu *vcpu); =20 +static inline bool vgic_is_v3_compat(struct kvm *kvm) +{ + return cpus_have_final_cap(ARM64_HAS_GICV5_CPUIF) && + kvm_vgic_global_state.has_gcie_v3_compat; +} + +static inline bool vgic_is_v3(struct kvm *kvm) +{ + return kvm_vgic_global_state.type =3D=3D VGIC_V3 || vgic_is_v3_compat(kvm= ); +} + int vgic_its_debug_init(struct kvm_device *dev); void vgic_its_debug_destroy(struct kvm_device *dev); =20 diff --git a/include/kvm/arm_vgic.h b/include/kvm/arm_vgic.h index 4a34f7f0a864..5c293e0ff5c1 100644 --- a/include/kvm/arm_vgic.h +++ b/include/kvm/arm_vgic.h @@ -38,6 +38,7 @@ enum vgic_type { VGIC_V2, /* Good ol' GICv2 */ VGIC_V3, /* New fancy GICv3 */ + VGIC_V5, /* Newer, fancier GICv5 */ }; =20 /* same for all guests, as depending only on the _host's_ GIC model */ @@ -77,9 +78,12 @@ struct vgic_global { /* Pseudo GICv3 from outer space */ bool no_hw_deactivation; =20 - /* GIC system register CPU interface */ + /* GICv3 system register CPU interface */ struct static_key_false gicv3_cpuif; =20 + /* GICv3 compat mode on a GICv5 host */ + bool has_gcie_v3_compat; + u32 ich_vtr_el2; }; =20 --=20 2.34.1 From nobody Wed Oct 8 13:27:04 2025 Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11010058.outbound.protection.outlook.com [52.101.84.58]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 169F429616E; Fri, 27 Jun 2025 10:09:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.84.58 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018982; cv=fail; b=WZecqVrH5o56cCJFRJs9LU/xiQm8ob0IDSr09EG/6GYSRQd4vLrL7/6aq0UWAyx91N0f7KDnIzdXgSR3iSxmptxeZbjEM/VpT5mmpumxJmh1P9aPXdYsbEpPQbQuuWAlockJ4j/6HwqrNtE+6Ej50kz6Z9e4Wm5BtKJAWhRRims= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751018982; c=relaxed/simple; bh=Y9s6FXTaqdGL5TT/mPauXRU0Xr9wuoIEoAjPAbgmBcY=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=vETJCl1H5eC3yGeKewu2ivdMD2okr7XEbpz2S20/g+e71MM2+fhlYee35i6LX6mmSPVkX4imoWcTysVqZLrZqkTkfviTvVYqlPS4pNonMFwXBkLlocGphLtg6z8AGRXWctY3rpRNvfEYx8qyAzz0A/Z4+yURoZu5jypFQTaUJRs= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=fuHFPJwq; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=fuHFPJwq; arc=fail smtp.client-ip=52.101.84.58 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="fuHFPJwq"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="fuHFPJwq" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=kXqM6V2WfS/126Deklx2mFsQhEaDGHC12HWiW4fCkdz9nEArECZS15KCtqybHvBv2Tg0SCRVrv5wOyLRp4KGNMt4uQ+4SqaZNs6p8SM/bGmeqHNDOEaif/oXCKykGILCZKz1cN33AbeZn9qHE1hmtBvbhH4dz98+Slg1IjWXlVXEtqAI+ubqaOJaIFgXvD+GG/eD6Wq6CFHyw2n4apcrCngKfyewL8axqebInk+AQsPusmgQGymM4qK628A1fux7CPQzJgnJLUHg7/6xOGnMrjfCUVy43AC1d8d1yBRysfwzzDrFDwG2Oq3WULE4WOh2f/eHf/OgBRGJnLtBnOv8wg== ARC-Message-Signature: i=2; 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=GZQwQjvdWCtGPu5BJTSZTLRXPZJfEyo/12XPHgaOmxI=; b=T/+2LNmthaCWigQh3mP5SSB0M4q5cKCBItnyL6HnMKz+qy6Ax25vTC6VTH10PzMSHUVmRkRdX0IquNRgGzvdVO2LuWbtd9/k7fzuBwI6GyeS5ztVs3fnaDO0kMjqiM3MKv8J5B1exLuGXl0yu5vCaHpcttHO8gj4SM8a7OMZYgNMZbZp0hHJUCCGHjYLlflIg5kzKbEkNafNoUPLnfCc7e/zmDdwP7ski+tIWoNNZt5YB0DUaSHIc9odc2seeDjmGowwSzD4LKhXqfd62g3EGAO7s2718qJH0ckBG3C6UmCtBuqceZtkqmMZT9u2M6fH382mLlPLPiUPQlEFpmG2Sw== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.infradead.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GZQwQjvdWCtGPu5BJTSZTLRXPZJfEyo/12XPHgaOmxI=; b=fuHFPJwqND8KVYf4RQj/VnCt9VeUujMrOU4zxWCwcI6xDjWPx06cnqxMA9U8kl1vgk1+z45ajWn+RsjMY63CORSg2V8dx/U4+u2sUzZUtpUg3Y0Sc4mZ4svWQzrZGxljkT6jI2dQBAwLulA5wxPbkXDZSad3Z9GQ3RNWu1YisWE= Received: from AM6P191CA0048.EURP191.PROD.OUTLOOK.COM (2603:10a6:209:7f::25) by AS8PR08MB8349.eurprd08.prod.outlook.com (2603:10a6:20b:56d::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.18; Fri, 27 Jun 2025 10:09:36 +0000 Received: from AMS0EPF000001AD.eurprd05.prod.outlook.com (2603:10a6:209:7f:cafe::68) by AM6P191CA0048.outlook.office365.com (2603:10a6:209:7f::25) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.21 via Frontend Transport; Fri, 27 Jun 2025 10:09:36 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AMS0EPF000001AD.mail.protection.outlook.com (10.167.16.153) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8880.14 via Frontend Transport; Fri, 27 Jun 2025 10:09:36 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fUtUQvUBe0yJS9Ss2FK7hGTLwA88ItpP5Yrqbuy6K6ld+SwTR25P5Gs6OYKo+Z3Sy6JzSSiVyvGSOnhzEvw1grz2JwOsOVnX9CNUtyrKE7o8pmEuk+14jY8ToZQASpHDrYkLOlVkqaXxUyFLe9m9d0wSQfCO//dt6kjWgwgX50AIq7Sr3aYPM6CKx2e4LcvFxlaDJUgySGx5pKxPQBCXpwQMuAeiJYTPnoZO+6UhwxL21+FZ6ft3BhY5o9gYkBeW0oW8zyqSspUgOUX+NL81TeCoXsjER9dJjroQf1Tk3M5ig8Sey1aXisczdDhTqmcFznL3PKqUzxULFlwtQupKHA== 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=GZQwQjvdWCtGPu5BJTSZTLRXPZJfEyo/12XPHgaOmxI=; b=upqb/cO3lnoa3GQcKeodlKtE06q0aRVkuWhnc2+HibowCklVJLKh+P6gfrhoZOP+z2dOs0YYiuNDuZuRzRHWeJXHCKF9p7zcF2+xXf7SB77prDjfmVfumumuoXNQXJXw8+9/XvDhXx5VwwTMunSX4Bc0Dsm0PR+denNf1Z3+sYOZh6fZg6MeGwT/GzeYeY0MyVEHY9LKCAxhg6CUQ99SdeUJv3V0FUkPjv7Dx+OemOu8x9Nn4PlMYJM69ClFESK0eMOIWxXY5ljaNu2IhCH7IHqs55/NKhiYHbgEzeY27B3MxyV9azu8riVPwpvInask2i4DsYKitCBrNVRF4goDmQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GZQwQjvdWCtGPu5BJTSZTLRXPZJfEyo/12XPHgaOmxI=; b=fuHFPJwqND8KVYf4RQj/VnCt9VeUujMrOU4zxWCwcI6xDjWPx06cnqxMA9U8kl1vgk1+z45ajWn+RsjMY63CORSg2V8dx/U4+u2sUzZUtpUg3Y0Sc4mZ4svWQzrZGxljkT6jI2dQBAwLulA5wxPbkXDZSad3Z9GQ3RNWu1YisWE= Received: from DU2PR08MB10202.eurprd08.prod.outlook.com (2603:10a6:10:46e::5) by PAXPR08MB7466.eurprd08.prod.outlook.com (2603:10a6:102:2b8::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.28; Fri, 27 Jun 2025 10:09:03 +0000 Received: from DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31]) by DU2PR08MB10202.eurprd08.prod.outlook.com ([fe80::871d:8cc1:8a32:2d31%3]) with mapi id 15.20.8857.026; Fri, 27 Jun 2025 10:09:03 +0000 From: Sascha Bischoff To: "linux-arm-kernel@lists.infradead.org" , "kvmarm@lists.linux.dev" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" CC: nd , "maz@kernel.org" , "oliver.upton@linux.dev" , Joey Gouly , Suzuki Poulose , "yuzenghui@huawei.com" , "will@kernel.org" , "tglx@linutronix.de" , "lpieralisi@kernel.org" , Timothy Hayes Subject: [PATCH v2 5/5] KVM: arm64: gic-v5: Probe for GICv5 Thread-Topic: [PATCH v2 5/5] KVM: arm64: gic-v5: Probe for GICv5 Thread-Index: AQHb50uBnu7xTRQqEUuv9c5/3ycjXA== Date: Fri, 27 Jun 2025 10:09:02 +0000 Message-ID: <20250627100847.1022515-6-sascha.bischoff@arm.com> References: <20250627100847.1022515-1-sascha.bischoff@arm.com> In-Reply-To: <20250627100847.1022515-1-sascha.bischoff@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.34.1 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DU2PR08MB10202:EE_|PAXPR08MB7466:EE_|AMS0EPF000001AD:EE_|AS8PR08MB8349:EE_ X-MS-Office365-Filtering-Correlation-Id: f8c244f7-7184-4158-6008-08ddb562b88d x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|7416014|366016|1800799024|38070700018; X-Microsoft-Antispam-Message-Info-Original: =?iso-8859-1?Q?RtaYfzbkUjAOKnzvSGwApP+9YV4vAMzud3lHS82rH9px7VPDuiUoMxL1qD?= =?iso-8859-1?Q?l1FuRDBKokfjjXqUiBBYZ5FYbYubBuZ/kIXYj1XfTQIAiGen+JZax+cfaj?= =?iso-8859-1?Q?KKGqrFEpkxghJUdVcVXQjKSftEpUia+CgZvg7HYitfCP2W2AOFT4ouMnB5?= =?iso-8859-1?Q?ln+vIvV5deWq+coHMqxNVtYLEtCN8iNmEoR+GuSzwCxCIjl4Vi8QDNj6/H?= =?iso-8859-1?Q?Lec5Xf//11gRH3mbwppfemYyQVSh4HsNwc3hkFVZ5f2cwPPcPuDnsCq49s?= =?iso-8859-1?Q?Dwsulq8xiX3RXqPM+lk5iFyXYZQ3IrJAFTsHI4jUTRctD6pofeD+5So6Wc?= =?iso-8859-1?Q?0GjNxUi7Zg/UPRHZmFwD+cRd85m4Auv4CDuyYcpdCdboCDoAH75/4qhChu?= =?iso-8859-1?Q?QwZ/D+UPkSVpZKyw6wCBb7Ar0gfR3JFjMpX8RNHEudzV56M+Uj2z55VT8e?= =?iso-8859-1?Q?Ycps+oBqE2fvppPUY/97dqONLkBNHfB8oywBn6Wrktx/6JOFDS8LN0Es3u?= =?iso-8859-1?Q?L70/owBl/RErUbGpAhYLRQpF8l9E9WL0+pAlwVbCPwOrRAKev4a5PNUu6u?= =?iso-8859-1?Q?FTyWJT5KFVoWNf2wPibf0r7Ot6pKoR8DXf+Xv7tICe+RElTpcyftOtznXO?= =?iso-8859-1?Q?o6n2t6Wm3IPl3CtIqbkUmas8WJk0vhzNz5VGPhMo3QpOyI9ZveROslJcVO?= =?iso-8859-1?Q?vT5ViHCeDmOPt2GUSs08MkJmS/tTSvXKlTKXp6wZZzReZxaWz2KRHo4Uly?= =?iso-8859-1?Q?k1pGY36E6WUR/OL4mAjnoHR7+sXRtxhUvronF7lN6DgqYikVOgyIBuqFqi?= =?iso-8859-1?Q?fm3Svod2Aul/O3bUdqBsH15QIN2pk4WwCx0Hhcst9cAKfLOH41i3Lnv35K?= =?iso-8859-1?Q?1Ug/uKQH9gUsY36CJIhzPAFaRpflCIkpt2qH6d4SdG+NCNUcaNXSI0TTHB?= =?iso-8859-1?Q?p4KwulMKKgk8C/W5n3W/7fkbXO1l96ITAh/fh+xw1KVcWwl/VLYSlvOEbO?= =?iso-8859-1?Q?zbd7DZSxaioyKE2gE4lkwyjSRaTMhScth94Qwd4LJYlwRd6/n/dX5amiOc?= =?iso-8859-1?Q?subPPtSCdZb5dGcXw5nT80W3zxfdqhi97xyiyd3K3ebRpt1nyIFm8mzlBr?= =?iso-8859-1?Q?Bts4lJrNy2OynAEV8+En1nP+SfAKVaEIkv7ZP98MLacFZw5Mt1ixuQAvkS?= =?iso-8859-1?Q?lrPkoBKYDHj4iFj49DlElwjCXNapyL8Kr9IpsarR3Mu+p1qYy5gOb0OrLt?= =?iso-8859-1?Q?iuyXum0ToKUNrv7u2t+7dyElp1MubegWe7URJ4XHDAahI8dF+y0OAr5jaF?= =?iso-8859-1?Q?4urzf6Y9e3hIV+kgm/E0O/1B15QQdcHb9l+kFzdYojzbZeYBgawW4Ssdj0?= =?iso-8859-1?Q?OaVA49+lTk20IFApy3t4dptxPwfSvKBN7FRQ/9t5OcCRz/sifCLxr1maI/?= =?iso-8859-1?Q?dqGByYu1YGqclKAKjSo0Hu+yYVcNzZKwFUFvsbMPZA67grff5G3HeQN1Q0?= =?iso-8859-1?Q?5s50qACAudpSkl2ray5vwpMMKggWZH7JcvMEEOimsKcA=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR08MB10202.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB7466 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS0EPF000001AD.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 05e4909c-b5aa-470e-6c74-08ddb562a52d X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|14060799003|1800799024|35042699022|82310400026|7416014|376014; X-Microsoft-Antispam-Message-Info: =?iso-8859-1?Q?fiwAZp0yx3ru1JOMGhAbLVV9t9UdgIFVk0djZXDJ84sy7uk+/eLEcME1RQ?= =?iso-8859-1?Q?knR/OVIYc4R/3G76/j/OborokWcocHtOgv+/9klZkY1NS0FNFcHg3B6p8t?= =?iso-8859-1?Q?A2i/oGnvAcBtOn/SLvwVSrQVYvYZ5bokwi0TLo4F82gi+1+FRapfjpzNf/?= =?iso-8859-1?Q?vYODr6oUn7KgGkvkCdvs4WafPz3d1yxJZmS29z9tTiX21l283M0Gu1TP9H?= =?iso-8859-1?Q?WciWspu5lNrDBwRItZ3Q+qSRI0QQz4nm5OyABD7Gkm2An2Vr8S8d3qTZ/3?= =?iso-8859-1?Q?v3U/0jovqz5+Jyc3ZwkUWdknJM/rNoDoTe3aJNcMvINFwjichYg+BJl6+/?= =?iso-8859-1?Q?dMf6Y1h2HRLLhOAZHqyVcWi9zxod9Zkvj8VG77J87s8FjkWtcgwNa7M0xn?= =?iso-8859-1?Q?r3KlFjy/Ekd1JiEOt2TykaPnrzZw0ZBBsHon4zPNoYoeE03yH3LEvTHABu?= =?iso-8859-1?Q?P3eKnQqxEawFAq7cjY+1tB9E3aqY9MiN/g2e0TEEeCM5323RE19C8ndmLP?= =?iso-8859-1?Q?tXIZntRUr/GvYoksEp2gzqaFfQRwS8Sk5JW5jslKyBBPR1XMqaWq/GNXcb?= =?iso-8859-1?Q?YJn6g5ZeklBnH5nWPQkGLV13zCfbEH6iZRX12qq14zuFW87teBsJaRicbP?= =?iso-8859-1?Q?FhyrhcekZeSwVHYjDIdI9ML0WuGD8Za0HZirh6+fhS+ZSKdMiBoCr6wp8W?= =?iso-8859-1?Q?aYKnesD8AHN+ajGzkzJRnn1oDu4Su0daKUTaET2L8ZetItzUwtvfN5jqfC?= =?iso-8859-1?Q?AEGflP4caZZtpBHwBgxjo0NjMyzIne7d9V8CObsEPxqFxecZHl56zmQtMM?= =?iso-8859-1?Q?IvnL2NxJKSt0tziBCRoTTNa3e/VQH0w1qI7J93wwcsIZvwpv4dFTmV7qma?= =?iso-8859-1?Q?mirqO4l4rP6ndSpUpEb/mmDb2BXJavcgJDxTltU8DhRx1KZIy8KMq1AO9M?= =?iso-8859-1?Q?ptv3u7Tg9Q9o/fxv9ZG8SJUxeRoGJ11G2/F32pigtSZCk15Pf1T8+Qh9Yg?= =?iso-8859-1?Q?+i3hZS8AuSa6QqitiyYxUV7e6YsTYPK+fi19zpSFqRHKWJ+CkP/4bYeGpN?= =?iso-8859-1?Q?24XiUBvUfkXc9DpTlBtXrIfVPcreoALgU15DpVkpW+vN2gyeu1/aldOVmq?= =?iso-8859-1?Q?MFGd9F3vjXhp4lXGana1Gpzir6boH/3bzIG2HKHaV5ODCqA7+j+icmaNQr?= =?iso-8859-1?Q?eL21o3bAJ2P1OkfdEq1TDytGjsXrNU6g+CwnFWKbJgawqsODBzfwpM+xiZ?= =?iso-8859-1?Q?QatN3ZJ72HHJLjXvplcVttkaIuV13ff9uGsTFRhGLRGbJzz7DryhH+ER5g?= =?iso-8859-1?Q?xYb1zXb3SLi3Nxh6PSLV0URZIOn6jN8h/CfgDsCry8yU1RU9EIt4Y0/WoD?= =?iso-8859-1?Q?1XjrjkgxNZ27KYPrLcxVUTmoQkogqPVtSJDA8xpOUvqTEKGB0AZm6ivW1Z?= =?iso-8859-1?Q?aoPe195po36Iz68lOn8Nng/iLiC9VasZol9sdEv0PxXcEIskdKewtQZa2x?= =?iso-8859-1?Q?cFofH7NRN64oss5jzwWeVaB0FKWZIfnNgXbTQ+Ds5C4ODnnTFWi7DyebNU?= =?iso-8859-1?Q?Mbe3aoVFcrtYmDQpuZ/Q4nQwLlEV?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(14060799003)(1800799024)(35042699022)(82310400026)(7416014)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2025 10:09:36.3206 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f8c244f7-7184-4158-6008-08ddb562b88d X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AMS0EPF000001AD.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8349 Content-Type: text/plain; charset="utf-8" Add in a probe function for GICv5 which enables support for GICv3 guests on a GICv5 host, if FEAT_GCIE_LEGACY is supported by the hardware. Co-authored-by: Timothy Hayes Signed-off-by: Timothy Hayes Signed-off-by: Sascha Bischoff --- arch/arm64/kvm/Makefile | 3 +- arch/arm64/kvm/vgic/vgic-init.c | 3 ++ arch/arm64/kvm/vgic/vgic-v5.c | 52 +++++++++++++++++++++++++++++++++ arch/arm64/kvm/vgic/vgic.h | 2 ++ 4 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/kvm/vgic/vgic-v5.c diff --git a/arch/arm64/kvm/Makefile b/arch/arm64/kvm/Makefile index 7c329e01c557..3ebc0570345c 100644 --- a/arch/arm64/kvm/Makefile +++ b/arch/arm64/kvm/Makefile @@ -23,7 +23,8 @@ kvm-y +=3D arm.o mmu.o mmio.o psci.o hypercalls.o pvtime.= o \ vgic/vgic-v3.o vgic/vgic-v4.o \ vgic/vgic-mmio.o vgic/vgic-mmio-v2.o \ vgic/vgic-mmio-v3.o vgic/vgic-kvm-device.o \ - vgic/vgic-its.o vgic/vgic-debug.o vgic/vgic-v3-nested.o + vgic/vgic-its.o vgic/vgic-debug.o vgic/vgic-v3-nested.o \ + vgic/vgic-v5.o =20 kvm-$(CONFIG_HW_PERF_EVENTS) +=3D pmu-emul.o pmu.o kvm-$(CONFIG_ARM64_PTR_AUTH) +=3D pauth.o diff --git a/arch/arm64/kvm/vgic/vgic-init.c b/arch/arm64/kvm/vgic/vgic-ini= t.c index 1f1f0c9ce64f..72442c825d19 100644 --- a/arch/arm64/kvm/vgic/vgic-init.c +++ b/arch/arm64/kvm/vgic/vgic-init.c @@ -724,6 +724,9 @@ int kvm_vgic_hyp_init(void) kvm_info("GIC system register CPU interface enabled\n"); } break; + case GIC_V5: + ret =3D vgic_v5_probe(gic_kvm_info); + break; default: ret =3D -ENODEV; } diff --git a/arch/arm64/kvm/vgic/vgic-v5.c b/arch/arm64/kvm/vgic/vgic-v5.c new file mode 100644 index 000000000000..6bdbb221bcde --- /dev/null +++ b/arch/arm64/kvm/vgic/vgic-v5.c @@ -0,0 +1,52 @@ +// SPDX-License-Identifier: GPL-2.0-only + +#include +#include + +#include "vgic.h" + +/* + * Probe for a vGICv5 compatible interrupt controller, returning 0 on succ= ess. + * Currently only supports GICv3-based VMs on a GICv5 host, and hence only + * registers a VGIC_V3 device. + */ +int vgic_v5_probe(const struct gic_kvm_info *info) +{ + u64 ich_vtr_el2; + int ret; + + if (!info->has_gcie_v3_compat) + return -ENODEV; + + kvm_vgic_global_state.type =3D VGIC_V5; + kvm_vgic_global_state.has_gcie_v3_compat =3D true; + + /* We only support v3 compat mode - use vGICv3 limits */ + kvm_vgic_global_state.max_gic_vcpus =3D VGIC_V3_MAX_CPUS; + + kvm_vgic_global_state.vcpu_base =3D 0; + kvm_vgic_global_state.vctrl_base =3D NULL; + kvm_vgic_global_state.can_emulate_gicv2 =3D false; + kvm_vgic_global_state.has_gicv4 =3D false; + kvm_vgic_global_state.has_gicv4_1 =3D false; + + ich_vtr_el2 =3D kvm_call_hyp_ret(__vgic_v3_get_gic_config); + kvm_vgic_global_state.ich_vtr_el2 =3D (u32)ich_vtr_el2; + + /* + * The ListRegs field is 5 bits, but there is an architectural + * maximum of 16 list registers. Just ignore bit 4... + */ + kvm_vgic_global_state.nr_lr =3D (ich_vtr_el2 & 0xf) + 1; + + ret =3D kvm_register_vgic_device(KVM_DEV_TYPE_ARM_VGIC_V3); + if (ret) { + kvm_err("Cannot register GICv3-legacy KVM device.\n"); + return ret; + } + + static_branch_enable(&kvm_vgic_global_state.gicv3_cpuif); + kvm_info("GCIE legacy system register CPU interface\n"); + + return 0; +} diff --git a/arch/arm64/kvm/vgic/vgic.h b/arch/arm64/kvm/vgic/vgic.h index 23d393998085..4f1e123b063e 100644 --- a/arch/arm64/kvm/vgic/vgic.h +++ b/arch/arm64/kvm/vgic/vgic.h @@ -308,6 +308,8 @@ int vgic_init(struct kvm *kvm); void vgic_debug_init(struct kvm *kvm); void vgic_debug_destroy(struct kvm *kvm); =20 +int vgic_v5_probe(const struct gic_kvm_info *info); + static inline int vgic_v3_max_apr_idx(struct kvm_vcpu *vcpu) { struct vgic_cpu *cpu_if =3D &vcpu->arch.vgic_cpu; --=20 2.34.1