[PATCH 00/12] ras: share firmware-first estatus handling

Ahmed Tiba ahmed.tiba at arm.com
Mon Jan 26 02:58:41 PST 2026


On 20/01/2026 11:15, Borislav Petkov wrote:
> On Thu, Jan 15, 2026 at 12:17:17PM +0000, Ahmed Tiba wrote:
>> In drivers/acpi/apei/ghes.c, this subset of CPER handling
>> is already implemented using a number of helpers mostly named
>> estatus_* rather than cper_*.
> 
> Which helpers are those?
> 
> $ git grep -Ei "\Westatus_" drivers/acpi/apei/ghes.c
> 
> doesn't give me a single one. Maybe I can't grep.

A simpler grep that catches both prefixes and suffixes is:

git grep -E "estatus_|_estatus" drivers/acpi/apei/ghes.c

>> The naming therefore originates from the existing GHES implementation, not
>> from a new abstraction.
> 
> And even if, calling it a "estatus core" and making it a separate thing is
> just confusing and unnecessary.

Agreed. I’ll drop the “core” framing and keep it as a plain shared 
compilation unit with exported helpers.

>> What I did was lift that existing estatus_* logic so it can be reused by a
>> non-ACPI provider, rather than duplicating the CPER handling
>> in a parallel DT path.
> 
> Nothing wrong with that as long as you simply export common helpers and we
> agree on how they're going to be shared. We do stuff like that all the time.

If you have a reference series that demonstrates the preferred pattern 
for doing this, I’d appreciate a pointer and will follow that approach.

>> Because the DT-based path still needs a clean way to call into the shared
>> logic without dragging in ACPI plumbing.
> 
> Yes, carve them out in a separate compilation unit and select it in your DT
> glue and that's it. No need for a Kconfig item and calling it a "core" bla.

Works for me. The only question I had is where you’d prefer that unit to 
live so it can be built without pulling in ACPI/APEI (not gated by 
CONFIG_ACPI), while still staying under the ACPI/APEI maintainer umbrella.

Would you prefer to:

1- Keep the shared unit under drivers/acpi/apei/ but make it buildable
    independent of CONFIG_ACPI, and have both GHES + DT select it.

2- Place the shared unit somewhere APEI-adjacent but not ACPI-gated so
    it remains reviewed by the same folks, and have GHES/DT both link it.

Thanks,
Ahmed



More information about the linux-arm-kernel mailing list