kvm: selftests: move arch-specific files to arch-specific locations
Signed-off-by: Andrew Jones <drjones@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
14c47b7530
commit
cc68765d41
13
tools/testing/selftests/kvm/.gitignore
vendored
13
tools/testing/selftests/kvm/.gitignore
vendored
@ -1,6 +1,7 @@
|
|||||||
cr4_cpuid_sync_test
|
/x86_64/cr4_cpuid_sync_test
|
||||||
platform_info_test
|
/x86_64/platform_info_test
|
||||||
set_sregs_test
|
/x86_64/set_sregs_test
|
||||||
sync_regs_test
|
/x86_64/sync_regs_test
|
||||||
vmx_tsc_adjust_test
|
/x86_64/vmx_tsc_adjust_test
|
||||||
state_test
|
/x86_64/state_test
|
||||||
|
/x86_64/dirty_log_test
|
||||||
|
@ -1,26 +1,26 @@
|
|||||||
all:
|
all:
|
||||||
|
|
||||||
top_srcdir = ../../../../
|
top_srcdir = ../../../..
|
||||||
UNAME_M := $(shell uname -m)
|
UNAME_M := $(shell uname -m)
|
||||||
|
|
||||||
LIBKVM = lib/assert.c lib/elf.c lib/io.c lib/kvm_util.c lib/ucall.c lib/sparsebit.c
|
LIBKVM = lib/assert.c lib/elf.c lib/io.c lib/kvm_util.c lib/ucall.c lib/sparsebit.c
|
||||||
LIBKVM_x86_64 = lib/x86.c lib/vmx.c
|
LIBKVM_x86_64 = lib/x86_64/processor.c lib/x86_64/vmx.c
|
||||||
|
|
||||||
TEST_GEN_PROGS_x86_64 = platform_info_test
|
TEST_GEN_PROGS_x86_64 = x86_64/platform_info_test
|
||||||
TEST_GEN_PROGS_x86_64 += set_sregs_test
|
TEST_GEN_PROGS_x86_64 += x86_64/set_sregs_test
|
||||||
TEST_GEN_PROGS_x86_64 += sync_regs_test
|
TEST_GEN_PROGS_x86_64 += x86_64/sync_regs_test
|
||||||
TEST_GEN_PROGS_x86_64 += vmx_tsc_adjust_test
|
TEST_GEN_PROGS_x86_64 += x86_64/vmx_tsc_adjust_test
|
||||||
TEST_GEN_PROGS_x86_64 += cr4_cpuid_sync_test
|
TEST_GEN_PROGS_x86_64 += x86_64/cr4_cpuid_sync_test
|
||||||
TEST_GEN_PROGS_x86_64 += state_test
|
TEST_GEN_PROGS_x86_64 += x86_64/state_test
|
||||||
TEST_GEN_PROGS_x86_64 += dirty_log_test
|
TEST_GEN_PROGS_x86_64 += x86_64/dirty_log_test
|
||||||
|
|
||||||
TEST_GEN_PROGS += $(TEST_GEN_PROGS_$(UNAME_M))
|
TEST_GEN_PROGS += $(TEST_GEN_PROGS_$(UNAME_M))
|
||||||
LIBKVM += $(LIBKVM_$(UNAME_M))
|
LIBKVM += $(LIBKVM_$(UNAME_M))
|
||||||
|
|
||||||
INSTALL_HDR_PATH = $(top_srcdir)/usr
|
INSTALL_HDR_PATH = $(top_srcdir)/usr
|
||||||
LINUX_HDR_PATH = $(INSTALL_HDR_PATH)/include/
|
LINUX_HDR_PATH = $(INSTALL_HDR_PATH)/include/
|
||||||
LINUX_TOOL_INCLUDE = $(top_srcdir)tools/include
|
LINUX_TOOL_INCLUDE = $(top_srcdir)/tools/include
|
||||||
CFLAGS += -O2 -g -std=gnu99 -I$(LINUX_TOOL_INCLUDE) -I$(LINUX_HDR_PATH) -Iinclude -I$(<D) -I..
|
CFLAGS += -O2 -g -std=gnu99 -I$(LINUX_TOOL_INCLUDE) -I$(LINUX_HDR_PATH) -Iinclude -I$(<D) -Iinclude/$(UNAME_M) -I..
|
||||||
LDFLAGS += -pthread
|
LDFLAGS += -pthread
|
||||||
|
|
||||||
# After inclusion, $(OUTPUT) is defined and
|
# After inclusion, $(OUTPUT) is defined and
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#ifndef SELFTEST_KVM_UTIL_H
|
#ifndef SELFTEST_KVM_UTIL_H
|
||||||
#define SELFTEST_KVM_UTIL_H 1
|
#define SELFTEST_KVM_UTIL_H
|
||||||
|
|
||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
|
|
||||||
|
@ -15,8 +15,8 @@
|
|||||||
* even in the case where most bits are set.
|
* even in the case where most bits are set.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _TEST_SPARSEBIT_H_
|
#ifndef SELFTEST_KVM_SPARSEBIT_H
|
||||||
#define _TEST_SPARSEBIT_H_
|
#define SELFTEST_KVM_SPARSEBIT_H
|
||||||
|
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
@ -72,4 +72,4 @@ void sparsebit_validate_internal(struct sparsebit *sbit);
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* _TEST_SPARSEBIT_H_ */
|
#endif /* SELFTEST_KVM_SPARSEBIT_H */
|
||||||
|
@ -7,8 +7,8 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef TEST_UTIL_H
|
#ifndef SELFTEST_KVM_TEST_UTIL_H
|
||||||
#define TEST_UTIL_H 1
|
#define SELFTEST_KVM_TEST_UTIL_H
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
@ -41,4 +41,4 @@ void test_assert(bool exp, const char *exp_str,
|
|||||||
#a, #b, #a, (unsigned long) __a, #b, (unsigned long) __b); \
|
#a, #b, #a, (unsigned long) __a, #b, (unsigned long) __b); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#endif /* TEST_UTIL_H */
|
#endif /* SELFTEST_KVM_TEST_UTIL_H */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* tools/testing/selftests/kvm/include/x86.h
|
* tools/testing/selftests/kvm/include/x86_64/processor.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2018, Google LLC.
|
* Copyright (C) 2018, Google LLC.
|
||||||
*
|
*
|
||||||
@ -7,8 +7,8 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef SELFTEST_KVM_X86_H
|
#ifndef SELFTEST_KVM_PROCESSOR_H
|
||||||
#define SELFTEST_KVM_X86_H
|
#define SELFTEST_KVM_PROCESSOR_H
|
||||||
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
@ -1044,4 +1044,4 @@ void vcpu_load_state(struct kvm_vm *vm, uint32_t vcpuid, struct kvm_x86_state *s
|
|||||||
#define MSR_VM_IGNNE 0xc0010115
|
#define MSR_VM_IGNNE 0xc0010115
|
||||||
#define MSR_VM_HSAVE_PA 0xc0010117
|
#define MSR_VM_HSAVE_PA 0xc0010117
|
||||||
|
|
||||||
#endif /* !SELFTEST_KVM_X86_H */
|
#endif /* SELFTEST_KVM_PROCESSOR_H */
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* tools/testing/selftests/kvm/include/vmx.h
|
* tools/testing/selftests/kvm/include/x86_64/vmx.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2018, Google LLC.
|
* Copyright (C) 2018, Google LLC.
|
||||||
*
|
*
|
||||||
@ -11,7 +11,7 @@
|
|||||||
#define SELFTEST_KVM_VMX_H
|
#define SELFTEST_KVM_VMX_H
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
|
|
||||||
#define CPUID_VMX_BIT 5
|
#define CPUID_VMX_BIT 5
|
||||||
|
|
||||||
@ -549,4 +549,4 @@ struct vmx_pages *vcpu_alloc_vmx(struct kvm_vm *vm, vm_vaddr_t *p_vmx_gva);
|
|||||||
bool prepare_for_vmx_operation(struct vmx_pages *vmx);
|
bool prepare_for_vmx_operation(struct vmx_pages *vmx);
|
||||||
void prepare_vmcs(struct vmx_pages *vmx, void *guest_rip, void *guest_rsp);
|
void prepare_vmcs(struct vmx_pages *vmx, void *guest_rip, void *guest_rsp);
|
||||||
|
|
||||||
#endif /* !SELFTEST_KVM_VMX_H */
|
#endif /* SELFTEST_KVM_VMX_H */
|
@ -13,7 +13,7 @@
|
|||||||
#include <execinfo.h>
|
#include <execinfo.h>
|
||||||
#include <sys/syscall.h>
|
#include <sys/syscall.h>
|
||||||
|
|
||||||
#include "../../kselftest.h"
|
#include "kselftest.h"
|
||||||
|
|
||||||
/* Dumps the current stack trace to stderr. */
|
/* Dumps the current stack trace to stderr. */
|
||||||
static void __attribute__((noinline)) test_dump_stack(void);
|
static void __attribute__((noinline)) test_dump_stack(void);
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
/*
|
/*
|
||||||
* tools/testing/selftests/kvm/lib/kvm_util.c
|
* tools/testing/selftests/kvm/lib/kvm_util_internal.h
|
||||||
*
|
*
|
||||||
* Copyright (C) 2018, Google LLC.
|
* Copyright (C) 2018, Google LLC.
|
||||||
*
|
*
|
||||||
* This work is licensed under the terms of the GNU GPL, version 2.
|
* This work is licensed under the terms of the GNU GPL, version 2.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef KVM_UTIL_INTERNAL_H
|
#ifndef SELFTEST_KVM_UTIL_INTERNAL_H
|
||||||
#define KVM_UTIL_INTERNAL_H 1
|
#define SELFTEST_KVM_UTIL_INTERNAL_H
|
||||||
|
|
||||||
#include "sparsebit.h"
|
#include "sparsebit.h"
|
||||||
|
|
||||||
@ -70,4 +70,4 @@ void regs_dump(FILE *stream, struct kvm_regs *regs,
|
|||||||
void sregs_dump(FILE *stream, struct kvm_sregs *sregs,
|
void sregs_dump(FILE *stream, struct kvm_sregs *sregs,
|
||||||
uint8_t indent);
|
uint8_t indent);
|
||||||
|
|
||||||
#endif
|
#endif /* SELFTEST_KVM_UTIL_INTERNAL_H */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* tools/testing/selftests/kvm/lib/x86.c
|
* tools/testing/selftests/kvm/lib/x86_64/processor.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2018, Google LLC.
|
* Copyright (C) 2018, Google LLC.
|
||||||
*
|
*
|
||||||
@ -10,8 +10,8 @@
|
|||||||
|
|
||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "kvm_util_internal.h"
|
#include "../kvm_util_internal.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
|
|
||||||
/* Minimum physical address used for virtual translation tables. */
|
/* Minimum physical address used for virtual translation tables. */
|
||||||
#define KVM_GUEST_PAGE_TABLE_MIN_PADDR 0x180000
|
#define KVM_GUEST_PAGE_TABLE_MIN_PADDR 0x180000
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* tools/testing/selftests/kvm/lib/x86.c
|
* tools/testing/selftests/kvm/lib/x86_64/vmx.c
|
||||||
*
|
*
|
||||||
* Copyright (C) 2018, Google LLC.
|
* Copyright (C) 2018, Google LLC.
|
||||||
*
|
*
|
||||||
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
#include "vmx.h"
|
#include "vmx.h"
|
||||||
|
|
||||||
/* Allocate memory regions for nested VMX tests.
|
/* Allocate memory regions for nested VMX tests.
|
@ -17,7 +17,7 @@
|
|||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
|
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
|
|
||||||
#define X86_FEATURE_XSAVE (1<<26)
|
#define X86_FEATURE_XSAVE (1<<26)
|
||||||
#define X86_FEATURE_OSXSAVE (1<<27)
|
#define X86_FEATURE_OSXSAVE (1<<27)
|
@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
|
|
||||||
#define VCPU_ID 0
|
#define VCPU_ID 0
|
||||||
#define MSR_PLATFORM_INFO_MAX_TURBO_RATIO 0xff00
|
#define MSR_PLATFORM_INFO_MAX_TURBO_RATIO 0xff00
|
@ -22,7 +22,7 @@
|
|||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
|
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
|
|
||||||
#define VCPU_ID 5
|
#define VCPU_ID 5
|
||||||
|
|
@ -17,7 +17,7 @@
|
|||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
|
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
#include "vmx.h"
|
#include "vmx.h"
|
||||||
|
|
||||||
#define VCPU_ID 5
|
#define VCPU_ID 5
|
@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
|
|
||||||
#define VCPU_ID 5
|
#define VCPU_ID 5
|
||||||
|
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* gtests/tests/vmx_tsc_adjust_test.c
|
* vmx_tsc_adjust_test
|
||||||
*
|
*
|
||||||
* Copyright (C) 2018, Google LLC.
|
* Copyright (C) 2018, Google LLC.
|
||||||
*
|
*
|
||||||
@ -22,13 +22,13 @@
|
|||||||
|
|
||||||
#include "test_util.h"
|
#include "test_util.h"
|
||||||
#include "kvm_util.h"
|
#include "kvm_util.h"
|
||||||
#include "x86.h"
|
#include "processor.h"
|
||||||
#include "vmx.h"
|
#include "vmx.h"
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
|
|
||||||
#include "../kselftest.h"
|
#include "kselftest.h"
|
||||||
|
|
||||||
#ifndef MSR_IA32_TSC_ADJUST
|
#ifndef MSR_IA32_TSC_ADJUST
|
||||||
#define MSR_IA32_TSC_ADJUST 0x3b
|
#define MSR_IA32_TSC_ADJUST 0x3b
|
Loading…
Reference in New Issue
Block a user