Searched refs:vcpu (Results 1 - 25 of 95) sorted by relevance

1234

/freebsd-current/usr.sbin/bhyve/
H A Dgdb.h31 void gdb_cpu_add(struct vcpu *vcpu);
32 void gdb_cpu_breakpoint(struct vcpu *vcpu, struct vm_exit *vmexit);
33 void gdb_cpu_mtrap(struct vcpu *vcpu);
34 void gdb_cpu_suspend(struct vcpu *vcpu);
35 void gdb_cpu_debug(struct vcpu *vcpu, struc
[all...]
H A Dbhyverun.h44 struct vcpu;
53 struct vcpu;
54 struct vcpu *fbsdrun_vcpu(int vcpuid);
61 typedef int (*vmexit_handler_t)(struct vmctx *, struct vcpu *, struct vm_run *);
77 void bhyve_init_vcpu(struct vcpu *vcpu);
78 void bhyve_start_vcpu(struct vcpu *vcpu, bool bsp);
79 int bhyve_init_platform(struct vmctx *ctx, struct vcpu *bsp);
80 int bhyve_init_platform_late(struct vmctx *ctx, struct vcpu *bs
[all...]
H A Dmem.h34 struct vcpu;
36 typedef int (*mem_func_t)(struct vcpu *vcpu, int dir, uint64_t addr,
54 int emulate_mem(struct vcpu *vcpu, uint64_t paddr, struct vie *vie,
57 int read_mem(struct vcpu *vpu, uint64_t gpa, uint64_t *rval, int size);
61 int write_mem(struct vcpu *vcpu, uint64_t gpa, uint64_t wval, int size);
/freebsd-current/sys/arm64/vmm/
H A Dreset.h30 void reset_vm_el01_regs(void *vcpu);
31 void reset_vm_el2_regs(void *vcpu);
H A Dvmm_instruction_emul.c55 vmm_emulate_instruction(struct vcpu *vcpu, uint64_t gpa, struct vie *vie, argument
63 error = memread(vcpu, gpa, &val, vie->access_size, memarg);
66 error = vm_set_register(vcpu, vie->reg, val);
68 error = vm_get_register(vcpu, vie->reg, &val);
74 error = memwrite(vcpu, gpa, val, vie->access_size, memarg);
82 vmm_emulate_register(struct vcpu *vcpu, struct vre *vre, reg_read_t regread, argument
89 error = regread(vcpu, &val, regarg);
92 error = vm_set_register(vcpu, vr
[all...]
H A Dvmm_stat.h44 typedef void (*vmm_stat_func_t)(struct vcpu *vcpu,
82 int vmm_stat_copy(struct vcpu *vcpu, int index, int count,
87 vmm_stat_array_incr(struct vcpu *vcpu, struct vmm_stat_type *vst, int statidx, argument
93 stats = vcpu_stats(vcpu);
101 vmm_stat_array_set(struct vcpu *vcpu, struct vmm_stat_type *vst, int statidx, argument
107 stats = vcpu_stats(vcpu);
115 vmm_stat_incr(struct vcpu *vcpu, struct vmm_stat_type *vst, uint64_t x) argument
124 vmm_stat_set(struct vcpu *vcpu, struct vmm_stat_type *vst, uint64_t val) argument
[all...]
H A Dvmm.c76 struct vcpu { struct
80 int hostcpu; /* host cpuid this vcpu last ran on */
91 #define vcpu_lock_init(v) mtx_init(&((v)->mtx), "vcpu lock", 0, MTX_SPIN)
150 struct vcpu **vcpu; /* (i) guest vcpus */ member in struct:vm
165 static int vm_handle_wfi(struct vcpu *vcpu,
171 static VMM_STAT(VCPU_TOTAL_RUNTIME, "vcpu total runtime");
177 "IPI vector used for vcpu notifications");
239 static void vcpu_notify_event_locked(struct vcpu *vcp
272 vcpu_cleanup(struct vcpu *vcpu, bool destroy) argument
286 struct vcpu *vcpu; local
303 vcpu_init(struct vcpu *vcpu) argument
312 vm_exitinfo(struct vcpu *vcpu) argument
411 struct vcpu *vcpu; local
636 vm_mem_allocated(struct vcpu *vcpu, vm_paddr_t gpa) argument
889 vm_gla2gpa_nofault(struct vcpu *vcpu, struct vm_guest_paging *paging, uint64_t gla, int prot, uint64_t *gpa, int *is_fault) argument
898 vmm_reg_raz(struct vcpu *vcpu, uint64_t *rval, void *arg) argument
905 vmm_reg_read_arg(struct vcpu *vcpu, uint64_t *rval, void *arg) argument
912 vmm_reg_wi(struct vcpu *vcpu, uint64_t wval, void *arg) argument
1016 vm_handle_reg_emul(struct vcpu *vcpu, bool *retu) argument
1102 vm_handle_inst_emul(struct vcpu *vcpu, bool *retu) argument
1172 vm_exit_suspended(struct vcpu *vcpu, uint64_t pc) argument
1188 vm_exit_debug(struct vcpu *vcpu, uint64_t pc) argument
1199 vm_activate_cpu(struct vcpu *vcpu) argument
1212 vm_suspend_cpu(struct vm *vm, struct vcpu *vcpu) argument
1231 vm_resume_cpu(struct vm *vm, struct vcpu *vcpu) argument
1246 vcpu_debugged(struct vcpu *vcpu) argument
1275 vcpu_stats(struct vcpu *vcpu) argument
1289 vcpu_notify_event_locked(struct vcpu *vcpu) argument
1315 vcpu_notify_event(struct vcpu *vcpu) argument
1323 restore_guest_fpustate(struct vcpu *vcpu) argument
1343 save_guest_fpustate(struct vcpu *vcpu) argument
1358 vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, bool from_idle) argument
1424 vcpu_require_state(struct vcpu *vcpu, enum vcpu_state newstate) argument
1433 vcpu_require_state_locked(struct vcpu *vcpu, enum vcpu_state newstate) argument
1442 vm_get_capability(struct vcpu *vcpu, int type, int *retval) argument
1451 vm_set_capability(struct vcpu *vcpu, int type, int val) argument
1460 vcpu_vm(struct vcpu *vcpu) argument
1466 vcpu_vcpuid(struct vcpu *vcpu) argument
1472 vcpu_get_cookie(struct vcpu *vcpu) argument
1484 vcpu_set_state(struct vcpu *vcpu, enum vcpu_state newstate, bool from_idle) argument
1496 vcpu_get_state(struct vcpu *vcpu, int *hostcpu) argument
1542 vm_gpa_hold(struct vcpu *vcpu, vm_paddr_t gpa, size_t len, int reqprot, void **cookie) argument
1574 vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval) argument
1584 vm_set_register(struct vcpu *vcpu, int reg, uint64_t val) argument
1606 vm_inject_exception(struct vcpu *vcpu, uint64_t esr, uint64_t far) argument
1638 vm_handle_smccc_call(struct vcpu *vcpu, struct vm_exit *vme, bool *retu) argument
1658 vm_handle_wfi(struct vcpu *vcpu, struct vm_exit *vme, bool *retu) argument
1683 vm_handle_paging(struct vcpu *vcpu, bool *retu) argument
1720 vm_handle_suspend(struct vcpu *vcpu, bool *retu) argument
1768 vm_run(struct vcpu *vcpu) argument
[all...]
/freebsd-current/sys/amd64/vmm/
H A Dvmm_lapic.h32 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 *vcp
53 lapic_intr_level(struct vcpu *vcpu, int vector) argument
60 lapic_intr_edge(struct vcpu *vcpu, int vector) argument
[all...]
H A Dvmm_ioport.h35 int vm_handle_inout(struct vcpu *vcpu, struct vm_exit *vme, bool *retu);
H A Dvmm.c96 * (a) allocated when vcpu is created
97 * (i) initialized when vcpu is created and when it is reinitialized
98 * (o) initialized the first time the vcpu is created
101 struct vcpu { struct
103 enum vcpu_state state; /* (o) vcpu state */
105 int hostcpu; /* (o) vcpu's host cpu */
106 int reqidle; /* (i) request vcpu to idle */
127 #define vcpu_lock_init(v) mtx_init(&((v)->mtx), "vcpu lock", 0, MTX_SPIN)
159 * [v] reads require one frozen vcpu, writes require freezing all vcpus
186 struct vcpu **vcp member in struct:vm
328 vcpu_cleanup(struct vcpu *vcpu, bool destroy) argument
344 struct vcpu *vcpu; local
362 vcpu_init(struct vcpu *vcpu) argument
378 vcpu_trace_exceptions(struct vcpu *vcpu) argument
385 vcpu_trap_wbinvd(struct vcpu *vcpu) argument
391 vm_exitinfo(struct vcpu *vcpu) argument
397 vm_exitinfo_cpuset(struct vcpu *vcpu) argument
533 struct vcpu *vcpu; local
783 vm_mem_allocated(struct vcpu *vcpu, vm_paddr_t gpa) argument
1191 vm_gpa_hold(struct vcpu *vcpu, vm_paddr_t gpa, size_t len, int reqprot, void **cookie) argument
1223 vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval) argument
1233 vm_set_register(struct vcpu *vcpu, int reg, uint64_t val) argument
1283 vm_get_seg_desc(struct vcpu *vcpu, int reg, struct seg_desc *desc) argument
1293 vm_set_seg_desc(struct vcpu *vcpu, int reg, struct seg_desc *desc) argument
1303 restore_guest_fpustate(struct vcpu *vcpu) argument
1325 save_guest_fpustate(struct vcpu *vcpu) argument
1346 vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, bool from_idle) argument
1418 vcpu_require_state(struct vcpu *vcpu, enum vcpu_state newstate) argument
1427 vcpu_require_state_locked(struct vcpu *vcpu, enum vcpu_state newstate) argument
1436 vm_handle_rendezvous(struct vcpu *vcpu) argument
1483 vm_handle_hlt(struct vcpu *vcpu, bool intr_disabled, bool *retu) argument
1583 vm_handle_paging(struct vcpu *vcpu, bool *retu) argument
1624 vm_handle_inst_emul(struct vcpu *vcpu, bool *retu) argument
1700 vm_handle_suspend(struct vcpu *vcpu, bool *retu) argument
1758 vm_handle_reqidle(struct vcpu *vcpu, bool *retu) argument
1769 vm_handle_db(struct vcpu *vcpu, struct vm_exit *vme, bool *retu) argument
1830 vm_exit_suspended(struct vcpu *vcpu, uint64_t rip) argument
1846 vm_exit_debug(struct vcpu *vcpu, uint64_t rip) argument
1857 vm_exit_rendezvous(struct vcpu *vcpu, uint64_t rip) argument
1869 vm_exit_reqidle(struct vcpu *vcpu, uint64_t rip) argument
1881 vm_exit_astpending(struct vcpu *vcpu, uint64_t rip) argument
1893 vm_run(struct vcpu *vcpu) argument
2001 vm_restart_instruction(struct vcpu *vcpu) argument
2037 vm_exit_intinfo(struct vcpu *vcpu, uint64_t info) argument
2113 nested_fault(struct vcpu *vcpu, uint64_t info1, uint64_t info2, uint64_t *retinfo) argument
2155 vcpu_exception_intinfo(struct vcpu *vcpu) argument
2171 vm_entry_intinfo(struct vcpu *vcpu, uint64_t *retinfo) argument
2208 vm_get_intinfo(struct vcpu *vcpu, uint64_t *info1, uint64_t *info2) argument
2216 vm_inject_exception(struct vcpu *vcpu, int vector, int errcode_valid, uint32_t errcode, int restart_instruction) argument
2271 vm_inject_fault(struct vcpu *vcpu, int vector, int errcode_valid, int errcode) argument
2283 vm_inject_pf(struct vcpu *vcpu, int error_code, uint64_t cr2) argument
2299 vm_inject_nmi(struct vcpu *vcpu) argument
2308 vm_nmi_pending(struct vcpu *vcpu) argument
2314 vm_nmi_clear(struct vcpu *vcpu) argument
2326 vm_inject_extint(struct vcpu *vcpu) argument
2335 vm_extint_pending(struct vcpu *vcpu) argument
2341 vm_extint_clear(struct vcpu *vcpu) argument
2351 vm_get_capability(struct vcpu *vcpu, int type, int *retval) argument
2360 vm_set_capability(struct vcpu *vcpu, int type, int val) argument
2369 vcpu_vm(struct vcpu *vcpu) argument
2375 vcpu_vcpuid(struct vcpu *vcpu) argument
2387 vm_lapic(struct vcpu *vcpu) argument
2456 vcpu_set_state(struct vcpu *vcpu, enum vcpu_state newstate, bool from_idle) argument
2468 vcpu_get_state(struct vcpu *vcpu, int *hostcpu) argument
2482 vm_activate_cpu(struct vcpu *vcpu) argument
2495 vm_suspend_cpu(struct vm *vm, struct vcpu *vcpu) argument
2514 vm_resume_cpu(struct vm *vm, struct vcpu *vcpu) argument
2529 vcpu_debugged(struct vcpu *vcpu) argument
2581 vcpu_stats(struct vcpu *vcpu) argument
2588 vm_get_x2apic_state(struct vcpu *vcpu, enum x2apic_state *state) argument
2596 vm_set_x2apic_state(struct vcpu *vcpu, enum x2apic_state state) argument
2616 vcpu_notify_event_locked(struct vcpu *vcpu, bool lapic_intr) argument
2647 vcpu_notify_event(struct vcpu *vcpu, bool lapic_intr) argument
2671 vm_smp_rendezvous(struct vcpu *vcpu, cpuset_t dest, vm_rendezvous_func_t func, void *arg) argument
2775 vm_copy_setup(struct vcpu *vcpu, struct vm_guest_paging *paging, uint64_t gla, size_t len, int prot, struct vm_copyinfo *copyinfo, int num_copyinfo, int *fault) argument
2860 vm_get_rescnt(struct vcpu *vcpu, struct vmm_stat_type *stat) argument
2870 vm_get_wiredcnt(struct vcpu *vcpu, struct vmm_stat_type *stat) argument
2888 struct vcpu *vcpu; local
2941 struct vcpu *vcpu; local
3009 vm_set_tsc_offset(struct vcpu *vcpu, uint64_t offset) argument
3019 struct vcpu *vcpu; local
[all...]
/freebsd-current/usr.sbin/bhyve/amd64/
H A Dxmsr.h33 int emulate_wrmsr(struct vcpu *vcpu, uint32_t code, uint64_t val);
34 int emulate_rdmsr(struct vcpu *vcpu, uint32_t code, uint64_t *val);
H A Dspinup_ap.h32 void spinup_ap(struct vcpu *newcpu, uint64_t rip);
/freebsd-current/sys/amd64/vmm/amd/
H A Dsvm_softc.h40 uint32_t rflags_tf; /* saved RFLAGS.TF value when single-stepping a vcpu */
52 struct vcpu *vcpu; member in struct:svm_vcpu
53 struct vmcb *vmcb; /* hardware saved vcpu context */
54 struct svm_regctx swctx; /* software saved vcpu context */
57 int lastcpu; /* host cpu that the vcpu last ran on */
59 long eptgen; /* pmap->pm_eptgen when the vcpu last ran */
77 #define SVM_CTR0(vcpu, format) \
78 VCPU_CTR0((vcpu)->sc->vm, (vcpu)
93 svm_get_vmcb(struct svm_vcpu *vcpu) argument
100 svm_get_vmcb_state(struct svm_vcpu *vcpu) argument
107 svm_get_vmcb_ctrl(struct svm_vcpu *vcpu) argument
114 svm_get_guest_regctx(struct svm_vcpu *vcpu) argument
121 svm_set_dirty(struct svm_vcpu *vcpu, uint32_t dirtybits) argument
[all...]
H A Dsvm_msr.h36 void svm_msr_guest_init(struct svm_softc *sc, struct svm_vcpu *vcpu);
37 void svm_msr_guest_enter(struct svm_vcpu *vcpu);
38 void svm_msr_guest_exit(struct svm_vcpu *vcpu);
40 int svm_wrmsr(struct svm_vcpu *vcpu, u_int num, uint64_t val, bool *retu);
41 int svm_rdmsr(struct svm_vcpu *vcpu, u_int num, uint64_t *result, bool *retu);
H A Dsvm.c288 svm_set_tsc_offset(struct svm_vcpu *vcpu, uint64_t offset) argument
292 ctrl = svm_get_vmcb_ctrl(vcpu);
295 svm_set_dirty(vcpu, VMCB_CACHE_I);
296 SVM_CTR1(vcpu, "tsc offset changed to %#lx", offset);
298 vm_set_tsc_offset(vcpu->vcpu, offset);
348 * Allow vcpu to read or write the 'msr' without trapping into the hypervisor.
384 svm_get_intercept(struct svm_vcpu *vcpu, int idx, uint32_t bitmask) argument
390 ctrl = svm_get_vmcb_ctrl(vcpu);
395 svm_set_intercept(struct svm_vcpu *vcpu, in argument
418 svm_disable_intercept(struct svm_vcpu *vcpu, int off, uint32_t bitmask) argument
425 svm_enable_intercept(struct svm_vcpu *vcpu, int off, uint32_t bitmask) argument
432 vmcb_init(struct svm_softc *sc, struct svm_vcpu *vcpu, uint64_t iopm_base_pa, uint64_t msrpm_base_pa, uint64_t np_pml4) argument
614 struct svm_vcpu *vcpu; local
723 svm_inout_str_seginfo(struct svm_vcpu *vcpu, int64_t info1, int in, struct vm_inout_str *vis) argument
777 svm_handle_io(struct svm_vcpu *vcpu, struct vm_exit *vmexit) argument
934 svm_eventinject(struct svm_vcpu *vcpu, int intr_type, int vector, uint32_t error, bool ec_valid) argument
973 svm_update_virqinfo(struct svm_vcpu *vcpu) argument
990 svm_save_intinfo(struct svm_softc *svm_sc, struct svm_vcpu *vcpu) argument
1014 vintr_intercept_enabled(struct svm_vcpu *vcpu) argument
1022 enable_intr_window_exiting(struct svm_vcpu *vcpu) argument
1044 disable_intr_window_exiting(struct svm_vcpu *vcpu) argument
1064 svm_modify_intr_shadow(struct svm_vcpu *vcpu, uint64_t val) argument
1080 svm_get_intr_shadow(struct svm_vcpu *vcpu, uint64_t *val) argument
1095 nmi_blocked(struct svm_vcpu *vcpu) argument
1104 enable_nmi_blocking(struct svm_vcpu *vcpu) argument
1113 clear_nmi_blocking(struct svm_vcpu *vcpu) argument
1143 svm_write_efer(struct svm_softc *sc, struct svm_vcpu *vcpu, uint64_t newval, bool *retu) argument
1212 emulate_wrmsr(struct svm_softc *sc, struct svm_vcpu *vcpu, u_int num, uint64_t val, bool *retu) argument
1228 emulate_rdmsr(struct svm_vcpu *vcpu, u_int num, bool *retu) argument
1325 svm_vmexit(struct svm_softc *svm_sc, struct svm_vcpu *vcpu, struct vm_exit *vmexit) argument
1697 svm_inj_intinfo(struct svm_softc *svm_sc, struct svm_vcpu *vcpu) argument
1719 svm_inj_interrupts(struct svm_softc *sc, struct svm_vcpu *vcpu, struct vlapic *vlapic) argument
1919 svm_pmap_activate(struct svm_vcpu *vcpu, pmap_t pmap) argument
2104 struct svm_vcpu *vcpu; local
2251 struct svm_vcpu *vcpu = vcpui; local
2316 struct svm_vcpu *vcpu; local
2343 struct svm_vcpu *vcpu; local
2425 struct svm_vcpu *vcpu; local
2511 struct svm_vcpu *vcpu; local
2565 struct svm_vcpu *vcpu; local
2594 struct svm_vcpu *vcpu; local
2797 struct svm_vcpu *vcpu = vcpui; local
[all...]
H A Dsvm_msr.c73 svm_msr_guest_init(struct svm_softc *sc, struct svm_vcpu *vcpu) argument
87 svm_msr_guest_enter(struct svm_vcpu *vcpu) argument
95 svm_msr_guest_exit(struct svm_vcpu *vcpu) argument
109 svm_rdmsr(struct svm_vcpu *vcpu, u_int num, uint64_t *result, bool *retu) argument
124 if (vm_rdmtrr(&vcpu->mtrr, num, result) != 0) {
125 vm_inject_gp(vcpu->vcpu);
142 svm_wrmsr(struct svm_vcpu *vcpu, u_int num, uint64_t val, bool *retu) argument
156 if (vm_wrmtrr(&vcpu->mtrr, num, val) != 0) {
157 vm_inject_gp(vcpu
[all...]
/freebsd-current/sys/arm64/vmm/io/
H A Dvtimer.h77 int vtimer_phys_ctl_read(struct vcpu *vcpu, uint64_t *rval, void *arg);
78 int vtimer_phys_ctl_write(struct vcpu *vcpu, uint64_t wval, void *arg);
79 int vtimer_phys_cnt_read(struct vcpu *vcpu, uint64_t *rval, void *arg);
80 int vtimer_phys_cnt_write(struct vcpu *vcpu, uint64_t wval, void *arg);
81 int vtimer_phys_cval_read(struct vcpu *vcpu, uint64_
[all...]
/freebsd-current/lib/libvmmapi/
H A Dvmmapi.h46 struct vcpu;
123 struct vcpu *vm_vcpu_open(struct vmctx *ctx, int vcpuid);
124 void vm_vcpu_close(struct vcpu *vcpu);
125 int vcpu_id(struct vcpu *vcpu);
133 int vm_gla2gpa(struct vcpu *vcpu, struct vm_guest_paging *paging,
136 int vm_gla2gpa_nofault(struct vcpu *vcpu,
[all...]
/freebsd-current/sys/amd64/include/
H A Dvmm_instruction_emul.h37 typedef int (*mem_region_read_t)(struct vcpu *vcpu, uint64_t gpa,
40 typedef int (*mem_region_write_t)(struct vcpu *vcpu, uint64_t gpa,
54 int vmm_emulate_instruction(struct vcpu *vcpu, uint64_t gpa, struct vie *vie,
58 int vie_update_register(struct vcpu *vcpu, enum vm_reg_name reg,
82 int vmm_fetch_instruction(struct vcpu *vcpu,
[all...]
H A Dvmm.h36 struct vcpu;
176 typedef void * (*vmi_vcpu_init_func_t)(void *vmi, struct vcpu *vcpu,
224 struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid);
254 * APIs that inspect the guest memory map require only a *single* vcpu to
263 void *vm_gpa_hold(struct vcpu *vcpu, vm_paddr_t gpa, size_t len,
268 bool vm_mem_allocated(struct vcpu *vcpu, vm_paddr_t gpa);
270 int vm_get_register(struct vcpu *vcp
333 vcpu_rendezvous_pending(struct vcpu *vcpu, struct vm_eventinfo *info) argument
382 vcpu_is_running(struct vcpu *vcpu, int *hostcpu) argument
389 vcpu_should_yield(struct vcpu *vcpu) argument
752 int vcpu; member in struct:vm_exit::__anon16::__anon24
783 vm_inject_ud(struct vcpu *vcpu) argument
789 vm_inject_gp(struct vcpu *vcpu) argument
795 vm_inject_ac(struct vcpu *vcpu, int errcode) argument
801 vm_inject_ss(struct vcpu *vcpu, int errcode) argument
[all...]
/freebsd-current/sys/arm64/include/
H A Dvmm_instruction_emul.h33 typedef int (*mem_region_read_t)(struct vcpu *vcpu, uint64_t gpa,
35 typedef int (*mem_region_write_t)(struct vcpu *vcpu, uint64_t gpa,
41 typedef int (*reg_read_t)(struct vcpu *vcpu, uint64_t *rval, void *arg);
42 typedef int (*reg_write_t)(struct vcpu *vcpu, uint64_t wval, void *arg);
55 int vmm_emulate_instruction(struct vcpu *vcpu, uint64_
[all...]
H A Dvmm.h38 struct vcpu;
129 struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid);
149 * APIs that inspect the guest memory map require only a *single* vcpu to
158 void *vm_gpa_hold(struct vcpu *vcpu, vm_paddr_t gpa, size_t len,
163 bool vm_mem_allocated(struct vcpu *vcpu, vm_paddr_t gpa);
165 int vm_gla2gpa_nofault(struct vcpu *vcpu, struct vm_guest_paging *paging,
173 int vm_get_register(struct vcpu *vcp
237 vcpu_is_running(struct vcpu *vcpu, int *hostcpu) argument
244 vcpu_should_yield(struct vcpu *vcpu) argument
[all...]
/freebsd-current/lib/libvmmapi/amd64/
H A Dvmmapi_freebsd_machdep.c66 * Setup the 'vcpu' register set such that it will begin execution at
70 vm_setup_freebsd_registers_i386(struct vcpu *vcpu, uint32_t eip, argument
80 error = vm_get_capability(vcpu, VM_CAP_UNRESTRICTED_GUEST, &tmp);
83 error = vm_set_capability(vcpu, VM_CAP_UNRESTRICTED_GUEST, 1);
88 if ((error = vm_set_register(vcpu, VM_REG_GUEST_CR0, cr0)) != 0)
91 if ((error = vm_set_register(vcpu, VM_REG_GUEST_CR4, 0)) != 0)
98 if ((error = vm_set_register(vcpu, VM_REG_GUEST_EFER, 0)))
101 gdt = vm_map_gpa(vcpu->ctx, gdtbase, 0x1000);
107 error = vm_set_desc(vcpu, VM_REG_GUEST_GDT
220 vm_setup_freebsd_registers(struct vcpu *vcpu, uint64_t rip, uint64_t cr3, uint64_t gdtbase, uint64_t rsp) argument
[all...]
/freebsd-current/usr.sbin/bhyvectl/
H A Dbhyvectl.h45 void bhyvectl_md_main(struct vmctx *ctx, struct vcpu *vcpu, int vcpuid,
50 void bhyvectl_dump_vm_run_exitcode(struct vm_exit *vmexit, int vcpu);
/freebsd-current/sys/amd64/vmm/io/
H A Dvhpet.h41 int vhpet_mmio_write(struct vcpu *vcpu, uint64_t gpa, uint64_t val,
43 int vhpet_mmio_read(struct vcpu *vcpu, uint64_t gpa, uint64_t *val,

Completed in 296 milliseconds

1234