qemu-cr16/tests
Peter Maydell cc45d25c65 tests/avocado: raspi2_initrd: Wait for guest shutdown message before stopping
The avocado test
 tests/avocado/boot_linux_console.py:BootLinuxConsole.test_arm_raspi2_initrd
finishes with

    exec_command(self, 'halt')
    # Wait for VM to shut down gracefully
    self.vm.wait()

In theory this should be fine. In practice it runs into two bugs:

 * when the test calls self.vm.wait() Avocado closes the socket
   connection to the guest serial console immediately, so the
   avocado logs don't have the last part of the guest output:
   https://gitlab.com/qemu-project/qemu/-/issues/1265
 * when the socket is closed, a bug in the QEMU socket chardev
   means that it loses any data that the guest UART has not
   yet consumed. This means that the guest doesn't always read
   the full 'halt' command string, so the test intermittently
   fails with a timeout:
   https://gitlab.com/qemu-project/qemu/-/issues/1264

Work around both of these by waiting for the guest to print the
string that means it has completed the shutdown process.  This fixes
a very long standing intermittent failure in this test.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/636
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20221020102012.3015662-1-peter.maydell@linaro.org>
Message-Id: <20221027183637.2772968-20-alex.bennee@linaro.org>
2022-10-31 20:37:59 +00:00
..
avocado tests/avocado: raspi2_initrd: Wait for guest shutdown message before stopping 2022-10-31 20:37:59 +00:00
bench test/crypto: Add test suite for crypto akcipher 2022-05-26 11:41:54 +01:00
data tests: acpi: update expected blobs 2022-10-09 16:38:46 -04:00
decode
docker tests/docker: Add flex/bison to debian-hexagon-cross 2022-10-31 20:37:58 +00:00
fp meson: remove dead assignments 2022-09-01 07:42:37 +02:00
guest-debug tests/guest-debug: better handle gdb crashes 2022-04-20 16:04:20 +01:00
image-fuzzer
include
keys
lcitool tests/lcitool: Refresh to latest libvirt-ci module 2022-10-31 20:37:47 +00:00
migration tests/migration: remove the unused local variable 2022-10-11 12:37:12 +02:00
multiboot
perf/block/qcow2
plugin tests/plugins: add instruction matching to libinsn.so 2022-02-09 12:08:42 +00:00
qapi-schema meson: remove dead assignments 2022-09-01 07:42:37 +02:00
qemu-iotests block: Refactor get_tmp_filename() 2022-10-27 20:13:32 +02:00
qtest * Fix and test the VISTR instruction on s390x 2022-10-31 06:19:54 -04:00
rocker
tcg tests/tcg/nios2: Tweak 10m50-ghrd.ld 2022-10-31 20:37:58 +00:00
tsan
uefi-test-tools
unit Block layer patches 2022-10-30 15:15:12 -04:00
vm tests: Add sndio to the FreeBSD CI containers / VM 2022-10-28 09:39:21 +02:00
vmstate-static-checker-data
check-block.sh tests/qemu-iotests: Move the bash and sanitizer checks to meson.build 2022-04-20 09:46:54 +02:00
dbus-vmstate-daemon.sh
Makefile.include configure: move tests/tcg/Makefile.prereqs to root build directory 2022-10-06 11:53:40 +01:00
meson.build meson: create have_vhost_* variables 2022-05-07 07:46:58 +02:00
requirements.txt tests: install "qemu" namespace package into venv 2022-06-06 09:26:54 +02:00
test-qht-par.c
vhost-user-bridge.c tests: vhost-user-bridge: Avoid using hardcoded /tmp 2022-09-27 20:51:20 +02:00