Hi, Sorry, patchew found a leak in the auto converge test. I fixed it in v7.
Also, there are two other fails, but it seems these are not related to my changes: Fail 1: https://patchew.org/logs/20190909104948.30253-1-yury-ko...@yandex-team.ru/testing.docker-mingw@fedora/?type=message ... /tmp/qemu-test/src/qemu.nsi File: "/tmp/qemu-test/src\README" -> no files found. Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] | /oname=outfile one_file_only) Error in script "/tmp/qemu-test/src/qemu.nsi" on line 122 -- aborting creation process ... Fail 2: https://patchew.org/logs/20190909104948.30253-1-yury-ko...@yandex-team.ru/testing.asan/?type=message ... SUMMARY: AddressSanitizer: stack-use-after-scope /tmp/qemu-test/src/tests/test-char.c:762:50 in char_socket_server_test ... Regards, Yury 09.09.2019, 14:31, "Paolo Bonzini" <pbonz...@redhat.com>: > On 09/09/19 12:49, Yury Kotov wrote: >> Hi, >> >> V6: >> * Fix "Add qemu_cond_timedwait" patch: >> - Changed return type for qemu_cond_timedwait (void -> bool) >> - Added details in commit message >> >> V5: >> * Updated sleep loop in throttle_thread at the suggestion of Paolo Bonzini >> * Fixed hanging of test >> >> V4: >> * The test was simplified to prevent false fails. >> >> V3: >> * Rebase fixes (migrate_set_parameter -> migrate_set_parameter_int) >> >> V2: >> * Added a test >> * Fixed qemu_cond_timedwait for qsp >> >> I wrote a test for migration auto converge and found out a strange thing: >> 1. Enable auto converge >> 2. Set max-bandwidth 1Gb/s >> 3. Set downtime-limit 1ms >> 4. Run standard test (just writes a byte per page) >> 5. Wait for converge >> 6. It's converged with 99% throttle percentage >> 7. The result downtime was about 300-600ms <<<< >> >> It's much higher than expected 1ms. I figured out that cpu_throttle_thread() >> function sleeps for 100ms+ for high throttle percentage (>=95%) in VCPU >> thread. >> And it sleeps even after a cpu kick. >> >> Fixed it by using timedwait for ms part of sleep. >> E.g timedwait(halt_cond, 1ms) + usleep(500). > > Queued, thanks. > > Paolo