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 D4F04C3ABBE for ; Tue, 6 May 2025 17:46:59 +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=myl+eOUkSv1i7ZHWBzatwTTJi8pcaChQmbzbWMeXAyc=; b=Nyag2zVd7+U9Qeg+yvV9ZmsQ8g 6RTZ42fXZM73bTMU6KLL40QJWRoOK2oE4x7Z4nJqQESzg98giZe+ZFbF8o+Rtz4FRvvTZPanF2iNq fbzOXD1c4yh5t5rvmIjsmr65efYEEZYHlDloqT/pt8gLYWdgaCD5OL8Nf5Y+dt908mMUNzXfT8mpB +i+3VreVdqAsnlLZdbd/8zHlT5Bk+iMaWkCbFPn9k4M8/7GEhjQ63yH6Mid5mJSo8Lbh1jIih9oM7 4Qx0yoBqYiD7DqXf2KTGImaKH0ZXikhvtq2GeFCvKO2Vly+GdC5N1zebKY31LJUaC0IvFk9o2sGNK /R/RZMng==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1uCMNU-0000000Cta5-44FS; Tue, 06 May 2025 17:46:48 +0000 Received: from sea.source.kernel.org ([2600:3c0a:e001:78e:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1uCIvX-0000000CFWF-1EPz for linux-arm-kernel@lists.infradead.org; Tue, 06 May 2025 14:05:45 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 06FDD4430D; Tue, 6 May 2025 14:05:43 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CD6D5C4CEE4; Tue, 6 May 2025 14:05:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1746540342; bh=lwRmuP2GMcWJ8L+R/b+kXBU7HZjwjH6hqn/r0N3fvZM=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=EvKnN4Ucmz+o7iRTO0Gy4X3NDy0tma/vf8EnkOdVJNlA7iglaUg3TUPnQei1OhhbP IbxjATWMkyzzU4c9/z1xRjR8gGDTT2qYC6IKzc5+/TbAkzLFkMngjvsCMsAn4ihQWe twvGJvWCL1NiSYBjT32Ip/Lbl9tJBFymL0mjTlxIDBwKbuBPz9VJQqLZGfkuNtpgGw BVZvxElF6fzJYdRN+gRXUkdCMYdCPoGtQ9fgZgkmaVFnuUnJcZj36y/lJoXxycqwCO 9rO92UbnTDUbd5f58F6hnaNEHVQU0Y0DJXi5AAB33xvbHlWwwd2ip433GQKpEBvNQt kmL7ZtOzL8GXQ== 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.95) (envelope-from ) id 1uCIvU-00CGRv-QZ; Tue, 06 May 2025 15:05:40 +0100 Date: Tue, 06 May 2025 15:05:39 +0100 Message-ID: <86frhhhm18.wl-maz@kernel.org> From: Marc Zyngier To: Lorenzo Pieralisi Cc: Thomas Gleixner , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Catalin Marinas , Will Deacon , Arnd Bergmann , Sascha Bischoff , Timothy Hayes , "Liam R. Howlett" , Mark Rutland , Jiri Slaby , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: Re: [PATCH v3 00/25] Arm GICv5: Host driver implementation In-Reply-To: <20250506-gicv5-host-v3-0-6edd5a92fd09@kernel.org> References: <20250506-gicv5-host-v3-0-6edd5a92fd09@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: lpieralisi@kernel.org, tglx@linutronix.de, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, catalin.marinas@arm.com, will@kernel.org, arnd@arndb.de, sascha.bischoff@arm.com, timothy.hayes@arm.com, Liam.Howlett@oracle.com, mark.rutland@arm.com, jirislaby@kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@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-20250506_070543_367704_261B6CDF X-CRM114-Status: GOOD ( 18.87 ) 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 Tue, 06 May 2025 13:23:29 +0100, Lorenzo Pieralisi wrote: > > ============= > 2.5 GICv5 IWB > ============= > > The IWB driver has been dropped owing to issues encountered with > core code DOMAIN_BUS_WIRED_TO_MSI bus token handling: > > https://lore.kernel.org/lkml/87tt6310hu.wl-maz@kernel.org/ This problem does not have much to do with DOMAIN_BUS_WIRED_TO_MSI. The issues are that: - the core code calls into the .prepare domain on a per-interrupt basis instead of on a per *device* basis. This is a complete violation of the MSI API, because .prepare is when you are supposed to perform resource reservation (in the GICv3 parlance, that's ITT allocation + MAPD command). - the same function calls .prepare for a *single* interrupt, effectively telling the irqchip "my device has only one interrupt". Because I'm super generous (and don't like wasting precious bytes), I allocate 32 LPIs at the minimum. Only snag is that I could do with 300+ interrupts, and calling repeatedly doesn't help at all, since we cannot *grow* an ITT. So this code needs to be taken to the backyard and beaten into shape before we can make use of it. My D05 (with its collection of MBIGENs) only works by accident at the moment, as I found out yesterday, and GICv5 IWB is in the same boat, since it reuses the msi-parent thing, and therefore the same heuristic. I guess not having the IWB immediately isn't too big a deal, but I really didn't expect to find this... Thanks, M. -- Without deviation from the norm, progress is not possible.