| /freebsd-13-stable/sys/amd64/vmm/amd/ |
| HD | svm.c | 288 svm_set_tsc_offset(struct svm_vcpu *vcpu, uint64_t offset) in svm_set_tsc_offset() argument 292 ctrl = svm_get_vmcb_ctrl(vcpu); in svm_set_tsc_offset() 295 svm_set_dirty(vcpu, VMCB_CACHE_I); in svm_set_tsc_offset() 296 SVM_CTR1(vcpu, "tsc offset changed to %#lx", offset); in svm_set_tsc_offset() 298 vm_set_tsc_offset(vcpu->vcpu, offset); in svm_set_tsc_offset() 384 svm_get_intercept(struct svm_vcpu *vcpu, int idx, uint32_t bitmask) in svm_get_intercept() argument 390 ctrl = svm_get_vmcb_ctrl(vcpu); in svm_get_intercept() 395 svm_set_intercept(struct svm_vcpu *vcpu, int idx, uint32_t bitmask, int enabled) in svm_set_intercept() argument 402 ctrl = svm_get_vmcb_ctrl(vcpu); in svm_set_intercept() 411 svm_set_dirty(vcpu, VMCB_CACHE_I); in svm_set_intercept() [all …]
|
| HD | svm_softc.h | 46 struct vcpu *vcpu; member 69 #define SVM_CTR0(vcpu, format) \ argument 70 VCPU_CTR0((vcpu)->sc->vm, (vcpu)->vcpuid, format) 72 #define SVM_CTR1(vcpu, format, p1) \ argument 73 VCPU_CTR1((vcpu)->sc->vm, (vcpu)->vcpuid, format, p1) 75 #define SVM_CTR2(vcpu, format, p1, p2) \ argument 76 VCPU_CTR2((vcpu)->sc->vm, (vcpu)->vcpuid, format, p1, p2) 78 #define SVM_CTR3(vcpu, format, p1, p2, p3) \ argument 79 VCPU_CTR3((vcpu)->sc->vm, (vcpu)->vcpuid, format, p1, p2, p3) 81 #define SVM_CTR4(vcpu, format, p1, p2, p3, p4) \ argument [all …]
|
| HD | vmcb.c | 117 vmcb_access(struct svm_vcpu *vcpu, int write, int ident, uint64_t *val) in vmcb_access() argument 123 vmcb = svm_get_vmcb(vcpu); in vmcb_access() 146 SVM_CTR1(vcpu, "Invalid size %d for VMCB access: %d", bytes); in vmcb_access() 152 svm_set_dirty(vcpu, 0xffffffff); in vmcb_access() 161 vmcb_read(struct svm_vcpu *vcpu, int ident, uint64_t *retval) in vmcb_read() argument 168 vmcb = svm_get_vmcb(vcpu); in vmcb_read() 173 return (vmcb_access(vcpu, 0, ident, retval)); in vmcb_read() 251 vmcb_write(struct svm_vcpu *vcpu, int ident, uint64_t val) in vmcb_write() argument 258 vmcb = svm_get_vmcb(vcpu); in vmcb_write() 264 return (vmcb_access(vcpu, 1, ident, &val)); in vmcb_write() [all …]
|
| HD | svm_msr.c | 73 svm_msr_guest_init(struct svm_softc *sc, struct svm_vcpu *vcpu) in svm_msr_guest_init() argument 87 svm_msr_guest_enter(struct svm_vcpu *vcpu) in svm_msr_guest_enter() argument 95 svm_msr_guest_exit(struct svm_vcpu *vcpu) in svm_msr_guest_exit() argument 109 svm_rdmsr(struct svm_vcpu *vcpu, u_int num, uint64_t *result, bool *retu) in svm_rdmsr() argument 124 if (vm_rdmtrr(&vcpu->mtrr, num, result) != 0) { in svm_rdmsr() 125 vm_inject_gp(vcpu->vcpu); in svm_rdmsr() 142 svm_wrmsr(struct svm_vcpu *vcpu, u_int num, uint64_t val, bool *retu) in svm_wrmsr() argument 156 if (vm_wrmtrr(&vcpu->mtrr, num, val) != 0) { in svm_wrmsr() 157 vm_inject_gp(vcpu->vcpu); in svm_wrmsr() 174 svm_set_tsc_offset(vcpu, val - rdtsc()); in svm_wrmsr()
|
| /freebsd-13-stable/sys/amd64/vmm/ |
| HD | vmm.c | 101 struct vcpu { struct 185 struct vcpu **vcpu; /* (o) guest vcpus */ member 195 #define VMM_CTR0(vcpu, format) \ argument 196 VCPU_CTR0((vcpu)->vm, (vcpu)->vcpuid, format) 198 #define VMM_CTR1(vcpu, format, p1) \ argument 199 VCPU_CTR1((vcpu)->vm, (vcpu)->vcpuid, format, p1) 201 #define VMM_CTR2(vcpu, format, p1, p2) \ argument 202 VCPU_CTR2((vcpu)->vm, (vcpu)->vcpuid, format, p1, p2) 204 #define VMM_CTR3(vcpu, format, p1, p2, p3) \ argument 205 VCPU_CTR3((vcpu)->vm, (vcpu)->vcpuid, format, p1, p2, p3) [all …]
|
| HD | vmm_lapic.h | 32 struct vcpu; 36 int lapic_rdmsr(struct vcpu *vcpu, u_int msr, uint64_t *rval, bool *retu); 37 int lapic_wrmsr(struct vcpu *vcpu, u_int msr, uint64_t wval, bool *retu); 39 int lapic_mmio_read(struct vcpu *vcpu, uint64_t gpa, 41 int lapic_mmio_write(struct vcpu *vcpu, uint64_t gpa, 48 int lapic_set_intr(struct vcpu *vcpu, int vector, bool trig); 53 lapic_intr_level(struct vcpu *vcpu, int vector) in lapic_intr_level() argument 56 return (lapic_set_intr(vcpu, vector, LAPIC_TRIG_LEVEL)); in lapic_intr_level() 60 lapic_intr_edge(struct vcpu *vcpu, int vector) in lapic_intr_edge() argument 63 return (lapic_set_intr(vcpu, vector, LAPIC_TRIG_EDGE)); in lapic_intr_edge() [all …]
|
| HD | vmm_lapic.c | 51 lapic_set_intr(struct vcpu *vcpu, int vector, bool level) in lapic_set_intr() argument 62 vlapic = vm_lapic(vcpu); in lapic_set_intr() 64 vcpu_notify_event(vcpu, true); in lapic_set_intr() 69 lapic_set_local_intr(struct vm *vm, struct vcpu *vcpu, int vector) in lapic_set_local_intr() argument 75 if (vcpu == NULL) { in lapic_set_local_intr() 85 vlapic = vm_lapic(vcpu); in lapic_set_local_intr() 151 lapic_rdmsr(struct vcpu *vcpu, u_int msr, uint64_t *rval, bool *retu) in lapic_rdmsr() argument 157 vlapic = vm_lapic(vcpu); in lapic_rdmsr() 171 lapic_wrmsr(struct vcpu *vcpu, u_int msr, uint64_t val, bool *retu) in lapic_wrmsr() argument 177 vlapic = vm_lapic(vcpu); in lapic_wrmsr() [all …]
|
| HD | vmm_stat.h | 46 typedef void (*vmm_stat_func_t)(struct vcpu *vcpu, 88 int vmm_stat_copy(struct vcpu *vcpu, int index, int count, 93 vmm_stat_array_incr(struct vcpu *vcpu, struct vmm_stat_type *vst, int statidx, in vmm_stat_array_incr() argument 99 stats = vcpu_stats(vcpu); in vmm_stat_array_incr() 107 vmm_stat_array_set(struct vcpu *vcpu, struct vmm_stat_type *vst, int statidx, in vmm_stat_array_set() argument 113 stats = vcpu_stats(vcpu); in vmm_stat_array_set() 121 vmm_stat_incr(struct vcpu *vcpu, struct vmm_stat_type *vst, uint64_t x) in vmm_stat_incr() argument 125 vmm_stat_array_incr(vcpu, vst, 0, x); in vmm_stat_incr() 130 vmm_stat_set(struct vcpu *vcpu, struct vmm_stat_type *vst, uint64_t val) in vmm_stat_set() argument 134 vmm_stat_array_set(vcpu, vst, 0, val); in vmm_stat_set()
|
| HD | vmm_dev.c | 124 vcpu_lock_one(struct vcpu *vcpu) in vcpu_lock_one() argument 126 return (vcpu_set_state(vcpu, VCPU_FROZEN, true)); in vcpu_lock_one() 130 vcpu_unlock_one(struct vmmdev_softc *sc, int vcpuid, struct vcpu *vcpu) in vcpu_unlock_one() argument 134 state = vcpu_get_state(vcpu, NULL); in vcpu_unlock_one() 140 vcpu_set_state(vcpu, VCPU_IDLE, false); in vcpu_unlock_one() 146 struct vcpu *vcpu; in vcpu_lock_all() local 153 vcpu = vm_vcpu(sc->vm, i); in vcpu_lock_all() 154 if (vcpu == NULL) in vcpu_lock_all() 156 error = vcpu_lock_one(vcpu); in vcpu_lock_all() 163 vcpu = vm_vcpu(sc->vm, j); in vcpu_lock_all() [all …]
|
| HD | vmm_ioport.c | 101 emulate_inout_port(struct vcpu *vcpu, struct vm_exit *vmexit, bool *retu) in emulate_inout_port() argument 122 error = (*handler)(vcpu_vm(vcpu), vmexit->u.inout.in, in emulate_inout_port() 138 error = vm_set_register(vcpu, VM_REG_GUEST_RAX, in emulate_inout_port() 148 emulate_inout_str(struct vcpu *vcpu, struct vm_exit *vmexit, bool *retu) in emulate_inout_str() argument 155 vm_handle_inout(struct vcpu *vcpu, struct vm_exit *vmexit, bool *retu) in vm_handle_inout() argument 164 error = emulate_inout_str(vcpu, vmexit, retu); in vm_handle_inout() 166 error = emulate_inout_port(vcpu, vmexit, retu); in vm_handle_inout() 168 VCPU_CTR4(vcpu_vm(vcpu), vcpu_vcpuid(vcpu), "%s%s 0x%04x: %s", in vm_handle_inout()
|
| /freebsd-13-stable/sys/amd64/include/ |
| HD | vmm.h | 144 struct vcpu; 172 typedef void * (*vmi_vcpu_init_func_t)(void *vmi, struct vcpu *vcpu, 220 struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid); 259 void *vm_gpa_hold(struct vcpu *vcpu, vm_paddr_t gpa, size_t len, 264 bool vm_mem_allocated(struct vcpu *vcpu, vm_paddr_t gpa); 266 int vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval); 267 int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); 268 int vm_get_seg_desc(struct vcpu *vcpu, int reg, 270 int vm_set_seg_desc(struct vcpu *vcpu, int reg, 272 int vm_run(struct vcpu *vcpu, struct vm_exit *vme_user); [all …]
|
| HD | vmm_instruction_emul.h | 40 #define VCPU_DECL struct vcpu *vcpu 41 #define VCPU_ARGS vcpu 95 int vmm_fetch_instruction(struct vcpu *vcpu, 108 int vm_gla2gpa(struct vcpu *vcpu, struct vm_guest_paging *paging, 115 int vm_gla2gpa_nofault(struct vcpu *vcpu, struct vm_guest_paging *paging, 135 int vmm_decode_instruction(struct vcpu *vcpu, uint64_t gla,
|
| /freebsd-13-stable/usr.sbin/bhyvectl/ |
| HD | bhyvectl.c | 337 dump_vm_run_exitcode(struct vm_exit *vmexit, int vcpu) in dump_vm_run_exitcode() argument 339 printf("vm exit[%d]\n", vcpu); in dump_vm_run_exitcode() 421 print_msr_pm(uint64_t msr, int vcpu, int readable, int writeable) in print_msr_pm() argument 425 printf("%-20s[%d]\t\t%c%c\n", msr_name(msr), vcpu, in print_msr_pm() 434 dump_amd_msr_pm(const char *bitmap, int vcpu) in dump_amd_msr_pm() argument 446 print_msr_pm(msr, vcpu, readable, writeable); in dump_amd_msr_pm() 452 print_msr_pm(msr + MSR_AMD6TH_START, vcpu, readable, in dump_amd_msr_pm() 459 print_msr_pm(msr + MSR_AMD7TH_START, vcpu, readable, in dump_amd_msr_pm() 468 dump_intel_msr_pm(const char *bitmap, int vcpu) in dump_intel_msr_pm() argument 480 print_msr_pm(msr, vcpu, readable, writeable); in dump_intel_msr_pm() [all …]
|
| /freebsd-13-stable/usr.sbin/bhyve/ |
| HD | task_switch.c | 101 GETREG(struct vmctx *ctx, int vcpu, int reg) in GETREG() argument 106 error = vm_get_register(ctx, vcpu, reg, &val); in GETREG() 112 SETREG(struct vmctx *ctx, int vcpu, int reg, uint64_t val) in SETREG() argument 116 error = vm_set_register(ctx, vcpu, reg, val); in SETREG() 152 sel_exception(struct vmctx *ctx, int vcpu, int vector, uint16_t sel, int ext) in sel_exception() argument 166 vm_inject_fault(ctx, vcpu, vector, 1, sel); in sel_exception() 174 desc_table_limit_check(struct vmctx *ctx, int vcpu, uint16_t sel) in desc_table_limit_check() argument 181 error = vm_get_desc(ctx, vcpu, reg, &base, &limit, &access); in desc_table_limit_check() 204 desc_table_rw(struct vmctx *ctx, int vcpu, struct vm_guest_paging *paging, in desc_table_rw() argument 214 error = vm_get_desc(ctx, vcpu, reg, &base, &limit, &access); in desc_table_rw() [all …]
|
| HD | mem.c | 141 typedef int (mem_cb_t)(struct vmctx *ctx, int vcpu, uint64_t gpa, 145 mem_read(void *ctx, int vcpu, uint64_t gpa, uint64_t *rval, int size, void *arg) in mem_read() argument 150 error = (*mr->handler)(ctx, vcpu, MEM_F_READ, gpa, size, in mem_read() 156 mem_write(void *ctx, int vcpu, uint64_t gpa, uint64_t wval, int size, void *arg) in mem_write() argument 161 error = (*mr->handler)(ctx, vcpu, MEM_F_WRITE, gpa, size, in mem_write() 167 access_memory(struct vmctx *ctx, int vcpu, uint64_t paddr, mem_cb_t *cb, in access_memory() argument 177 if (mmio_hint[vcpu] && in access_memory() 178 paddr >= mmio_hint[vcpu]->mr_base && in access_memory() 179 paddr <= mmio_hint[vcpu]->mr_end) { in access_memory() 180 entry = mmio_hint[vcpu]; in access_memory() [all …]
|
| HD | gdb.c | 225 guest_paging_info(int vcpu, struct vm_guest_paging *paging) in guest_paging_info() argument 235 if (vm_get_register_set(ctx, vcpu, nitems(regset), regset, regs) == -1) in guest_paging_info() 270 guest_vaddr2paddr(int vcpu, uint64_t vaddr, uint64_t *paddr) in guest_vaddr2paddr() argument 275 if (guest_paging_info(vcpu, &paging) == -1) in guest_vaddr2paddr() 282 if (vm_gla2gpa_nofault(ctx, vcpu, &paging, vaddr, PROT_READ, paddr, in guest_vaddr2paddr() 732 _gdb_cpu_suspend(int vcpu, bool report_stop) in _gdb_cpu_suspend() argument 735 debug("$vCPU %d suspending\n", vcpu); in _gdb_cpu_suspend() 736 CPU_SET(vcpu, &vcpus_waiting); in _gdb_cpu_suspend() 739 while (CPU_ISSET(vcpu, &vcpus_suspended)) in _gdb_cpu_suspend() 741 CPU_CLR(vcpu, &vcpus_waiting); in _gdb_cpu_suspend() [all …]
|
| HD | bhyverun.c | 183 typedef int (*vmexit_handler_t)(struct vmctx *, struct vm_exit *, int *vcpu); 195 static void vm_loop(struct vmctx *ctx, int vcpu); 382 int vcpu, pcpu; in pincpu_parse() local 384 if (sscanf(opt, "%d:%d", &vcpu, &pcpu) != 2) { in pincpu_parse() 389 if (vcpu < 0) { in pincpu_parse() 390 fprintf(stderr, "invalid vcpu '%d'\n", vcpu); in pincpu_parse() 400 snprintf(key, sizeof(key), "vcpu.%d.cpuset", vcpu); in pincpu_parse() 415 parse_cpuset(int vcpu, const char *list, cpuset_t *set) in parse_cpuset() argument 426 errx(4, "invalid cpuset for vcpu %d: '%s'", vcpu, list); in parse_cpuset() 448 vcpu, list); in parse_cpuset() [all …]
|
| /freebsd-13-stable/sys/amd64/vmm/intel/ |
| HD | vmx.c | 1121 vmx_vcpu_init(void *vmi, struct vcpu *vcpu1, int vcpuid) in vmx_vcpu_init() 1125 struct vmx_vcpu *vcpu; in vmx_vcpu_init() local 1132 vcpu = malloc(sizeof(*vcpu), M_VMX, M_WAITOK | M_ZERO); in vmx_vcpu_init() 1133 vcpu->vmx = vmx; in vmx_vcpu_init() 1134 vcpu->vcpu = vcpu1; in vmx_vcpu_init() 1135 vcpu->vcpuid = vcpuid; in vmx_vcpu_init() 1136 vcpu->vmcs = malloc_aligned(sizeof(*vmcs), PAGE_SIZE, M_VMX, in vmx_vcpu_init() 1138 vcpu->apic_page = malloc_aligned(PAGE_SIZE, PAGE_SIZE, M_VMX, in vmx_vcpu_init() 1140 vcpu->pir_desc = malloc_aligned(sizeof(*vcpu->pir_desc), 64, M_VMX, in vmx_vcpu_init() 1143 vmcs = vcpu->vmcs; in vmx_vcpu_init() [all …]
|
| HD | vmx_msr.c | 313 vmx_msr_guest_init(struct vmx *vmx, struct vmx_vcpu *vcpu) in vmx_msr_guest_init() argument 319 if (vcpu->vcpuid == 0) { in vmx_msr_guest_init() 330 vcpu->guest_msrs[IDX_MSR_PAT] = PAT_VALUE(0, PAT_WRITE_BACK) | in vmx_msr_guest_init() 343 vmx_msr_guest_enter(struct vmx_vcpu *vcpu) in vmx_msr_guest_enter() argument 348 wrmsr(MSR_LSTAR, vcpu->guest_msrs[IDX_MSR_LSTAR]); in vmx_msr_guest_enter() 349 wrmsr(MSR_CSTAR, vcpu->guest_msrs[IDX_MSR_CSTAR]); in vmx_msr_guest_enter() 350 wrmsr(MSR_STAR, vcpu->guest_msrs[IDX_MSR_STAR]); in vmx_msr_guest_enter() 351 wrmsr(MSR_SF_MASK, vcpu->guest_msrs[IDX_MSR_SF_MASK]); in vmx_msr_guest_enter() 352 wrmsr(MSR_KGSBASE, vcpu->guest_msrs[IDX_MSR_KGSBASE]); in vmx_msr_guest_enter() 356 vmx_msr_guest_enter_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu) in vmx_msr_guest_enter_tsc_aux() argument [all …]
|
| HD | vmx.h | 129 struct vcpu *vcpu; member 152 #define VMX_CTR0(vcpu, format) \ argument 153 VCPU_CTR0((vcpu)->vmx->vm, (vcpu)->vcpuid, format) 155 #define VMX_CTR1(vcpu, format, p1) \ argument 156 VCPU_CTR1((vcpu)->vmx->vm, (vcpu)->vcpuid, format, p1) 158 #define VMX_CTR2(vcpu, format, p1, p2) \ argument 159 VCPU_CTR2((vcpu)->vmx->vm, (vcpu)->vcpuid, format, p1, p2) 161 #define VMX_CTR3(vcpu, format, p1, p2, p3) \ argument 162 VCPU_CTR3((vcpu)->vmx->vm, (vcpu)->vcpuid, format, p1, p2, p3) 164 #define VMX_CTR4(vcpu, format, p1, p2, p3, p4) \ argument [all …]
|
| HD | vmx_msr.h | 35 void vmx_msr_guest_init(struct vmx *vmx, struct vmx_vcpu *vcpu); 36 void vmx_msr_guest_enter_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu); 37 void vmx_msr_guest_enter(struct vmx_vcpu *vcpu); 38 void vmx_msr_guest_exit(struct vmx_vcpu *vcpu); 39 void vmx_msr_guest_exit_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu); 40 int vmx_rdmsr(struct vmx_vcpu *vcpu, u_int num, uint64_t *val, bool *retu); 41 int vmx_wrmsr(struct vmx_vcpu *vcpu, u_int num, uint64_t val, bool *retu);
|
| /freebsd-13-stable/lib/libvmmapi/ |
| HD | vmmapi_freebsd.c | 70 vm_setup_freebsd_registers_i386(struct vmctx *vmctx, int vcpu, uint32_t eip, in vm_setup_freebsd_registers_i386() argument 80 error = vm_get_capability(vmctx, vcpu, VM_CAP_UNRESTRICTED_GUEST, &tmp); in vm_setup_freebsd_registers_i386() 83 error = vm_set_capability(vmctx, vcpu, VM_CAP_UNRESTRICTED_GUEST, 1); in vm_setup_freebsd_registers_i386() 88 if ((error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_CR0, cr0)) != 0) in vm_setup_freebsd_registers_i386() 91 if ((error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_CR4, 0)) != 0) in vm_setup_freebsd_registers_i386() 98 if ((error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_EFER, 0))) in vm_setup_freebsd_registers_i386() 107 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_GDTR, in vm_setup_freebsd_registers_i386() 117 error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_RFLAGS, rflags); in vm_setup_freebsd_registers_i386() 124 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_CS, in vm_setup_freebsd_registers_i386() 128 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_DS, in vm_setup_freebsd_registers_i386() [all …]
|
| HD | vmmapi.h | 141 int vm_set_desc(struct vmctx *ctx, int vcpu, int reg, 143 int vm_get_desc(struct vmctx *ctx, int vcpu, int reg, 145 int vm_get_seg_desc(struct vmctx *ctx, int vcpu, int reg, 147 int vm_set_register(struct vmctx *ctx, int vcpu, int reg, uint64_t val); 148 int vm_get_register(struct vmctx *ctx, int vcpu, int reg, uint64_t *retval); 149 int vm_set_register_set(struct vmctx *ctx, int vcpu, unsigned int count, 151 int vm_get_register_set(struct vmctx *ctx, int vcpu, unsigned int count, 153 int vm_run(struct vmctx *ctx, int vcpu, struct vm_exit *ret_vmexit); 157 int vm_inject_exception(struct vmctx *ctx, int vcpu, int vector, 159 int vm_lapic_irq(struct vmctx *ctx, int vcpu, int vector); [all …]
|
| HD | vmmapi.c | 575 vm_set_desc(struct vmctx *ctx, int vcpu, int reg, in vm_set_desc() argument 582 vmsegdesc.cpuid = vcpu; in vm_set_desc() 593 vm_get_desc(struct vmctx *ctx, int vcpu, int reg, in vm_get_desc() argument 600 vmsegdesc.cpuid = vcpu; in vm_get_desc() 613 vm_get_seg_desc(struct vmctx *ctx, int vcpu, int reg, struct seg_desc *seg_desc) in vm_get_seg_desc() argument 617 error = vm_get_desc(ctx, vcpu, reg, &seg_desc->base, &seg_desc->limit, in vm_get_seg_desc() 623 vm_set_register(struct vmctx *ctx, int vcpu, int reg, uint64_t val) in vm_set_register() argument 629 vmreg.cpuid = vcpu; in vm_set_register() 638 vm_get_register(struct vmctx *ctx, int vcpu, int reg, uint64_t *ret_val) in vm_get_register() argument 644 vmreg.cpuid = vcpu; in vm_get_register() [all …]
|
| /freebsd-13-stable/sys/amd64/vmm/io/ |
| HD | vioapic.c | 236 vioapic_update_tmr(struct vcpu *vcpu, void *arg) in vioapic_update_tmr() argument 244 vlapic = vm_lapic(vcpu); in vioapic_update_tmr() 245 vioapic = vm_ioapic(vcpu_vm(vcpu)); in vioapic_update_tmr() 276 vioapic_read(struct vioapic *vioapic, struct vcpu *vcpu, uint32_t addr) in vioapic_read() argument 311 vioapic_write(struct vioapic *vioapic, struct vcpu *vcpu, uint32_t addr, in vioapic_write() argument 372 (void)vm_smp_rendezvous(vcpu, allvcpus, in vioapic_write() 392 vioapic_mmio_rw(struct vioapic *vioapic, struct vcpu *vcpu, uint64_t gpa, in vioapic_mmio_rw() argument 417 *data = vioapic_read(vioapic, vcpu, in vioapic_mmio_rw() 420 vioapic_write(vioapic, vcpu, vioapic->ioregsel, in vioapic_mmio_rw() 430 vioapic_mmio_read(struct vcpu *vcpu, uint64_t gpa, uint64_t *rval, in vioapic_mmio_read() argument [all …]
|