Commit 68c1b3e9 authored by Sean Christopherson's avatar Sean Christopherson Committed by Paolo Bonzini
Browse files

KVM: selftests: Open code and drop 'struct kvm_vm' accessors



Drop a variety of 'struct kvm_vm' accessors that wrap a single variable
now that tests can simply reference the variable directly.

Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 96a96e1a
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -221,7 +221,7 @@ static void run_test(enum vm_guest_mode mode, void *arg)


	perf_test_set_wr_fract(vm, p->wr_fract);
	perf_test_set_wr_fract(vm, p->wr_fract);


	guest_num_pages = (nr_vcpus * guest_percpu_mem_size) >> vm_get_page_shift(vm);
	guest_num_pages = (nr_vcpus * guest_percpu_mem_size) >> vm->page_shift;
	guest_num_pages = vm_adjust_num_guest_pages(mode, guest_num_pages);
	guest_num_pages = vm_adjust_num_guest_pages(mode, guest_num_pages);
	host_num_pages = vm_num_host_pages(mode, guest_num_pages);
	host_num_pages = vm_num_host_pages(mode, guest_num_pages);
	pages_per_slot = host_num_pages / p->slots;
	pages_per_slot = host_num_pages / p->slots;
+4 −5
Original line number Original line Diff line number Diff line
@@ -713,21 +713,20 @@ static void run_test(enum vm_guest_mode mode, void *arg)
	vm = create_vm(mode, &vcpu,
	vm = create_vm(mode, &vcpu,
		       2ul << (DIRTY_MEM_BITS - PAGE_SHIFT_4K), guest_code);
		       2ul << (DIRTY_MEM_BITS - PAGE_SHIFT_4K), guest_code);


	guest_page_size = vm_get_page_size(vm);
	guest_page_size = vm->page_size;
	/*
	/*
	 * A little more than 1G of guest page sized pages.  Cover the
	 * A little more than 1G of guest page sized pages.  Cover the
	 * case where the size is not aligned to 64 pages.
	 * case where the size is not aligned to 64 pages.
	 */
	 */
	guest_num_pages = (1ul << (DIRTY_MEM_BITS -
	guest_num_pages = (1ul << (DIRTY_MEM_BITS - vm->page_shift)) + 3;
				   vm_get_page_shift(vm))) + 3;
	guest_num_pages = vm_adjust_num_guest_pages(mode, guest_num_pages);
	guest_num_pages = vm_adjust_num_guest_pages(mode, guest_num_pages);


	host_page_size = getpagesize();
	host_page_size = getpagesize();
	host_num_pages = vm_num_host_pages(mode, guest_num_pages);
	host_num_pages = vm_num_host_pages(mode, guest_num_pages);


	if (!p->phys_offset) {
	if (!p->phys_offset) {
		guest_test_phys_mem = (vm_get_max_gfn(vm) -
		guest_test_phys_mem = (vm->max_gfn - guest_num_pages) *
				       guest_num_pages) * guest_page_size;
				      guest_page_size;
		guest_test_phys_mem = align_down(guest_test_phys_mem, host_page_size);
		guest_test_phys_mem = align_down(guest_test_phys_mem, host_page_size);
	} else {
	} else {
		guest_test_phys_mem = p->phys_offset;
		guest_test_phys_mem = p->phys_offset;
+0 −6
Original line number Original line Diff line number Diff line
@@ -592,13 +592,7 @@ static inline struct kvm_vm *vm_create_with_one_vcpu(struct kvm_vcpu **vcpu,


struct kvm_vcpu *vm_recreate_with_one_vcpu(struct kvm_vm *vm);
struct kvm_vcpu *vm_recreate_with_one_vcpu(struct kvm_vm *vm);


unsigned int vm_get_page_size(struct kvm_vm *vm);
unsigned int vm_get_page_shift(struct kvm_vm *vm);
unsigned long vm_compute_max_gfn(struct kvm_vm *vm);
unsigned long vm_compute_max_gfn(struct kvm_vm *vm);
uint64_t vm_get_max_gfn(struct kvm_vm *vm);
int vm_get_kvm_fd(struct kvm_vm *vm);
int vm_get_fd(struct kvm_vm *vm);

unsigned int vm_calc_num_guest_pages(enum vm_guest_mode mode, size_t size);
unsigned int vm_calc_num_guest_pages(enum vm_guest_mode mode, size_t size);
unsigned int vm_num_host_pages(enum vm_guest_mode mode, unsigned int num_guest_pages);
unsigned int vm_num_host_pages(enum vm_guest_mode mode, unsigned int num_guest_pages);
unsigned int vm_num_guest_pages(enum vm_guest_mode mode, unsigned int num_host_pages);
unsigned int vm_num_guest_pages(enum vm_guest_mode mode, unsigned int num_host_pages);
+1 −1
Original line number Original line Diff line number Diff line
@@ -260,7 +260,7 @@ static struct kvm_vm *pre_init_before_test(enum vm_guest_mode mode, void *arg)


	/* Align down GPA of the testing memslot */
	/* Align down GPA of the testing memslot */
	if (!p->phys_offset)
	if (!p->phys_offset)
		guest_test_phys_mem = (vm_get_max_gfn(vm) - guest_num_pages) *
		guest_test_phys_mem = (vm->max_gfn - guest_num_pages) *
				       guest_page_size;
				       guest_page_size;
	else
	else
		guest_test_phys_mem = p->phys_offset;
		guest_test_phys_mem = p->phys_offset;
+0 −25
Original line number Original line Diff line number Diff line
@@ -1827,36 +1827,11 @@ void *addr_gva2hva(struct kvm_vm *vm, vm_vaddr_t gva)
	return addr_gpa2hva(vm, addr_gva2gpa(vm, gva));
	return addr_gpa2hva(vm, addr_gva2gpa(vm, gva));
}
}


unsigned int vm_get_page_size(struct kvm_vm *vm)
{
	return vm->page_size;
}

unsigned int vm_get_page_shift(struct kvm_vm *vm)
{
	return vm->page_shift;
}

unsigned long __attribute__((weak)) vm_compute_max_gfn(struct kvm_vm *vm)
unsigned long __attribute__((weak)) vm_compute_max_gfn(struct kvm_vm *vm)
{
{
	return ((1ULL << vm->pa_bits) >> vm->page_shift) - 1;
	return ((1ULL << vm->pa_bits) >> vm->page_shift) - 1;
}
}


uint64_t vm_get_max_gfn(struct kvm_vm *vm)
{
	return vm->max_gfn;
}

int vm_get_kvm_fd(struct kvm_vm *vm)
{
	return vm->kvm_fd;
}

int vm_get_fd(struct kvm_vm *vm)
{
	return vm->fd;
}

static unsigned int vm_calc_num_pages(unsigned int num_pages,
static unsigned int vm_calc_num_pages(unsigned int num_pages,
				      unsigned int page_shift,
				      unsigned int page_shift,
				      unsigned int new_page_shift,
				      unsigned int new_page_shift,
Loading