tests/qtest/migration: Fix slow test dirty_limit

After the referenced commit, the incoming side doesn't exit
automatically after a failure. Tests that expect the destination to
fail should use -incoming defer, issue QMP migrate-incoming, wait for
the failure event and issue QMP quit.

Fix the dirty_limit test which wasn't updated properly.

Fixes: 4e8c4dda97 ("tests/qtest/migration: Force exit-on-error=false")
Reported-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20260326164405.1626-1-farosas@suse.de
Signed-off-by: Fabiano Rosas <farosas@suse.de>
This commit is contained in:
Fabiano Rosas
2026-03-26 13:44:05 -03:00
parent 75ecd66028
commit 6f33b6eebb

View File

@@ -1070,11 +1070,10 @@ static void test_dirty_limit(char *name, MigrateCommon *args)
args->start.hide_stderr = true;
args->start.use_dirty_ring = true;
args->listen_uri = uri;
args->connect_uri = uri;
/* Start src, dst vm */
if (migrate_start(&from, &to, args->listen_uri, &args->start)) {
if (migrate_start(&from, &to, "defer", &args->start)) {
return;
}
@@ -1082,6 +1081,7 @@ static void test_dirty_limit(char *name, MigrateCommon *args)
migrate_dirty_limit_wait_showup(from, dirtylimit_period, dirtylimit_value);
/* Start migrate */
migrate_incoming_qmp(to, args->connect_uri, NULL, "{}");
migrate_qmp(from, to, args->connect_uri, NULL, "{}");
/* Wait for dirty limit throttle begin */