diff options
| author | Li Zhijian <lizhijian@fujitsu.com> | 2025-05-13 09:22:07 +0800 |
|---|---|---|
| committer | Peter Xu <peterx@redhat.com> | 2025-05-20 11:26:32 -0400 |
| commit | 6b84c46e8e0ef6f83f33657a29a8abb2b8362d02 (patch) | |
| tree | 5f6d4916ee6de021177db87dd42a12e57e56dbf4 /tests/qtest/migration/precopy-tests.c | |
| parent | 7b2e4f788d60a8ec25efbf1e6bb6552ee0cef17c (diff) | |
| download | focaccia-qemu-6b84c46e8e0ef6f83f33657a29a8abb2b8362d02.tar.gz focaccia-qemu-6b84c46e8e0ef6f83f33657a29a8abb2b8362d02.zip | |
qtest/migration/rdma: Add test for rdma migration with ipv6
Recently, we removed ipv6 restriction[0] from RDMA migration, add a test for it. [0] https://lore.kernel.org/qemu-devel/20250326095224.9918-1-jinpu.wang@ionos.com/ Cc: Jack Wang <jinpu.wang@ionos.com> Cc: Michael R. Galaxy <mrgalaxy@nvidia.com> Cc: Peter Xu <peterx@redhat.com> Cc: Yu Zhang <yu.zhang@ionos.com> Reviewed-by: Jack Wang <jinpu.wang@ionos.com> Signed-off-by: Li Zhijian <lizhijian@fujitsu.com> Link: https://lore.kernel.org/r/20250513012207.2867069-1-lizhijian@fujitsu.com [peterx: Fix over long lines] Signed-off-by: Peter Xu <peterx@redhat.com>
Diffstat (limited to 'tests/qtest/migration/precopy-tests.c')
| -rw-r--r-- | tests/qtest/migration/precopy-tests.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/tests/qtest/migration/precopy-tests.c b/tests/qtest/migration/precopy-tests.c index 5be1cd5742..a62d3c5378 100644 --- a/tests/qtest/migration/precopy-tests.c +++ b/tests/qtest/migration/precopy-tests.c @@ -131,12 +131,13 @@ static bool mlock_check(void) } #define RDMA_MIGRATION_HELPER "scripts/rdma-migration-helper.sh" -static int new_rdma_link(char *buffer) +static int new_rdma_link(char *buffer, bool ipv6) { char cmd[256]; bool verbose = g_getenv("QTEST_LOG"); - snprintf(cmd, sizeof(cmd), "%s detect %s", RDMA_MIGRATION_HELPER, + snprintf(cmd, sizeof(cmd), "IP_FAMILY=%s %s detect %s", + ipv6 ? "ipv6" : "ipv4", RDMA_MIGRATION_HELPER, verbose ? "" : "2>/dev/null"); FILE *pipe = popen(cmd, "r"); @@ -161,7 +162,7 @@ static int new_rdma_link(char *buffer) return -1; } -static void test_precopy_rdma_plain(void) +static void __test_precopy_rdma_plain(bool ipv6) { char buffer[128] = {}; @@ -170,7 +171,7 @@ static void test_precopy_rdma_plain(void) return; } - if (new_rdma_link(buffer)) { + if (new_rdma_link(buffer, ipv6)) { g_test_skip("No rdma link available\n" "# To enable the test:\n" "# Run \'" RDMA_MIGRATION_HELPER " setup\' with root to " @@ -193,6 +194,16 @@ static void test_precopy_rdma_plain(void) test_precopy_common(&args); } + +static void test_precopy_rdma_plain(void) +{ + __test_precopy_rdma_plain(false); +} + +static void test_precopy_rdma_plain_ipv6(void) +{ + __test_precopy_rdma_plain(true); +} #endif static void test_precopy_tcp_plain(void) @@ -1226,6 +1237,8 @@ static void migration_test_add_precopy_smoke(MigrationTestEnv *env) #ifdef CONFIG_RDMA migration_test_add("/migration/precopy/rdma/plain", test_precopy_rdma_plain); + migration_test_add("/migration/precopy/rdma/plain/ipv6", + test_precopy_rdma_plain_ipv6); #endif } |