mirror of
https://github.com/qemu/qemu.git
synced 2026-02-04 02:24:51 +00:00
tests/migration-test: Remove postcopy_recovery_fail_stage from MigrateCommon
The parameter can be instead passed into the function to avoid polluting the global address space of MigrateCommon. Reviewed-by: Prasad Pandit <ppandit@redhat.com> Signed-off-by: Peter Xu <peterx@redhat.com> Link: https://lore.kernel.org/qemu-devel/20260114153751.2427172-3-peterx@redhat.com Signed-off-by: Fabiano Rosas <farosas@suse.de>
This commit is contained in:
@@ -739,7 +739,8 @@ static void postcopy_recover_fail(QTestState *from, QTestState *to,
|
||||
#endif
|
||||
}
|
||||
|
||||
void test_postcopy_recovery_common(MigrateCommon *args)
|
||||
void test_postcopy_recovery_common(MigrateCommon *args,
|
||||
PostcopyRecoveryFailStage fail_stage)
|
||||
{
|
||||
QTestState *from, *to;
|
||||
g_autofree char *uri = NULL;
|
||||
@@ -784,12 +785,12 @@ void test_postcopy_recovery_common(MigrateCommon *args)
|
||||
wait_for_postcopy_status(to, "postcopy-paused");
|
||||
wait_for_postcopy_status(from, "postcopy-paused");
|
||||
|
||||
if (args->postcopy_recovery_fail_stage) {
|
||||
if (fail_stage) {
|
||||
/*
|
||||
* Test when a wrong socket specified for recover, and then the
|
||||
* ability to kick it out, and continue with a correct socket.
|
||||
*/
|
||||
postcopy_recover_fail(from, to, args->postcopy_recovery_fail_stage);
|
||||
postcopy_recover_fail(from, to, fail_stage);
|
||||
/* continue with a good recovery */
|
||||
}
|
||||
|
||||
|
||||
@@ -229,9 +229,6 @@ typedef struct {
|
||||
* refer to existing ones with live=true), or use live=off by default.
|
||||
*/
|
||||
bool live;
|
||||
|
||||
/* Postcopy specific fields */
|
||||
PostcopyRecoveryFailStage postcopy_recovery_fail_stage;
|
||||
} MigrateCommon;
|
||||
|
||||
void wait_for_serial(const char *side);
|
||||
@@ -244,7 +241,8 @@ int migrate_start(QTestState **from, QTestState **to, const char *uri,
|
||||
void migrate_end(QTestState *from, QTestState *to, bool test_dest);
|
||||
|
||||
void test_postcopy_common(MigrateCommon *args);
|
||||
void test_postcopy_recovery_common(MigrateCommon *args);
|
||||
void test_postcopy_recovery_common(MigrateCommon *args,
|
||||
PostcopyRecoveryFailStage fail_stage);
|
||||
int test_precopy_common(MigrateCommon *args);
|
||||
void test_file_common(MigrateCommon *args, bool stop_src);
|
||||
void *migrate_hook_start_precopy_tcp_multifd_common(QTestState *from,
|
||||
|
||||
@@ -41,30 +41,26 @@ static void test_postcopy_preempt(char *name, MigrateCommon *args)
|
||||
|
||||
static void test_postcopy_recovery(char *name, MigrateCommon *args)
|
||||
{
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_NONE);
|
||||
}
|
||||
|
||||
static void test_postcopy_recovery_fail_handshake(char *name,
|
||||
MigrateCommon *args)
|
||||
{
|
||||
args->postcopy_recovery_fail_stage = POSTCOPY_FAIL_RECOVERY;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_RECOVERY);
|
||||
}
|
||||
|
||||
static void test_postcopy_recovery_fail_reconnect(char *name,
|
||||
MigrateCommon *args)
|
||||
{
|
||||
args->postcopy_recovery_fail_stage = POSTCOPY_FAIL_CHANNEL_ESTABLISH;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_CHANNEL_ESTABLISH);
|
||||
}
|
||||
|
||||
static void test_postcopy_preempt_recovery(char *name, MigrateCommon *args)
|
||||
{
|
||||
args->start.caps[MIGRATION_CAPABILITY_POSTCOPY_PREEMPT] = true;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_NONE);
|
||||
}
|
||||
|
||||
static void migration_test_add_postcopy_smoke(MigrationTestEnv *env)
|
||||
|
||||
@@ -385,7 +385,7 @@ static void test_postcopy_recovery_tls_psk(char *name, MigrateCommon *args)
|
||||
args->start_hook = migrate_hook_start_tls_psk_match;
|
||||
args->end_hook = migrate_hook_end_tls_psk;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_NONE);
|
||||
}
|
||||
|
||||
static void test_multifd_postcopy_recovery_tls_psk(char *name,
|
||||
@@ -396,7 +396,7 @@ static void test_multifd_postcopy_recovery_tls_psk(char *name,
|
||||
|
||||
args->start.caps[MIGRATION_CAPABILITY_MULTIFD] = true;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_NONE);
|
||||
}
|
||||
|
||||
/* This contains preempt+recovery+tls test altogether */
|
||||
@@ -407,7 +407,7 @@ static void test_postcopy_preempt_all(char *name, MigrateCommon *args)
|
||||
|
||||
args->start.caps[MIGRATION_CAPABILITY_POSTCOPY_PREEMPT] = true;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_NONE);
|
||||
}
|
||||
|
||||
static void test_multifd_postcopy_preempt_recovery_tls_psk(char *name,
|
||||
@@ -419,7 +419,7 @@ static void test_multifd_postcopy_preempt_recovery_tls_psk(char *name,
|
||||
args->start.caps[MIGRATION_CAPABILITY_MULTIFD] = true;
|
||||
args->start.caps[MIGRATION_CAPABILITY_POSTCOPY_PREEMPT] = true;
|
||||
|
||||
test_postcopy_recovery_common(args);
|
||||
test_postcopy_recovery_common(args, POSTCOPY_FAIL_NONE);
|
||||
}
|
||||
|
||||
static void test_precopy_unix_tls_psk(char *name, MigrateCommon *args)
|
||||
|
||||
Reference in New Issue
Block a user