[PATCH 0/6] CPER: Add Memory Error Section 2 support

From: Pierre Gondois

Date: Mon Oct 19 2026 - 14:06:09 EST


The support is mostly duplicated from Memory Error Section handling.
Other than differences coming from the content of Memory Error
Section 1 and 2, differences in the support are:

- v2 do not rely on a compact "struct cper_mem_err_compact" struct.
This structure was used to support older versions of the Memory
Error Section (1). This is not needed for the new structure.

- The compact version is also used by the tracing framework.
To avoid relying and propagating a non-standard record format,
through trace event (cf. extlog_mem event) the new trace event
prints each field individually.

The last patch of the serie was only build-tested due to the
absence of relevant hardware. apei_mce_report_mem_error() and
arch_apei_report_mem_error() implementations were also removed since
last version.

It will also require a proper handling from the rasdaemon. Applying
this last patch without rasdaemon support will silent the reports of
Memory Error Section 2 error, cf. ras_userspace_consumers() check.

RFC: https://lore.kernel.org/all/20260929074659.2587216-1-pierre.gondois@xxxxxxx/#t

Pierre Gondois (6):
ACPI: extlog: fix extlog_mem_event build issue
cper: add Memory Error Section 2 structures
cper: use BIT_ULL() for processor and memory validation bits
cper: add helpers to handle Memory Error Section 2
ACPI: APEI: add separate Memory Error Section 2 handlers
ACPI: extlog: add Memory Error Section 2 trace event

drivers/acpi/acpi_extlog.c | 30 +++++++-
drivers/acpi/apei/ghes.c | 49 +++++++++++-
drivers/edac/ghes_edac.c | 150 ++++++++++++++++++++++++++++++++++++
drivers/firmware/efi/cper.c | 108 ++++++++++++++++++++++++++
drivers/ras/ras.c | 1 +
include/acpi/ghes.h | 2 +
include/linux/cper.h | 129 ++++++++++++++++++++++---------
include/ras/ras_event.h | 102 ++++++++++++++++++++++++
8 files changed, 532 insertions(+), 39 deletions(-)

--
2.43.0