]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
tests/qtest/migration-test: Fix and enable test_ignore_shared
authorNicholas Piggin <npiggin@gmail.com>
Thu, 30 May 2024 09:54:06 +0000 (19:54 +1000)
committerFabiano Rosas <farosas@suse.de>
Thu, 12 Dec 2024 13:25:42 +0000 (10:25 -0300)
This test is already starting to bitrot, so first remove it from ifdef
and fix compile issues. ppc64 transfers about 2MB, so bump the size
threshold too.

It was said to be broken on aarch64 but it may have been due to the
limited shm size under Gitlab CI.

Cc: Yury Kotov <yury-kotov@yandex-team.ru>
Cc: Dr. David Alan Gilbert <dave@treblig.org>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Dr. David Alan Gilbert <dave@treblig.org>
[put it under flaky tests, we still don't have a solution for the CI]
Signed-off-by: Fabiano Rosas <farosas@suse.de>
tests/qtest/migration-test.c

index 0d1c8154d76e2c83a8a4dfae1887fcc9ab2b0575..4b366a94a21acd32b20743fc7d2e39125945a61a 100644 (file)
@@ -107,14 +107,15 @@ static void test_analyze_script(void)
 }
 #endif
 
-#if 0
-/* Currently upset on aarch64 TCG */
 static void test_ignore_shared(void)
 {
     g_autofree char *uri = g_strdup_printf("unix:%s/migsocket", tmpfs);
     QTestState *from, *to;
+    MigrateStart args = {
+        .use_shmem = true,
+    };
 
-    if (migrate_start(&from, &to, uri, false, true, NULL, NULL)) {
+    if (migrate_start(&from, &to, uri, &args)) {
         return;
     }
 
@@ -139,11 +140,11 @@ static void test_ignore_shared(void)
     wait_for_migration_complete(from);
 
     /* Check whether shared RAM has been really skipped */
-    g_assert_cmpint(read_ram_property_int(from, "transferred"), <, 1024 * 1024);
+    g_assert_cmpint(
+        read_ram_property_int(from, "transferred"), <, 4 * 1024 * 1024);
 
     migrate_end(from, to, true);
 }
-#endif
 
 static void do_test_validate_uuid(MigrateStart *args, bool should_fail)
 {
@@ -290,7 +291,13 @@ int main(int argc, char **argv)
     migration_test_add("/migration/analyze-script", test_analyze_script);
 #endif
 
-    /* migration_test_add("/migration/ignore_shared", test_ignore_shared); */
+    /*
+     * Our CI system has problems with shared memory.
+     * Don't run this test until we find a workaround.
+     */
+    if (getenv("QEMU_TEST_FLAKY_TESTS")) {
+        migration_test_add("/migration/ignore-shared", test_ignore_shared);
+    }
 
     migration_test_add("/migration/validate_uuid", test_validate_uuid);
     migration_test_add("/migration/validate_uuid_error",