qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 7/8] tests: acpi: aarch64/virt: add a test for hmat nodes wit


From: Igor Mammedov
Subject: Re: [PATCH 7/8] tests: acpi: aarch64/virt: add a test for hmat nodes with no initiators
Date: Mon, 18 Jul 2022 16:19:28 +0200

On Mon, 11 Jul 2022 11:44:35 +0100
Hesham Almatary <hesham.almatary@huawei.com> wrote:

> This patch imitates the "tests: acpi: q35: add test for hmat nodes
> without initiators" commit to test numa nodes with different HMAT
> attributes, but on AArch64/virt.
> 
> Tested with:
> qemu-system-aarch64 -accel tcg \
>  -machine virt,hmat=on,gic-version=3  -cpu cortex-a57 \
>  -bios qemu-efi-aarch64/QEMU_EFI.fd \
>  -kernel Image -append "root=/dev/vda2 console=ttyAMA0" \
>  -drive if=virtio,file=aarch64.qcow2,format=qcow2,id=hd \
>  -device virtio-rng-pci \
>  -net user,hostfwd=tcp::10022-:22 -net nic \
>  -device intel-hda -device hda-duplex -nographic \
>  -smp 4 \
>  -m 3G \
>  -object memory-backend-ram,size=1G,id=ram0 \
>  -object memory-backend-ram,size=1G,id=ram1 \
>  -object memory-backend-ram,size=1G,id=ram2 \
>  -numa node,nodeid=0,memdev=ram0,cpus=0-1 \
>  -numa node,nodeid=1,memdev=ram1,cpus=2-3 \
>  -numa node,nodeid=2,memdev=ram2 \
>  -numa 
> hmat-lb,initiator=0,target=0,hierarchy=memory,data-type=access-latency,latency=10
>  \
>  -numa 
> hmat-lb,initiator=0,target=0,hierarchy=memory,data-type=access-bandwidth,bandwidth=10485760
>  \
>  -numa 
> hmat-lb,initiator=0,target=1,hierarchy=memory,data-type=access-latency,latency=20
>  \
>  -numa 
> hmat-lb,initiator=0,target=1,hierarchy=memory,data-type=access-bandwidth,bandwidth=5242880
>  \
>  -numa 
> hmat-lb,initiator=0,target=2,hierarchy=memory,data-type=access-latency,latency=30
>  \
>  -numa 
> hmat-lb,initiator=0,target=2,hierarchy=memory,data-type=access-bandwidth,bandwidth=1048576
>  \
>  -numa 
> hmat-lb,initiator=1,target=0,hierarchy=memory,data-type=access-latency,latency=20
>  \
>  -numa 
> hmat-lb,initiator=1,target=0,hierarchy=memory,data-type=access-bandwidth,bandwidth=5242880
>  \
>  -numa 
> hmat-lb,initiator=1,target=1,hierarchy=memory,data-type=access-latency,latency=10
>  \
>  -numa 
> hmat-lb,initiator=1,target=1,hierarchy=memory,data-type=access-bandwidth,bandwidth=10485760
>  \
>  -numa 
> hmat-lb,initiator=1,target=2,hierarchy=memory,data-type=access-latency,latency=30
>  \
>  -numa 
> hmat-lb,initiator=1,target=2,hierarchy=memory,data-type=access-bandwidth,bandwidth=1048576
> 
> Signed-off-by: Hesham Almatary <hesham.almatary@huawei.com>
> ---
>  tests/qtest/bios-tables-test.c | 55 ++++++++++++++++++++++++++++++++++
>  1 file changed, 55 insertions(+)
> 
> diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
> index f02b386d75..ed843c2abf 100644
> --- a/tests/qtest/bios-tables-test.c
> +++ b/tests/qtest/bios-tables-test.c
> @@ -1461,6 +1461,59 @@ static void test_acpi_piix4_tcg_acpi_hmat(void)
>      test_acpi_tcg_acpi_hmat(MACHINE_PC);
>  }
>  
> +static void test_acpi_virt_tcg_acpi_hmat(void)
> +{
> +    test_data data = {
> +        .machine = "virt",
> +        .tcg_only = true,
> +        .uefi_fl1 = "pc-bios/edk2-aarch64-code.fd",
> +        .uefi_fl2 = "pc-bios/edk2-arm-vars.fd",
> +        .cd = 
> "tests/data/uefi-boot-images/bios-tables-test.aarch64.iso.qcow2",
> +        .ram_start = 0x40000000ULL,
> +        .scan_len = 128ULL * 1024 * 1024,
> +    };
> +
> +    data.variant = ".acpihmatvirt";
> +
> +    test_acpi_one(" -machine hmat=on"
> +                  " -cpu cortex-a57"
> +                  " -smp 4"
> +                  " -m 256M"
> +                  " -object memory-backend-ram,size=64M,id=ram0"
> +                  " -object memory-backend-ram,size=64M,id=ram1"
> +                  " -object memory-backend-ram,size=128M,id=ram2"

> +                  " -numa node,nodeid=0,memdev=ram0,cpus=0-1"
> +                  " -numa node,nodeid=1,memdev=ram1,cpus=2-3"
don't use legacy syntax, see test_acpi_tcg_dimm_pxm() for example

> +                  " -numa node,nodeid=2,memdev=ram2"
> +                  " -numa hmat-lb,initiator=0,target=0,hierarchy=memory,"
> +                  "data-type=access-latency,latency=10"
> +                  " -numa hmat-lb,initiator=0,target=0,hierarchy=memory,"
> +                  "data-type=access-bandwidth,bandwidth=10485760"
> +                  " -numa hmat-lb,initiator=0,target=1,hierarchy=memory,"
> +                  "data-type=access-latency,latency=20"
> +                  " -numa hmat-lb,initiator=0,target=1,hierarchy=memory,"
> +                  "data-type=access-bandwidth,bandwidth=5242880"
> +                  " -numa hmat-lb,initiator=0,target=2,hierarchy=memory,"
> +                  "data-type=access-latency,latency=30"
> +                  " -numa hmat-lb,initiator=0,target=2,hierarchy=memory,"
> +                  "data-type=access-bandwidth,bandwidth=1048576"
> +                  " -numa hmat-lb,initiator=1,target=0,hierarchy=memory,"
> +                  "data-type=access-latency,latency=20"
> +                  " -numa hmat-lb,initiator=1,target=0,hierarchy=memory,"
> +                  "data-type=access-bandwidth,bandwidth=5242880"
> +                  " -numa hmat-lb,initiator=1,target=1,hierarchy=memory,"
> +                  "data-type=access-latency,latency=10"
> +                  " -numa hmat-lb,initiator=1,target=1,hierarchy=memory,"
> +                  "data-type=access-bandwidth,bandwidth=10485760"
> +                  " -numa hmat-lb,initiator=1,target=2,hierarchy=memory,"
> +                  "data-type=access-latency,latency=30"
> +                  " -numa hmat-lb,initiator=1,target=2,hierarchy=memory,"
> +                  "data-type=access-bandwidth,bandwidth=1048576",
> +                  &data);
> +
> +    free_test_data(&data);
> +}
> +
>  static void test_acpi_q35_tcg_acpi_hmat_noinitiator(void)
>  {
>      test_data data;
> @@ -1875,6 +1928,8 @@ int main(int argc, char *argv[])
>      } else if (strcmp(arch, "aarch64") == 0) {
>          if (has_tcg) {
>              qtest_add_func("acpi/virt", test_acpi_virt_tcg);
> +            qtest_add_func("acpi/virt/acpihmatvirt",
> +                            test_acpi_virt_tcg_acpi_hmat);
>              qtest_add_func("acpi/virt/numamem", test_acpi_virt_tcg_numamem);
>              qtest_add_func("acpi/virt/memhp", test_acpi_virt_tcg_memhp);
>              qtest_add_func("acpi/virt/pxb", test_acpi_virt_tcg_pxb);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]