[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 09/23] tests/migration: Only run auto_converge in slow mode
From: |
Thomas Huth |
Subject: |
[PULL 09/23] tests/migration: Only run auto_converge in slow mode |
Date: |
Thu, 20 Apr 2023 12:12:02 +0200 |
From: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20230412142001.16501-3-quintela@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
tests/qtest/migration-test.c | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
index 3b615b0da9..60dd53d3ec 100644
--- a/tests/qtest/migration-test.c
+++ b/tests/qtest/migration-test.c
@@ -1796,6 +1796,21 @@ static void test_validate_uuid_dst_not_set(void)
do_test_validate_uuid(&args, false);
}
+/*
+ * The way auto_converge works, we need to do too many passes to
+ * run this test. Auto_converge logic is only run once every
+ * three iterations, so:
+ *
+ * - 3 iterations without auto_converge enabled
+ * - 3 iterations with pct = 5
+ * - 3 iterations with pct = 30
+ * - 3 iterations with pct = 55
+ * - 3 iterations with pct = 80
+ * - 3 iterations with pct = 95 (max(95, 80 + 25))
+ *
+ * To make things even worse, we need to run the initial stage at
+ * 3MB/s so we enter autoconverge even when host is (over)loaded.
+ */
static void test_migrate_auto_converge(void)
{
g_autofree char *uri = g_strdup_printf("unix:%s/migsocket", tmpfs);
@@ -2575,8 +2590,12 @@ int main(int argc, char **argv)
test_validate_uuid_src_not_set);
qtest_add_func("/migration/validate_uuid_dst_not_set",
test_validate_uuid_dst_not_set);
-
- qtest_add_func("/migration/auto_converge", test_migrate_auto_converge);
+ /*
+ * See explanation why this test is slow on function definition
+ */
+ if (g_test_slow()) {
+ qtest_add_func("/migration/auto_converge", test_migrate_auto_converge);
+ }
qtest_add_func("/migration/multifd/tcp/plain/none",
test_multifd_tcp_none);
/*
--
2.31.1
- [PULL 08/23] travis.yml: Add missing 'flex', 'bison' packages to 'GCC (user)' job, (continued)
- [PULL 08/23] travis.yml: Add missing 'flex', 'bison' packages to 'GCC (user)' job, Thomas Huth, 2023/04/20
- [PULL 14/23] softmmu: Make qtest.c target independent, Thomas Huth, 2023/04/20
- [PULL 07/23] travis.yml: Add missing clang-10 package to the 'Clang (disable-tcg)' job, Thomas Huth, 2023/04/20
- [PULL 04/23] test: Fix test-crypto-secret when compiling without keyring support, Thomas Huth, 2023/04/20
- [PULL 13/23] include/exec: Provide the tswap() functions for target independent code, too, Thomas Huth, 2023/04/20
- [PULL 15/23] hw/display: Compile vga.c as target-independent code, Thomas Huth, 2023/04/20
- [PULL 12/23] softmmu/qtest: Move the target-specific pseries RTAS code out of qtest.c, Thomas Huth, 2023/04/20
- [PULL 17/23] hw/core: Move numa.c into the target independent source set, Thomas Huth, 2023/04/20
- [PULL 21/23] qtest: Move tpm_util_tis_transmit() into tpm-tis-utils.c and rename it, Thomas Huth, 2023/04/20
- [PULL 23/23] tests/vm/freebsd: Update to FreeBSD 13.2, Thomas Huth, 2023/04/20
- [PULL 09/23] tests/migration: Only run auto_converge in slow mode,
Thomas Huth <=
- [PULL 11/23] hw/char: Move two more files from specific_ss to softmmu_ss, Thomas Huth, 2023/04/20
- [PULL 18/23] cpu: Remove parameter of list_cpus(), Thomas Huth, 2023/04/20
- [PULL 16/23] softmmu: Move dirtylimit.c into the target independent source set, Thomas Huth, 2023/04/20
- [PULL 20/23] qtest: Add functions for accessing devices on Aspeed I2C controller, Thomas Huth, 2023/04/20
- [PULL 22/23] qtest: Add a test case for TPM TIS I2C connected to Aspeed I2C controller, Thomas Huth, 2023/04/20
- [PULL 19/23] MAINTAINERS: Add Juan Quintela to developer guides review, Thomas Huth, 2023/04/20
- Re: [PULL 00/23] First batch of testing and misc patches for 8.1, Richard Henderson, 2023/04/21