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

12

/freebsd-11-stable/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.c128 vm_paddr_t gpa; member in struct:mem_map
587 vm_map_mmio(struct vm *vm, vm_paddr_t gpa, size_t len, vm_paddr_t hpa) argument
591 if ((obj = vmm_mmio_alloc(vm->vmspace, gpa, len, hpa)) == NULL)
598 vm_unmap_mmio(struct vm *vm, vm_paddr_t gpa, size_t len) argument
601 vmm_mmio_free(vm->vmspace, gpa, len);
606 * Return 'true' if 'gpa' is allocated in the guest address space.
612 vm_mem_allocated(struct vm *vm, int vcpuid, vm_paddr_t gpa) argument
626 if (mm->len != 0 && gpa >= mm->gpa && gpa < m
701 vm_mmap_memseg(struct vm *vm, vm_paddr_t gpa, int segid, vm_ooffset_t first, size_t len, int prot, int flags) argument
767 vm_mmap_getnext(struct vm *vm, vm_paddr_t *gpa, int *segid, vm_ooffset_t *segoff, size_t *len, int *prot, int *flags) argument
848 vm_paddr_t gpa, hpa; local
948 vm_gpa_hold(struct vm *vm, int vcpuid, vm_paddr_t gpa, size_t len, int reqprot, void **cookie) argument
1425 uint64_t gla, gpa, cs_base; local
2544 uint64_t gpa; local
[all...]
H A Dvmm_lapic.c198 lapic_mmio_write(void *vm, int cpu, uint64_t gpa, uint64_t wval, int size, argument
205 off = gpa - DEFAULT_APIC_BASE;
220 lapic_mmio_read(void *vm, int cpu, uint64_t gpa, uint64_t *rval, int size, argument
227 off = gpa - DEFAULT_APIC_BASE;
H A Dvmm_instruction_emul.c494 emulate_mov(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, argument
515 error = memwrite(vm, vcpuid, gpa, byte, size, arg);
528 error = memwrite(vm, vcpuid, gpa, val, size, arg);
538 error = memread(vm, vcpuid, gpa, &val, size, arg);
549 error = memread(vm, vcpuid, gpa, &val, size, arg);
562 error = memread(vm, vcpuid, gpa, &val, size, arg);
578 error = memwrite(vm, vcpuid, gpa, val, size, arg);
588 error = memwrite(vm, vcpuid, gpa, vie->immediate, size, arg);
598 error = memwrite(vm, vcpuid, gpa, val, size, arg);
608 emulate_movx(void *vm, int vcpuid, uint64_t gpa, struc argument
750 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
932 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
994 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
1082 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
1170 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
1262 emulate_test(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
1311 emulate_add(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *arg) argument
1367 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
1567 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
1595 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
1637 emulate_twob_group15(void *vm, int vcpuid, uint64_t gpa, struct vie *vie, mem_region_read_t memread, mem_region_write_t memwrite, void *memarg) argument
1668 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
1955 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_dev.c178 vm_paddr_t gpa, maxaddr; local
198 gpa = uio->uio_offset;
199 off = gpa & PAGE_MASK;
210 hpa = vm_gpa_hold(sc->vm, lastcpu, gpa, c,
213 if (uio->uio_rw == UIO_READ && gpa < maxaddr)
442 pptmmio->func, pptmmio->gpa, pptmmio->len,
520 error = vm_mmap_getnext(sc->vm, &mm->gpa, &mm->segid,
525 error = vm_mmap_memseg(sc->vm, mm->gpa, mm->segid, mm->segoff,
581 gpapte->gpa, gpapte->pte, &gpapte->ptenum);
593 gg->prot, &gg->gpa,
684 vm_paddr_t gpa; local
[all...]
/freebsd-11-stable/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,
68 void iommu_create_mapping(void *dom, vm_paddr_t gpa, vm_paddr_t hpa,
70 void iommu_remove_mapping(void *dom, vm_paddr_t gpa, size_t len);
H A Dppt.h34 vm_paddr_t gpa, size_t len, vm_paddr_t hpa);
40 bool ppt_is_mmio(struct vm *vm, vm_paddr_t gpa);
H A Diommu.c98 IOMMU_CREATE_MAPPING(void *domain, vm_paddr_t gpa, vm_paddr_t hpa, uint64_t len) argument
102 return ((*ops->create_mapping)(domain, gpa, hpa, len));
108 IOMMU_REMOVE_MAPPING(void *domain, vm_paddr_t gpa, uint64_t len) argument
112 return ((*ops->remove_mapping)(domain, gpa, len));
285 iommu_create_mapping(void *dom, vm_paddr_t gpa, vm_paddr_t hpa, size_t len) argument
292 mapped = IOMMU_CREATE_MAPPING(dom, gpa, hpa, remaining);
293 gpa += mapped;
300 iommu_remove_mapping(void *dom, vm_paddr_t gpa, size_t len) argument
307 unmapped = IOMMU_REMOVE_MAPPING(dom, gpa, remaining);
308 gpa
[all...]
H A Dppt.c80 vm_paddr_t gpa; member in struct:pptseg
227 (void)vm_unmap_mmio(vm, seg->gpa, seg->len);
341 ppt_is_mmio(struct vm *vm, vm_paddr_t gpa) argument
355 if (gpa >= seg->gpa && gpa < seg->gpa + seg->len)
446 vm_paddr_t gpa, size_t len, vm_paddr_t hpa)
460 error = vm_map_mmio(vm, gpa, len, hpa);
462 seg->gpa
445 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);
/freebsd-11-stable/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.h196 int vm_mmap_memseg(struct vm *vm, vm_paddr_t gpa, int segid, vm_ooffset_t off,
200 int vm_map_mmio(struct vm *vm, vm_paddr_t gpa, size_t len, vm_paddr_t hpa);
201 int vm_unmap_mmio(struct vm *vm, vm_paddr_t gpa, size_t len);
210 int vm_mmap_getnext(struct vm *vm, vm_paddr_t *gpa, int *segid,
215 void *vm_gpa_hold(struct vm *, int vcpuid, vm_paddr_t gpa, size_t len,
218 bool vm_mem_allocated(struct vm *vm, int vcpuid, vm_paddr_t gpa);
385 uint64_t gpa; member in struct:vm_copyinfo
601 uint64_t gpa; member in struct:vm_exit::__anon4079::__anon4080
605 uint64_t gpa; member in struct:vm_exit::__anon4079::__anon4081
/freebsd-11-stable/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-stable/sys/dev/hyperv/netvsc/
H A Dhn_nvs.h81 struct hn_nvs_sendctx *sndc, struct vmbus_gpa *gpa, int gpa_cnt)
90 return (hn_nvs_send_sglist(chan, gpa, gpa_cnt,
101 struct hn_nvs_sendctx *sndc, struct vmbus_gpa *gpa,
80 hn_nvs_send_rndis_sglist(struct vmbus_channel *chan, uint32_t rndis_mtype, struct hn_nvs_sendctx *sndc, struct vmbus_gpa *gpa, int gpa_cnt) argument
/freebsd-11-stable/usr.sbin/bhyve/
H A Dbootrom.c55 vm_paddr_t gpa; local
95 gpa = (1ULL << 32) - sbuf.st_size;
96 if (vm_mmap_memseg(ctx, gpa, VM_BOOTROM, 0, sbuf.st_size, prot) != 0)
H A Dmem.c143 mem_read(void *ctx, int vcpu, uint64_t gpa, uint64_t *rval, int size, void *arg) argument
148 error = (*mr->handler)(ctx, vcpu, MEM_F_READ, gpa, size,
154 mem_write(void *ctx, int vcpu, uint64_t gpa, uint64_t wval, int size, void *arg) argument
159 error = (*mr->handler)(ctx, vcpu, MEM_F_WRITE, gpa, size,
H A Dmptbl.c104 mpt_build_mpfp(mpfps_t mpfp, vm_paddr_t gpa) argument
109 mpfp->pap = gpa + sizeof(*mpfp);
/freebsd-11-stable/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-stable/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
873 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
1146 vm_get_gpa_pmap(struct vmctx *ctx, uint64_t gpa, uint64_t *pte, int *num) argument
1179 vm_gla2gpa(struct vmctx *ctx, int vcpu, struct vm_guest_paging *paging, uint64_t gla, int prot, uint64_t *gpa, int *fault) argument
1209 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,
111 int vm_get_gpa_pmap(struct vmctx *, uint64_t gpa, uint64_t *pte, int *num);
113 uint64_t gla, int prot, uint64_t *gpa, int *fault);
156 vm_paddr_t gpa, size_t len, vm_paddr_t hpa);

Completed in 131 milliseconds

12