[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v10 5/5] [RFH] tests: Add migration compress threads
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH v10 5/5] [RFH] tests: Add migration compress threads tests |
Date: |
Wed, 28 Nov 2018 12:33:37 +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 | 54 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)
diff --git a/tests/migration-test.c b/tests/migration-test.c
index 010fe8b74d..3841ac9c87 100644
--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -989,6 +989,57 @@ static void test_multifd_tcp(void)
test_migrate_end(from, to, true);
}
+static void test_compress(const char *uri)
+{
+ QTestState *from, *to;
+
+ if (test_migrate_start(&from, &to, uri, false)) {
+ return;
+ }
+
+ /* 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 it 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";
@@ -1043,6 +1094,9 @@ int main(int argc, char **argv)
qtest_add_func("/migration/precopy/tcp", test_precopy_tcp);
qtest_add_func("/migration/xbzrle/unix", test_xbzrle_unix);
qtest_add_func("/migration/multifd/tcp", test_multifd_tcp);
+ if (0) {
+ qtest_add_func("/migration/compress/unix", test_compress_unix);
+ }
ret = g_test_run();
--
2.19.1
- [Qemu-devel] [PATCH v10 0/5] Add make check tests for Migration, Juan Quintela, 2018/11/28
- [Qemu-devel] [PATCH v10 1/5] tests: Add migration xbzrle test, Juan Quintela, 2018/11/28
- [Qemu-devel] [PATCH v10 3/5] tests: Add basic migration precopy tcp test, Juan Quintela, 2018/11/28
- [Qemu-devel] [PATCH v10 2/5] migration: Create socket-address parameter, Juan Quintela, 2018/11/28
- [Qemu-devel] [PATCH v10 5/5] [RFH] tests: Add migration compress threads tests,
Juan Quintela <=
- [Qemu-devel] [PATCH v10 4/5] tests: Add migration multifd test, Juan Quintela, 2018/11/28
- Re: [Qemu-devel] [PATCH v10 0/5] Add make check tests for Migration, Daniel P . Berrangé, 2018/11/29