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 X-Spam-Level: X-Spam-Status: No, score=-4.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0BBE2C4707F for ; Thu, 27 May 2021 12:19:40 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id B0A83610CC for ; Thu, 27 May 2021 12:19:37 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B0A83610CC Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Subject:Cc:To:From:Message-ID:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=mBFZOGfjHWI3aPZmlAnZxWm0piX0uva7FawuaKUPIDM=; b=mrCERPvBBbGtoR +fleh3ciIKZ0EJKuL+uL6IVC9UOrXqIZs9yVQD1o8mteR2W8LQfDBOtiKFl3bZb4tj9hdH9B0bK0I 2Acj2EBLNAVSJYlx2okxYmpKrAhzLHxl7qp5WnZcR7DRbIH0QFknsc2gq2vI1RnFRm4nUQF/y3+zi DR+Yuf/N1pT8n7PaWj2rRr7qCujcUvgQ79JnAxJw/I3HmgJk9POb1cAXvoD+dQ5FlS80Eb/GBu1u3 m4OYBhw82jtBU6egsSdTd6ciyFPtWfrR4pY6xokf5nYMbGPhmip+JpriKxYP8sUhnu+4nubV3QfRy lBE0AQoiS8PC4gy0DABA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1lmExi-005gmg-GE; Thu, 27 May 2021 12:18:06 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1lmExe-005glI-L9 for linux-arm-kernel@lists.infradead.org; Thu, 27 May 2021 12:18:03 +0000 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 2ECF5610CC; Thu, 27 May 2021 12:18:02 +0000 (UTC) Received: from 78.163-31-62.static.virginmediabusiness.co.uk ([62.31.163.78] helo=why.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1lmExc-003wPH-4D; Thu, 27 May 2021 13:18:00 +0100 Date: Thu, 27 May 2021 13:17:59 +0100 Message-ID: <87y2c0s748.wl-maz@kernel.org> From: Marc Zyngier To: Valentin Schneider Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Thomas Gleixner , Lorenzo Pieralisi , Vincenzo Frascino Subject: Re: [RFC PATCH v2 08/10] irqchip/gic-v3-its: Use irq_chip_ack_parent() In-Reply-To: <20210525173255.620606-9-valentin.schneider@arm.com> References: <20210525173255.620606-1-valentin.schneider@arm.com> <20210525173255.620606-9-valentin.schneider@arm.com> 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/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") X-SA-Exim-Connect-IP: 62.31.163.78 X-SA-Exim-Rcpt-To: valentin.schneider@arm.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, tglx@linutronix.de, lorenzo.pieralisi@arm.com, vincenzo.frascino@arm.com 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-20210527_051802_737984_54A28E84 X-CRM114-Status: GOOD ( 18.45 ) 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: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Tue, 25 May 2021 18:32:53 +0100, Valentin Schneider wrote: > > Subsequent patches will make the GIC irqchips use a flow handler that > issues an ->irq_ack(). irqchips of child domains need to handle this. > > Note: I'm very much not fond of this; this is treacherous and explodes if > any parent chip doesn't have an ->ack() callback. It turns out okay with > EOImode=0 because handle_fasteoi_irq() doesn't issue any ->ack(), but that > is very fragile at best. > > An alternative would be to > o make irq_chip_ack_parent() check the callback against NULL That's an overhead I'd like to avoid in the general case, given that we already have a bunch of users. > o make irq_chip_ack_parent() the default chip->irq_ack() via > MSI_FLAG_USE_DEF_CHIP_OPS. Seem like a reasonable approach: how about a custom irq_ack() callback that iterates over the hierarchy until it finds an a non-NULL entry? Flows that don't use ack won't be impacted, users that need ack will provide one if they want, and the default will do something slightly slower, but at least unsurprising. > XXX: what about pMSI and fMSI ? Same thing. They are just bus-specific domains on top of the ITS domain, and must follow the same convention. However, this patch is perfectly acceptable to me (as long as you take care of platform and fsl -MSI). Thanks, M. -- Without deviation from the norm, progress is not possible. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel