mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
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


      parent reply	other threads:[~2026-09-29 16:35 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-29  7:45 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]

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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®