| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- /*
- * timer test specific header
- *
- * Copyright (C) 2018, Google LLC
- */
- #ifndef SELFTEST_KVM_TIMER_TEST_H
- #define SELFTEST_KVM_TIMER_TEST_H
- #include "kvm_util.h"
- #define NR_VCPUS_DEF 4
- #define NR_TEST_ITERS_DEF 5
- #define TIMER_TEST_PERIOD_MS_DEF 10
- #define TIMER_TEST_ERR_MARGIN_US 100
- #define TIMER_TEST_MIGRATION_FREQ_MS 2
- /* Timer test cmdline parameters */
- struct test_args {
- uint32_t nr_vcpus;
- uint32_t nr_iter;
- uint32_t timer_period_ms;
- uint32_t migration_freq_ms;
- uint32_t timer_err_margin_us;
- /* Members of struct kvm_arm_counter_offset */
- uint64_t counter_offset;
- uint64_t reserved;
- };
- /* Shared variables between host and guest */
- struct test_vcpu_shared_data {
- uint32_t nr_iter;
- int guest_stage;
- uint64_t xcnt;
- };
- extern struct test_args test_args;
- extern struct kvm_vcpu *vcpus[];
- extern struct test_vcpu_shared_data vcpu_shared_data[];
- struct kvm_vm *test_vm_create(void);
- void test_vm_cleanup(struct kvm_vm *vm);
- #endif /* SELFTEST_KVM_TIMER_TEST_H */
|