aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2021-06-03 17:34:23 +0100
committerPeter Maydell <peter.maydell@linaro.org>2021-06-03 18:01:17 +0100
commit33f1ef29958c12dc82e72dd2c8802207e849e795 (patch)
tree96d829505d60858571dfbcb0715b293404bdea1f
parente0c76ec0d454cec8e9417b375be694fab809aa12 (diff)
target/arm: Use acpi_ghes_present() to see if we report ACPI memory errorsno-virt
The virt_is_acpi_enabled() function is specific to the virt board, as is the check for its 'ras' property. Use the new acpi_ghes_present() function to check whether we should report memory errors via acpi_ghes_record_errors(). This avoids a link error if QEMU was built without support for the virt board, and provides a mechanism that can be used by any future board models that want to add ACPI memory error reporting support (they only need to call acpi_ghes_add_fw_cfg()). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--target/arm/kvm64.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/target/arm/kvm64.c b/target/arm/kvm64.c
index 37ceadd9a9..59982d470d 100644
--- a/target/arm/kvm64.c
+++ b/target/arm/kvm64.c
@@ -1410,14 +1410,10 @@ void kvm_arch_on_sigbus_vcpu(CPUState *c, int code, void *addr)
{
ram_addr_t ram_addr;
hwaddr paddr;
- Object *obj = qdev_get_machine();
- VirtMachineState *vms = VIRT_MACHINE(obj);
- bool acpi_enabled = virt_is_acpi_enabled(vms);
assert(code == BUS_MCEERR_AR || code == BUS_MCEERR_AO);
- if (acpi_enabled && addr &&
- object_property_get_bool(obj, "ras", NULL)) {
+ if (acpi_ghes_present() && addr) {
ram_addr = qemu_ram_addr_from_host(addr);
if (ram_addr != RAM_ADDR_INVALID &&
kvm_physical_memory_addr_from_host(c->kvm_state, addr, &paddr)) {