Searched refs:gpa (Results 1 - 25 of 30) sorted by relevance

12

/freebsd-11.0-release/sys/amd64/vmm/
H A Dvmm_mem.h36 struct vm_object *vmm_mmio_alloc(struct vmspace *, vm_paddr_t gpa, size_t len,
38 void vmm_mmio_free(struct vmspace *, vm_paddr_t gpa, size_t size);
H A Dvmm_mem.c59 vmm_mmio_alloc(struct vmspace *vmspace, vm_paddr_t gpa, size_t len, argument
86 error = vm_map_find(&vmspace->vm_map, obj, 0, &gpa, len, 0,
111 vmm_mmio_free(struct vmspace *vmspace, vm_paddr_t gpa, size_t len) argument
114 vm_map_remove(&vmspace->vm_map, gpa, gpa + len);
H A Dvmm_lapic.h40 int lapic_mmio_read(void *vm, int cpu, uint64_t gpa,
42 int lapic_mmio_write(void *vm, int cpu, uint64_t gpa,
H A Dvmm_instruction_emul.c403 emulate_mov(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, argument
424 error = memwrite(vm, vcpuid, gpa, byte, size, arg);
437 error = memwrite(vm, vcpuid, gpa, val, size, arg);
447 error = memread(vm, vcpuid, gpa, &val, size, arg);
458 error = memread(vm, vcpuid, gpa, &val, size, arg);
471 error = memread(vm, vcpuid, gpa, &val, size, arg);
487 error = memwrite(vm, vcpuid, gpa, val, size, arg);
497 error = memwrite(vm, vcpuid, gpa, vie->immediate, size, arg);
507 error = memwrite(vm, vcpuid, gpa, val, size, arg);
517 emulate_movx(void *vm, int vcpuid, uint64_t gpa, struc argument
659 emulate_movs(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, struct vm_guest_paging *paging, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
841 emulate_stos(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, struct vm_guest_paging *paging, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
903 emulate_and(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
991 emulate_or(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
1053 emulate_cmp(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
1145 emulate_sub(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
1345 emulate_group1(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, struct vm_guest_paging *paging, mem_region_read_t memread, mem_region_write_t memwrite, void *memarg) argument
1373 emulate_bittest(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *memarg) argument
1415 vmm_emulate_instruction(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, struct vm_guest_paging *paging, mem_region_read_t memread, mem_region_write_t memwrite, void *memarg) argument
1690 vm_gla2gpa(struct vm *vm, int vcpuid, struct vm_guest_paging *paging, uint64_t gla, int prot, uint64_t *gpa, int *guest_fault) argument
[all...]
H A Dvmm.c127 vm_paddr_t gpa; member in struct:mem_map
545 vm_map_mmio(struct vm *vm, vm_paddr_t gpa, size_t len, vm_paddr_t hpa) argument
549 if ((obj = vmm_mmio_alloc(vm->vmspace, gpa, len, hpa)) == NULL)
556 vm_unmap_mmio(struct vm *vm, vm_paddr_t gpa, size_t len) argument
559 vmm_mmio_free(vm->vmspace, gpa, len);
564 * Return 'true' if 'gpa' is allocated in the guest address space.
570 vm_mem_allocated(struct vm *vm, int vcpuid, vm_paddr_t gpa) argument
584 if (mm->len != 0 && gpa >= mm->gpa && gpa < m
659 vm_mmap_memseg(struct vm *vm, vm_paddr_t gpa, int segid, vm_ooffset_t first, size_t len, int prot, int flags) argument
725 vm_mmap_getnext(struct vm *vm, vm_paddr_t *gpa, int *segid, vm_ooffset_t *segoff, size_t *len, int *prot, int *flags) argument
806 vm_paddr_t gpa, hpa; local
904 vm_gpa_hold(struct vm *vm, int vcpuid, vm_paddr_t gpa, size_t len, int reqprot, void **cookie) argument
1381 uint64_t gla, gpa, cs_base; local
2498 uint64_t gpa; local
[all...]
H A Dvmm_lapic.c204 lapic_mmio_write(void *vm, int cpu, uint64_t gpa, uint64_t wval, int size, argument
211 off = gpa - DEFAULT_APIC_BASE;
226 lapic_mmio_read(void *vm, int cpu, uint64_t gpa, uint64_t *rval, int size, argument
233 off = gpa - DEFAULT_APIC_BASE;
H A Dvmm_dev.c174 vm_paddr_t gpa; local
191 gpa = uio->uio_offset;
192 off = gpa & PAGE_MASK;
203 hpa = vm_gpa_hold(sc->vm, VM_MAXCPU - 1, gpa, c, prot, &cookie);
433 pptmmio->func, pptmmio->gpa, pptmmio->len,
511 error = vm_mmap_getnext(sc->vm, &mm->gpa, &mm->segid,
516 error = vm_mmap_memseg(sc->vm, mm->gpa, mm->segid, mm->segoff,
572 gpapte->gpa, gpapte->pte, &gpapte->ptenum);
584 gg->prot, &gg->gpa, &gg->fault);
664 vm_paddr_t gpa; local
[all...]
/freebsd-11.0-release/sys/amd64/vmm/io/
H A Dvhpet.h38 int vhpet_mmio_write(void *vm, int vcpuid, uint64_t gpa, uint64_t val,
40 int vhpet_mmio_read(void *vm, int vcpuid, uint64_t gpa, uint64_t *val,
H A Dvioapic.h43 int vioapic_mmio_write(void *vm, int vcpuid, uint64_t gpa,
45 int vioapic_mmio_read(void *vm, int vcpuid, uint64_t gpa,
H A Diommu.h38 typedef uint64_t (*iommu_create_mapping_t)(void *domain, vm_paddr_t gpa,
40 typedef uint64_t (*iommu_remove_mapping_t)(void *domain, vm_paddr_t gpa,
69 void iommu_create_mapping(void *dom, vm_paddr_t gpa, vm_paddr_t hpa,
71 void iommu_remove_mapping(void *dom, vm_paddr_t gpa, size_t len);
H A Diommu.c92 IOMMU_CREATE_MAPPING(void *domain, vm_paddr_t gpa, vm_paddr_t hpa, uint64_t len) argument
96 return ((*ops->create_mapping)(domain, gpa, hpa, len));
102 IOMMU_REMOVE_MAPPING(void *domain, vm_paddr_t gpa, uint64_t len) argument
106 return ((*ops->remove_mapping)(domain, gpa, len));
231 iommu_create_mapping(void *dom, vm_paddr_t gpa, vm_paddr_t hpa, size_t len) argument
238 mapped = IOMMU_CREATE_MAPPING(dom, gpa, hpa, remaining);
239 gpa += mapped;
246 iommu_remove_mapping(void *dom, vm_paddr_t gpa, size_t len) argument
253 unmapped = IOMMU_REMOVE_MAPPING(dom, gpa, remaining);
254 gpa
[all...]
H A Dppt.h34 vm_paddr_t gpa, size_t len, vm_paddr_t hpa);
40 boolean_t ppt_is_mmio(struct vm *vm, vm_paddr_t gpa);
H A Dppt.c80 vm_paddr_t gpa; member in struct:pptseg
222 (void)vm_unmap_mmio(vm, seg->gpa, seg->len);
329 ppt_is_mmio(struct vm *vm, vm_paddr_t gpa) argument
343 if (gpa >= seg->gpa && gpa < seg->gpa + seg->len)
416 vm_paddr_t gpa, size_t len, vm_paddr_t hpa)
430 error = vm_map_mmio(vm, gpa, len, hpa);
432 seg->gpa
415 ppt_map_mmio(struct vm *vm, int bus, int slot, int func, vm_paddr_t gpa, size_t len, vm_paddr_t hpa) argument
[all...]
H A Dvioapic.c376 vioapic_mmio_rw(struct vioapic *vioapic, int vcpuid, uint64_t gpa, argument
381 offset = gpa - VIOAPIC_BASE;
414 vioapic_mmio_read(void *vm, int vcpuid, uint64_t gpa, uint64_t *rval, argument
421 error = vioapic_mmio_rw(vioapic, vcpuid, gpa, rval, size, true);
426 vioapic_mmio_write(void *vm, int vcpuid, uint64_t gpa, uint64_t wval, argument
433 error = vioapic_mmio_rw(vioapic, vcpuid, gpa, &wval, size, false);
H A Dvhpet.c470 vhpet_mmio_write(void *vm, int vcpuid, uint64_t gpa, uint64_t val, int size, argument
480 offset = gpa - VHPET_BASE;
620 vhpet_mmio_read(void *vm, int vcpuid, uint64_t gpa, uint64_t *rval, int size, argument
628 offset = gpa - VHPET_BASE;
/freebsd-11.0-release/sys/amd64/include/
H A Dvmm_instruction_emul.h37 typedef int (*mem_region_read_t)(void *vm, int cpuid, uint64_t gpa,
40 typedef int (*mem_region_write_t)(void *vm, int cpuid, uint64_t gpa,
47 * containing 'gpa'. 'mrarg' is an opaque argument that is passed into the
54 int vmm_emulate_instruction(void *vm, int cpuid, uint64_t gpa, struct vie *vie,
91 * 0 0 'gpa' contains result of the translation
96 uint64_t gla, int prot, uint64_t *gpa, int *is_fault);
H A Dvmm_dev.h38 vm_paddr_t gpa; member in struct:vm_memmap
121 vm_paddr_t gpa; member in struct:vm_pptdev_mmio
170 uint64_t gpa; /* in */ member in struct:vm_gpa_pte
189 uint64_t gpa; member in struct:vm_gla2gpa
H A Dvmm.h181 int vm_mmap_memseg(struct vm *vm, vm_paddr_t gpa, int segid, vm_ooffset_t off,
185 int vm_map_mmio(struct vm *vm, vm_paddr_t gpa, size_t len, vm_paddr_t hpa);
186 int vm_unmap_mmio(struct vm *vm, vm_paddr_t gpa, size_t len);
195 int vm_mmap_getnext(struct vm *vm, vm_paddr_t *gpa, int *segid,
199 void *vm_gpa_hold(struct vm *, int vcpuid, vm_paddr_t gpa, size_t len,
202 bool vm_mem_allocated(struct vm *vm, int vcpuid, vm_paddr_t gpa);
369 uint64_t gpa; member in struct:vm_copyinfo
584 uint64_t gpa; member in struct:vm_exit::__anon7108::__anon7109
588 uint64_t gpa; member in struct:vm_exit::__anon7108::__anon7110
/freebsd-11.0-release/sys/amd64/vmm/amd/
H A Damdv.c84 amd_iommu_create_mapping(void *domain, vm_paddr_t gpa, vm_paddr_t hpa, argument
93 amd_iommu_remove_mapping(void *domain, vm_paddr_t gpa, uint64_t len) argument
/freebsd-11.0-release/usr.sbin/bhyve/
H A Dbootrom.c53 vm_paddr_t gpa; local
93 gpa = (1ULL << 32) - sbuf.st_size;
94 if (vm_mmap_memseg(ctx, gpa, VM_BOOTROM, 0, sbuf.st_size, prot) != 0)
H A Dmem.c138 mem_read(void *ctx, int vcpu, uint64_t gpa, uint64_t *rval, int size, void *arg) argument
143 error = (*mr->handler)(ctx, vcpu, MEM_F_READ, gpa, size,
149 mem_write(void *ctx, int vcpu, uint64_t gpa, uint64_t wval, int size, void *arg) argument
154 error = (*mr->handler)(ctx, vcpu, MEM_F_WRITE, gpa, size,
H A Dmptbl.c102 mpt_build_mpfp(mpfps_t mpfp, vm_paddr_t gpa) argument
107 mpfp->pap = gpa + sizeof(*mpfp);
/freebsd-11.0-release/sys/amd64/vmm/intel/
H A Dvtd.c440 vtd_update_mapping(void *arg, vm_paddr_t gpa, vm_paddr_t hpa, uint64_t len, argument
451 KASSERT(gpa + len > gpa, ("%s: invalid gpa range %#lx/%#lx", __func__,
452 gpa, len));
453 KASSERT(gpa + len <= dom->maxaddr, ("%s: gpa range %#lx/%#lx beyond "
454 "domain maxaddr %#lx", __func__, gpa, len, dom->maxaddr));
456 if (gpa & PAGE_MASK)
457 panic("vtd_create_mapping: unaligned gpa
529 vtd_create_mapping(void *arg, vm_paddr_t gpa, vm_paddr_t hpa, uint64_t len) argument
536 vtd_remove_mapping(void *arg, vm_paddr_t gpa, uint64_t len) argument
[all...]
/freebsd-11.0-release/lib/libvmmapi/
H A Dvmmapi.c196 * Map segment 'segid' starting at 'off' into guest address range [gpa,gpa+len).
199 vm_mmap_memseg(struct vmctx *ctx, vm_paddr_t gpa, int segid, vm_ooffset_t off, argument
205 memmap.gpa = gpa;
219 error = vm_mmap_getnext(ctx, &gpa, &segid, &off, &len, &prot, &flags);
220 if (error == 0 && gpa == memmap.gpa) {
235 vm_mmap_getnext(struct vmctx *ctx, vm_paddr_t *gpa, int *segid, argument
242 memmap.gpa
335 setup_memory_segment(struct vmctx *ctx, vm_paddr_t gpa, size_t len, char *base) argument
361 vm_paddr_t gpa; local
874 vm_map_pptdev_mmio(struct vmctx *ctx, int bus, int slot, int func, vm_paddr_t gpa, size_t len, vm_paddr_t hpa) argument
1147 vm_get_gpa_pmap(struct vmctx *ctx, uint64_t gpa, uint64_t *pte, int *num) argument
1180 vm_gla2gpa(struct vmctx *ctx, int vcpu, struct vm_guest_paging *paging, uint64_t gla, int prot, uint64_t *gpa, int *fault) argument
1210 uint64_t gpa; local
[all...]
H A Dvmmapi.h83 * that starts at an address >= *gpa.
87 int vm_mmap_getnext(struct vmctx *ctx, vm_paddr_t *gpa, int *segid,
99 * at [gpa,gpa+len) with protection 'prot'.
101 int vm_mmap_memseg(struct vmctx *ctx, vm_paddr_t gpa, int segid,
110 int vm_get_gpa_pmap(struct vmctx *, uint64_t gpa, uint64_t *pte, int *num);
112 uint64_t gla, int prot, uint64_t *gpa, int *fault);
155 vm_paddr_t gpa, size_t len, vm_paddr_t hpa);

Completed in 121 milliseconds

12