mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 17:53:56 -06:00
tests/qtest/migration: Add multifd_tcp_plain test using list of channels instead of uri
Add a positive test to check multifd live migration but this time using list of channels (restricted to 1) as the starting point instead of simple uri string. Signed-off-by: Het Gala <het.gala@nutanix.com> Suggested-by: Fabiano Rosas <farosas@suse.de> Reviewed-by: Fabiano Rosas <farosas@suse.de> Link: https://lore.kernel.org/r/20240312202634.63349-8-het.gala@nutanix.com Signed-off-by: Peter Xu <peterx@redhat.com>
This commit is contained in:
parent
d5ee387de9
commit
9d36d62c00
1 changed files with 28 additions and 4 deletions
|
@ -655,6 +655,13 @@ typedef struct {
|
||||||
*/
|
*/
|
||||||
const char *connect_uri;
|
const char *connect_uri;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Optional: JSON-formatted list of src QEMU URIs. If a port is
|
||||||
|
* defined as '0' in any QDict key a value of '0' will be
|
||||||
|
* automatically converted to the correct destination port.
|
||||||
|
*/
|
||||||
|
const char *connect_channels;
|
||||||
|
|
||||||
/* Optional: callback to run at start to set migration parameters */
|
/* Optional: callback to run at start to set migration parameters */
|
||||||
TestMigrateStartHook start_hook;
|
TestMigrateStartHook start_hook;
|
||||||
/* Optional: callback to run at finish to cleanup */
|
/* Optional: callback to run at finish to cleanup */
|
||||||
|
@ -1721,7 +1728,7 @@ static void test_precopy_common(MigrateCommon *args)
|
||||||
goto finish;
|
goto finish;
|
||||||
}
|
}
|
||||||
|
|
||||||
migrate_qmp(from, to, args->connect_uri, NULL, "{}");
|
migrate_qmp(from, to, args->connect_uri, args->connect_channels, "{}");
|
||||||
|
|
||||||
if (args->result != MIG_TEST_SUCCEED) {
|
if (args->result != MIG_TEST_SUCCEED) {
|
||||||
bool allow_active = args->result == MIG_TEST_FAIL;
|
bool allow_active = args->result == MIG_TEST_FAIL;
|
||||||
|
@ -2721,7 +2728,7 @@ test_migrate_precopy_tcp_multifd_zstd_start(QTestState *from,
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_ZSTD */
|
#endif /* CONFIG_ZSTD */
|
||||||
|
|
||||||
static void test_multifd_tcp_none(void)
|
static void test_multifd_tcp_uri_none(void)
|
||||||
{
|
{
|
||||||
MigrateCommon args = {
|
MigrateCommon args = {
|
||||||
.listen_uri = "defer",
|
.listen_uri = "defer",
|
||||||
|
@ -2766,6 +2773,21 @@ static void test_multifd_tcp_no_zero_page(void)
|
||||||
test_precopy_common(&args);
|
test_precopy_common(&args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void test_multifd_tcp_channels_none(void)
|
||||||
|
{
|
||||||
|
MigrateCommon args = {
|
||||||
|
.listen_uri = "defer",
|
||||||
|
.start_hook = test_migrate_precopy_tcp_multifd_start,
|
||||||
|
.live = true,
|
||||||
|
.connect_channels = "[ { 'channel-type': 'main',"
|
||||||
|
" 'addr': { 'transport': 'socket',"
|
||||||
|
" 'type': 'inet',"
|
||||||
|
" 'host': '127.0.0.1',"
|
||||||
|
" 'port': '0' } } ]",
|
||||||
|
};
|
||||||
|
test_precopy_common(&args);
|
||||||
|
}
|
||||||
|
|
||||||
static void test_multifd_tcp_zlib(void)
|
static void test_multifd_tcp_zlib(void)
|
||||||
{
|
{
|
||||||
MigrateCommon args = {
|
MigrateCommon args = {
|
||||||
|
@ -3669,8 +3691,10 @@ int main(int argc, char **argv)
|
||||||
test_migrate_dirty_limit);
|
test_migrate_dirty_limit);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
migration_test_add("/migration/multifd/tcp/plain/none",
|
migration_test_add("/migration/multifd/tcp/uri/plain/none",
|
||||||
test_multifd_tcp_none);
|
test_multifd_tcp_uri_none);
|
||||||
|
migration_test_add("/migration/multifd/tcp/channels/plain/none",
|
||||||
|
test_multifd_tcp_channels_none);
|
||||||
migration_test_add("/migration/multifd/tcp/plain/zero-page/legacy",
|
migration_test_add("/migration/multifd/tcp/plain/zero-page/legacy",
|
||||||
test_multifd_tcp_zero_page_legacy);
|
test_multifd_tcp_zero_page_legacy);
|
||||||
migration_test_add("/migration/multifd/tcp/plain/zero-page/none",
|
migration_test_add("/migration/multifd/tcp/plain/zero-page/none",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue