migrate_args calls g_test_skip, but that does not end the test.
It must also return an error code.  This fixes the queued patch
"migration-test: migrate_args".

Suggested-by: Fabiano Rosas <[email protected]>
Signed-off-by: Steve Sistare <[email protected]>
---
 tests/qtest/migration/framework.c | 9 ++++++---
 tests/qtest/migration/framework.h | 2 +-
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/tests/qtest/migration/framework.c 
b/tests/qtest/migration/framework.c
index 2dfb1ee..8044b2a 100644
--- a/tests/qtest/migration/framework.c
+++ b/tests/qtest/migration/framework.c
@@ -258,7 +258,7 @@ static char *test_shmem_path(void)
     return g_strdup_printf("/dev/shm/qemu-%d", getpid());
 }
 
-void migrate_args(char **from, char **to, const char *uri, MigrateStart *args)
+int migrate_args(char **from, char **to, const char *uri, MigrateStart *args)
 {
     /* options for source and target */
     g_autofree gchar *arch_opts = NULL;
@@ -351,7 +351,7 @@ void migrate_args(char **from, char **to, const char *uri, 
MigrateStart *args)
     if (!qtest_has_machine(machine_alias)) {
         g_autofree char *msg = g_strdup_printf("machine %s not supported", 
machine_alias);
         g_test_skip(msg);
-        return;
+        return -1;
     }
 
     machine = resolve_machine_version(machine_alias, QEMU_ENV_SRC,
@@ -398,6 +398,7 @@ void migrate_args(char **from, char **to, const char *uri, 
MigrateStart *args)
 
     *from = cmd_source;
     *to = cmd_target;
+    return 0;
 }
 
 int migrate_start(QTestState **from, QTestState **to, const char *uri,
@@ -419,7 +420,9 @@ int migrate_start(QTestState **from, QTestState **to, const 
char *uri,
     bootfile_create(qtest_get_arch(), tmpfs, args->suspend_me);
     src_state.suspend_me = args->suspend_me;
 
-    migrate_args(&cmd_source, &cmd_target, uri, args);
+    if (migrate_args(&cmd_source, &cmd_target, uri, args)) {
+        return -1;
+    }
 
     if (!args->only_target) {
         *from = qtest_init_ext(QEMU_ENV_SRC, cmd_source, capabilities, true);
diff --git a/tests/qtest/migration/framework.h 
b/tests/qtest/migration/framework.h
index 51a8a7e..ad5ca57 100644
--- a/tests/qtest/migration/framework.h
+++ b/tests/qtest/migration/framework.h
@@ -227,7 +227,7 @@ void wait_for_serial(const char *side);
 void migrate_prepare_for_dirty_mem(QTestState *from);
 void migrate_wait_for_dirty_mem(QTestState *from, QTestState *to);
 
-void migrate_args(char **from, char **to, const char *uri, MigrateStart *args);
+int migrate_args(char **from, char **to, const char *uri, MigrateStart *args);
 int migrate_start(QTestState **from, QTestState **to, const char *uri,
                   MigrateStart *args);
 void migrate_end(QTestState *from, QTestState *to, bool test_dest);
-- 
1.8.3.1


Reply via email to