This patch series tackles two issues. First, the tests/functional folder
has become quite crowded already, some restructuring would be helpful here.
Second, we currently encode the target architecture twice in the test names
since a lot of the test file names contain the target, too. This contributes
to the very long output lines when running "make check-functional".
So let's move the individual test files to target specific folders.
Then we can drop the target from the file name (and thus from the test
name).
Before the change, the output looked like this:
...
195/236 qemu:func-thorough+func-microblazeel-thorough+thorough / func-microblazeel-microblazeel_s3adsp1800 OK 2.00s 2 subtests passed
196/236 qemu:func-thorough+func-microblaze-thorough+thorough / func-microblaze-microblaze_replay OK 2.78s 1 subtests passed
197/236 qemu:func-thorough+func-microblaze-thorough+thorough / func-microblaze-microblaze_s3adsp1800 OK 2.02s 2 subtests passed
198/236 qemu:func-thorough+func-mips64el-thorough+thorough / func-mips64el-mips64el_fuloong2e OK 1.95s 1 subtests passed
199/236 qemu:func-thorough+func-mips64el-thorough+thorough / func-mips64el-mips64el_loongson3v SKIP 0.07s 0 subtests passed
200/236 qemu:func-thorough+func-mips64el-thorough+thorough / func-mips64el-mips64el_tuxrun OK 8.52s 1 subtests passed
...
After this change, it gets a little bit shorter:
...
195/236 qemu:func-thorough+func-microblazeel-thorough+thorough / func-microblazeel-s3adsp1800 OK 2.12s 2 subtests passed
196/236 qemu:func-thorough+func-microblaze-thorough+thorough / func-microblaze-replay OK 2.90s 1 subtests passed
197/236 qemu:func-thorough+func-microblaze-thorough+thorough / func-microblaze-s3adsp1800 OK 2.07s 2 subtests passed
198/236 qemu:func-thorough+func-mips64el-thorough+thorough / func-mips64el-fuloong2e OK 2.05s 1 subtests passed
199/236 qemu:func-thorough+func-mips64el-thorough+thorough / func-mips64el-loongson3v SKIP 0.07s 0 subtests passed
200/236 qemu:func-thorough+func-mips64el-thorough+thorough / func-mips64el-tuxrun OK 8.84s 1 subtests passed
...
Tests that can be used for multiple but not all targets (like the "migration"
test) are now handled via wrapper files in the target folders.
Signed-off-by: Thomas Huth <thuth@redhat.com>
Thomas Huth (24):
tests/functional: Rework the migration test to have target-specific
files
tests/functional: Rework the multiprocess test to have target-specific
files
tests/functional/meson.build: Split timeout settings by target
tests/functional/meson.build: Allow tests to reside in subfolders
tests/functional: Move aarch64 tests into architecture specific folder
tests/functional: Move alpha tests into architecture specific folder
tests/functional: Move arm tests into architecture specific folder
tests/functional: Move avr tests into architecture specific folder
tests/functional: Move hppa tests into architecture specific folder
tests/functional: Move i386 tests into architecture specific folder
tests/functional: Move loongarch64 tests into architecture specific
folder
tests/functional: Move m68k tests into architecture specific folder
tests/functional: Move microblaze tests into architecture specific
folder
tests/functional: Move mips tests into target-specific folders
tests/functional: Move or1k tests into target-specific folders
tests/functional: Move ppc/ppc64 tests into target-specific folders
tests/functional: Move riscv32/riscv64 tests into target-specific
folders
tests/functional: Move rx test into target-specific folders
tests/functional: Move s390x tests into target-specific folders
tests/functional: Move sh4/sh4eb tests into target-specific folders
tests/functional: Move sparc/sparc64 tests into target-specific
folders
tests/functional: Move x86_64 tests into target-specific folder
tests/functional: Move xtensa tests into target-specific folder
tests/functional: Move the generic tests to a subfolder
MAINTAINERS | 189 ++++-----
tests/functional/aarch64/meson.build | 48 +++
.../test_aspeed_ast2700.py} | 0
.../test_aspeed_ast2700fc.py} | 0
.../test_device_passthrough.py} | 0
.../test_hotplug_pci.py} | 0
.../test_imx8mp_evk.py} | 0
.../test_kvm.py} | 0
tests/functional/aarch64/test_migration.py | 26 ++
tests/functional/aarch64/test_multiprocess.py | 31 ++
.../test_raspi3.py} | 0
.../test_raspi4.py} | 0
.../test_replay.py} | 0
.../test_reverse_debug.py} | 0
.../test_rme_sbsaref.py} | 2 +-
.../test_rme_virt.py} | 0
.../test_sbsaref.py} | 0
.../test_sbsaref_alpine.py} | 2 +-
.../test_sbsaref_freebsd.py} | 2 +-
.../test_smmu.py} | 0
.../test_tcg_plugins.py} | 0
.../test_tuxrun.py} | 0
.../test_virt.py} | 0
.../test_virt_gpu.py} | 0
.../test_xen.py} | 0
.../test_xlnx_versal.py} | 0
tests/functional/alpha/meson.build | 10 +
.../test_clipper.py} | 0
tests/functional/alpha/test_migration.py | 26 ++
.../test_replay.py} | 0
tests/functional/arm/meson.build | 62 +++
.../test_aspeed_ast1030.py} | 0
.../test_aspeed_ast2500.py} | 0
.../test_aspeed_ast2600.py} | 0
.../test_aspeed_bletchley.py} | 0
.../test_aspeed_catalina.py} | 0
.../test_aspeed_gb200nvl_bmc.py} | 0
.../test_aspeed_palmetto.py} | 0
.../test_aspeed_rainier.py} | 0
.../test_aspeed_romulus.py} | 0
.../test_aspeed_witherspoon.py} | 0
.../{test_arm_bflt.py => arm/test_bflt.py} | 0
.../test_bpim2u.py} | 0
.../test_canona1100.py} | 0
.../test_collie.py} | 0
.../test_cubieboard.py} | 0
.../test_emcraft_sf2.py} | 0
.../test_integratorcp.py} | 0
.../test_max78000fthr.py} | 0
.../test_microbit.py} | 0
tests/functional/arm/test_migration.py | 26 ++
.../test_orangepi.py} | 0
.../test_quanta_gsj.py} | 0
.../test_raspi2.py} | 0
.../test_realview.py} | 0
.../test_replay.py} | 0
.../test_smdkc210.py} | 0
.../test_stellaris.py} | 0
.../{test_arm_sx1.py => arm/test_sx1.py} | 0
.../test_tuxrun.py} | 0
.../test_vexpress.py} | 0
.../{test_arm_virt.py => arm/test_virt.py} | 0
tests/functional/avr/meson.build | 6 +
.../test_mega2560.py} | 0
.../{test_avr_uno.py => avr/test_uno.py} | 0
tests/functional/generic/meson.build | 14 +
.../{ => generic}/test_empty_cpu_model.py | 0
.../{ => generic}/test_info_usernet.py | 0
.../functional/{ => generic}/test_version.py | 0
tests/functional/{ => generic}/test_vnc.py | 0
tests/functional/hppa/meson.build | 5 +
.../test_seabios.py} | 0
tests/functional/i386/meson.build | 10 +
tests/functional/i386/test_migration.py | 26 ++
.../test_replay.py} | 0
.../test_tuxrun.py} | 0
tests/functional/loongarch64/meson.build | 5 +
.../test_virt.py} | 0
tests/functional/m68k/meson.build | 9 +
.../test_mcf5208evb.py} | 0
.../test_nextcube.py} | 0
.../{test_m68k_q800.py => m68k/test_q800.py} | 0
.../test_replay.py} | 0
.../test_tuxrun.py} | 0
tests/functional/meson.build | 381 ++----------------
tests/functional/microblaze/meson.build | 6 +
.../test_replay.py} | 0
.../test_s3adsp1800.py} | 0
tests/functional/microblazeel/meson.build | 5 +
.../test_s3adsp1800.py} | 2 +-
.../{test_migration.py => migration.py} | 35 +-
tests/functional/mips/meson.build | 11 +
.../test_malta.py} | 0
.../test_replay.py} | 0
.../test_tuxrun.py} | 0
tests/functional/mips64/meson.build | 10 +
.../test_malta.py} | 2 +-
.../test_tuxrun.py} | 0
tests/functional/mips64el/meson.build | 14 +
.../test_fuloong2e.py} | 0
.../test_loongson3v.py} | 0
.../test_malta.py} | 4 +-
.../test_replay.py} | 0
.../test_tuxrun.py} | 0
tests/functional/mipsel/meson.build | 12 +
.../test_malta.py} | 2 +-
.../test_replay.py} | 0
.../test_tuxrun.py} | 0
.../{test_multiprocess.py => multiprocess.py} | 40 +-
tests/functional/or1k/meson.build | 6 +
.../test_replay.py} | 0
.../{test_or1k_sim.py => or1k/test_sim.py} | 0
tests/functional/ppc/meson.build | 22 +
.../{test_ppc_40p.py => ppc/test_40p.py} | 0
.../{test_ppc_74xx.py => ppc/test_74xx.py} | 0
.../{test_ppc_amiga.py => ppc/test_amiga.py} | 0
.../test_bamboo.py} | 0
.../{test_ppc_mac.py => ppc/test_mac.py} | 0
tests/functional/ppc/test_migration.py | 26 ++
.../test_mpc8544ds.py} | 0
.../test_replay.py} | 0
.../test_sam460ex.py} | 0
.../test_tuxrun.py} | 0
.../test_virtex_ml507.py} | 0
tests/functional/ppc64/meson.build | 25 ++
.../test_e500.py} | 0
.../{test_ppc64_hv.py => ppc64/test_hv.py} | 0
.../test_mac99.py} | 0
tests/functional/ppc64/test_migration.py | 26 ++
.../test_powernv.py} | 0
.../test_pseries.py} | 0
.../test_replay.py} | 0
.../test_reverse_debug.py} | 0
.../test_tuxrun.py} | 0
tests/functional/riscv32/meson.build | 10 +
tests/functional/riscv32/test_migration.py | 26 ++
tests/functional/riscv32/test_opensbi.py | 10 +
.../test_tuxrun.py} | 0
tests/functional/riscv64/meson.build | 14 +
tests/functional/riscv64/test_migration.py | 26 ++
.../test_opensbi.py} | 0
.../test_tuxrun.py} | 0
tests/functional/rx/meson.build | 5 +
.../{test_rx_gdbsim.py => rx/test_gdbsim.py} | 0
tests/functional/s390x/meson.build | 13 +
.../test_ccw_virtio.py} | 0
.../test_pxelinux.py} | 0
.../test_replay.py} | 0
.../test_topology.py} | 0
.../test_tuxrun.py} | 0
tests/functional/sh4/meson.build | 10 +
.../{test_sh4_r2d.py => sh4/test_r2d.py} | 0
.../test_tuxrun.py} | 0
tests/functional/sh4eb/meson.build | 5 +
.../{test_sh4eb_r2d.py => sh4eb/test_r2d.py} | 0
tests/functional/sparc/meson.build | 10 +
tests/functional/sparc/test_migration.py | 26 ++
.../test_replay.py} | 0
.../test_sun4m.py} | 0
tests/functional/sparc64/meson.build | 10 +
tests/functional/sparc64/test_migration.py | 26 ++
.../test_sun4u.py} | 0
.../test_tuxrun.py} | 0
tests/functional/x86_64/meson.build | 36 ++
.../functional/{ => x86_64}/test_acpi_bits.py | 0
.../test_cpu_model_versions.py} | 0
.../{ => x86_64}/test_cpu_queries.py | 0
.../test_hotplug_blk.py} | 0
.../test_hotplug_cpu.py} | 0
.../{ => x86_64}/test_intel_iommu.py | 0
.../test_kvm_xen.py} | 0
.../{ => x86_64}/test_linux_initrd.py | 0
.../{ => x86_64}/test_mem_addr_space.py | 0
tests/functional/{ => x86_64}/test_memlock.py | 0
tests/functional/x86_64/test_migration.py | 26 ++
tests/functional/x86_64/test_multiprocess.py | 31 ++
.../{ => x86_64}/test_netdev_ethtool.py | 0
.../{ => x86_64}/test_pc_cpu_hotplug_props.py | 0
.../test_replay.py} | 0
.../test_reverse_debug.py} | 0
.../test_tuxrun.py} | 0
.../{ => x86_64}/test_virtio_balloon.py | 0
.../{ => x86_64}/test_virtio_gpu.py | 0
.../{ => x86_64}/test_virtio_version.py | 0
tests/functional/xtensa/meson.build | 6 +
.../test_lx60.py} | 0
.../test_replay.py} | 0
187 files changed, 910 insertions(+), 508 deletions(-)
create mode 100644 tests/functional/aarch64/meson.build
rename tests/functional/{test_aarch64_aspeed_ast2700.py => aarch64/test_aspeed_ast2700.py} (100%)
rename tests/functional/{test_aarch64_aspeed_ast2700fc.py => aarch64/test_aspeed_ast2700fc.py} (100%)
rename tests/functional/{test_aarch64_device_passthrough.py => aarch64/test_device_passthrough.py} (100%)
rename tests/functional/{test_aarch64_hotplug_pci.py => aarch64/test_hotplug_pci.py} (100%)
rename tests/functional/{test_aarch64_imx8mp_evk.py => aarch64/test_imx8mp_evk.py} (100%)
rename tests/functional/{test_aarch64_kvm.py => aarch64/test_kvm.py} (100%)
create mode 100755 tests/functional/aarch64/test_migration.py
create mode 100755 tests/functional/aarch64/test_multiprocess.py
rename tests/functional/{test_aarch64_raspi3.py => aarch64/test_raspi3.py} (100%)
rename tests/functional/{test_aarch64_raspi4.py => aarch64/test_raspi4.py} (100%)
rename tests/functional/{test_aarch64_replay.py => aarch64/test_replay.py} (100%)
rename tests/functional/{test_aarch64_reverse_debug.py => aarch64/test_reverse_debug.py} (100%)
rename tests/functional/{test_aarch64_rme_sbsaref.py => aarch64/test_rme_sbsaref.py} (98%)
rename tests/functional/{test_aarch64_rme_virt.py => aarch64/test_rme_virt.py} (100%)
rename tests/functional/{test_aarch64_sbsaref.py => aarch64/test_sbsaref.py} (100%)
rename tests/functional/{test_aarch64_sbsaref_alpine.py => aarch64/test_sbsaref_alpine.py} (97%)
rename tests/functional/{test_aarch64_sbsaref_freebsd.py => aarch64/test_sbsaref_freebsd.py} (97%)
rename tests/functional/{test_aarch64_smmu.py => aarch64/test_smmu.py} (100%)
rename tests/functional/{test_aarch64_tcg_plugins.py => aarch64/test_tcg_plugins.py} (100%)
rename tests/functional/{test_aarch64_tuxrun.py => aarch64/test_tuxrun.py} (100%)
rename tests/functional/{test_aarch64_virt.py => aarch64/test_virt.py} (100%)
rename tests/functional/{test_aarch64_virt_gpu.py => aarch64/test_virt_gpu.py} (100%)
rename tests/functional/{test_aarch64_xen.py => aarch64/test_xen.py} (100%)
rename tests/functional/{test_aarch64_xlnx_versal.py => aarch64/test_xlnx_versal.py} (100%)
create mode 100644 tests/functional/alpha/meson.build
rename tests/functional/{test_alpha_clipper.py => alpha/test_clipper.py} (100%)
create mode 100755 tests/functional/alpha/test_migration.py
rename tests/functional/{test_alpha_replay.py => alpha/test_replay.py} (100%)
create mode 100644 tests/functional/arm/meson.build
rename tests/functional/{test_arm_aspeed_ast1030.py => arm/test_aspeed_ast1030.py} (100%)
rename tests/functional/{test_arm_aspeed_ast2500.py => arm/test_aspeed_ast2500.py} (100%)
rename tests/functional/{test_arm_aspeed_ast2600.py => arm/test_aspeed_ast2600.py} (100%)
rename tests/functional/{test_arm_aspeed_bletchley.py => arm/test_aspeed_bletchley.py} (100%)
mode change 100644 => 100755
rename tests/functional/{test_arm_aspeed_catalina.py => arm/test_aspeed_catalina.py} (100%)
rename tests/functional/{test_arm_aspeed_gb200nvl_bmc.py => arm/test_aspeed_gb200nvl_bmc.py} (100%)
mode change 100644 => 100755
rename tests/functional/{test_arm_aspeed_palmetto.py => arm/test_aspeed_palmetto.py} (100%)
rename tests/functional/{test_arm_aspeed_rainier.py => arm/test_aspeed_rainier.py} (100%)
rename tests/functional/{test_arm_aspeed_romulus.py => arm/test_aspeed_romulus.py} (100%)
rename tests/functional/{test_arm_aspeed_witherspoon.py => arm/test_aspeed_witherspoon.py} (100%)
mode change 100644 => 100755
rename tests/functional/{test_arm_bflt.py => arm/test_bflt.py} (100%)
rename tests/functional/{test_arm_bpim2u.py => arm/test_bpim2u.py} (100%)
rename tests/functional/{test_arm_canona1100.py => arm/test_canona1100.py} (100%)
rename tests/functional/{test_arm_collie.py => arm/test_collie.py} (100%)
rename tests/functional/{test_arm_cubieboard.py => arm/test_cubieboard.py} (100%)
rename tests/functional/{test_arm_emcraft_sf2.py => arm/test_emcraft_sf2.py} (100%)
rename tests/functional/{test_arm_integratorcp.py => arm/test_integratorcp.py} (100%)
rename tests/functional/{test_arm_max78000fthr.py => arm/test_max78000fthr.py} (100%)
rename tests/functional/{test_arm_microbit.py => arm/test_microbit.py} (100%)
create mode 100755 tests/functional/arm/test_migration.py
rename tests/functional/{test_arm_orangepi.py => arm/test_orangepi.py} (100%)
rename tests/functional/{test_arm_quanta_gsj.py => arm/test_quanta_gsj.py} (100%)
rename tests/functional/{test_arm_raspi2.py => arm/test_raspi2.py} (100%)
rename tests/functional/{test_arm_realview.py => arm/test_realview.py} (100%)
rename tests/functional/{test_arm_replay.py => arm/test_replay.py} (100%)
rename tests/functional/{test_arm_smdkc210.py => arm/test_smdkc210.py} (100%)
rename tests/functional/{test_arm_stellaris.py => arm/test_stellaris.py} (100%)
rename tests/functional/{test_arm_sx1.py => arm/test_sx1.py} (100%)
rename tests/functional/{test_arm_tuxrun.py => arm/test_tuxrun.py} (100%)
rename tests/functional/{test_arm_vexpress.py => arm/test_vexpress.py} (100%)
rename tests/functional/{test_arm_virt.py => arm/test_virt.py} (100%)
create mode 100644 tests/functional/avr/meson.build
rename tests/functional/{test_avr_mega2560.py => avr/test_mega2560.py} (100%)
rename tests/functional/{test_avr_uno.py => avr/test_uno.py} (100%)
create mode 100644 tests/functional/generic/meson.build
rename tests/functional/{ => generic}/test_empty_cpu_model.py (100%)
rename tests/functional/{ => generic}/test_info_usernet.py (100%)
rename tests/functional/{ => generic}/test_version.py (100%)
rename tests/functional/{ => generic}/test_vnc.py (100%)
create mode 100644 tests/functional/hppa/meson.build
rename tests/functional/{test_hppa_seabios.py => hppa/test_seabios.py} (100%)
create mode 100644 tests/functional/i386/meson.build
create mode 100755 tests/functional/i386/test_migration.py
rename tests/functional/{test_i386_replay.py => i386/test_replay.py} (100%)
rename tests/functional/{test_i386_tuxrun.py => i386/test_tuxrun.py} (100%)
create mode 100644 tests/functional/loongarch64/meson.build
rename tests/functional/{test_loongarch64_virt.py => loongarch64/test_virt.py} (100%)
create mode 100644 tests/functional/m68k/meson.build
rename tests/functional/{test_m68k_mcf5208evb.py => m68k/test_mcf5208evb.py} (100%)
rename tests/functional/{test_m68k_nextcube.py => m68k/test_nextcube.py} (100%)
rename tests/functional/{test_m68k_q800.py => m68k/test_q800.py} (100%)
rename tests/functional/{test_m68k_replay.py => m68k/test_replay.py} (100%)
rename tests/functional/{test_m68k_tuxrun.py => m68k/test_tuxrun.py} (100%)
create mode 100644 tests/functional/microblaze/meson.build
rename tests/functional/{test_microblaze_replay.py => microblaze/test_replay.py} (100%)
rename tests/functional/{test_microblaze_s3adsp1800.py => microblaze/test_s3adsp1800.py} (100%)
create mode 100644 tests/functional/microblazeel/meson.build
rename tests/functional/{test_microblazeel_s3adsp1800.py => microblazeel/test_s3adsp1800.py} (92%)
rename tests/functional/{test_migration.py => migration.py} (74%)
mode change 100755 => 100644
create mode 100644 tests/functional/mips/meson.build
rename tests/functional/{test_mips_malta.py => mips/test_malta.py} (100%)
rename tests/functional/{test_mips_replay.py => mips/test_replay.py} (100%)
rename tests/functional/{test_mips_tuxrun.py => mips/test_tuxrun.py} (100%)
create mode 100644 tests/functional/mips64/meson.build
rename tests/functional/{test_mips64_malta.py => mips64/test_malta.py} (96%)
rename tests/functional/{test_mips64_tuxrun.py => mips64/test_tuxrun.py} (100%)
create mode 100644 tests/functional/mips64el/meson.build
rename tests/functional/{test_mips64el_fuloong2e.py => mips64el/test_fuloong2e.py} (100%)
rename tests/functional/{test_mips64el_loongson3v.py => mips64el/test_loongson3v.py} (100%)
rename tests/functional/{test_mips64el_malta.py => mips64el/test_malta.py} (98%)
rename tests/functional/{test_mips64el_replay.py => mips64el/test_replay.py} (100%)
rename tests/functional/{test_mips64el_tuxrun.py => mips64el/test_tuxrun.py} (100%)
create mode 100644 tests/functional/mipsel/meson.build
rename tests/functional/{test_mipsel_malta.py => mipsel/test_malta.py} (98%)
rename tests/functional/{test_mipsel_replay.py => mipsel/test_replay.py} (100%)
mode change 100644 => 100755
rename tests/functional/{test_mipsel_tuxrun.py => mipsel/test_tuxrun.py} (100%)
rename tests/functional/{test_multiprocess.py => multiprocess.py} (58%)
mode change 100755 => 100644
create mode 100644 tests/functional/or1k/meson.build
rename tests/functional/{test_or1k_replay.py => or1k/test_replay.py} (100%)
rename tests/functional/{test_or1k_sim.py => or1k/test_sim.py} (100%)
create mode 100644 tests/functional/ppc/meson.build
rename tests/functional/{test_ppc_40p.py => ppc/test_40p.py} (100%)
rename tests/functional/{test_ppc_74xx.py => ppc/test_74xx.py} (100%)
rename tests/functional/{test_ppc_amiga.py => ppc/test_amiga.py} (100%)
rename tests/functional/{test_ppc_bamboo.py => ppc/test_bamboo.py} (100%)
rename tests/functional/{test_ppc_mac.py => ppc/test_mac.py} (100%)
create mode 100755 tests/functional/ppc/test_migration.py
rename tests/functional/{test_ppc_mpc8544ds.py => ppc/test_mpc8544ds.py} (100%)
rename tests/functional/{test_ppc_replay.py => ppc/test_replay.py} (100%)
rename tests/functional/{test_ppc_sam460ex.py => ppc/test_sam460ex.py} (100%)
mode change 100644 => 100755
rename tests/functional/{test_ppc_tuxrun.py => ppc/test_tuxrun.py} (100%)
rename tests/functional/{test_ppc_virtex_ml507.py => ppc/test_virtex_ml507.py} (100%)
create mode 100644 tests/functional/ppc64/meson.build
rename tests/functional/{test_ppc64_e500.py => ppc64/test_e500.py} (100%)
rename tests/functional/{test_ppc64_hv.py => ppc64/test_hv.py} (100%)
rename tests/functional/{test_ppc64_mac99.py => ppc64/test_mac99.py} (100%)
create mode 100755 tests/functional/ppc64/test_migration.py
rename tests/functional/{test_ppc64_powernv.py => ppc64/test_powernv.py} (100%)
rename tests/functional/{test_ppc64_pseries.py => ppc64/test_pseries.py} (100%)
rename tests/functional/{test_ppc64_replay.py => ppc64/test_replay.py} (100%)
rename tests/functional/{test_ppc64_reverse_debug.py => ppc64/test_reverse_debug.py} (100%)
rename tests/functional/{test_ppc64_tuxrun.py => ppc64/test_tuxrun.py} (100%)
create mode 100644 tests/functional/riscv32/meson.build
create mode 100755 tests/functional/riscv32/test_migration.py
create mode 100755 tests/functional/riscv32/test_opensbi.py
rename tests/functional/{test_riscv32_tuxrun.py => riscv32/test_tuxrun.py} (100%)
create mode 100644 tests/functional/riscv64/meson.build
create mode 100755 tests/functional/riscv64/test_migration.py
rename tests/functional/{test_riscv_opensbi.py => riscv64/test_opensbi.py} (100%)
rename tests/functional/{test_riscv64_tuxrun.py => riscv64/test_tuxrun.py} (100%)
create mode 100644 tests/functional/rx/meson.build
rename tests/functional/{test_rx_gdbsim.py => rx/test_gdbsim.py} (100%)
create mode 100644 tests/functional/s390x/meson.build
rename tests/functional/{test_s390x_ccw_virtio.py => s390x/test_ccw_virtio.py} (100%)
rename tests/functional/{test_s390x_pxelinux.py => s390x/test_pxelinux.py} (100%)
rename tests/functional/{test_s390x_replay.py => s390x/test_replay.py} (100%)
rename tests/functional/{test_s390x_topology.py => s390x/test_topology.py} (100%)
rename tests/functional/{test_s390x_tuxrun.py => s390x/test_tuxrun.py} (100%)
create mode 100644 tests/functional/sh4/meson.build
rename tests/functional/{test_sh4_r2d.py => sh4/test_r2d.py} (100%)
rename tests/functional/{test_sh4_tuxrun.py => sh4/test_tuxrun.py} (100%)
create mode 100644 tests/functional/sh4eb/meson.build
rename tests/functional/{test_sh4eb_r2d.py => sh4eb/test_r2d.py} (100%)
create mode 100644 tests/functional/sparc/meson.build
create mode 100755 tests/functional/sparc/test_migration.py
rename tests/functional/{test_sparc_replay.py => sparc/test_replay.py} (100%)
rename tests/functional/{test_sparc_sun4m.py => sparc/test_sun4m.py} (100%)
create mode 100644 tests/functional/sparc64/meson.build
create mode 100755 tests/functional/sparc64/test_migration.py
rename tests/functional/{test_sparc64_sun4u.py => sparc64/test_sun4u.py} (100%)
rename tests/functional/{test_sparc64_tuxrun.py => sparc64/test_tuxrun.py} (100%)
create mode 100644 tests/functional/x86_64/meson.build
rename tests/functional/{ => x86_64}/test_acpi_bits.py (100%)
rename tests/functional/{test_x86_cpu_model_versions.py => x86_64/test_cpu_model_versions.py} (100%)
rename tests/functional/{ => x86_64}/test_cpu_queries.py (100%)
rename tests/functional/{test_x86_64_hotplug_blk.py => x86_64/test_hotplug_blk.py} (100%)
rename tests/functional/{test_x86_64_hotplug_cpu.py => x86_64/test_hotplug_cpu.py} (100%)
rename tests/functional/{ => x86_64}/test_intel_iommu.py (100%)
rename tests/functional/{test_x86_64_kvm_xen.py => x86_64/test_kvm_xen.py} (100%)
rename tests/functional/{ => x86_64}/test_linux_initrd.py (100%)
rename tests/functional/{ => x86_64}/test_mem_addr_space.py (100%)
rename tests/functional/{ => x86_64}/test_memlock.py (100%)
create mode 100755 tests/functional/x86_64/test_migration.py
create mode 100755 tests/functional/x86_64/test_multiprocess.py
rename tests/functional/{ => x86_64}/test_netdev_ethtool.py (100%)
rename tests/functional/{ => x86_64}/test_pc_cpu_hotplug_props.py (100%)
rename tests/functional/{test_x86_64_replay.py => x86_64/test_replay.py} (100%)
rename tests/functional/{test_x86_64_reverse_debug.py => x86_64/test_reverse_debug.py} (100%)
rename tests/functional/{test_x86_64_tuxrun.py => x86_64/test_tuxrun.py} (100%)
rename tests/functional/{ => x86_64}/test_virtio_balloon.py (100%)
rename tests/functional/{ => x86_64}/test_virtio_gpu.py (100%)
rename tests/functional/{ => x86_64}/test_virtio_version.py (100%)
create mode 100644 tests/functional/xtensa/meson.build
rename tests/functional/{test_xtensa_lx60.py => xtensa/test_lx60.py} (100%)
rename tests/functional/{test_xtensa_replay.py => xtensa/test_replay.py} (100%)
--
2.50.1