/xen/xen/arch/arm/ |
A D | guestcopy.c | 24 } gpa; member 28 #define GPA_INFO(domain) ((copy_info_t) { .gpa = { domain } }) 40 page = get_page_from_gfn(info.gpa.d, paddr_to_pfn(addr), &p2mt, P2M_ALLOC); in translate_get_page() 134 paddr_t gpa, in copy_to_guest_phys_flush_dcache() argument 138 return copy_guest(buf, gpa, len, GPA_INFO(d), in copy_to_guest_phys_flush_dcache() 142 int access_guest_memory_by_ipa(struct domain *d, paddr_t gpa, void *buf, in access_guest_memory_by_ipa() argument 150 left = copy_guest(buf, gpa, size, GPA_INFO(d), flags); in access_guest_memory_by_ipa()
|
A D | io.c | 96 paddr_t gpa) in find_mmio_handler() argument 99 struct mmio_handler key = {.addr = gpa}; in find_mmio_handler() 112 paddr_t gpa) in try_handle_mmio() argument 118 .gpa = gpa, in try_handle_mmio() 124 handler = find_mmio_handler(v->domain, info.gpa); in try_handle_mmio()
|
A D | mem_access.c | 227 bool p2m_mem_access_check(paddr_t gpa, vaddr_t gla, const struct npfec npfec) in p2m_mem_access_check() argument 240 rc = p2m_get_mem_access(v->domain, gaddr_to_gfn(gpa), &xma, 0); in p2m_mem_access_check() 282 rc = p2m_set_mem_access(v->domain, gaddr_to_gfn(gpa), 1, in p2m_mem_access_check() 288 rc = p2m_set_mem_access(v->domain, gaddr_to_gfn(gpa), 1, in p2m_mem_access_check() 310 rc = p2m_set_mem_access(v->domain, gaddr_to_gfn(gpa), 1, in p2m_mem_access_check() 325 req->u.mem_access.gfn = gpa >> PAGE_SHIFT; in p2m_mem_access_check() 326 req->u.mem_access.offset = gpa & ((1 << PAGE_SHIFT) - 1); in p2m_mem_access_check()
|
A D | vuart.c | 112 paddr_t offset = info->gpa - d->arch.vuart.info->base_addr; in vuart_mmio_read() 130 paddr_t offset = info->gpa - d->arch.vuart.info->base_addr; in vuart_mmio_write()
|
A D | vgic-v3-its.c | 999 switch ( info->gpa & 0xffff ) in vgic_v3_its_mmio_read() 1111 v, info->dabt.reg, (unsigned long)info->gpa & 0xffff); in vgic_v3_its_mmio_read() 1126 v, info->gpa & 0xffff); in vgic_v3_its_mmio_read() 1133 v, info->gpa & 0xffff); in vgic_v3_its_mmio_read() 1139 info->dabt.size, info->dabt.reg, (unsigned long)info->gpa & 0xffff); in vgic_v3_its_mmio_read() 1246 switch ( info->gpa & 0xffff ) in vgic_v3_its_mmio_write() 1419 v, info->dabt.reg, (unsigned long)info->gpa & 0xffff); in vgic_v3_its_mmio_write() 1436 v, info->gpa & 0xffff); in vgic_v3_its_mmio_write() 1442 v, info->gpa & 0xffff); in vgic_v3_its_mmio_write() 1447 info->dabt.size, info->dabt.reg, (unsigned long)info->gpa & 0xffff); in vgic_v3_its_mmio_write()
|
A D | vgic-v3.c | 1031 paddr_t gpa, uint32_t *offset) in get_vcpu_from_rdist() argument 1036 vcpu_id = region->first_cpu + ((gpa - region->base) / GICV3_GICR_SIZE); in get_vcpu_from_rdist() 1042 *offset = gpa - v->arch.vgic.rdist_base; in get_vcpu_from_rdist() 1055 v = get_vcpu_from_rdist(v->domain, region, info->gpa, &offset); in vgic_v3_rdistr_mmio_read() 1066 v, info->gpa); in vgic_v3_rdistr_mmio_read() 1079 v = get_vcpu_from_rdist(v->domain, region, info->gpa, &offset); in vgic_v3_rdistr_mmio_write() 1090 v, info->gpa); in vgic_v3_rdistr_mmio_write() 1101 int gicd_reg = (int)(info->gpa - v->domain->arch.vgic.dbase); in vgic_v3_distr_mmio_read() 1303 int gicd_reg = (int)(info->gpa - v->domain->arch.vgic.dbase); in vgic_v3_distr_mmio_write()
|
A D | traps.c | 1886 paddr_t gpa; in do_trap_stage2_abort_guest() local 1900 gpa = get_faulting_ipa(gva); in do_trap_stage2_abort_guest() 1912 rc = gva_to_ipa(gva, &gpa, GV2M_READ); in do_trap_stage2_abort_guest() 1934 p2m_mem_access_check(gpa, gva, npfec); in do_trap_stage2_abort_guest() 1950 enum io_state state = try_handle_mmio(regs, hsr, gpa); in do_trap_stage2_abort_guest() 1970 gaddr_to_gfn(gpa)) ) in do_trap_stage2_abort_guest() 1973 if ( is_data && try_map_mmio(gaddr_to_gfn(gpa)) ) in do_trap_stage2_abort_guest() 1984 " gpa=%#"PRIpaddr"\n", hsr.bits, regs->pc, gva, gpa); in do_trap_stage2_abort_guest()
|
/xen/xen/include/asm-x86/hvm/ |
A D | emulate.h | 125 bool hvmemul_read_cache(const struct vcpu *, paddr_t gpa, 127 void hvmemul_write_cache(const struct vcpu *, paddr_t gpa, 137 static inline bool hvmemul_read_cache(const struct vcpu *v, paddr_t gpa, in hvmemul_read_cache() argument 140 static inline void hvmemul_write_cache(const struct vcpu *v, paddr_t gpa, in hvmemul_write_cache() argument
|
A D | io.h | 102 bool_t hvm_mmio_internal(paddr_t gpa);
|
/xen/xen/arch/x86/hvm/ |
A D | emulate.c | 37 paddr_t gpa:PADDR_BITS; member 982 gpa += chunk; in hvmemul_phys_mmio_access() 1061 paddr_t gpa; in hvmemul_linear_mmio_access() local 1707 paddr_t gpa; in hvmemul_rep_ins() local 1785 paddr_t gpa; in hvmemul_rep_outs() local 1997 paddr_t gpa; in hvmemul_rep_stos() local 3030 gpa += i; in hvmemul_read_cache() 3036 if ( cache->ents[i].gpa == gpa && cache->ents[i].size == size ) in hvmemul_read_cache() 3061 gpa += i; in hvmemul_write_cache() 3067 if ( cache->ents[i].gpa == gpa && cache->ents[i].size == size ) in hvmemul_write_cache() [all …]
|
A D | monitor.c | 238 paddr_t gpa = (gfn_to_gaddr(gfn) | (gla & ~PAGE_MASK)); in hvm_monitor_check_p2m() local 298 req.u.mem_access.offset = gpa & ~PAGE_MASK; in hvm_monitor_check_p2m()
|
A D | intercept.c | 333 bool_t hvm_mmio_internal(paddr_t gpa) in hvm_mmio_internal() argument 339 .addr = gpa, in hvm_mmio_internal()
|
/xen/xen/include/asm-arm/ |
A D | vreg.h | 168 return vreg_reg_extract(reg, info->gpa & offmask, \ 178 vreg_reg_update(&tmp, val, info->gpa & offmask, \ 190 vreg_reg_setbits(&tmp, bits, info->gpa & offmask, \ 202 vreg_reg_clearbits(&tmp, bits, info->gpa & offmask, \
|
A D | mmio.h | 32 paddr_t gpa; member 68 paddr_t gpa);
|
A D | mem_access.h | 38 bool p2m_mem_access_check(paddr_t gpa, vaddr_t gla, const struct npfec npfec);
|
/xen/xen/arch/x86/hvm/vmx/ |
A D | vvmx.c | 800 uint64_t gpa; in _map_msr_bitmap() local 827 unsigned long gpa; in _map_io_bitmap() local 1546 unsigned long gpa = 0; in nvmx_handle_vmxon() local 1560 if ( (gpa & ~PAGE_MASK) || !gfn_valid(v->domain, _gfn(gpa >> PAGE_SHIFT)) ) in nvmx_handle_vmxon() 1575 nvmx->vmxon_region_pa = gpa; in nvmx_handle_vmxon() 1774 unsigned long gpa = 0; in nvmx_handle_vmptrld() local 1781 if ( (gpa & ~PAGE_MASK) || !gfn_valid(v->domain, gaddr_to_gfn(gpa)) ) in nvmx_handle_vmptrld() 1850 unsigned long gpa = 0; in nvmx_handle_vmptrst() local 1857 gpa = nvcpu->nv_vvmcxaddr; in nvmx_handle_vmptrst() 1875 unsigned long gpa = 0; in nvmx_handle_vmclear() local [all …]
|
A D | vmx.c | 2209 __vmread(GUEST_PHYSICAL_ADDRESS, &veinfo->gpa); in vmx_vcpu_emulate_ve() 3373 unsigned long gla, gfn = gpa >> PAGE_SHIFT; in ept_handle_violation() 3400 uint64_t gpa; in ept_handle_violation() member 3406 _d.gpa = gpa; in ept_handle_violation() 3425 ret = hvm_hap_nested_page_fault(gpa, gla, npfec); in ept_handle_violation() 3448 gpa, mfn_x(mfn), p2mt); in ept_handle_violation() 4215 paddr_t gpa; in vmx_vmexit_handler() local 4217 __vmread(GUEST_PHYSICAL_ADDRESS, &gpa); in vmx_vmexit_handler() 4225 paddr_t gpa; in vmx_vmexit_handler() local 4227 __vmread(GUEST_PHYSICAL_ADDRESS, &gpa); in vmx_vmexit_handler() [all …]
|
/xen/xen/include/asm-x86/ |
A D | mem_access.h | 37 bool p2m_mem_access_check(paddr_t gpa, unsigned long gla,
|
A D | paging.h | 110 void (*pagetable_dying )(paddr_t gpa); 370 void pagetable_dying(paddr_t gpa);
|
/xen/xen/arch/x86/mm/hap/ |
A D | nested_ept.c | 144 static int ept_lvl_table_offset(unsigned long gpa, int lvl) in ept_lvl_table_offset() argument 146 return (gpa >> (EPT_L4_PAGETABLE_SHIFT -(4 - lvl) * 9)) & in ept_lvl_table_offset()
|
/xen/xen/arch/x86/mm/ |
A D | mem_access.c | 143 bool p2m_mem_access_check(paddr_t gpa, unsigned long gla, in p2m_mem_access_check() argument 148 gfn_t gfn = gaddr_to_gfn(gpa); in p2m_mem_access_check() 237 req->u.mem_access.offset = gpa & ((1 << PAGE_SHIFT) - 1); in p2m_mem_access_check()
|
/xen/xen/include/asm-x86/hvm/vmx/ |
A D | vmx.h | 602 bool_t ept_handle_misconfig(uint64_t gpa); 646 u64 gpa; member
|
/xen/xen/include/public/hvm/ |
A D | hvm_op.h | 140 uint64_t gpa; member
|
/xen/xen/arch/x86/mm/shadow/ |
A D | multi.c | 2778 paddr_t gpa; in sh_page_fault() local 2901 SHADOW_PRINTK("fast path mmio %#"PRIpaddr"\n", gpa); in sh_page_fault() 3203 gpa = guest_walk_to_gpa(&gw); in sh_page_fault() 3491 SHADOW_PRINTK("mmio %#"PRIpaddr"\n", gpa); in sh_page_fault() 4439 static void sh_pagetable_dying(paddr_t gpa) in sh_pagetable_dying() argument 4455 if ( gcr3 == gpa ) in sh_pagetable_dying() 4458 l3gfn = gpa >> PAGE_SHIFT; in sh_pagetable_dying() 4463 gpa); in sh_pagetable_dying() 4519 static void sh_pagetable_dying(paddr_t gpa) in sh_pagetable_dying() argument 4526 gmfn = get_gfn_query(d, _gfn(gpa >> PAGE_SHIFT), &p2mt); in sh_pagetable_dying() [all …]
|
/xen/xen/arch/arm/vgic/ |
A D | vgic-mmio.c | 555 paddr_t addr = info->gpa; in dispatch_mmio_read() 586 paddr_t addr = info->gpa; in dispatch_mmio_write()
|