[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 2/3] ACPI: i386: bump to MADT to revision 3
|
From: |
Michael S. Tsirkin |
|
Subject: |
Re: [PATCH 2/3] ACPI: i386: bump to MADT to revision 3 |
|
Date: |
Tue, 16 May 2023 17:28:06 -0400 |
On Tue, May 16, 2023 at 04:22:58PM -0500, Eric DeVolder wrote:
>
>
> On 5/16/23 07:51, Ani Sinha wrote:
> > On Tue, May 16, 2023 at 6:01 PM Igor Mammedov <imammedo@redhat.com> wrote:
> > >
> > > On Mon, 15 May 2023 16:33:10 -0400
> > > Eric DeVolder <eric.devolder@oracle.com> wrote:
> > >
> > > > Currently i386 QEMU generates MADT revision 3, and reports
> > > > MADT revision 1. Set .revision to 3 to match reality.
> > > >
> > > > Link:
> > > > https://lore.kernel.org/linux-acpi/20230327191026.3454-1-eric.devolder@ora
> > > > cle.com/T/#t
> > > > Signed-off-by: Eric DeVolder <eric.devolder@oracle.com>
> > > > ---
> > > > hw/i386/acpi-common.c | 2 +-
> > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/hw/i386/acpi-common.c b/hw/i386/acpi-common.c
> > > > index 52e5c1439a..8a0932fe84 100644
> > > > --- a/hw/i386/acpi-common.c
> > > > +++ b/hw/i386/acpi-common.c
> > > > @@ -102,7 +102,7 @@ void acpi_build_madt(GArray *table_data, BIOSLinker
> > > > *linker,
> > > > MachineClass *mc = MACHINE_GET_CLASS(x86ms);
> > > > const CPUArchIdList *apic_ids =
> > > > mc->possible_cpu_arch_ids(MACHINE(x86ms));
> > > > AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_GET_CLASS(adev);
> > > > - AcpiTable table = { .sig = "APIC", .rev = 1, .oem_id = oem_id,
> > > > + AcpiTable table = { .sig = "APIC", .rev = 3, .oem_id = oem_id,
> > > > .oem_table_id = oem_table_id };
> > > >
> > > > acpi_table_begin(&table, table_data);
> > >
> > > make check fails for me at this point
> > > (my guess is that not all APIC tables are whitelisted)
> >
> > I think the patchset needs to be rebased and the blobs regenerated.
>
> So I've been trying to overcome this today and not having much luck.
>
> When I run "make check V=2", I see at the end:
>
> Summary of Failures:
>
> 45/786 qemu:qtest+qtest-i386 / qtest-i386/bios-tables-test
> 68/786 qemu:qtest+qtest-x86_64 / qtest-x86_64/bios-tables-test
>
> If I go look at 45/786, for example, I see:
>
> Looking for expected file 'tests/data/acpi/pc/FACP'
> Using expected file 'tests/data/acpi/pc/FACP'
> Looking for expected file 'tests/data/acpi/pc/APIC'
> Using expected file 'tests/data/acpi/pc/APIC'
> Looking for expected file 'tests/data/acpi/pc/HPET'
> Using expected file 'tests/data/acpi/pc/HPET'
> Looking for expected file 'tests/data/acpi/pc/WAET'
> Using expected file 'tests/data/acpi/pc/WAET'
> Looking for expected file 'tests/data/acpi/pc/FACS'
> Using expected file 'tests/data/acpi/pc/FACS'
> Looking for expected file 'tests/data/acpi/pc/DSDT'
> Using expected file 'tests/data/acpi/pc/DSDT'
> acpi-test: Warning! APIC binary file mismatch. Actual [aml:/tmp/aml-R4D741],
> Expected [aml:tests/data/acpi/pc/APIC].
> See source file tests/qtest/bios-tables-test.c for instructions on how to
> update expected files.
> acpi-test: Warning! APIC mismatch. Actual [asl:/tmp/asl-GVD741.dsl,
> aml:/tmp/aml-R4D741], Expected [asl:/tmp/asl-1F9641.dsl,
> aml:tests/data/acpi/pc/APIC].
> --- /tmp/asl-1F9641.dsl 2023-05-16 15:18:31.292579156 -0400
> +++ /tmp/asl-GVD741.dsl 2023-05-16 15:18:31.291579149 -0400
> @@ -1,32 +1,32 @@
> /*
> * Intel ACPI Component Architecture
> * AML/ASL+ Disassembler version 20230331 (64-bit version)
> * Copyright (c) 2000 - 2023 Intel Corporation
> *
> - * Disassembly of tests/data/acpi/pc/APIC, Tue May 16 15:18:31 2023
> + * Disassembly of /tmp/aml-R4D741, Tue May 16 15:18:31 2023
> *
> * ACPI Data Table [APIC]
> *
> * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue (in
> hex)
> */
>
> [000h 0000 004h] Signature : "APIC" [Multiple APIC
> Description Table (MADT)]
> [004h 0004 004h] Table Length : 00000078
> -[008h 0008 001h] Revision : 01
> -[009h 0009 001h] Checksum : 8A
> +[008h 0008 001h] Revision : 03
> +[009h 0009 001h] Checksum : 88
> [00Ah 0010 006h] Oem ID : "BOCHS "
> [010h 0016 008h] Oem Table ID : "BXPC "
> [018h 0024 004h] Oem Revision : 00000001
> [01Ch 0028 004h] Asl Compiler ID : "BXPC"
> [020h 0032 004h] Asl Compiler Revision : 00000001
> [...]
>
> And the q35 looks very very similar.
>
> It suggests that I need to list tests/data/acpi/pc/APIC, which I have done
> in bios-tables-test-allowed-diff.h:
>
> /* List of comma-separated changed AML files to ignore */
> "tests/data/acpi/pc/APIC",
> "tests/data/acpi/q35/APIC",
> "tests/data/acpi/microvm/APIC",
> "tests/data/acpi/virt/APIC",
>
> But as I looked closer at the files that changed in the last step
> of the previous post, there are a bunch of them:
>
> tests/data/acpi/microvm/APIC | Bin 70 -> 70 bytes
> tests/data/acpi/microvm/APIC.ioapic2 | Bin 82 -> 82 bytes
> tests/data/acpi/microvm/APIC.pcie | Bin 110 -> 110 bytes
> tests/data/acpi/pc/APIC | Bin 120 -> 120 bytes
> tests/data/acpi/pc/APIC.acpihmat | Bin 128 -> 128 bytes
> tests/data/acpi/pc/APIC.cphp | Bin 160 -> 160 bytes
> tests/data/acpi/pc/APIC.dimmpxm | Bin 144 -> 144 bytes
> tests/data/acpi/q35/APIC | Bin 120 -> 120 bytes
> tests/data/acpi/q35/APIC.acpihmat | Bin 128 -> 128 bytes
> tests/data/acpi/q35/APIC.acpihmat-noinitiator | Bin 144 -> 144 bytes
> tests/data/acpi/q35/APIC.core-count2 | Bin 2478 -> 2478 bytes
> tests/data/acpi/q35/APIC.cphp | Bin 160 -> 160 bytes
> tests/data/acpi/q35/APIC.dimmpxm | Bin 144 -> 144 bytes
> tests/data/acpi/q35/APIC.xapic | Bin 2686 -> 2686 bytes
>
> Should all of these files be listed in allowed-diff.h?
unfortunately, yes.
> And I would also need to provide the diff for each in the patch
> containing this last step, correct?
>
> Thanks,
> eric
if you mean commit log, if the diff is the same it is
enough to list it once and mention it is the same.
--
MST
Re: [PATCH 0/3] ACPI: i386: bump MADT to revision 3, Ani Sinha, 2023/05/16