aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDongjiu Geng <gengdongjiu@huawei.com>2020-05-12 11:06:07 +0800
committerPeter Maydell <peter.maydell@linaro.org>2020-05-14 15:03:09 +0100
commit558b9d86407d56e13d8a2cd61cdecf0359e7804a (patch)
tree08b99bc06d809b0c90fa3a5afad92e1611399d98 /include
parent6b552b9bc8421c48e91c9a40ce5dccf78020c339 (diff)
downloadqemu-558b9d86407d56e13d8a2cd61cdecf0359e7804a.zip
qemu-558b9d86407d56e13d8a2cd61cdecf0359e7804a.tar.gz
qemu-558b9d86407d56e13d8a2cd61cdecf0359e7804a.tar.bz2
ACPI: Record Generic Error Status Block(GESB) table
kvm_arch_on_sigbus_vcpu() error injection uses source_id as index in etc/hardware_errors to find out Error Status Data Block entry corresponding to error source. So supported source_id values should be assigned here and not be changed afterwards to make sure that guest will write error into expected Error Status Data Block. Before QEMU writes a new error to ACPI table, it will check whether previous error has been acknowledged. If not acknowledged, the new errors will be ignored and not be recorded. For the errors section type, QEMU simulate it to memory section error. Signed-off-by: Dongjiu Geng <gengdongjiu@huawei.com> Signed-off-by: Xiang Zheng <zhengxiang9@huawei.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Message-id: 20200512030609.19593-9-gengdongjiu@huawei.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include')
-rw-r--r--include/hw/acpi/ghes.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/hw/acpi/ghes.h b/include/hw/acpi/ghes.h
index a3420fc..4ad025e 100644
--- a/include/hw/acpi/ghes.h
+++ b/include/hw/acpi/ghes.h
@@ -70,4 +70,5 @@ void build_ghes_error_table(GArray *hardware_errors, BIOSLinker *linker);
void acpi_build_hest(GArray *table_data, BIOSLinker *linker);
void acpi_ghes_add_fw_cfg(AcpiGhesState *vms, FWCfgState *s,
GArray *hardware_errors);
+int acpi_ghes_record_errors(uint8_t notify, uint64_t error_physical_addr);
#endif