qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
To: Igor Mammedov <imammedo@redhat.com>
Cc: "Michael S . Tsirkin" <mst@redhat.com>,
	Jonathan Cameron <Jonathan.Cameron@huawei.com>,
	Shiju Jose <shiju.jose@huawei.com>,
	qemu-arm@nongnu.org, qemu-devel@nongnu.org,
	Ani Sinha <anisinha@redhat.com>,
	Dongjiu Geng <gengdongjiu1@gmail.com>,
	Peter Maydell <peter.maydell@linaro.org>,
	Shannon Zhao <shannon.zhaosl@gmail.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 01/14] acpi/ghes: prepare to change the way HEST offsets are calculated
Date: Thu, 27 Feb 2025 12:45:38 +0100	[thread overview]
Message-ID: <20250227124538.7a2191e0@foz.lan> (raw)
In-Reply-To: <20250226153714.20c57efe@imammedo.users.ipa.redhat.com>

Em Wed, 26 Feb 2025 15:37:14 +0100
Igor Mammedov <imammedo@redhat.com> escreveu:

> On Fri, 21 Feb 2025 15:35:10 +0100
> Mauro Carvalho Chehab <mchehab+huawei@kernel.org> wrote:
> 

> > diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
> > index 3ac8f8e17861..8ab8d11b6536 100644
> > --- a/hw/arm/virt-acpi-build.c
> > +++ b/hw/arm/virt-acpi-build.c
> > @@ -946,9 +946,18 @@ void virt_acpi_build(VirtMachineState *vms, AcpiBuildTables *tables)
> >      build_dbg2(tables_blob, tables->linker, vms);
> >  
> >      if (vms->ras) {
> > -        acpi_add_table(table_offsets, tables_blob);
> > -        acpi_build_hest(tables_blob, tables->hardware_errors, tables->linker,
> > -                        vms->oem_id, vms->oem_table_id);
> > +        AcpiGedState *acpi_ged_state;
> > +        AcpiGhesState *ags;
> > +
> > +        acpi_ged_state = ACPI_GED(object_resolve_path_type("", TYPE_ACPI_GED,  
>                             ^^^ will explode if object_resolve_path_type() returns NULL
> > +                                                       NULL));  
> 
> it's also expensive load-wise.
> You have access to vms with ged pointer here, use that
> (search for 'acpi_ged_state = ACPI_GED' example)

Ok, but the state binding on ghes were designed to use ACPI_GED. I moved
the code that it is using ACPI_GED() to the beginning of v5 series,
just after the HEST table test addition.

With that, ACPI_GED() is now used only on two places inside ghes:

- at virt_acpi_build(), during VM initialization;
- at acpi_ghes_get_state().

If you want to replace it by some other solution, IMO we should do
it on some separate series, as this is not related to neither error
injection nor with offset calculation to get read ack address. 

> > +        if (acpi_ged_state) {  
> 
>                 hence, this check is not really needed,
>                 we have to have GED at this point or abort
> 
>                 earlier code that instantiates GED should take care of
>                 cleanly exiting if it failed to create GED so we would never get
>                 to missing GED here

I dropped this check on v5.

Thanks,
Mauro


  reply	other threads:[~2025-02-27 11:46 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-21 14:35 [PATCH v4 00/14] Change ghes to use HEST-based offsets and add support for error inject Mauro Carvalho Chehab
2025-02-21 14:35 ` [PATCH v4 01/14] acpi/ghes: prepare to change the way HEST offsets are calculated Mauro Carvalho Chehab
2025-02-26 14:37   ` Igor Mammedov
2025-02-27 11:45     ` Mauro Carvalho Chehab [this message]
2025-02-27 12:22       ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 02/14] acpi/ghes: add a firmware file with HEST address Mauro Carvalho Chehab
2025-02-26 14:48   ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 03/14] acpi/ghes: Use HEST table offsets when preparing GHES records Mauro Carvalho Chehab
2025-02-26 15:16   ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 04/14] acpi/ghes: don't hard-code the number of sources for HEST table Mauro Carvalho Chehab
2025-02-26 15:48   ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 05/14] acpi/ghes: add a notifier to notify when error data is ready Mauro Carvalho Chehab
2025-02-21 14:35 ` [PATCH v4 06/14] acpi/ghes: create an ancillary acpi_ghes_get_state() function Mauro Carvalho Chehab
2025-02-26 15:27   ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 07/14] acpi/generic_event_device: Update GHES migration to cover hest addr Mauro Carvalho Chehab
2025-02-21 14:35 ` [PATCH v4 08/14] acpi/generic_event_device: add logic to detect if HEST addr is available Mauro Carvalho Chehab
2025-02-26 15:52   ` Igor Mammedov
2025-02-27  7:19     ` Mauro Carvalho Chehab
2025-02-27  7:26       ` Mauro Carvalho Chehab
2025-02-27  9:50         ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 09/14] acpi/generic_event_device: add an APEI error device Mauro Carvalho Chehab
2025-02-21 14:35 ` [PATCH v4 10/14] tests/acpi: virt: allow acpi table changes for a new table: HEST Mauro Carvalho Chehab
2025-02-26 15:55   ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 11/14] arm/virt: Wire up a GED error device for ACPI / GHES Mauro Carvalho Chehab
2025-02-26 15:58   ` Igor Mammedov
2025-02-21 14:35 ` [PATCH v4 12/14] tests/acpi: virt: add a HEST table to aarch64 virt and update DSDT Mauro Carvalho Chehab
2025-02-21 14:35 ` [PATCH v4 13/14] qapi/acpi-hest: add an interface to do generic CPER error injection Mauro Carvalho Chehab
2025-02-21 14:35 ` [PATCH v4 14/14] scripts/ghes_inject: add a script to generate GHES error inject Mauro Carvalho Chehab
2025-02-26 14:16 ` [PATCH v4 00/14] Change ghes to use HEST-based offsets and add support for " Igor Mammedov
2025-02-26 14:39   ` Mauro Carvalho Chehab
2025-02-26 14:51     ` Igor Mammedov
2025-02-26 16:00       ` Igor Mammedov
2025-02-27  9:54 ` Igor Mammedov
2025-02-27 11:05   ` Mauro Carvalho Chehab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250227124538.7a2191e0@foz.lan \
    --to=mchehab+huawei@kernel.org \
    --cc=Jonathan.Cameron@huawei.com \
    --cc=anisinha@redhat.com \
    --cc=gengdongjiu1@gmail.com \
    --cc=imammedo@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=shannon.zhaosl@gmail.com \
    --cc=shiju.jose@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).