/linux/arch/powerpc/kvm/ |
A D | book3s_64_mmu_radix.c | 138 u64 pte, base, gpa; in kvmppc_mmu_walk_radix_tree() local 203 gpte->raddr = gpa; in kvmppc_mmu_walk_radix_tree() 1166 unsigned long gpa; in kvmppc_radix_flush_memslot() local 1182 gpa += PAGE_SIZE; in kvmppc_radix_flush_memslot() 1250 unsigned long gpa; member 1328 gpa = p->gpa; in debugfs_radix_read() 1333 gpa = 0; in debugfs_radix_read() 1371 gpa = (gpa & P4D_MASK) + P4D_SIZE; in debugfs_radix_read() 1378 gpa = (gpa & PUD_MASK) + PUD_SIZE; in debugfs_radix_read() 1390 gpa = (gpa & PMD_MASK) + PMD_SIZE; in debugfs_radix_read() [all …]
|
A D | book3s_hv_uvmem.c | 233 unsigned long gpa; member 508 struct kvm *kvm, unsigned long gpa) in __kvmppc_svm_page_out() argument 560 gpa, 0, page_shift); in __kvmppc_svm_page_out() 634 PAGE_SHIFT, kvm, pvt->gpa)) in kvmppc_uvmem_drop_pages() 636 pvt->gpa, addr); in kvmppc_uvmem_drop_pages() 710 pvt->gpa = gpa; in kvmppc_uvmem_get_page() 771 gpa, 0, page_shift); in kvmppc_svm_page_in() 875 unsigned long gfn = gpa >> page_shift; in kvmppc_share_page() 933 unsigned long gfn = gpa >> page_shift; in kvmppc_h_svm_page_in() 995 pvt->kvm, pvt->gpa)) in kvmppc_uvmem_migrate_to_ram() [all …]
|
A D | book3s_hv_nested.c | 912 unsigned long gpa; in kvmhv_update_nest_rmap_rc() local 916 gpa = n_rmap & RMAP_NESTED_GPA_MASK; in kvmhv_update_nest_rmap_rc() 959 unsigned long gpa; in kvmhv_remove_nest_rmap() local 963 gpa = n_rmap & RMAP_NESTED_GPA_MASK; in kvmhv_remove_nest_rmap() 992 unsigned long gpa, unsigned long hpa, in kvmhv_remove_nest_rmap_range() argument 1000 gfn = (gpa >> PAGE_SHIFT) - memslot->base_gfn; in kvmhv_remove_nest_rmap_range() 1029 long gpa, int *shift_ret) in kvmhv_invalidate_shadow_pte() argument 1492 unsigned long n_gpa, gpa, gfn, perm = 0UL; in __kvmhv_nested_page_fault() local 1549 gpa = gpte.raddr; in __kvmhv_nested_page_fault() 1550 gfn = gpa >> PAGE_SHIFT; in __kvmhv_nested_page_fault() [all …]
|
/linux/tools/testing/selftests/kvm/lib/ |
A D | perf_test_util.c | 88 vcpu_args->gpa = pta->gpa + (vcpu_id * vcpu_memory_bytes); in perf_test_setup_vcpus() 93 vcpu_args->gpa = pta->gpa; in perf_test_setup_vcpus() 99 vcpu_id, vcpu_args->gpa, vcpu_args->gpa + in perf_test_setup_vcpus() 158 pta->gpa = (vm_get_max_gfn(vm) - guest_num_pages) * pta->guest_page_size; in perf_test_create_vm() 159 pta->gpa = align_down(pta->gpa, backing_src_pagesz); in perf_test_create_vm() 162 pta->gpa = align_down(pta->gpa, 1 << 20); in perf_test_create_vm() 164 pr_info("guest physical test memory offset: 0x%lx\n", pta->gpa); in perf_test_create_vm() 169 vm_paddr_t region_start = pta->gpa + region_pages * pta->guest_page_size * i; in perf_test_create_vm() 177 virt_map(vm, guest_test_virt_mem, pta->gpa, guest_num_pages); in perf_test_create_vm()
|
/linux/tools/testing/selftests/kvm/lib/aarch64/ |
A D | ucall.c | 12 static bool ucall_mmio_init(struct kvm_vm *vm, vm_paddr_t gpa) in ucall_mmio_init() argument 14 if (kvm_userspace_memory_region_find(vm, gpa, gpa + 1)) in ucall_mmio_init() 17 virt_pg_map(vm, gpa, gpa); in ucall_mmio_init() 19 ucall_exit_mmio_addr = (vm_vaddr_t *)gpa; in ucall_mmio_init() 27 vm_paddr_t gpa, start, end, step, offset; in ucall_init() local 32 gpa = (vm_paddr_t)arg; in ucall_init() 33 ret = ucall_mmio_init(vm, gpa); in ucall_init() 34 TEST_ASSERT(ret, "Can't set ucall mmio address to %lx", gpa); in ucall_init()
|
/linux/arch/x86/include/asm/uv/ |
A D | uv_hub.h | 460 uv_gpa_in_mmr_space(unsigned long gpa) in uv_gpa_in_mmr_space() argument 462 return (gpa >> 62) == 0x3UL; in uv_gpa_in_mmr_space() 474 gpa = ((gpa << uv_hub_info->m_shift) >> uv_hub_info->m_shift) | in uv_gpa_to_soc_phys_ram() 475 ((gpa >> uv_hub_info->n_lshift) << uv_hub_info->m_val); in uv_gpa_to_soc_phys_ram() 477 paddr = gpa & uv_hub_info->gpa_mask; in uv_gpa_to_soc_phys_ram() 489 return gpa >> n_lshift; in uv_gpa_to_gnode() 491 return uv_gam_range(gpa)->nasid >> 1; in uv_gpa_to_gnode() 495 static inline int uv_gpa_to_pnode(unsigned long gpa) in uv_gpa_to_pnode() argument 497 return uv_gpa_to_gnode(gpa) & uv_hub_info->pnode_mask; in uv_gpa_to_pnode() 506 return (gpa << m_shift) >> m_shift; in uv_gpa_to_offset() [all …]
|
/linux/arch/s390/kvm/ |
A D | gaccess.h | 152 unsigned long gpa = gra + kvm_s390_get_prefix(vcpu); in write_guest_lc() local 154 return kvm_write_guest(vcpu->kvm, gpa, data, len); in write_guest_lc() 178 unsigned long gpa = gra + kvm_s390_get_prefix(vcpu); in read_guest_lc() local 180 return kvm_read_guest(vcpu->kvm, gpa, data, len); in read_guest_lc() 190 u8 ar, unsigned long *gpa, enum gacc_mode mode); 310 int write_guest_abs(struct kvm_vcpu *vcpu, unsigned long gpa, void *data, in write_guest_abs() argument 313 return kvm_write_guest(vcpu->kvm, gpa, data, len); in write_guest_abs() 333 int read_guest_abs(struct kvm_vcpu *vcpu, unsigned long gpa, void *data, in read_guest_abs() argument 336 return kvm_read_guest(vcpu->kvm, gpa, data, len); in read_guest_abs()
|
A D | vsie.c | 723 gpa_t gpa; in pin_blocks() local 729 if (gpa) { in pin_blocks() 730 if (gpa < 2 * PAGE_SIZE) in pin_blocks() 744 vsie_page->sca_gpa = gpa; in pin_blocks() 751 if (gpa < 2 * PAGE_SIZE) { in pin_blocks() 767 if (gpa < 2 * PAGE_SIZE) { in pin_blocks() 780 vsie_page->gvrd_gpa = gpa; in pin_blocks() 786 if (gpa < 2 * PAGE_SIZE) { in pin_blocks() 806 if (!gpa || gpa < 2 * PAGE_SIZE) { in pin_blocks() 837 gpa_t gpa) in unpin_scb() argument [all …]
|
A D | gaccess.c | 774 *gpa = raddr.addr; in guest_translate() 834 unsigned long _len, nr_pages, gpa, idx; in access_guest() local 858 gpa = *(pages + idx) + (ga & ~PAGE_MASK); in access_guest() 878 unsigned long _len, gpa; in access_guest_real() local 882 gpa = kvm_s390_real_to_abs(vcpu, gra); in access_guest_real() 885 rc = write_guest_abs(vcpu, gpa, data, _len); in access_guest_real() 887 rc = read_guest_abs(vcpu, gpa, data, _len); in access_guest_real() 910 unsigned long *gpa, enum gacc_mode mode) in guest_translate_address() argument 932 *gpa = kvm_s390_real_to_abs(vcpu, gva); in guest_translate_address() 933 if (kvm_is_error_gpa(vcpu->kvm, *gpa)) in guest_translate_address() [all …]
|
/linux/arch/x86/kvm/ |
A D | cpuid.h | 41 static inline bool kvm_vcpu_is_legal_gpa(struct kvm_vcpu *vcpu, gpa_t gpa) in kvm_vcpu_is_legal_gpa() argument 43 return !(gpa & vcpu->arch.reserved_gpa_bits); in kvm_vcpu_is_legal_gpa() 46 static inline bool kvm_vcpu_is_illegal_gpa(struct kvm_vcpu *vcpu, gpa_t gpa) in kvm_vcpu_is_illegal_gpa() argument 48 return !kvm_vcpu_is_legal_gpa(vcpu, gpa); in kvm_vcpu_is_illegal_gpa() 52 gpa_t gpa, gpa_t alignment) in kvm_vcpu_is_legal_aligned_gpa() argument 54 return IS_ALIGNED(gpa, alignment) && kvm_vcpu_is_legal_gpa(vcpu, gpa); in kvm_vcpu_is_legal_aligned_gpa() 57 static inline bool page_address_valid(struct kvm_vcpu *vcpu, gpa_t gpa) in page_address_valid() argument 59 return kvm_vcpu_is_legal_aligned_gpa(vcpu, gpa, PAGE_SIZE); in page_address_valid()
|
A D | xen.c | 26 gpa_t gpa = gfn_to_gpa(gfn); in kvm_xen_shared_info_init() local 334 if (data->u.gpa == GPA_INVALID) { in kvm_xen_vcpu_set_attr() 342 data->u.gpa, in kvm_xen_vcpu_set_attr() 351 if (data->u.gpa == GPA_INVALID) { in kvm_xen_vcpu_set_attr() 359 data->u.gpa, in kvm_xen_vcpu_set_attr() 380 data->u.gpa, in kvm_xen_vcpu_set_attr() 500 data->u.gpa = vcpu->arch.xen.vcpu_info_cache.gpa; in kvm_xen_vcpu_get_attr() 502 data->u.gpa = GPA_INVALID; in kvm_xen_vcpu_get_attr() 508 data->u.gpa = vcpu->arch.xen.vcpu_time_info_cache.gpa; in kvm_xen_vcpu_get_attr() 510 data->u.gpa = GPA_INVALID; in kvm_xen_vcpu_get_attr() [all …]
|
/linux/tools/testing/selftests/kvm/ |
A D | memslot_perf_test.c | 202 gpa -= MEM_GPA; in vm_gpa2hva() 204 gpage = gpa / 4096; in vm_gpa2hva() 205 pgoffs = gpa % 4096; in vm_gpa2hva() 304 uint64_t gpa; in prepare_vm() local 312 TEST_ASSERT(gpa == guest_addr, in prepare_vm() 597 uint64_t gpa, ctr; in test_memslot_do_unmap() local 610 hva, gpa); in test_memslot_do_unmap() 612 gpa += npages * 4096; in test_memslot_do_unmap() 621 uint64_t gpa; in test_memslot_map_unmap_check() local 627 gpa = MEM_TEST_GPA + offsp * 4096; in test_memslot_map_unmap_check() [all …]
|
A D | memslot_modification_stress_test.c | 72 uint64_t gpa; in add_remove_memslot() local 79 gpa = perf_test_args.gpa - pages * vm_get_page_size(vm); in add_remove_memslot() 83 vm_userspace_mem_region_add(vm, VM_MEM_SRC_ANONYMOUS, gpa, in add_remove_memslot()
|
/linux/drivers/gpu/drm/i915/gvt/ |
A D | page_track.c | 159 int intel_vgpu_page_track_handler(struct intel_vgpu *vgpu, u64 gpa, in intel_vgpu_page_track_handler() argument 167 page_track = intel_vgpu_find_page_track(vgpu, gpa >> PAGE_SHIFT); in intel_vgpu_page_track_handler() 175 intel_vgpu_disable_page_track(vgpu, gpa >> PAGE_SHIFT); in intel_vgpu_page_track_handler() 177 ret = page_track->handler(page_track, gpa, data, bytes); in intel_vgpu_page_track_handler() 179 gvt_err("guest page write error, gpa %llx\n", gpa); in intel_vgpu_page_track_handler()
|
A D | mpt.h | 195 unsigned long gpa, void *buf, unsigned long len) in intel_gvt_hypervisor_read_gpa() argument 197 return intel_gvt_host.mpt->read_gpa(vgpu->handle, gpa, buf, len); in intel_gvt_hypervisor_read_gpa() 211 unsigned long gpa, void *buf, unsigned long len) in intel_gvt_hypervisor_write_gpa() argument 213 return intel_gvt_host.mpt->write_gpa(vgpu->handle, gpa, buf, len); in intel_gvt_hypervisor_write_gpa()
|
A D | page_track.h | 35 u64 gpa, void *data, int bytes); 56 int intel_vgpu_page_track_handler(struct intel_vgpu *vgpu, u64 gpa,
|
/linux/arch/riscv/kvm/ |
A D | mmu.c | 213 gpa_t gpa, phys_addr_t hpa, in stage2_map_page() argument 253 return stage2_set_pte(kvm, level, pcache, gpa, &new_pte); in stage2_map_page() 389 end = (gpa + size + PAGE_SIZE - 1) & PAGE_MASK; in stage2_ioremap() 392 for (addr = gpa; addr < end; addr += PAGE_SIZE) { in stage2_ioremap() 456 gpa_t gpa = slot->base_gfn << PAGE_SHIFT; in kvm_arch_flush_shadow_memslot() local 460 stage2_unmap_range(kvm, gpa, size, false); in kvm_arch_flush_shadow_memslot() 536 gpa_t gpa = mem->guest_phys_addr + in kvm_arch_prepare_memory_region() local 549 ret = stage2_ioremap(kvm, gpa, pa, in kvm_arch_prepare_memory_region() 640 gpa_t gpa, unsigned long hva, bool is_write) in kvm_riscv_stage2_map() argument 646 gfn_t gfn = gpa >> PAGE_SHIFT; in kvm_riscv_stage2_map() [all …]
|
/linux/arch/arm64/kvm/ |
A D | hypercalls.c | 66 gpa_t gpa; in kvm_hvc_call_handler() local 119 gpa = kvm_init_stolen_time(vcpu); in kvm_hvc_call_handler() 120 if (gpa != GPA_INVALID) in kvm_hvc_call_handler() 121 val[0] = gpa; in kvm_hvc_call_handler()
|
/linux/arch/mips/kvm/ |
A D | mmu.c | 450 gpa_t gpa = range->start << PAGE_SHIFT; in kvm_set_spte_gfn() local 452 pte_t *gpa_pte = kvm_mips_pte_for_gpa(kvm, NULL, gpa); in kvm_set_spte_gfn() 485 gpa_t gpa = range->start << PAGE_SHIFT; in kvm_test_age_gfn() local 486 pte_t *gpa_pte = kvm_mips_pte_for_gpa(kvm, NULL, gpa); in kvm_test_age_gfn() 511 static int _kvm_mips_map_page_fast(struct kvm_vcpu *vcpu, unsigned long gpa, in _kvm_mips_map_page_fast() argument 516 gfn_t gfn = gpa >> PAGE_SHIFT; in _kvm_mips_map_page_fast() 525 ptep = kvm_mips_pte_for_gpa(kvm, NULL, gpa); in _kvm_mips_map_page_fast() 587 static int kvm_mips_map_page(struct kvm_vcpu *vcpu, unsigned long gpa, in kvm_mips_map_page() argument 593 gfn_t gfn = gpa >> PAGE_SHIFT; in kvm_mips_map_page() 603 err = _kvm_mips_map_page_fast(vcpu, gpa, write_fault, out_entry, in kvm_mips_map_page() [all …]
|
/linux/arch/x86/kvm/vmx/ |
A D | sgx.c | 73 gpa_t *gpa) in sgx_gva_to_gpa() argument 78 *gpa = kvm_mmu_gva_to_gpa_write(vcpu, gva, &ex); in sgx_gva_to_gpa() 80 *gpa = kvm_mmu_gva_to_gpa_read(vcpu, gva, &ex); in sgx_gva_to_gpa() 82 if (*gpa == UNMAPPED_GVA) { in sgx_gva_to_gpa() 90 static int sgx_gpa_to_hva(struct kvm_vcpu *vcpu, gpa_t gpa, unsigned long *hva) in sgx_gpa_to_hva() argument 92 *hva = kvm_vcpu_gfn_to_hva(vcpu, PFN_DOWN(gpa)); in sgx_gpa_to_hva() 94 sgx_handle_emulation_failure(vcpu, gpa, 1); in sgx_gpa_to_hva() 98 *hva |= gpa & ~PAGE_MASK; in sgx_gpa_to_hva()
|
A D | vmx_ops.h | 20 void invept_error(unsigned long ext, u64 eptp, gpa_t gpa); 268 static inline void __invept(unsigned long ext, u64 eptp, gpa_t gpa) in __invept() argument 271 u64 eptp, gpa; in __invept() member 272 } operand = {eptp, gpa}; in __invept() 274 vmx_asm2(invept, "r"(ext), "m"(operand), ext, eptp, gpa); in __invept()
|
/linux/tools/testing/selftests/kvm/lib/s390x/ |
A D | processor.c | 50 void virt_pg_map(struct kvm_vm *vm, uint64_t gva, uint64_t gpa) in virt_pg_map() argument 63 TEST_ASSERT((gpa % vm->page_size) == 0, in virt_pg_map() 67 TEST_ASSERT((gpa >> vm->page_shift) <= vm->max_gfn, in virt_pg_map() 85 "WARNING: PTE for gpa=0x%"PRIx64" already set!\n", gpa); in virt_pg_map() 86 entry[idx] = gpa; in virt_pg_map()
|
/linux/drivers/misc/sgi-gru/ |
A D | grufault.c | 253 int write, int atomic, unsigned long *gpa, int *pageshift) in gru_vtop() argument 279 *gpa = uv_soc_phys_ram_to_gpa(paddr); in gru_vtop() 316 unsigned long vaddr = 0, gpa; in gru_preload_tlb() local 332 ret = gru_vtop(gts, vaddr, write, atomic, &gpa, &pageshift); in gru_preload_tlb() 333 if (ret || tfh_write_only(tfh, gpa, GAA_RAM, vaddr, asid, write, in gru_preload_tlb() 339 vaddr, asid, write, pageshift, gpa); in gru_preload_tlb() 363 unsigned long gpa = 0, vaddr = 0; in gru_try_dropin() local 413 ret = gru_vtop(gts, vaddr, write, atomic, &gpa, &pageshift); in gru_try_dropin() 434 tfh_write_restart(tfh, gpa, GAA_RAM, vaddr, asid, write, in gru_try_dropin() 440 indexway, write, pageshift, gpa); in gru_try_dropin()
|
/linux/arch/arm64/include/asm/ |
A D | kvm_mmu.h | 232 gpa_t gpa, void *data, unsigned long len) 235 int ret = kvm_read_guest(kvm, gpa, data, len); 242 static inline int kvm_write_guest_lock(struct kvm *kvm, gpa_t gpa, 246 int ret = kvm_write_guest(kvm, gpa, data, len);
|
/linux/include/linux/ |
A D | kvm_host.h | 289 gpa_t gpa; member 896 gpa_t gpa, unsigned long len); 909 #define kvm_get_guest(kvm, gpa, v) \ argument 911 gpa_t __gpa = gpa; \ 931 #define kvm_put_guest(kvm, gpa, v) \ argument 933 gpa_t __gpa = gpa; \ 1323 static inline gfn_t gpa_to_gfn(gpa_t gpa) in gpa_to_gfn() argument 1325 return (gfn_t)(gpa >> PAGE_SHIFT); in gpa_to_gfn() 1334 gpa_t gpa) in kvm_vcpu_gpa_to_page() argument 1336 return kvm_vcpu_gfn_to_page(vcpu, gpa_to_gfn(gpa)); in kvm_vcpu_gpa_to_page() [all …]
|