From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B1903D10397 for ; Wed, 26 Nov 2025 09:02:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Subject:Cc:To:From:Message-ID:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=WtTEC358VtREtBw7YnsyRORjPTsa24kKZExL0WY33Ew=; b=Z1oLs7yNrkRKLit1/DOoECsziV wMr2u8YerLbc+6IwxWocgz87xY30tPaWHbOxvJrXLP8VBXLWkIPvU4+ypDgjJBlOw+QsF/Sel7OPU kKRxFiwQsjbooDUUSrSWRAC0enciQX6VxWXYOAPT/GdCNNBVWJ8GiKWDzDKSKAvcIYvT0ugTG29pm dfY6y+0Vyb+uNaBOrhptNvvJOyTEF/u82+tOuvqmQUNtpRsUcRlfkI4KmSlOAirCxE0bNtwMgoGWb fJ6QnmnomwghvV5TqjiZHkzJPaz6WesUn1GVkPXRGlWgJvaF4CP7EKWMI3R1qFpkcuXYrPTZ3Fsit 29dQk0ng==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vOBQ4-0000000Efe2-0TaU; Wed, 26 Nov 2025 09:02:36 +0000 Received: from sea.source.kernel.org ([172.234.252.31]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vOBQ2-0000000EfdL-2Z3l for linux-arm-kernel@lists.infradead.org; Wed, 26 Nov 2025 09:02:35 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 044A041526; Wed, 26 Nov 2025 09:02:34 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CF365C113D0; Wed, 26 Nov 2025 09:02:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1764147753; bh=da7KtwaPpYJL6ys46RLfYQrGnoIrLvUeVYdDADOmUZc=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=o5pDOtOvRWeBbj8Ny5ot/Xu06OYNQCyMdki0HjcPU5NP0dFTUgPuIhN+/6GzUQpof xXCqdTXMdG0aZQquWYlG9nBsraM0WlDg7N0/hEi8Qu9qizScUln2SqE2/dSXLTt1qJ fQuTRClLShSFl4JA/jtrX4kXQYWsrzn3IHitpuzSXalEPavHrzAMQ6RdvYAmdDHCre 1JaNNsEzy76G3GgpqApOYx3tsbCe8gkGZbmTi3FcLik53rGoBuDeefDUzHfXtV6+QZ IqC8BiHhKwqyuA8eitsE8ft8ZXf0fibv89lf1EGRx6SF7XyiZ5tPaNPGTzVB1wjPVA GUksw5QQ5FsiQ== Received: from sofa.misterjones.org ([185.219.108.64] helo=goblin-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vOBPz-00000008PYJ-1GDV; Wed, 26 Nov 2025 09:02:31 +0000 Date: Wed, 26 Nov 2025 09:02:30 +0000 Message-ID: <86a509qi8p.wl-maz@kernel.org> From: Marc Zyngier To: Anirudh Rayabharam Cc: kys@microsoft.com, haiyangz@microsoft.com, wei.liu@kernel.org, decui@microsoft.com, longli@microsoft.com, catalin.marinas@arm.com, will@kernel.org, tglx@linutronix.de, Arnd Bergmann , akpm@linux-foundation.org, agordeev@linux.ibm.com, guoweikang.kernel@gmail.com, osandov@fb.com, bsz@amazon.de, linux-hyperv@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org Subject: Re: [PATCH 2/3] irqchip/gic-v3: allocate one SGI for MSHV In-Reply-To: References: <20251125170124.2443340-1-anirudh@anirudhrb.com> <20251125170124.2443340-3-anirudh@anirudhrb.com> <86bjkqq9dp.wl-maz@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/30.1 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: anirudh@anirudhrb.com, kys@microsoft.com, haiyangz@microsoft.com, wei.liu@kernel.org, decui@microsoft.com, longli@microsoft.com, catalin.marinas@arm.com, will@kernel.org, tglx@linutronix.de, arnd@arndb.de, akpm@linux-foundation.org, agordeev@linux.ibm.com, guoweikang.kernel@gmail.com, osandov@fb.com, bsz@amazon.de, linux-hyperv@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20251126_010234_687600_D1E59319 X-CRM114-Status: GOOD ( 31.88 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Wed, 26 Nov 2025 08:51:59 +0000, Anirudh Rayabharam wrote: > > On Tue, Nov 25, 2025 at 06:01:38PM +0000, Marc Zyngier wrote: > > On Tue, 25 Nov 2025 17:01:23 +0000, > > Anirudh Raybharam wrote: > > > > > > From: Anirudh Rayabharam > > > > > > From: Anirudh Rayabharam (Microsoft) > > > > > > Currently SGIs are allocated only for the smp subsystem. The MSHV > > > (Microsoft Hypervisor aka Hyper-V) code also needs an SGI that can be > > > programmed into the SYNIC to receive intercepts from the hypervisor. The > > > hypervisor would then assert this SGI whenever there is a guest > > > VMEXIT. > > > > > > Allocate one SGI for MSHV use in addition to the SGIs allocated for > > > IPIs. When running under MSHV, the full SGI range can be used i.e. no > > > need to reserve SGIs 8-15 for the secure firmware. > > > > > > Since this SGI is needed only when running as a parent partition (i.e. > > > we can create guest partitions), check for it before allocating an SGI. > > > > Sorry, but that's not an acceptable situation. > > > > SGIs are for Linux to use, nobody else, and that allocation must be > > Why does this restriction exist? In the code SGIs 8-15 are left for > secure firmware. So, things other than Linux can use SGIs. Why not MSHV > then? Because SGIs are for *internal* usage. Not usage from another random piece of SW. The ACPI tables explicitly don't describe SGIs. DT explicitly don't describe SGIs. Do you get the clue? > > the same irrespective of whether Linux runs virtualised or not. This > > also won't work with GICv5 (there are no SGIs at all), so this is > > doomed from the very start, and would immediately create technical > > debt. > > Hyper-V always presents a GICv3 so we don't need to worry about GICv5. Well, that's pretty short sighted of you, and eventually you'll have to support it, or just die. So do the right thing from the beginning. > > > > If you want to signal an interrupt to Linux, expose a device with an > > interrupt in a firmware table (i.e. not an SGI), and use that in your > > driver. > > You mean in the ACPI tables? That would require us to modify the > firmware to expose this virtual device right? Yes. How is that surprising? M. -- Without deviation from the norm, progress is not possible.