From: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
To: Pierre Gondois <pierre.gondois@arm.com>
Cc: linux-kernel@vger.kernel.org, James Morse <james.morse@arm.com>,
Mark Brown <broonie@kernel.org>,
Thomas Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>,
Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
x86@kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Len Brown <lenb@kernel.org>, Tony Luck <tony.luck@intel.com>,
Hanjun Guo <guohanjun@huawei.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Shuai Xue <xueshuai@linux.alibaba.com>,
Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com>,
Pawel Chmielewski <pawel.chmielewski@intel.com>,
Yazen Ghannam <yazen.ghannam@amd.com>,
Radu Rendec <radu@rendec.net>,
Avadhut Naik <avadhut.naik@amd.com>, Kees Cook <kees@kernel.org>,
Dave Jiang <dave.jiang@intel.com>,
"Fabio M. De Francesco" <fabio.m.de.francesco@linux.intel.com>,
Breno Leitao <leitao@debian.org>,
Terry Bowman <terry.bowman@amd.com>,
Dan Williams <djbw@kernel.org>, Ard Biesheuvel <ardb@kernel.org>,
Morduan Zang <zhangdandan@uniontech.com>,
linux-acpi@vger.kernel.org, linux-edac@vger.kernel.org,
acpica-devel@lists.linux.dev
Subject: Re: [RFC PATCH 0/6] CPER: Add Memory Error Section 2 support
Date: Tue, 29 Sep 2026 09:35:16 -0700 [thread overview]
Message-ID: <20260929093516.00003781@oss.qualcomm.com> (raw)
In-Reply-To: <20260929074659.2587216-1-pierre.gondois@arm.com>
On Tue, 29 Sep 2026 09:45:59 +0200
Pierre Gondois <pierre.gondois@arm.com> wrote:
> Add support for Memory Error Section 2 records.
>
> Extend cper_mem_err_compact to hold both legacy and section-2 records.
> Add a common parser and convert the CPER, GHES, EDAC, extlog and x86 APEI
> paths to use it.
>
> The extlog_mem_event payload layout changes with this series.
> Compatibility with existing userspace decoders still needs to be
> addressed. More specifically, the rasdaemon relies on the current
> struct cper_mem_err_compact definition.
> Either:
> A-
> this patchset should not modify struct cper_mem_err_compact and
> create a new structure to handle Memory Error Section 2 events,
> but this would ignore the similarities of Memory Error Section (1)/2
> B-
> userspace should not rely on the struct cper_mem_err_compact
> layout. extlog_mem_event trace events should instead emit data
> that relies on the actual layout of the CPER records, as defined
> in the ACPI spec.
>
> I am looking for guidance on how to handle the above question.
> Current implementation lean toward B, but emits data in the trace
> event that maps the new/updated struct cper_mem_err_compact.
My initial thought is a no to modifying the usespace ABI.
It isn't particularly painful to just have separate handling code
for the new record. Unfortunately the ext_log tracepoints don't
split out the fields in a fashion that would let you change
the structure. Other RAS tracepoints do it field by field which
would have been possible to augment - even then it would have
required care to deal with field size changes.
It may be worth considering a much more 'expanded' tracepoint for
memory error section 2 to reduce similar future extension problems.
That is express ever field and don't use a compact structure at all.
Mauro, perhaps you can give input on what works better over the
long term?
Jonathan
>
> Pierre Gondois (6):
> ACPI: extlog: fix extlog_mem_event build issue
> cper: add Memory Error Section 2 structures
> cper: extend cper_mem_err_compact struct
> cper: add helpers to handle Memory Error Section 2
> x86/mce/apei: switch cper_sec_mem_err struct users to compact CPER
> records
> cper: make cper_mem_err_pack() static
>
> arch/x86/include/asm/mce.h | 4 +-
> arch/x86/kernel/acpi/apei.c | 2 +-
> arch/x86/kernel/cpu/mce/apei.c | 2 +-
> drivers/acpi/acpi_extlog.c | 23 +++-
> drivers/acpi/apei/apei-base.c | 2 +-
> drivers/acpi/apei/ghes.c | 20 +--
> drivers/edac/ghes_edac.c | 26 ++--
> drivers/firmware/efi/cper.c | 219 +++++++++++++++++++++++++++------
> include/acpi/apei.h | 2 +-
> include/linux/cper.h | 58 +++++++--
> include/ras/ras_event.h | 4 +-
> 11 files changed, 283 insertions(+), 79 deletions(-)
>
> --
> 2.43.0
next prev parent reply other threads:[~2026-09-29 16:35 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-29 7:45 [RFC PATCH 0/6] CPER: Add Memory Error Section 2 support Pierre Gondois
2026-09-29 7:46 ` [RFC PATCH 1/6] ACPI: extlog: fix extlog_mem_event build issue Pierre Gondois
2026-09-29 7:46 ` [RFC PATCH 2/6] cper: add Memory Error Section 2 structures Pierre Gondois
2026-09-29 7:46 ` [RFC PATCH 3/6] cper: extend cper_mem_err_compact struct Pierre Gondois
2026-09-29 7:46 ` [RFC PATCH 4/6] cper: add helpers to handle Memory Error Section 2 Pierre Gondois
2026-09-29 7:46 ` [RFC PATCH 5/6] x86/mce/apei: switch cper_sec_mem_err struct users to compact CPER records Pierre Gondois
2026-09-29 7:46 ` [RFC PATCH 6/6] cper: make cper_mem_err_pack() static Pierre Gondois
2026-09-29 16:35 ` Jonathan Cameron [this message]
2026-10-07 13:35 ` [RFC PATCH 0/6] CPER: Add Memory Error Section 2 support Pierre Gondois
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260929093516.00003781@oss.qualcomm.com \
--to=jonathan.cameron@oss.qualcomm.com \
--cc=acpica-devel@lists.linux.dev \
--cc=ardb@kernel.org \
--cc=avadhut.naik@amd.com \
--cc=bp@alien8.de \
--cc=broonie@kernel.org \
--cc=dave.hansen@linux.intel.com \
--cc=dave.jiang@intel.com \
--cc=djbw@kernel.org \
--cc=fabio.m.de.francesco@linux.intel.com \
--cc=guohanjun@huawei.com \
--cc=hpa@zytor.com \
--cc=james.morse@arm.com \
--cc=kees@kernel.org \
--cc=leitao@debian.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-edac@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maciej.wieczor-retman@intel.com \
--cc=mchehab@kernel.org \
--cc=mingo@redhat.com \
--cc=pawel.chmielewski@intel.com \
--cc=pierre.gondois@arm.com \
--cc=radu@rendec.net \
--cc=rafael@kernel.org \
--cc=terry.bowman@amd.com \
--cc=tglx@kernel.org \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
--cc=xueshuai@linux.alibaba.com \
--cc=yazen.ghannam@amd.com \
--cc=zhangdandan@uniontech.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.