All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v12 0/9] acpi: Error Record Serialization Table, ERST, support for QEMU
@ 2022-01-10 22:41 Eric DeVolder
  2022-01-10 22:41 ` [PATCH v12 1/9] ACPI ERST: bios-tables-test.c steps 1 and 2 Eric DeVolder
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Eric DeVolder @ 2022-01-10 22:41 UTC (permalink / raw)
  To: qemu-devel
  Cc: berrange, ehabkost, mst, konrad.wilk, pbonzini, ani, imammedo,
	boris.ostrovsky, rth

This patchset introduces support for the ACPI Error Record
Serialization Table, ERST.

For background and implementation information, please see
docs/specs/acpi_erst.rst, which is patch 2/10.

Suggested-by: Konrad Wilk <konrad.wilk@oracle.com>
Signed-off-by: Eric DeVolder <eric.devolder@oracle.com>

---
v12: 10jan2022
 - Converted macros in build_erst() to uppert to follow coding
   style, as pointed out by Michael Tsirkin.
 - And few items to help further simplify build_erst().

v11: 15dec2021
 - Simplified build_erst() via feedback from Michael Tsirkin
 - Addressed additional feedback from Ani Sinha

v10: 9dec2021
 - Addressed additional feedback from Ani Sinha

v9: 2dec2021
 - Addressed feedback from Ani Sinha

v8: 15oct2021
 - Added Kconfig option for ERST, per Ani Sinha
 - Fixed patch ordering, per Ani

v7: 7oct2021
 - style improvements, per Igor
 - use of endian accessors for storage header, per Igor
 - a number of optimizations and improvements, per Igor
 - updated spec for header, per Igor
 - updated spec for rst format, per Michael Tsirkin
 - updated spec for new record_size parameter
   Due to changes in the spec, I am not carrying the
   Acked-by from Ani Sinha.
 - changes for and testing of migration to systems with
   differing ERST_RECORD_SIZE

v6: 5aug2021
 - Fixed compile warning/error, per Michael Tsirkin
 - Fixed mingw32 build error, per Michael
 - Converted exchange buffer to MemoryBackend, per Igor
 - Migrated test to PCI, per Igor
 - Significantly reduced amount of copying, per Igor
 - Corrections/enhancements to acpi_erst.txt, per Igor
 - Many misc/other small items, per Igor

v5: 30jun2021
 - Create docs/specs/acpi_erst.txt, per Igor
 - Separate PCI BARs for registers and memory, per Igor
 - Convert debugging to use trace infrastructure, per Igor
 - Various other fixups, per Igor

v4: 11jun2021
 - Converted to a PCI device, per Igor.
 - Updated qtest.
 - Rearranged patches, per Igor.

v3: 28may2021
 - Converted to using a TYPE_MEMORY_BACKEND_FILE object rather than
   internal array with explicit file operations, per Igor.
 - Changed the way the qdev and base address are handled, allowing
   ERST to be disabled at run-time. Also aligns better with other
   existing code.

v2: 8feb2021
 - Added qtest/smoke test per Paolo Bonzini
 - Split patch into smaller chunks, per Igor Mammedov
 - Did away with use of ACPI packed structures, per Igor Mammedov

v1: 26oct2020
 - initial post

---
Eric DeVolder (9):
  ACPI ERST: bios-tables-test.c steps 1 and 2
  ACPI ERST: specification for ERST support
  ACPI ERST: PCI device_id for ERST
  ACPI ERST: header file for ERST
  ACPI ERST: support for ACPI ERST feature
  ACPI ERST: build the ACPI ERST table
  ACPI ERST: create ACPI ERST table for pc/x86 machines
  ACPI ERST: qtest for ERST
  ACPI ERST: bios-tables-test testcase

 docs/specs/acpi_erst.rst                    |  200 ++++++
 hw/acpi/Kconfig                             |    6 +
 hw/acpi/erst.c                              | 1033 +++++++++++++++++++++++++++
 hw/acpi/meson.build                         |    1 +
 hw/acpi/trace-events                        |   15 +
 hw/i386/acpi-build.c                        |   15 +
 hw/i386/acpi-microvm.c                      |   15 +
 include/hw/acpi/erst.h                      |   24 +
 include/hw/pci/pci.h                        |    1 +
 tests/data/acpi/microvm/ERST.pcie           |    0
 tests/data/acpi/pc/DSDT.acpierst            |    0
 tests/data/acpi/pc/ERST.acpierst            |    0
 tests/data/acpi/q35/DSDT.acpierst           |    0
 tests/data/acpi/q35/ERST.acpierst           |    0
 tests/qtest/bios-tables-test-allowed-diff.h |    5 +
 tests/qtest/bios-tables-test.c              |   54 ++
 tests/qtest/erst-test.c                     |  172 +++++
 tests/qtest/meson.build                     |    2 +
 18 files changed, 1543 insertions(+)
 create mode 100644 docs/specs/acpi_erst.rst
 create mode 100644 hw/acpi/erst.c
 create mode 100644 include/hw/acpi/erst.h
 create mode 100644 tests/data/acpi/microvm/ERST.pcie
 create mode 100644 tests/data/acpi/pc/DSDT.acpierst
 create mode 100644 tests/data/acpi/pc/ERST.acpierst
 create mode 100644 tests/data/acpi/q35/DSDT.acpierst
 create mode 100644 tests/data/acpi/q35/ERST.acpierst
 create mode 100644 tests/qtest/erst-test.c

-- 
1.8.3.1



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

end of thread, other threads:[~2022-01-10 22:59 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-10 22:41 [PATCH v12 0/9] acpi: Error Record Serialization Table, ERST, support for QEMU Eric DeVolder
2022-01-10 22:41 ` [PATCH v12 1/9] ACPI ERST: bios-tables-test.c steps 1 and 2 Eric DeVolder
2022-01-10 22:41 ` [PATCH v12 2/9] ACPI ERST: specification for ERST support Eric DeVolder
2022-01-10 22:41 ` [PATCH v12 3/9] ACPI ERST: PCI device_id for ERST Eric DeVolder
2022-01-10 22:41 ` [PATCH v12 4/9] ACPI ERST: header file " Eric DeVolder
2022-01-10 22:42 ` [PATCH v12 5/9] ACPI ERST: support for ACPI ERST feature Eric DeVolder
2022-01-10 22:42 ` [PATCH v12 6/9] ACPI ERST: build the ACPI ERST table Eric DeVolder
2022-01-10 22:42 ` [PATCH v12 7/9] ACPI ERST: create ACPI ERST table for pc/x86 machines Eric DeVolder
2022-01-10 22:42 ` [PATCH v12 8/9] ACPI ERST: qtest for ERST Eric DeVolder
2022-01-10 22:42 ` [PATCH v12 9/9] ACPI ERST: bios-tables-test testcase Eric DeVolder

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.