Path: blob/master/tools/testing/selftests/kvm/include/timer_test.h
38235 views
/* SPDX-License-Identifier: GPL-2.0-only */1/*2* timer test specific header3*4* Copyright (C) 2018, Google LLC5*/67#ifndef SELFTEST_KVM_TIMER_TEST_H8#define SELFTEST_KVM_TIMER_TEST_H910#include "kvm_util.h"1112#define NR_VCPUS_DEF 413#define NR_TEST_ITERS_DEF 514#define TIMER_TEST_PERIOD_MS_DEF 1015#define TIMER_TEST_ERR_MARGIN_US 10016#define TIMER_TEST_MIGRATION_FREQ_MS 21718/* Timer test cmdline parameters */19struct test_args {20uint32_t nr_vcpus;21uint32_t nr_iter;22uint32_t timer_period_ms;23uint32_t migration_freq_ms;24uint32_t timer_err_margin_us;25/* Members of struct kvm_arm_counter_offset */26uint64_t counter_offset;27uint64_t reserved;28};2930/* Shared variables between host and guest */31struct test_vcpu_shared_data {32uint32_t nr_iter;33int guest_stage;34uint64_t xcnt;35};3637extern struct test_args test_args;38extern struct kvm_vcpu *vcpus[];39extern struct test_vcpu_shared_data vcpu_shared_data[];4041struct kvm_vm *test_vm_create(void);42void test_vm_cleanup(struct kvm_vm *vm);4344#endif /* SELFTEST_KVM_TIMER_TEST_H */454647