On 18/07/2022 21.14, Peter Xu wrote:
Hi, Thomas,
On Mon, Jul 18, 2022 at 08:23:26PM +0200, Thomas Huth wrote:
On 07/07/2022 20.46, Peter Xu wrote:
We used to stop running all tests if uffd is not detected. However
logically that's only needed for postcopy not the rest of tests.
Keep running the rest when still possible.
Signed-off-by: Peter Xu <pet...@redhat.com>
---
tests/qtest/migration-test.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
Did you test your patch in the gitlab-CI? I just added it to my testing-next
branch and the the test is failing reproducibly on macOS here:
https://gitlab.com/thuth/qemu/-/jobs/2736260861#L6275
https://gitlab.com/thuth/qemu/-/jobs/2736623914#L6275
(without your patch the whole test is skipped instead)
Thanks for reporting this.
Is it easy to figure out which test was failing on your side? I cannot
easily reproduce this here on a MacOS with M1.
I've modified the yml file to only run the migration test in verbose mode
and got this:
...
ok 5 /x86_64/migration/validate_uuid_src_not_set
# starting QEMU: exec ./qemu-system-x86_64 -qtest unix:/tmp/qtest-58011.sock
-qtest-log /dev/null -chardev socket,path=/tmp/qtest-58011.qmp,id=char0 -mon
chardev=char0,mode=control -display none -accel kvm -accel tcg -name
source,debug-threads=on -m 150M -serial
file:/tmp/migration-test-ef2fMr/src_serial -drive
file=/tmp/migration-test-ef2fMr/bootsect,format=raw -uuid
11111111-1111-1111-1111-111111111111 2>/dev/null -accel qtest
# starting QEMU: exec ./qemu-system-x86_64 -qtest unix:/tmp/qtest-58011.sock
-qtest-log /dev/null -chardev socket,path=/tmp/qtest-58011.qmp,id=char0 -mon
chardev=char0,mode=control -display none -accel kvm -accel tcg -name
target,debug-threads=on -m 150M -serial
file:/tmp/migration-test-ef2fMr/dest_serial -incoming
unix:/tmp/migration-test-ef2fMr/migsocket -drive
file=/tmp/migration-test-ef2fMr/bootsect,format=raw 2>/dev/null -accel qtest
ok 6 /x86_64/migration/validate_uuid_dst_not_set
# starting QEMU: exec ./qemu-system-x86_64 -qtest unix:/tmp/qtest-58011.sock
-qtest-log /dev/null -chardev socket,path=/tmp/qtest-58011.qmp,id=char0 -mon
chardev=char0,mode=control -display none -accel kvm -accel tcg -name
source,debug-threads=on -m 150M -serial
file:/tmp/migration-test-ef2fMr/src_serial -drive
file=/tmp/migration-test-ef2fMr/bootsect,format=raw -accel qtest
# starting QEMU: exec ./qemu-system-x86_64 -qtest unix:/tmp/qtest-58011.sock
-qtest-log /dev/null -chardev socket,path=/tmp/qtest-58011.qmp,id=char0 -mon
chardev=char0,mode=control -display none -accel kvm -accel tcg -name
target,debug-threads=on -m 150M -serial
file:/tmp/migration-test-ef2fMr/dest_serial -incoming
unix:/tmp/migration-test-ef2fMr/migsocket -drive
file=/tmp/migration-test-ef2fMr/bootsect,format=raw -accel qtest
**
ERROR:../tests/qtest/migration-helpers.c:181:wait_for_migration_status:
assertion failed: (g_test_timer_elapsed() < MIGRATION_STATUS_WAIT_TIMEOUT)
Bail out!
ERROR:../tests/qtest/migration-helpers.c:181:wait_for_migration_status:
assertion failed: (g_test_timer_elapsed() < MIGRATION_STATUS_WAIT_TIMEOUT)
qemu-system-x86_64: failed to save SaveStateEntry with id(name): 2(ram): -5
qemu-system-x86_64: Unable to write to socket: Broken pipe
/var/folders/tn/f_9sf1xx5t14qm_6f83q3b840000gn/T/scripts81855ad8681d0d86d1e91e00167939cb.sh:
line 9: 58011 Abort trap: 6 QTEST_QEMU_BINARY=./qemu-system-x86_64
tests/qtest/migration-test
(see: https://cirrus-ci.com/task/5719789887815680?logs=build#L7205 )
So it seems like validate_uuid_dst_not_set was the last successful test, and
it's likely failing with test_migrate_auto_converge ?
Or any hint on how I could kick the same CI as you do would help too. I
remembered I used to kick the test after any push with .gitlab-ci.yml but
it seems it's not triggering for some reason here.
As Daniel already said, you need to set up Cirrus-CI according to
.gitlab-ci.d/cirrus/README.rst to get the macOS jobs in your CI.
Thomas