[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v10 07/24] [RFH] tests: Add migration compress threa
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH v10 07/24] [RFH] tests: Add migration compress threads tests |
Date: |
Wed, 7 Mar 2018 11:59:53 +0100 |
Yeap, it is still not working. trying to learn how to debug threads
for guests running from the testt hardness.
For some reason, compression is not working at the moment, test is
disabled until I found why.
Signed-off-by: Juan Quintela <address@hidden>
---
tests/migration-test.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/tests/migration-test.c b/tests/migration-test.c
index 6b718bb5dd..6f9b4c8d7a 100644
--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -706,6 +706,55 @@ static void test_precopy_tcp(void)
g_free(port);
}
+static void test_compress(const char *uri)
+{
+ QTestState *from, *to;
+
+ test_migrate_start(&from, &to, uri);
+
+ /* We want to pick a speed slow enough that the test completes
+ * quickly, but that it doesn't complete precopy even on a slow
+ * machine, so also set the downtime.
+ */
+ /* 1 ms should make it not converge*/
+ migrate_set_parameter(from, "downtime-limit", "1");
+ /* 1GB/s */
+ migrate_set_parameter(from, "max-bandwidth", "1000000000");
+
+ migrate_set_parameter(from, "compress-threads", "4");
+ migrate_set_parameter(to, "decompress-threads", "3");
+
+ migrate_set_capability(from, "compress", "true");
+ migrate_set_capability(to, "compress", "true");
+ /* Wait for the first serial output from the source */
+ wait_for_serial("src_serial");
+
+ migrate(from, uri);
+
+ wait_for_migration_pass(from);
+
+ /* 300ms should converge */
+ migrate_set_parameter(from, "downtime-limit", "300");
+
+ if (!got_stop) {
+ qtest_qmp_eventwait(from, "STOP");
+ }
+ qtest_qmp_eventwait(to, "RESUME");
+
+ wait_for_serial("dest_serial");
+ wait_for_migration_complete(from);
+
+ test_migrate_end(from, to, true);
+}
+
+static void test_compress_unix(void)
+{
+ char *uri = g_strdup_printf("unix:%s/migsocket", tmpfs);
+
+ test_compress(uri);
+ g_free(uri);
+}
+
int main(int argc, char **argv)
{
char template[] = "/tmp/migration-test-XXXXXX";
@@ -731,6 +780,9 @@ int main(int argc, char **argv)
qtest_add_func("/migration/precopy/unix", test_precopy_unix);
qtest_add_func("/migration/precopy/tcp", test_precopy_tcp);
qtest_add_func("/migration/xbzrle/unix", test_xbzrle_unix);
+ if (0) {
+ qtest_add_func("/migration/compress/unix", test_compress_unix);
+ }
ret = g_test_run();
--
2.14.3
- Re: [Qemu-devel] [PATCH v10 08/24] migration: Add multifd test, (continued)
[Qemu-devel] [PATCH v10 04/24] migration: Set the migration tcp port, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 12/24] migration: Reference counting recv channels correctly, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 03/24] migration: Create tcp_port parameter, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 07/24] [RFH] tests: Add migration compress threads tests,
Juan Quintela <=
[Qemu-devel] [PATCH v10 06/24] tests: Add basic migration precopy tcp test, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 11/24] migration: terminate_* can be called for other threads, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 14/24] migration: Be sure all recv channels are created, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 01/24] tests: Add migration precopy test, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 10/24] migration: In case of error just end the migration, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 02/24] tests: Add migration xbzrle test, Juan Quintela, 2018/03/07
[Qemu-devel] [PATCH v10 13/24] migration: Introduce multifd_recv_new_channel(), Juan Quintela, 2018/03/07