[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<OSZPR01MB879875FB57F312EF7086033B8BFAA@OSZPR01MB8798.jpnprd01.prod.outlook.com>
Date: Wed, 29 Oct 2025 07:02:44 +0000
From: "Shaopeng Tan (Fujitsu)" <tan.shaopeng@...itsu.com>
To: 'James Morse' <james.morse@....com>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>, "linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>, "linux-acpi@...r.kernel.org"
<linux-acpi@...r.kernel.org>
CC: D Scott Phillips OS <scott@...amperecomputing.com>,
"carl@...amperecomputing.com" <carl@...amperecomputing.com>,
"lcherian@...vell.com" <lcherian@...vell.com>, "bobo.shaobowang@...wei.com"
<bobo.shaobowang@...wei.com>, "baolin.wang@...ux.alibaba.com"
<baolin.wang@...ux.alibaba.com>, Jamie Iles <quic_jiles@...cinc.com>, Xin Hao
<xhao@...ux.alibaba.com>, "peternewman@...gle.com" <peternewman@...gle.com>,
"dfustini@...libre.com" <dfustini@...libre.com>, "amitsinght@...vell.com"
<amitsinght@...vell.com>, David Hildenbrand <david@...hat.com>, Dave Martin
<dave.martin@....com>, Koba Ko <kobak@...dia.com>, Shanker Donthineni
<sdonthineni@...dia.com>, "fenghuay@...dia.com" <fenghuay@...dia.com>,
"baisheng.gao@...soc.com" <baisheng.gao@...soc.com>, Jonathan Cameron
<jonathan.cameron@...wei.com>, Rob Herring <robh@...nel.org>, Rohit Mathew
<rohit.mathew@....com>, Rafael Wysocki <rafael@...nel.org>, Len Brown
<lenb@...nel.org>, Lorenzo Pieralisi <lpieralisi@...nel.org>, Hanjun Guo
<guohanjun@...wei.com>, Sudeep Holla <sudeep.holla@....com>, Catalin Marinas
<catalin.marinas@....com>, Will Deacon <will@...nel.org>, Greg Kroah-Hartman
<gregkh@...uxfoundation.org>, Danilo Krummrich <dakr@...nel.org>, Jeremy
Linton <jeremy.linton@....com>, Gavin Shan <gshan@...hat.com>
Subject: RE: [PATCH v3 18/29] arm_mpam: Register and enable IRQs
> Register and enable error IRQs. All the MPAM error interrupts indicate a
> software bug, e.g. out of range partid. If the error interrupt is ever signalled,
> attempt to disable MPAM.
>
> Only the irq handler accesses the MPAMF_ESR register, so no locking is
> needed. The work to disable MPAM after an error needs to happen at process
> context as it takes mutex. It also unregisters the interrupts, meaning it can't be
> done from the threaded part of a threaded interrupt.
> Instead, mpam_disable() gets scheduled.
>
> Enabling the IRQs in the MSC may involve cross calling to a CPU that can
> access the MSC.
>
> Once the IRQ is requested, the mpam_disable() path can be called
> asynchronously, which will walk structures sized by max_partid. Ensure this
> size is fixed before the interrupt is requested.
>
> CC: Rohit Mathew <rohit.mathew@....com>
> Tested-by: Rohit Mathew <rohit.mathew@....com>
> Tested-by: Fenghua Yu <fenghuay@...dia.com>
> Signed-off-by: James Morse <james.morse@....com>
Reviewed-by: Shaopeng Tan <tan.shaopeng@...fujitsu.com>
Powered by blists - more mailing lists