Em Fri, 21 Jun 2024 19:33:16 +0100
Jonathan Cameron escreveu:
> On Fri, 21 Jun 2024 17:51:15 +0100
> wrote:
>
> > From: Shiju Jose
> Thanks for posting this.
>
> Given this is going to linux-edac, probably should mention
> this is QEMU based error injection. For cross postings
> between ke
Em Mon, 5 Aug 2024 16:04:39 +0200
Igor Mammedov escreveu:
> On Thu, 1 Aug 2024 15:15:44 +0200
> Mauro Carvalho Chehab wrote:
>
> > Em Tue, 30 Jul 2024 13:26:20 +0200
> > Igor Mammedov escreveu:
> >
> > > On Tue, 30 Jul 2024 09:29:37 +0100
> > >
Em Mon, 5 Aug 2024 17:39:46 +0100
Jonathan Cameron escreveu:
> On Fri, 2 Aug 2024 23:43:57 +0200
> Mauro Carvalho Chehab wrote:
>
> > Adds a Generic Event Device to handle generic hardware error
> > events, supporting General Purpose Event (GPE) as specified at
> >
Em Mon, 5 Aug 2024 17:54:00 +0100
Jonathan Cameron escreveu:
> On Fri, 2 Aug 2024 23:43:58 +0200
> Mauro Carvalho Chehab wrote:
>
> Do we need to rename this now there is a GED involved?
> Is it even technically a GPIO any more?
> Spec says in 18.3.2.7
> HW-reduced ACPI
Em Mon, 5 Aug 2024 17:56:17 +0100
Jonathan Cameron escreveu:
> On Fri, 2 Aug 2024 23:43:59 +0200
> Mauro Carvalho Chehab wrote:
>
> > From: Jonathan Cameron
> >
> > Add error notification to GHES v2 using the GPIO source.
>
> The gpio / external int
Em Tue, 6 Aug 2024 14:51:53 +0200
Igor Mammedov escreveu:
> > +{ 'struct': 'CommonPlatformErrorRecord',
> > + 'data': {
>
> > + 'notification-type': 'str',
>
> this should be source id (type is just impl. detail of how QEMU delivers
> event for given source id)
> unless there is no pl
Em Tue, 6 Aug 2024 11:32:19 +0200
Igor Mammedov escreveu:
> > @@ -327,6 +330,9 @@ static void build_ghes_v2(GArray *table_data, int
> > source_id, BIOSLinker *linker)
> > */
> > build_ghes_hw_error_notification(table_data, ACPI_GHES_NOTIFY_SEA);
> > break;
> > +ca
Em Tue, 6 Aug 2024 16:31:13 +0200
Igor Mammedov escreveu:
> PS:
> looking at the code, ACPI_GHES_MAX_RAW_DATA_LENGTH is 1K
> and it is the total size of a error block for a error source.
>
> However acpi_hest_ghes.rst (3) says it should be 4K,
> am I mistaken?
Maybe Jonathan knows better, but I
Em Wed, 7 Aug 2024 10:34:36 +0100
Jonathan Cameron escreveu:
> On Wed, 7 Aug 2024 09:47:50 +0200
> Mauro Carvalho Chehab wrote:
>
> > Em Tue, 6 Aug 2024 16:31:13 +0200
> > Igor Mammedov escreveu:
> >
> > > PS:
> > > looking at the code, ACPI_G
Em Tue, 6 Aug 2024 16:31:13 +0200
Igor Mammedov escreveu:
> > +/* Could also be read back from the error_block_address register */
> > +*error_block_addr = base +
> > +ACPI_GHES_ERROR_SOURCE_COUNT * sizeof(uint64_t) +
> > +ACPI_GHES_ERROR_SOURCE_COUNT * sizeof(uint64_t) +
Provide a generic interface for error injection via GHESv2.
This patch is co-authored:
- original ghes logic to inject a simple ARM record by Shiju Jose;
- generic logic to handle block addresses by Jonathan Cameron;
- generic GHESv2 error inject by Mauro Carvalho Chehab;
Co-authored
efine for generic error GPIO pin;
- a couple cleanups at patch 2 removing uneeded else clauses.
Jonathan Cameron (1):
acpi/ghes: Add support for GED error device
Mauro Carvalho Chehab (9):
acpi/generic_event_device: add an APEI error device
arm/virt: Wire up a GED error device for ACPI /
Add support to retrieve mpidr value via qom-get.
Signed-off-by: Mauro Carvalho Chehab
---
scripts/arm_processor_error.py | 30 ++
1 file changed, 22 insertions(+), 8 deletions(-)
diff --git a/scripts/arm_processor_error.py b/scripts/arm_processor_error.py
index
.
Such change was inspired on a patch from Jonathan Cameron
splitting the logic to get the CPER address on a separate
function, as this will be needed to support generic error
injection.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes-stub.c| 3 +-
hw/acpi/ghes.c | 225
OSPM]
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 12 +---
include/hw/acpi/ghes.h | 3 ++-
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c
index 13b105c5d02d..d6cbeed6e3d5 100644
--- a
While the spec defines a CPER size of 4KiB for each record,
currently it is set to 1KiB. Fix the documentation and add
a pointer to the macro name there, as this may help to keep
it updated.
Signed-off-by: Mauro Carvalho Chehab
---
docs/specs/acpi_hest_ghes.rst | 6 --
1 file changed, 4
it to be queried via QMP using
qom-get function.
Signed-off-by: Mauro Carvalho Chehab
---
target/arm/cpu.c| 1 +
target/arm/cpu.h| 1 +
target/arm/helper.c | 10 --
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index
Adds support to ARM virtualization to allow handling
generic error ACPI Event via GED & error source device.
It is aligned with Linux Kernel patch:
https://lore.kernel.org/lkml/1272350481-27951-8-git-send-email-ying.hu...@intel.com/
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jona
Using the QMP GHESv2 API requires preparing a raw data array
containing a CPER record.
Add a helper script with subcommands to prepare such data.
Currently, only ARM Processor error CPER record is supported.
Signed-off-by: Mauro Carvalho Chehab
---
MAINTAINERS| 3 +
qapi
Creates a QMP command to be used for generic ACPI APEI hardware error
injection (HEST) via GHESv2.
The actual GHES code will be added at the followup patch.
Signed-off-by: Mauro Carvalho Chehab
Signed-off-by: Shiju Jose
Reviewed-by: Jonathan Cameron
---
MAINTAINERS | 7
errors to
the guest via ACPI APEI Generic Hardware Error Source (GHES).
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jonathan Cameron
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/aml-build.c| 10 ++
hw/acpi
Having magic numbers inside the code is not a good idea, as it
is error-prone. So, instead, create a macro with the number
definition.
Link:
https://lore.kernel.org/qemu-devel/CAFEAcA-PYnZ-32MRX+PgvzhnoAV80zBKMYg61j2f=ohagfw...@mail.gmail.com/
Signed-off-by: Mauro Carvalho Chehab
Suggested-by
Em Thu, 8 Aug 2024 14:26:26 +0200
Mauro Carvalho Chehab escreveu:
> v6:
> - PNP0C33 device creation moved to aml-build.c;
> - acpi_ghes record functions now use ACPI notify parameter,
> instead of source ID;
> - the number of source IDs is now automatically calculated;
> -
Em Thu, 08 Aug 2024 10:50:33 +0200
Markus Armbruster escreveu:
> Mauro Carvalho Chehab writes:
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 98eddf7ae155..655edcb6688c 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -2075,6 +2075,13 @@ F: hw/ac
Em Thu, 8 Aug 2024 10:11:07 +0200
Igor Mammedov escreveu:
> On Wed, 7 Aug 2024 15:25:47 +0100
> Jonathan Cameron wrote:
>
> > On Tue, 6 Aug 2024 16:31:13 +0200
> > Igor Mammedov wrote:
> >
> > > On Fri, 2 Aug 2024 23:44:01 +020
Em Thu, 8 Aug 2024 16:58:38 -0400
John Snow escreveu:
> On Fri, Aug 2, 2024 at 5:44 PM Mauro Carvalho Chehab <
> mchehab+hua...@kernel.org> wrote:
>
> > +#!/usr/bin/env python3
> > +#
> > +# pylint: disable=C0301, C0114, R0912, R0913, R0914, R0915, W0511
Em Thu, 8 Aug 2024 17:21:33 -0400
John Snow escreveu:
> On Fri, Aug 2, 2024 at 5:44 PM Mauro Carvalho Chehab <
> mchehab+hua...@kernel.org> wrote:
>
> > diff --git a/scripts/qmp_helper.py b/scripts/qmp_helper.py
> > new file mode 100644
> > index 000
Em Fri, 9 Aug 2024 00:41:37 +0200
Mauro Carvalho Chehab escreveu:
> > You should be able to use e.g.
> >
> > legacy.py's QEMUMonitorProtocol class for synchronous connections, e.g.
> >
> > from qemu.qmp.legacy import QEMUMonitorProtocol
> >
Em Fri, 9 Aug 2024 08:26:09 +0200
Mauro Carvalho Chehab escreveu:
> Em Fri, 9 Aug 2024 00:41:37 +0200
> Mauro Carvalho Chehab escreveu:
>
> > > You should be able to use e.g.
> > >
> > > legacy.py's QEMUMonitorProtocol class for synchronous connection
Em Thu, 8 Aug 2024 19:33:32 -0400
John Snow escreveu:
> > > Then here you'd use qmp.cmd (raises exception on QMPError) or qmp.cmd_raw
> > > or qmp.cmd_obj (returns the QMP response as the return value even if it
> > was
> > > an error.)
> >
> > Good to know, I'll try and see what fits best.
Em Thu, 08 Aug 2024 16:45:51 +0200
Markus Armbruster escreveu:
> Igor Mammedov writes:
>
> > On Thu, 8 Aug 2024 16:11:41 +0200
> > Mauro Carvalho Chehab wrote:
> >
> >> Em Thu, 08 Aug 2024 10:50:33 +0200
> >> Markus Armbruster escreveu:
&g
Em Mon, 12 Aug 2024 11:39:00 +0200
Igor Mammedov escreveu:
> > We may also store cper_offset there via bios_linker_loader_add_pointer()
> > and/or use bios_linker_loader_write_pointer(), but I can't see how the
> > data stored there can be retrieved, nor any advantage of using it instead
> > of t
Em Mon, 12 Aug 2024 13:57:44 +0200
Igor Mammedov escreveu:
> n Platform Error Record - CPER - as defined at the UEFI
> > +# specification. See
> > +#
> > https://uefi.org/specs/UEFI/2.10/Apx_N_Common_Platform_Error_Record.html#record-header
> > +# for more details.
> > +#
> > +# @notification-t
it to be queried via QMP using
qom-get function.
Signed-off-by: Mauro Carvalho Chehab
---
target/arm/cpu.c| 1 +
target/arm/cpu.h| 1 +
target/arm/helper.c | 10 --
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index
Add support to retrieve mpidr value via qom-get.
Signed-off-by: Mauro Carvalho Chehab
---
scripts/arm_processor_error.py | 27 +++
1 file changed, 19 insertions(+), 8 deletions(-)
diff --git a/scripts/arm_processor_error.py b/scripts/arm_processor_error.py
index
While the spec defines a CPER size of 4KiB for each record,
currently it is set to 1KiB. Fix the documentation and add
a pointer to the macro name there, as this may help to keep
it updated.
Signed-off-by: Mauro Carvalho Chehab
Acked-by: Igor Mammedov
---
docs/specs/acpi_hest_ghes.rst | 6
.
Such change was inspired on a patch from Jonathan Cameron
splitting the logic to get the CPER address on a separate
function, as this will be needed to support generic error
injection.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes-stub.c | 3 +-
hw/acpi/ghes.c | 204
ing a define for GPIO power pin;
- patch 2 changed to also use a define for generic error GPIO pin;
- a couple cleanups at patch 2 removing uneeded else clauses.
Jonathan Cameron (1):
acpi/ghes: Add support for GED error device
Mauro Carvalho Chehab (9):
acpi/generic_event_device: add an APEI
Using the QMP GHESv2 API requires preparing a raw data array
containing a CPER record.
Add a helper script with subcommands to prepare such data.
Currently, only ARM Processor error CPER record is supported.
Signed-off-by: Mauro Carvalho Chehab
---
MAINTAINERS| 3
OSPM]
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
Reviewed-by: Igor Mammedov
---
hw/acpi/ghes.c | 12 +---
include/hw/acpi/ghes.h | 3 ++-
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c
index
Creates a QMP command to be used for generic ACPI APEI hardware error
injection (HEST) via GHESv2.
The actual GHES code will be added at the followup patch.
Signed-off-by: Mauro Carvalho Chehab
Signed-off-by: Shiju Jose
Reviewed-by: Jonathan Cameron
---
MAINTAINERS | 7
Adds support to ARM virtualization to allow handling
generic error ACPI Event via GED & error source device.
It is aligned with Linux Kernel patch:
https://lore.kernel.org/lkml/1272350481-27951-8-git-send-email-ying.hu...@intel.com/
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jona
Provide a generic interface for error injection via GHESv2.
This patch is co-authored:
- original ghes logic to inject a simple ARM record by Shiju Jose;
- generic logic to handle block addresses by Jonathan Cameron;
- generic GHESv2 error inject by Mauro Carvalho Chehab;
Co-authored
errors to
the guest via ACPI APEI Generic Hardware Error Source (GHES).
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jonathan Cameron
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
Reviewed-by: Igor Mammedov
---
hw/acpi/aml-build.c| 10
Em Mon, 12 Aug 2024 14:18:35 +0200
Igor Mammedov escreveu:
> On Thu, 8 Aug 2024 14:57:35 +0200
> Mauro Carvalho Chehab wrote:
>
> > Em Thu, 8 Aug 2024 14:26:26 +0200
> > Mauro Carvalho Chehab escreveu:
> >
> > > v6:
> > > - PNP0C33 device cre
Em Wed, 14 Aug 2024 14:53:22 +0100
Jonathan Cameron escreveu:
> On Wed, 14 Aug 2024 01:23:26 +0200
> Mauro Carvalho Chehab wrote:
>
> > Creates a QMP command to be used for generic ACPI APEI hardware error
> > injection (HEST) via GHESv2.
> >
> > The actu
Em Wed, 14 Aug 2024 01:23:27 +0200
Mauro Carvalho Chehab escreveu:
This hunk is wrong:
> @@ -350,9 +380,10 @@ static void build_ghes_v2(GArray *table_data, int
> source_id, BIOSLinker *linker)
> build_append_gas(table_data, AML_AS_SYSTEM_MEMORY, 0x40, 0,
>
Em Wed, 14 Aug 2024 13:33:21 +0100
Jonathan Cameron escreveu:
> On Wed, 14 Aug 2024 01:23:23 +0200
> Mauro Carvalho Chehab wrote:
>
> > Adds a generic error device to handle generic hardware error
> > events as specified at ACPI 6.5 specification at 18.3.2.7.2:
> >
Creates a QMP command to be used for generic ACPI APEI hardware error
injection (HEST) via GHESv2.
The actual GHES code will be added at the followup patch.
Signed-off-by: Mauro Carvalho Chehab
Signed-off-by: Shiju Jose
Reviewed-by: Jonathan Cameron
---
MAINTAINERS | 7
While the spec defines a CPER size of 4KiB for each record,
currently it is set to 1KiB. Fix the documentation and add
a pointer to the macro name there, as this may help to keep
it updated.
Signed-off-by: Mauro Carvalho Chehab
Acked-by: Igor Mammedov
---
docs/specs/acpi_hest_ghes.rst | 6
Add support to retrieve mpidr value via qom-get.
Signed-off-by: Mauro Carvalho Chehab
---
scripts/arm_processor_error.py | 27 +++
1 file changed, 19 insertions(+), 8 deletions(-)
diff --git a/scripts/arm_processor_error.py b/scripts/arm_processor_error.py
index
OSPM]
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
Reviewed-by: Igor Mammedov
---
hw/acpi/ghes.c | 11 +--
include/hw/acpi/ghes.h | 3 ++-
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c
index 13b105c5d02d
.
Such change was inspired on a patch from Jonathan Cameron
splitting the logic to get the CPER address on a separate
function, as this will be needed to support generic error
injection.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes-stub.c | 3 +-
hw/acpi/ghes.c | 210
00deadbeef
[9.374267] Memory failure: 0xdeadb: recovery action for free buddy page:
Recovered
Such script currently supports arm processor error CPER, but can easily be
extended to other GHES notification types.
Jonathan Cameron (1):
acpi/ghes: Add support for GED error device
Mauro Carvalho
Remove comments that are obvious.
No functional changes.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 38 +++---
1 file changed, 15 insertions(+), 23 deletions(-)
diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c
index 4f7b6c5ad2b6..a822a5eafaa0 100644
Using the QMP GHESv2 API requires preparing a raw data array
containing a CPER record.
Add a helper script with subcommands to prepare such data.
Currently, only ARM Processor error CPER record is supported.
Signed-off-by: Mauro Carvalho Chehab
---
MAINTAINERS| 3
Better organize the code of the function, making it to use the
raw CPER function, thus removing duplicated code.
While here, rename the function to actually reflect what it does.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes-stub.c| 2 +-
hw/acpi/ghes.c | 125
Adds support to ARM virtualization to allow handling
generic error ACPI Event via GED & error source device.
It is aligned with Linux Kernel patch:
https://lore.kernel.org/lkml/1272350481-27951-8-git-send-email-ying.hu...@intel.com/
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jona
errors to
the guest via ACPI APEI Generic Hardware Error Source (GHES).
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jonathan Cameron
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
Reviewed-by: Igor Mammedov
---
hw/acpi/aml-build.c| 10
it to be queried via QMP using
qom-get function.
Signed-off-by: Mauro Carvalho Chehab
---
target/arm/cpu.c| 1 +
target/arm/cpu.h| 1 +
target/arm/helper.c | 10 --
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index
The OS kernels navigate between HEST, error source struct
and CPER by the usage of some pointers. Double-check if such
pointers were properly initializing, ensuring that they match
the right address for CPER.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 30
Provide a generic interface for error injection via GHESv2.
This patch is co-authored:
- original ghes logic to inject a simple ARM record by Shiju Jose;
- generic logic to handle block addresses by Jonathan Cameron;
- generic GHESv2 error inject by Mauro Carvalho Chehab;
Co-authored
Em Mon, 19 Aug 2024 13:43:04 +0200
Igor Mammedov escreveu:
> On Fri, 16 Aug 2024 09:37:35 +0200
> Mauro Carvalho Chehab wrote:
>
> > From: Jonathan Cameron
> >
> > As a GED error device is now defined, add another type
> > of notification.
> >
>
Em Mon, 19 Aug 2024 16:07:33 +0200
Igor Mammedov escreveu:
> > +err_source_struct = le64_to_cpu(ags->hest_addr_le) +
> > +source * HEST_GHES_V2_TABLE_SIZE;
>
> there is no guaranties that HEST table will contain only GHESv2 sources,
> and once such is added this pla
Em Mon, 19 Aug 2024 14:10:37 +0200
Igor Mammedov escreveu:
> On Fri, 16 Aug 2024 09:37:37 +0200
> Mauro Carvalho Chehab wrote:
>
> > The current logic is based on a lot of duct tape, with
> > offsets calculated based on one define with the number of
> > source IDs an
Em Mon, 19 Aug 2024 14:51:36 +0200
Igor Mammedov escreveu:
> > +read_ack = 1;
> > +cpu_physical_memory_write(read_ack_start_addr,
> > + &read_ack, (uint64_t));
> we don't do this for SEV so, why are you setting it to 1 here?
According with:
http
it to be queried via QMP using
qom-get function.
Signed-off-by: Mauro Carvalho Chehab
---
target/arm/cpu.c| 1 +
target/arm/cpu.h| 1 +
target/arm/helper.c | 10 --
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index
Adds support to ARM virtualization to allow handling
generic error ACPI Event via GED & error source device.
It is aligned with Linux Kernel patch:
https://lore.kernel.org/lkml/1272350481-27951-8-git-send-email-ying.hu...@intel.com/
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jona
Using the QMP GHESv2 API requires preparing a raw data array
containing a CPER record.
Add a helper script with subcommands to prepare such data.
Currently, only ARM Processor error CPER record is supported.
Signed-off-by: Mauro Carvalho Chehab
---
MAINTAINERS| 3
Some error injection notify methods are async, like GPIO
notify. Add a notifier to be used when the error record is
ready to be sent to the guest OS.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 5 +
include/hw/acpi/ghes.h | 3 +++
2 files changed, 8 insertions(+)
diff
Now that we have also have a file to store HEST data location,
which is part of GHES, better name the file where CPER records
are stored.
No functional changes.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 22 +++---
1 file changed, 11 insertions(+), 11 deletions
types.
Mauro Carvalho Chehab (12):
acpi/ghes: add a firmware file with HEST address
acpi/ghes: rework the logic to handle HEST source ID
acpi/ghes: rename etc/hardware_error file macros
acpi/ghes: better name GHES memory error function
acpi/ghes: add a notifier to notify when error data is
Carvalho Chehab;
Co-authored-by: Jonathan Cameron
Co-authored-by: Shiju Jose
Co-authored-by: Mauro Carvalho Chehab
Signed-off-by: Jonathan Cameron
Signed-off-by: Shiju Jose
Signed-off-by: Mauro Carvalho Chehab
---
MAINTAINERS | 7 +++
hw/acpi/Kconfig | 5
While the spec defines a CPER size of 4KiB for each record,
currently it is set to 1KiB. Fix the documentation and add
a pointer to the macro name there, as this may help to keep
it updated.
Signed-off-by: Mauro Carvalho Chehab
Acked-by: Igor Mammedov
---
docs/specs/acpi_hest_ghes.rst | 6
.
Such change was inspired on a patch from Jonathan Cameron
splitting the logic to get the CPER address on a separate
function, as this will be needed to support generic error
injection.
Signed-off-by: Mauro Carvalho Chehab
---
Changes from v8:
- Non-rename/cleanup changes merged altogether
The current function used to generate GHES data is specific for
memory errors. Give a better name for it, as we now have a generic
function as well.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes-stub.c| 2 +-
hw/acpi/ghes.c | 2 +-
include/hw/acpi/ghes.h | 4 ++--
target/arm
Em Sat, 24 Aug 2024 02:15:10 +0200
Mauro Carvalho Chehab escreveu:
> Ok, we could still do something like this pseudo-code to get the
> error source offset:
>
> #define ACPI_HEST_TYPE_GHESV2 11
>
> err_struct_offset = 0;
> for (i = 0; i
Store HEST table address at GPA, placing its content at
hest_addr_le variable.
Signed-off-by: Mauro Carvalho Chehab
---
Change from v8:
- hest_addr_lr is now pointing to the error source size and data.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 15
Add support to retrieve mpidr value via qom-get.
Signed-off-by: Mauro Carvalho Chehab
---
scripts/arm_processor_error.py | 27 +++
1 file changed, 19 insertions(+), 8 deletions(-)
diff --git a/scripts/arm_processor_error.py b/scripts/arm_processor_error.py
index
errors to
the guest via ACPI APEI Generic Hardware Error Source (GHES).
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jonathan Cameron
Signed-off-by: Jonathan Cameron
Signed-off-by: Mauro Carvalho Chehab
Reviewed-by: Igor Mammedov
---
hw/acpi/aml-build.c| 10
Em Sun, 25 Aug 2024 12:34:14 +0100
Peter Maydell escreveu:
> On Sun, 25 Aug 2024 at 04:46, Mauro Carvalho Chehab
> wrote:
> >
> > Accurately injecting an ARM Processor error ACPI/APEI GHES
> > error record requires the value of the ARM Multiprocessor
> > Affinity R
Em Fri, 30 Aug 2024 17:27:27 +0100
Peter Maydell escreveu:
> On Mon, 26 Aug 2024 at 04:12, Mauro Carvalho Chehab
> wrote:
> >
> > Em Sun, 25 Aug 2024 12:34:14 +0100
> > Peter Maydell escreveu:
> >
> > > On Sun, 25 Aug 2024 at 04
Em Thu, 12 Sep 2024 14:42:33 +0200
Igor Mammedov escreveu:
> On Wed, 11 Sep 2024 16:34:36 +0100
> Jonathan Cameron wrote:
>
> > On Wed, 11 Sep 2024 15:21:32 +0200
> > Igor Mammedov wrote:
> >
> > > On Sun, 25 Aug 2024 05:29:23 +0200
> > > Mauro Ca
Em Wed, 11 Sep 2024 15:51:08 +0200
Igor Mammedov escreveu:
> On Sun, 25 Aug 2024 05:45:56 +0200
> Mauro Carvalho Chehab wrote:
>
> > Store HEST table address at GPA, placing its content at
> > hest_addr_le variable.
> >
> > Signed-off-by: Mauro Carvalho Che
Em Wed, 11 Sep 2024 17:01:57 +0200
Igor Mammedov escreveu:
> On Sun, 25 Aug 2024 05:45:57 +0200
> Mauro Carvalho Chehab wrote:
>
> > The current logic is based on a lot of duct tape, with
> > offsets calculated based on one define with the number of
> > source IDs an
my taste.
So, IMO it is a lot safer to not support migrations from v1 (only
ghes_addr_le), using a patch like the enclosed one to ensure that.
Btw, checking existing migration structs, it sounds that for almost all
structures, .version_id is identical to .minimum_version_id, meaning that
migrati
Em Fri, 13 Sep 2024 14:28:02 +0200
Igor Mammedov escreveu:
> > > 5. Just return an error code without doing any resets. To me, this is
> > >the worse scenario.
> > >
> > > I don't like (5), as if something bad happens, there's nothing to be
> > > done.
> >
> > If it happens on a real s
it to be queried via QMP using
qom-get function.
Signed-off-by: Mauro Carvalho Chehab
---
target/arm/cpu.c| 1 +
target/arm/cpu.h| 1 +
target/arm/helper.c | 10 --
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index
Some error injection notify methods are async, like GPIO
notify. Add a notifier to be used when the error record is
ready to be sent to the guest OS.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 5 +
include/hw/acpi/ghes.h | 3 +++
2 files changed, 8 insertions(+)
diff
The GHES migration logic at GED should now support HEST table
location too.
Increase migration version and change needed to check for both
ghes_addr_le and hest_addr_le.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/generic_event_device.c | 11 ++-
1 file changed, 6 insertions(+), 5
Adds support to ARM virtualization to allow handling
generic error ACPI Event via GED & error source device.
It is aligned with Linux Kernel patch:
https://lore.kernel.org/lkml/1272350481-27951-8-git-send-email-ying.hu...@intel.com/
Co-authored-by: Mauro Carvalho Chehab
Co-authored-by: Jona
The number of sources is architecture-dependent. Usually,
architectures will implement one synchronous and/or one
asynchronous source.
Change the logic to better cope with such model.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 53
.
Such change was inspired on a patch from Jonathan Cameron
splitting the logic to get the CPER address on a separate
function, as this will be needed to support generic error
injection.
Signed-off-by: Mauro Carvalho Chehab
---
Changes from v9:
- patch split on multiple patches to avoid multiple
HEST source ID is actually a 16-bit value. Yet, make it a little
bit more generic using just an integer type.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes-stub.c| 2 +-
hw/acpi/ghes.c | 2 +-
include/hw/acpi/ghes.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions
This is just duplicating ACPI_GHES_ERROR_SOURCE_COUNT, which
has a better name. So, drop the duplication.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 7 ++-
include/hw/acpi/ghes.h | 3 ++-
2 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/hw/acpi/ghes.c b
Store HEST table address at GPA, placing its content at
hest_addr_le variable.
Signed-off-by: Mauro Carvalho Chehab
---
Change from v8:
- hest_addr_lr is now pointing to the error source size and data.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi/ghes.c | 15
Instead, produce an error and continue working
Signed-off-by: Mauro Carvalho Chehab
---
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 f54865423f69..e47c0238f3c5 100644
--- a/hw/acpi/ghes.c
+++ b/hw/acpi/ghes.c
Using the QMP GHESv2 API requires preparing a raw data array
containing a CPER record.
Add a helper script with subcommands to prepare such data.
Currently, only ARM Processor error CPER record is supported.
Signed-off-by: Mauro Carvalho Chehab
---
MAINTAINERS| 3
()
function is now an internal function.
Signed-off-by: Mauro Carvalho Chehab
---
Changes from v8:
- Non-rename/cleanup changes merged altogether;
- source ID is now more generic, defined per guest target.
That should make easier to add support for 86.
Signed-off-by: Mauro Carvalho Chehab
---
hw/acpi
Carvalho Chehab;
Co-authored-by: Jonathan Cameron
Co-authored-by: Shiju Jose
Co-authored-by: Mauro Carvalho Chehab
Signed-off-by: Jonathan Cameron
Signed-off-by: Shiju Jose
Signed-off-by: Mauro Carvalho Chehab
---
Changes since v9:
- ARM source IDs renamed to reflect SYNC/ASYNC;
- command
1 - 100 of 563 matches
Mail list logo