On Wed, 9 Apr 2025 12:49:36 -0300
Gustavo Romero <gustavo.rom...@linaro.org> wrote:

> Hi Igor,
> 
> On 4/9/25 11:05, Igor Mammedov wrote:
> > On Fri, 4 Apr 2025 00:01:22 -0300
> > Gustavo Romero <gustavo.rom...@linaro.org> wrote:
> >   
> >> Hi Phil,
> >>
> >> On 4/3/25 17:40, Philippe Mathieu-Daudé wrote:  
> >>> We are going to fix the test_acpi_aarch64_virt_tcg_its_off()
> >>> test. In preparation, copy the ACPI tables which will be
> >>> altered as 'its_off' variants, and whitelist them.
> >>>
> >>> Reviewed-by: Gustavo Romero <gustavo.rom...@linaro.org>
> >>> Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
> >>> ---
> >>>    tests/qtest/bios-tables-test-allowed-diff.h |   3 +++
> >>>    tests/qtest/bios-tables-test.c              |   1 +
> >>>    tests/data/acpi/aarch64/virt/APIC.its_off   | Bin 0 -> 184 bytes
> >>>    tests/data/acpi/aarch64/virt/FACP.its_off   | Bin 0 -> 276 bytes
> >>>    tests/data/acpi/aarch64/virt/IORT.its_off   | Bin 0 -> 236 bytes
> >>>    5 files changed, 4 insertions(+)
> >>>    create mode 100644 tests/data/acpi/aarch64/virt/APIC.its_off
> >>>    create mode 100644 tests/data/acpi/aarch64/virt/FACP.its_off
> >>>    create mode 100644 tests/data/acpi/aarch64/virt/IORT.its_off
> >>>
> >>> diff --git a/tests/qtest/bios-tables-test-allowed-diff.h 
> >>> b/tests/qtest/bios-tables-test-allowed-diff.h
> >>> index dfb8523c8bf..3421dd5adf3 100644
> >>> --- a/tests/qtest/bios-tables-test-allowed-diff.h
> >>> +++ b/tests/qtest/bios-tables-test-allowed-diff.h
> >>> @@ -1 +1,4 @@
> >>>    /* List of comma-separated changed AML files to ignore */
> >>> +"tests/data/acpi/aarch64/virt/APIC.its_off",
> >>> +"tests/data/acpi/aarch64/virt/FACP.its_off",
> >>> +"tests/data/acpi/aarch64/virt/IORT.its_off",  
> >>
> >> I think your first approach is the correct one: you add the blobs
> >> when adding the new test, so they would go into patch 5/9 in this series,
> >> making the test pass without adding anything to 
> >> bios-tables-test-allowed-diff.h.
> >> Then in this patch only add the APIC.its_off table to the 
> >> bios-tables-test-allowed-diff.h
> >> since that's the table that changes when the fix is in place, as you did 
> >> in:  
> > 
> > if APIC.its_off is the only one that's changing, but FACP/IORT blobs are 
> > the same
> > as suffix-less blobs, one can omit copying FACP/IORT as test harness will 
> > fallback
> > to suffix-less blob if the one with suffix isn't found.  
> 
> OK. Just clarifying and for the records, this is not the case for this series
> 
> 
> > if blobs are different from defaults then create empty blobs and whitelist 
> > them in the same patch
> > then do your changes and then update blobs & wipeout withe list.  
> 
> Thanks for confirming it. That's what I suggested to Phil in my first review 
> and what
> I understood from the prescription in bios-tables-test.c.
> 
> However, on second thoughts, for this particular series, isn't it better to 
> have the following commit sequence instead:
> 
> 1) Add the new test and the new blobs that make the test pass, i.e. 
> APIC.suffix, FACP.suffix, and IORT.suffix (they are different than the 
> default suffix-less blobs)

blobs should be a separate commit (that way it's easier for maintainer to 
rebase them,
if they clash during merge with some other change.

> 2) Whitelist only the APIC.suffix since that's the table that will change 
> with the fix
> 3) Add the fix (which changes the APIC table so a new APIC.suffix blob is 
> needed and also stops generating the IORT table, so no more IORT.suffix blob 
> is necessary)
> 4) Finally, update only the APIC.suffix blob and remove the IORT.suffix blob 
> and wipe out the whitelist
> 
> This way:
> 
> A) It's clear that only ACPI blob changed with the fix, because there is no 
> addition of a FACP.suffix blob in 4) (it remains the same)
> B) It's clear that the IORT table is removed with the fix and is not relevant 
> anymore for the test

I'd just mention it in commit log so  that later no one would wonder why we are 
adding and then removing tables

As for the rest of suggestions, it looks fine to me.

> 
> What do you think?
> 
> 
> Cheers,
> Gustavo
> 
> > Phil,
> > the process is described in doc comment at the top of 
> > tests/qtest/bios-tables-test.c
> >   
> >> https://mail.gnu.org/archive/html/qemu-devel/2025-03/msg07082.html
> >>
> >> Plus, adding the blobs, which are actually related to the test in the other
> >> patch, and ignoring them at the same time looks confusing to me. I 
> >> understand
> >> that only the blob that changes (APIC.its_off) with the fix should be 
> >> temporarily
> >> ignored and, later, updated, as in your first series.
> >>
> >>
> >> Cheers,
> >> Gustavo
> >>  
> >>> diff --git a/tests/qtest/bios-tables-test.c 
> >>> b/tests/qtest/bios-tables-test.c
> >>> index baaf199e01c..55366bf4956 100644
> >>> --- a/tests/qtest/bios-tables-test.c
> >>> +++ b/tests/qtest/bios-tables-test.c
> >>> @@ -2151,6 +2151,7 @@ static void test_acpi_aarch64_virt_tcg_its_off(void)
> >>>        test_data data = {
> >>>            .machine = "virt",
> >>>            .arch = "aarch64",
> >>> +        .variant = ".its_off",
> >>>            .tcg_only = true,
> >>>            .uefi_fl1 = "pc-bios/edk2-aarch64-code.fd",
> >>>            .uefi_fl2 = "pc-bios/edk2-arm-vars.fd",
> >>> diff --git a/tests/data/acpi/aarch64/virt/APIC.its_off 
> >>> b/tests/data/acpi/aarch64/virt/APIC.its_off
> >>> new file mode 100644
> >>> index 
> >>> 0000000000000000000000000000000000000000..c37d05d6e05805304f10afe73eb7cb9100fcccfa
> >>> GIT binary patch
> >>> literal 184
> >>> zcmZ<^@O0k6z`($=+{xeBBUr&HBEVSz2pEB4AU24G0Uik$i-7~iVgWL^17JJ`2AFzr
> >>> bgb+@aBn}xq0gwb2)Q)cq{30-g9B_L93G4|0
> >>>
> >>> literal 0
> >>> HcmV?d00001
> >>>
> >>> diff --git a/tests/data/acpi/aarch64/virt/FACP.its_off 
> >>> b/tests/data/acpi/aarch64/virt/FACP.its_off
> >>> new file mode 100644
> >>> index 
> >>> 0000000000000000000000000000000000000000..606dac3fe4b55c31fd68b25d3a4127eeef227434
> >>> GIT binary patch
> >>> literal 276  
> >>> zcmZ>BbPf<<WME(uaq@Te2v%^42yj*a0-z8Bhz+8t3j|P&V`N}P6&N^PpsQ~v$aVnZ  
> >>> CVg~^L
> >>>
> >>> literal 0
> >>> HcmV?d00001
> >>>
> >>> diff --git a/tests/data/acpi/aarch64/virt/IORT.its_off 
> >>> b/tests/data/acpi/aarch64/virt/IORT.its_off
> >>> new file mode 100644
> >>> index 
> >>> 0000000000000000000000000000000000000000..0fceb820d509e852ca0849baf568a8e93e426738
> >>> GIT binary patch
> >>> literal 236
> >>> zcmebD4+?q1z`(#9?&R<65v<@85#X!<1dKp25F11@1F-=RgMkDCNC*yK9F_<M77!bR  
> >>> zUBI%eoFED&4;F$FSwK1)h;xBB2Py`m{{M%tVD>TjFfcO#g+N#Zh@s|zoCF3AP#UU@  
> >>> R!2`+%Dg6Hr$N|zYvjDIZ5CH%H
> >>>
> >>> literal 0
> >>> HcmV?d00001
> >>>      
> >>  
> >   
> 


Reply via email to