Commit 014dfb7b authored by Sean Christopherson's avatar Sean Christopherson
Browse files

KVM: selftests: Replace "vaddr" with "gva" throughout

Replace all variations of "vaddr" variables in KVM selftests with "gva",
with the exception of the ELF structures, as those fields are not specific
to guest virtual addresses, to complete the conversion from vm_vaddr_t to
gva_t.

Opportunistically use gva_t instead of u64 for relevant variables, and
fixup indentation as appropriate.

No functional change intended.

Link: https://patch.msgid.link/20260420212004.3938325-17-seanjc@google.com


Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
parent a662c4e0
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -123,7 +123,7 @@ static u64 pread_u64(int fd, const char *filename, u64 index)
#define PAGEMAP_PRESENT (1ULL << 63)
#define PAGEMAP_PFN_MASK ((1ULL << 55) - 1)

static u64 lookup_pfn(int pagemap_fd, struct kvm_vm *vm, u64 gva)
static u64 lookup_pfn(int pagemap_fd, struct kvm_vm *vm, gva_t gva)
{
	u64 hva = (u64)addr_gva2hva(vm, gva);
	u64 entry;
@@ -174,7 +174,7 @@ static void pageidle_mark_vcpu_memory_idle(struct kvm_vm *vm,
					   struct memstress_vcpu_args *vcpu_args)
{
	int vcpu_idx = vcpu_args->vcpu_idx;
	u64 base_gva = vcpu_args->gva;
	gva_t base_gva = vcpu_args->gva;
	u64 pages = vcpu_args->pages;
	u64 page;
	u64 still_idle = 0;
@@ -193,7 +193,7 @@ static void pageidle_mark_vcpu_memory_idle(struct kvm_vm *vm,
	TEST_ASSERT(pagemap_fd > 0, "Failed to open pagemap.");

	for (page = 0; page < pages; page++) {
		u64 gva = base_gva + page * memstress_args.guest_page_size;
		gva_t gva = base_gva + page * memstress_args.guest_page_size;
		u64 pfn = lookup_pfn(pagemap_fd, vm, gva);

		if (!pfn) {
+2 −2
Original line number Diff line number Diff line
@@ -70,9 +70,9 @@ struct test_params {
	struct test_desc *test_desc;
};

static inline void flush_tlb_page(u64 vaddr)
static inline void flush_tlb_page(gva_t gva)
{
	u64 page = vaddr >> 12;
	gva_t page = gva >> 12;

	dsb(ishst);
	asm volatile("tlbi vaae1is, %0" :: "r" (page));
+10 −22
Original line number Diff line number Diff line
@@ -715,17 +715,17 @@ void vm_mem_region_move(struct kvm_vm *vm, u32 slot, u64 new_gpa);
void vm_mem_region_delete(struct kvm_vm *vm, u32 slot);
struct kvm_vcpu *__vm_vcpu_add(struct kvm_vm *vm, u32 vcpu_id);
void vm_populate_gva_bitmap(struct kvm_vm *vm);
gva_t vm_unused_gva_gap(struct kvm_vm *vm, size_t sz, gva_t vaddr_min);
gva_t vm_alloc(struct kvm_vm *vm, size_t sz, gva_t vaddr_min);
gva_t __vm_alloc(struct kvm_vm *vm, size_t sz, gva_t vaddr_min,
gva_t vm_unused_gva_gap(struct kvm_vm *vm, size_t sz, gva_t min_gva);
gva_t vm_alloc(struct kvm_vm *vm, size_t sz, gva_t min_gva);
gva_t __vm_alloc(struct kvm_vm *vm, size_t sz, gva_t min_gva,
		 enum kvm_mem_region_type type);
gva_t vm_alloc_shared(struct kvm_vm *vm, size_t sz, gva_t vaddr_min,
gva_t vm_alloc_shared(struct kvm_vm *vm, size_t sz, gva_t min_gva,
		      enum kvm_mem_region_type type);
gva_t vm_alloc_pages(struct kvm_vm *vm, int nr_pages);
gva_t __vm_alloc_page(struct kvm_vm *vm, enum kvm_mem_region_type type);
gva_t vm_alloc_page(struct kvm_vm *vm);

void virt_map(struct kvm_vm *vm, u64 vaddr, u64 paddr,
void virt_map(struct kvm_vm *vm, gva_t gva, u64 paddr,
	      unsigned int npages);
void *addr_gpa2hva(struct kvm_vm *vm, gpa_t gpa);
void *addr_gva2hva(struct kvm_vm *vm, gva_t gva);
@@ -1202,27 +1202,15 @@ static inline void virt_pgd_alloc(struct kvm_vm *vm)
}

/*
 * VM Virtual Page Map
 *
 * Input Args:
 *   vm - Virtual Machine
 *   vaddr - VM Virtual Address
 *   paddr - VM Physical Address
 *   memslot - Memory region slot for new virtual translation tables
 *
 * Output Args: None
 *
 * Return: None
 *
 * Within @vm, creates a virtual translation for the page starting
 * at @vaddr to the page starting at @paddr.
 * at @gva to the page starting at @paddr.
 */
void virt_arch_pg_map(struct kvm_vm *vm, u64 vaddr, u64 paddr);
void virt_arch_pg_map(struct kvm_vm *vm, gva_t gva, u64 paddr);

static inline void virt_pg_map(struct kvm_vm *vm, u64 vaddr, u64 paddr)
static inline void virt_pg_map(struct kvm_vm *vm, gva_t gva, u64 paddr)
{
	virt_arch_pg_map(vm, vaddr, paddr);
	sparsebit_set(vm->vpages_mapped, vaddr >> vm->page_shift);
	virt_arch_pg_map(vm, gva, paddr);
	sparsebit_set(vm->vpages_mapped, gva >> vm->page_shift);
}


+1 −1
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@

struct memstress_vcpu_args {
	u64 gpa;
	u64 gva;
	gva_t gva;
	u64 pages;

	/* Only used by the host userspace part of the vCPU thread */
+3 −3
Original line number Diff line number Diff line
@@ -1394,7 +1394,7 @@ static inline bool kvm_is_lbrv_enabled(void)
	return !!get_kvm_amd_param_integer("lbrv");
}

u64 *vm_get_pte(struct kvm_vm *vm, u64 vaddr);
u64 *vm_get_pte(struct kvm_vm *vm, gva_t gva);

u64 kvm_hypercall(u64 nr, u64 a0, u64 a1, u64 a2, u64 a3);
u64 __xen_hypercall(u64 nr, u64 a0, void *a1);
@@ -1507,9 +1507,9 @@ enum pg_level {
void tdp_mmu_init(struct kvm_vm *vm, int pgtable_levels,
		  struct pte_masks *pte_masks);

void __virt_pg_map(struct kvm_vm *vm, struct kvm_mmu *mmu, u64 vaddr,
void __virt_pg_map(struct kvm_vm *vm, struct kvm_mmu *mmu, gva_t gva,
		   u64 paddr,  int level);
void virt_map_level(struct kvm_vm *vm, u64 vaddr, u64 paddr,
void virt_map_level(struct kvm_vm *vm, gva_t gva, u64 paddr,
		    u64 nr_bytes, int level);

void vm_enable_tdp(struct kvm_vm *vm);
Loading