Re: [PATCH 12/15] acpi/ghes: don't crash QEMU if ghes GED is not found

From: Jonathan Cameron
Date: Thu Sep 26 2024 - 08:09:21 EST


On Wed, 25 Sep 2024 06:04:17 +0200
Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx> wrote:

> Instead, produce an error and continue working
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx>
Make sense as defense in depth. Can we actually hit this for existing
systems, or is the injection stuff disabled if the ged isn't configured?

Jonathan

> ---
> hw/acpi/ghes.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c
> index 3af1cd16d4d7..209095f67e9a 100644
> --- a/hw/acpi/ghes.c
> +++ b/hw/acpi/ghes.c
> @@ -418,7 +418,10 @@ void ghes_record_cper_errors(const void *cper, size_t len,
>
> acpi_ged_state = ACPI_GED(object_resolve_path_type("", TYPE_ACPI_GED,
> NULL));
> - g_assert(acpi_ged_state);
> + if (!acpi_ged_state) {
> + error_setg(errp, "Can't find ACPI_GED object");
> + return;
> + }
> ags = &acpi_ged_state->ghes_state;
>
> get_ghes_offsets(le64_to_cpu(ags->ghes_addr_le),