diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2024-11-27 13:35:54 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2024-11-27 13:35:54 +0000 |
commit | 45069ea30722c5fbf7fc93ae305abb017ced105c (patch) | |
tree | b0a5336cc83fe7f7e56df4aaf02b786aeed04d2c | |
parent | 7872e5fdf38ac0d8d0083aabb98d67da1f530ef4 (diff) | |
parent | ef45f46f382a5e2c41c39c71fd3364cff4f41bf5 (diff) | |
download | qemu-45069ea30722c5fbf7fc93ae305abb017ced105c.zip qemu-45069ea30722c5fbf7fc93ae305abb017ced105c.tar.gz qemu-45069ea30722c5fbf7fc93ae305abb017ced105c.tar.bz2 |
Merge tag 'pull-request-2024-11-27' of https://gitlab.com/thuth/qemu into staging
* Two small doc updates
* Fix the flaky loongarch64 and sh4 functional tests
* Refuse to compile with old XCode versions that don't work anymore
* Remove an unused function from PCI code
# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmdG9WcRHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbVwTRAAgOWsUiqscFk7x+G1EcxE21Cii1s3kj2t
# BYjzsl+sHzu2/aiazYfRbYOwUoXDU5kshfA0Df5KIQs2o1VBFt+v9z5vEAMjZ1tT
# j3LfazCUb4pmwS4wiD1DeEgrbCzrQ/B5grvyJsf7eB9pIxnGt+R1FGdpyDoKv8HB
# fTm6tkWKf6Mn8vJm/S+dJkoZu4ToBIOl2Q/s3/NxSf6a07FvY1QERCHndKGI90kE
# 0jodq+lb1UotaqicmlenSY33FGWWH2aeiSWGnsZRzDPLedmTBvY6hnkHtB2u+0kF
# D13ZF8oxc1pdviMXu978YRdKHmQacQ0RZVoJ6UxEf7tsDI4dEI87enVTBueGgv3z
# iz4wDDg6i/5kn12eOkjv3YgzcSF37kS/4aHltxyyuZBVT1tBsZ++zz5eCfTcO9wa
# mYElg1KDmWjmzs/HwtRb/07Bws7TIxxBUICKCA39GFpAKq6mssNAWujmhtB18AAC
# 8+tyCOz1KbseJR1oO2+I5biWBLOfAtHrBdSYIIM7yn+FWXC81kYhmT+/6hhkvl0u
# OHamRK8Kmpi71wRkm+3C/J+A1XDirXywteNIpsJXaAIEdSFzWRZdVMKblaHtqxET
# DwMdYRZ9u45phg5b+lTbDLBgsSf93NnrqyyIG7/6mS2CLwQ1x6o+NnleIJluNxSC
# kROh/xwUydo=
# =6+P3
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 27 Nov 2024 10:33:11 GMT
# gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg: issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full]
# gpg: aka "Thomas Huth <thuth@redhat.com>" [full]
# gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full]
# gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5
* tag 'pull-request-2024-11-27' of https://gitlab.com/thuth/qemu:
hw/pci: Remove unused pci_irq_pulse() method
tests/functional: Remove sleep workarounds from sh4 test
.gitlab-ci.d/cirrus: Remove the wrong CPU and RAM settings from the macOS job
meson.build: Refuse XCode versions < v15.0
tests/functional: Fix the running test case causes loongarch64 to hang
docs: Document that hvf on Arm is supported
docs/devel/testing/functional: Clarify that we have to use the build folder
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r-- | .gitlab-ci.d/cirrus.yml | 2 | ||||
-rw-r--r-- | docs/about/build-platforms.rst | 2 | ||||
-rw-r--r-- | docs/devel/testing/functional.rst | 5 | ||||
-rw-r--r-- | include/hw/pci/pci.h | 10 | ||||
-rw-r--r-- | meson.build | 6 | ||||
-rwxr-xr-x | tests/functional/test_loongarch64_virt.py | 8 | ||||
-rwxr-xr-x | tests/functional/test_sh4_tuxrun.py | 10 |
7 files changed, 14 insertions, 29 deletions
diff --git a/.gitlab-ci.d/cirrus.yml b/.gitlab-ci.d/cirrus.yml index 9427302..a9e43e2 100644 --- a/.gitlab-ci.d/cirrus.yml +++ b/.gitlab-ci.d/cirrus.yml @@ -67,8 +67,6 @@ aarch64-macos-build: CIRRUS_VM_INSTANCE_TYPE: macos_instance CIRRUS_VM_IMAGE_SELECTOR: image CIRRUS_VM_IMAGE_NAME: ghcr.io/cirruslabs/macos-runner:sonoma - CIRRUS_VM_CPUS: 12 - CIRRUS_VM_RAM: 24G UPDATE_COMMAND: brew update INSTALL_COMMAND: brew install PATH_EXTRA: /opt/homebrew/ccache/libexec:/opt/homebrew/gettext/bin diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst index 6102f00..d8b0445 100644 --- a/docs/about/build-platforms.rst +++ b/docs/about/build-platforms.rst @@ -40,7 +40,7 @@ Those hosts are officially supported, with various accelerators: * - CPU Architecture - Accelerators * - Arm - - kvm (64 bit only), tcg, xen + - hvf (64 bit only), kvm (64 bit only), tcg, xen * - MIPS (64 bit little endian only) - kvm, tcg * - PPC diff --git a/docs/devel/testing/functional.rst b/docs/devel/testing/functional.rst index b8ad7b0..ae238ed 100644 --- a/docs/devel/testing/functional.rst +++ b/docs/devel/testing/functional.rst @@ -59,11 +59,12 @@ To run a single test file without the meson test runner, you can also execute the file directly by specifying two environment variables first, the PYTHONPATH that has to include the python folder and the tests/functional folder of the source tree, and QEMU_TEST_QEMU_BINARY that has to point -to the QEMU binary that should be used for the test, for example:: +to the QEMU binary that should be used for the test. The current working +directory should be your build folder. For example:: $ export PYTHONPATH=../python:../tests/functional $ export QEMU_TEST_QEMU_BINARY=$PWD/qemu-system-x86_64 - $ python3 ../tests/functional/test_file.py + $ pyvenv/bin/python3 ../tests/functional/test_file.py The test framework will automatically purge any scratch files created during the tests. If needing to debug a failed test, it is possible to keep these diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h index 135695c..c0717e3 100644 --- a/include/hw/pci/pci.h +++ b/include/hw/pci/pci.h @@ -670,16 +670,6 @@ static inline void pci_irq_deassert(PCIDevice *pci_dev) pci_set_irq(pci_dev, 0); } -/* - * FIXME: PCI does not work this way. - * All the callers to this method should be fixed. - */ -static inline void pci_irq_pulse(PCIDevice *pci_dev) -{ - pci_irq_assert(pci_dev); - pci_irq_deassert(pci_dev); -} - MSIMessage pci_get_msi_message(PCIDevice *dev, int vector); void pci_set_power(PCIDevice *pci_dev, bool state); diff --git a/meson.build b/meson.build index e0b880e..a290dbf 100644 --- a/meson.build +++ b/meson.build @@ -315,8 +315,8 @@ foreach lang : all_languages # ok elif compiler.get_id() == 'clang' and compiler.compiles(''' #ifdef __apple_build_version__ - # if __clang_major__ < 12 || (__clang_major__ == 12 && __clang_minor__ < 0) - # error You need at least XCode Clang v12.0 to compile QEMU + # if __clang_major__ < 15 || (__clang_major__ == 15 && __clang_minor__ < 0) + # error You need at least XCode Clang v15.0 to compile QEMU # endif #else # if __clang_major__ < 10 || (__clang_major__ == 10 && __clang_minor__ < 0) @@ -325,7 +325,7 @@ foreach lang : all_languages #endif''') # ok else - error('You either need GCC v7.4 or Clang v10.0 (or XCode Clang v12.0) to compile QEMU') + error('You either need GCC v7.4 or Clang v10.0 (or XCode Clang v15.0) to compile QEMU') endif endforeach diff --git a/tests/functional/test_loongarch64_virt.py b/tests/functional/test_loongarch64_virt.py index 2b8baa2..b7d9abf 100755 --- a/tests/functional/test_loongarch64_virt.py +++ b/tests/functional/test_loongarch64_virt.py @@ -18,16 +18,16 @@ class LoongArchMachine(QemuSystemTest): ASSET_KERNEL = Asset( ('https://github.com/yangxiaojuan-loongson/qemu-binary/' - 'releases/download/2024-05-30/vmlinuz.efi'), + 'releases/download/2024-11-26/vmlinuz.efi'), '08b88a45f48a5fd92260bae895be4e5175be2397481a6f7821b9f39b2965b79e') ASSET_INITRD = Asset( ('https://github.com/yangxiaojuan-loongson/qemu-binary/' - 'releases/download/2024-05-30/ramdisk'), + 'releases/download/2024-11-26/ramdisk'), '03d6fb6f8ee64ecac961120a0bdacf741f17b3bee2141f17fa01908c8baf176a') ASSET_BIOS = Asset( ('https://github.com/yangxiaojuan-loongson/qemu-binary/' - 'releases/download/2024-05-30/QEMU_EFI.fd'), - '937c1e7815e2340150c194a9f8f0474259038a3d7b8845ed62cc08163c46bea1') + 'releases/download/2024-11-26/QEMU_EFI.fd'), + 'f55fbf5d92e885844631ae9bfa8887f659bbb4f6ef2beea9e9ff8bc0603b6697') def wait_for_console_pattern(self, success_message, vm=None): wait_for_console_pattern(self, success_message, diff --git a/tests/functional/test_sh4_tuxrun.py b/tests/functional/test_sh4_tuxrun.py index 352cb36..b33533f 100755 --- a/tests/functional/test_sh4_tuxrun.py +++ b/tests/functional/test_sh4_tuxrun.py @@ -15,7 +15,7 @@ import os import time from unittest import skipUnless -from qemu_test import Asset, exec_command_and_wait_for_pattern, exec_command +from qemu_test import Asset, exec_command_and_wait_for_pattern from qemu_test.tuxruntest import TuxRunBaselineTest class TuxRunSh4Test(TuxRunBaselineTest): @@ -27,8 +27,6 @@ class TuxRunSh4Test(TuxRunBaselineTest): 'https://storage.tuxboot.com/20230331/sh4/rootfs.ext4.zst', '3592a7a3d5a641e8b9821449e77bc43c9904a56c30d45da0694349cfd86743fd') - # Note: some segfaults caused by unaligned userspace access - @skipUnless(os.getenv('QEMU_TEST_FLAKY_TESTS'), 'Test is unstable') def test_sh4(self): self.set_machine('r2d') self.cpu='sh7785' @@ -46,10 +44,8 @@ class TuxRunSh4Test(TuxRunBaselineTest): console_index=1) self.vm.launch() - self.wait_for_console_pattern("Welcome to TuxTest") - time.sleep(0.1) - exec_command(self, 'root') - time.sleep(0.1) + self.wait_for_console_pattern("tuxtest login:") + exec_command_and_wait_for_pattern(self, 'root', 'root@tuxtest:~#') exec_command_and_wait_for_pattern(self, 'halt', "reboot: System halted") |