45 lines · 1012 B · C
RawDownload
/* 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 {	u32 nr_vcpus;	u32 nr_iter;	u32 timer_period_ms;	u32 migration_freq_ms;	u32 timer_err_margin_us;	/* Members of struct kvm_arm_counter_offset */	u64 counter_offset;	u64 reserved;}; /* Shared variables between host and guest */struct test_vcpu_shared_data {	u32 nr_iter;	int guest_stage;	u64 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 */