From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 AC549176ADE; Fri, 14 Nov 2025 15:23:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763133808; cv=none; b=mh0DDP162fQ6XaKen818rsKWAAIjvYp++zBPFp8IOeTTUIyfJEhqruGZX9KPvgoW78iRcmtQ0k7GijQiDptS/XqpZ44NSsJOfkPqbmu1qVd2jk5VYcQPYUqpjrj83pTFQRaajvN459dCQPQEnWf5Ou1qPk9t4oi7jo9Ptp3qeJQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763133808; c=relaxed/simple; bh=HR765DhUvED/IAYt/KalTJoC6rZzlIvAnWmGbhovKJg=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=jwqU/5yzg1rJD/Q+vP+O3lJD//BnCSw22fHzbOKcnitQ/GFXI3y9vu84cdB6rZNnW+z/A3wuSHYkV1+SSRU3cIbXQs7DNTOHCSu8m3Xuf2KATEmWomER0U5ymp7z9rt10+W17B40v0IbNAjCmexXpUCxZaIpJ7fK2tz1Kj7Z8xQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=dKZv8SOp; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="dKZv8SOp" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C6623C4CEF5; Fri, 14 Nov 2025 15:23:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1763133808; bh=HR765DhUvED/IAYt/KalTJoC6rZzlIvAnWmGbhovKJg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=dKZv8SOpFhYMv82Bb47ixVSYEdtUwSvyoBkSDMrRmTQ8GK2ndLwlMfMBiLHAbjcbV cmJa43PIae5JaMtaTovUMsc0qCviAYBshBxDfKh8/HhrLi6Zz1whJkL3vSISFhWflT POl4U8ytpyfaGSG6QTkmH/TWGNoDxmBCAxKFbCg59ApZIbJDnlvQ2ucP9L2THsHFa7 EUc9tX+pBbG/xXpL/jmzkUjt82d15rZ70vtrChAZtwZQeJ96VOW007zQPX0m5a0b2M iuol1iU51PaxZWzccFf7w0H0ZKHod2V7ZjI297Na45RHTSejjmazzexuuUElxc0eBU 3d5vzsa9VOwQQ== Date: Fri, 14 Nov 2025 15:23:22 +0000 From: Will Deacon To: Charles Mirabile Cc: "Kazuhiro Abe (Fujitsu)" , "catalin.marinas@arm.com" , "Koichi Okuno (Fujitsu)" , "guohanjun@huawei.com" , "ilkka@os.amperecomputing.com" , "lenb@kernel.org" , "linux-acpi@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "lpieralisi@kernel.org" , "rafael@kernel.org" , "sudeep.holla@arm.com" Subject: Re: [PATCH v4] ACPI: AGDI: Add interrupt signaling mode support Message-ID: References: <20251112044239.4049011-1-cmirabil@redhat.com> Precedence: bulk X-Mailing-List: linux-acpi@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Fri, Nov 14, 2025 at 10:20:39AM -0500, Charles Mirabile wrote: > On Fri, Nov 14, 2025 at 3:21 AM Kazuhiro Abe (Fujitsu) > wrote: > > > On Mon, Nov 10, 2025 at 07:38:17AM +0000, Kazuhiro Abe (Fujitsu) wrote: > > > > > > On Mon, Oct 20, 2025 at 09:23:05PM +0800, Hanjun Guo wrote: > > > > > > > On 2025/10/17 15:39, Kazuhiro Abe wrote: > > > > > > > > AGDI has two types of signaling modes: SDEI and interrupt. > > > > > > > > Currently, the AGDI driver only supports SDEI. > > > > > > > > Therefore, add support for interrupt signaling mode The > > > > > > > > interrupt vector is retrieved from the AGDI table, and call > > > > > > > > panic function when an interrupt occurs. > > > > > > > > > > > > > > > > Reviewed-by: Ilkka Koskinen > > > > > > > > Signed-off-by: Kazuhiro Abe > > > > > > > > --- > > > > > > > > Hanjun, I have addressed all your comments. > > > > > > > > Please review them. > > > > > > > > > > > > > > > > v3->v4 > > > > > > > > - Add a comment to the flags member. > > > > > > > > - Fix agdi_interrupt_probe. > > > > > > > > - Fix agdi_interrupt_remove. > > > > > > > > - Add space in struct initializsation. > > > > > > > > - Delete curly braces. > > > > > > > > > > > > > > Looks good to me, > > > > > > > > > > > > > > Acked-by: Hanjun Guo > > > > > > > > > > > > I wasn't cc'd on the original patch but I couldn't figure out why > > > > > > it uses IRQF_NO_AUTOEN when requesting the irq given that the > > > > > > first thing it does is enable it. > > > > > > > > > > I misunderstood the usage of request_irq and enable_irq. > > > > > Since there's no need to separate them, I will remove IRQF_NO_AUTOEN > > > > > and the enable_irq call, and send v5. > > > > > > > > I found out when calling request_nmi, removing IRQF_NO_AUTOEN results in an > > > error (-EINVAL). > > > > Therefore, I would like to keep IRQF_NO_AUTOEN specified. > > > > If you have any comments on this version, please let me know. > > > > > > Could it be that this is just a bug in `request_nmi`? I see the following: > > > > > > if (!desc || (irq_settings_can_autoenable(desc) && > > > !(irqflags & IRQF_NO_AUTOEN)) || > > > !irq_settings_can_request(desc) || > > > WARN_ON(irq_settings_is_per_cpu_devid(desc)) || > > > !irq_supports_nmi(desc)) > > > return -EINVAL; > > > > > > Perhaps there is just a missing `!` before `irq_settings_can_autoenable`. > > > > I tried this change without specifying NO_AUTOEN, but it resulted in an error. > > __setup_irq succeeded, but irq_nmi_setup failed with -EINVAL. > > I haven't investigated further beyond that point yet. > > Thank you for trying, from reading the other commentary in the thread, > I recognize now that that was a naive suggestion. > > I think that this patch should go in as is then unless there are other > concerns, because it seems like it is not possible and should not be > possible to autoenable NMIs and that explains why the code does what > it does to answer Will's original question. Yes, I wasn't trying to derail this at all. I spotted something that looked weird, it turns out that's how NMIs are enabled and if the cleanest thing is to treat normal IRQs the same way then so be it. Will