Linux EDAC development
 help / color / mirror / Atom feed
* [PATCH v2 0/8] Add ghes support for x86 via SCI notification
@ 2026-11-08  8:45 Mauro Carvalho Chehab
  2026-11-08  8:45 ` [PATCH v2 1/8] acpi_dev_interface: add ghes support state at AcpiDeviceIfClass Mauro Carvalho Chehab
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Mauro Carvalho Chehab @ 2026-11-08  8:45 UTC (permalink / raw)
  To: Michael S Tsirkin, Paolo Bonzini, Pierrick Bouvier,
	Richard Henderson
  Cc: Jonathan Cameron, Shiju Jose, qemu-devel, Igor Mammedov,
	Mauro Carvalho Chehab, linux-edac, qemu-arm,
	Philippe Mathieu-Daudé, Ani Sinha, Aurelien Jarno

Hi Michael,

That's the second version of this series. First version is
here:

	https://lore.kernel.org/qemu-devel/cover.1788630333.git.mchehab+huawei@kernel.org/

There was a precursor RFC patch series I sent in 2025:

	https://lore.kernel.org/qemu-devel/cover.1741094512.git.mchehab+huawei@kernel.org/

I opted to rename the subject on patch 0 to make it clearer
that the goal is to add GHES support on x86.

patch 1 adds a method to allow checking if RAS support
is supported in an arch-independent way.

Patch 2 creates empty DSDT and HEST tables for x86, in
preparation for testing them, adding them to allowed diffs.

Patch 3 adds support for _OSC at DSDT table, adding APEI
support bit on it, if RAS is enabledm adding a "ras" boolean
to allow enabling ras the same way as on arm64, using SCI
notification for QMP source.

Patch 4 wires SCI support to the x86 driver at ich9 and
piix4.

Patch 5 adds the new DSDT and HEST binaries to be used on
tests and removes them from bios allowed diffs.

Patch 6 updates acpi_hest_ghes.rst: it splits arch-dependent
notes for aarch64 from the ras support, adding separate
sections for ARM and x86

Finally, patche 7 and 8 add BIOS tests to check that the QMP
interface is working on arm64 and on x86. This would allow
checking for possible regressions on GHES on those two
architectures.

---

v2:

- rebased on the top of upstream;
- patch descriptions were improved to make them clearer;
- moved an uuid on patch 3 to a macro and did an ajustment
  at the code that generates _OSC at DSDT;
- temporarely added SPDX macros on patch 2 just to shut up
  checkpatch warnings. Those are removed on patch 5 when
  the "empty" files will be replaced by binary ones.

Note: I've been using this patch series for a while now, to
help me to release rasdaemon 1.0.0 at the end of September,
which took significant changes on its code.

To ensure that my changes won't be breaking rasdaemon code,
a new CI was created as a separate project, aiming to do
end to end tests using QEMU, Linux Kernel and rasdaemon
on an error injection and error check logic at:

	https://github.com/mchehab/rasdaemon-ci

Its goal is to verify that all mechanisms are in place on
hardware error handling scenarios.

The rasdaemon-ci is written to be completely independent from each
project, with a primary goal of  detecting regressions at the
Linux Kernel and at rasdaemon. Indirectly, it also detect issues
at QEMU x86 and aarch64 RAS error injection logic via QMP.

Right now, it is using my QEMU tree fork with those patches on
it, together with another series I'll submit in separate carring
improvements to scripts/ghes_inject.py.

The rasdaemon -ci got several regressions that were fixed at
rasdaemon, and one regression due to a race condition at the
Linux Kernel:

	https://lore.kernel.org/all/d472a9a3ccfa8c0359d7d7acabed92c8927d8e47.1793174996.git.mchehab+huawei@kernel.org/

Mauro Carvalho Chehab (8):
  acpi_dev_interface: add ghes support state at AcpiDeviceIfClass
  tests/acpi: virt: reserve expected tables for PC GHES SCI support
  hw/i186: add support for HEST table with SCI
  hw/i386: add GHES support at ICH9 and PIIX4 PM
  tests/acpi: virt: add x86 DSDT and HEST tables
  docs: acpi_hest_ghes: document notification mechanisms
  tests: add GHES tests on arm64 virt machine
  tests: add GHES tests on x86 piix4 and q35 machines

 docs/specs/acpi_hest_ghes.rst        |  44 +++++++--
 hw/acpi/acpi_interface.c             |   7 ++
 hw/acpi/generic_event_device.c       |   6 ++
 hw/acpi/ghes.c                       |  30 +++---
 hw/acpi/ich9.c                       |  19 ++++
 hw/acpi/piix4.c                      |  25 +++++
 hw/i386/Kconfig                      |   1 +
 hw/i386/acpi-build.c                 | 102 +++++++++++++++++++++
 hw/i386/pc.c                         |  41 +++++++++
 hw/isa/lpc_ich9.c                    |   6 ++
 include/hw/acpi/acpi_dev_interface.h |   6 ++
 include/hw/acpi/ich9.h               |   2 +
 include/hw/acpi/piix4.h              |   2 +
 include/hw/i386/pc.h                 |   5 +
 tests/data/acpi/x86/pc/DSDT.ras      | Bin 0 -> 8818 bytes
 tests/data/acpi/x86/pc/HEST.ras      | Bin 0 -> 132 bytes
 tests/data/acpi/x86/q35/DSDT.ras     | Bin 0 -> 8647 bytes
 tests/data/acpi/x86/q35/HEST.ras     | Bin 0 -> 132 bytes
 tests/qtest/bios-tables-test.c       | 131 +++++++++++++++++++++++++++
 19 files changed, 406 insertions(+), 21 deletions(-)
 create mode 100644 tests/data/acpi/x86/pc/DSDT.ras
 create mode 100644 tests/data/acpi/x86/pc/HEST.ras
 create mode 100644 tests/data/acpi/x86/q35/DSDT.ras
 create mode 100644 tests/data/acpi/x86/q35/HEST.ras

-- 
2.56.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-11-08  8:45 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-08  8:45 [PATCH v2 0/8] Add ghes support for x86 via SCI notification Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 1/8] acpi_dev_interface: add ghes support state at AcpiDeviceIfClass Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 2/8] tests/acpi: virt: reserve expected tables for PC GHES SCI support Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 3/8] hw/i186: add support for HEST table with SCI Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 4/8] hw/i386: add GHES support at ICH9 and PIIX4 PM Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 5/8] tests/acpi: virt: add x86 DSDT and HEST tables Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 6/8] docs: acpi_hest_ghes: document notification mechanisms Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 7/8] tests: add GHES tests on arm64 virt machine Mauro Carvalho Chehab
2026-11-08  8:45 ` [PATCH v2 8/8] tests: add GHES tests on x86 piix4 and q35 machines Mauro Carvalho Chehab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox