[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
migration test fails for aarch64 target (was: Re: [PULL 08/30] tests: Ad
From: |
Thomas Huth |
Subject: |
migration test fails for aarch64 target (was: Re: [PULL 08/30] tests: Add dirty page rate limit test) |
Date: |
Mon, 1 Aug 2022 12:41:19 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 |
On 20/07/2022 13.19, Dr. David Alan Gilbert (git) wrote:
From: Hyman Huang(黄勇) <huangy81@chinatelecom.cn>
Add dirty page rate limit test if kernel support dirty ring,
The following qmp commands are covered by this test case:
"calc-dirty-rate", "query-dirty-rate", "set-vcpu-dirty-limit",
"cancel-vcpu-dirty-limit" and "query-vcpu-dirty-limit".
Signed-off-by: Hyman Huang(黄勇) <huangy81@chinatelecom.cn>
Acked-by: Peter Xu <peterx@redhat.com>
Message-Id:
<eed5b847a6ef0a9c02a36383dbdd7db367dd1e7e.1656177590.git.huangy81@chinatelecom.cn>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
---
tests/qtest/migration-helpers.c | 22 +++
tests/qtest/migration-helpers.h | 2 +
tests/qtest/migration-test.c | 256 ++++++++++++++++++++++++++++++++
3 files changed, 280 insertions(+)
[...]
+static QTestState *dirtylimit_start_vm(void)
+{
+ QTestState *vm = NULL;
+ g_autofree gchar *cmd = NULL;
+ const char *arch = qtest_get_arch();
+ g_autofree char *bootpath = NULL;
+
+ assert((strcmp(arch, "x86_64") == 0));
Hi!
This assert triggers on my x86 laptop when I run "make check" there. More
precisely, it triggers when qemu-system-aarch64 is getting tested:
$ QTEST_QEMU_BINARY=./qemu-system-aarch64 tests/qtest/migration-test
/aarch64/migration/bad_dest: OK
/aarch64/migration/fd_proto: OK
/aarch64/migration/validate_uuid: OK
/aarch64/migration/validate_uuid_error: OK
/aarch64/migration/validate_uuid_src_not_set: OK
/aarch64/migration/validate_uuid_dst_not_set: OK
/aarch64/migration/auto_converge: OK
/aarch64/migration/dirty_ring: OK
/aarch64/migration/vcpu_dirty_limit: migration-test:
../../devel/qemu/tests/qtest/migration-test.c:2304: dirtylimit_start_vm:
Assertion `(strcmp(arch, "x86_64") == 0)' failed.
Aborted (core dumped)
static bool kvm_dirty_ring_supported(void)
{
#if defined(__linux__) && defined(HOST_X86_64)
@@ -2204,6 +2458,8 @@ int main(int argc, char **argv)
if (kvm_dirty_ring_supported()) {
qtest_add_func("/migration/dirty_ring",
test_precopy_unix_dirty_ring);
+ qtest_add_func("/migration/vcpu_dirty_limit",
+ test_vcpu_dirty_limit);
}
kvm_dirty_ring_supported() returns "true" if the KVM of the *host* is x86
and has the dirty ring support, but it does *not* check the target
architecture that is currently tested, so you also get here "true" for
qemu-system-aarch64 being tested on a x86 host... Thus I guess
kvm_dirty_ring_supported() needs also a check for the right target architecture?
Thomas
- migration test fails for aarch64 target (was: Re: [PULL 08/30] tests: Add dirty page rate limit test),
Thomas Huth <=