| /freebsd-14-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 | 52 struct vcpu *vcpu; member 77 #define SVM_CTR0(vcpu, format) \ argument 78 VCPU_CTR0((vcpu)->sc->vm, (vcpu)->vcpuid, format) 80 #define SVM_CTR1(vcpu, format, p1) \ argument 81 VCPU_CTR1((vcpu)->sc->vm, (vcpu)->vcpuid, format, p1) 83 #define SVM_CTR2(vcpu, format, p1, p2) \ argument 84 VCPU_CTR2((vcpu)->sc->vm, (vcpu)->vcpuid, format, p1, p2) 86 #define SVM_CTR3(vcpu, format, p1, p2, p3) \ argument 87 VCPU_CTR3((vcpu)->sc->vm, (vcpu)->vcpuid, format, p1, p2, p3) 89 #define SVM_CTR4(vcpu, format, p1, p2, p3, p4) \ argument [all …]
|
| HD | vmcb.c | 118 vmcb_access(struct svm_vcpu *vcpu, int write, int ident, uint64_t *val) in vmcb_access() argument 124 vmcb = svm_get_vmcb(vcpu); in vmcb_access() 147 SVM_CTR1(vcpu, "Invalid size %d for VMCB access: %d", bytes); in vmcb_access() 153 svm_set_dirty(vcpu, 0xffffffff); in vmcb_access() 162 vmcb_read(struct svm_vcpu *vcpu, int ident, uint64_t *retval) in vmcb_read() argument 169 vmcb = svm_get_vmcb(vcpu); in vmcb_read() 174 return (vmcb_access(vcpu, 0, ident, retval)); in vmcb_read() 248 *retval = vlapic_get_cr8(vm_lapic(vcpu->vcpu)); in vmcb_read() 268 vmcb_write(struct svm_vcpu *vcpu, int ident, uint64_t val) in vmcb_write() argument 275 vmcb = svm_get_vmcb(vcpu); 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-14-stable/sys/amd64/vmm/ |
| HD | vmm.c | 101 struct vcpu { struct 186 struct vcpu **vcpu; /* (o) guest vcpus */ member 196 #define VMM_CTR0(vcpu, format) \ argument 197 VCPU_CTR0((vcpu)->vm, (vcpu)->vcpuid, format) 199 #define VMM_CTR1(vcpu, format, p1) \ argument 200 VCPU_CTR1((vcpu)->vm, (vcpu)->vcpuid, format, p1) 202 #define VMM_CTR2(vcpu, format, p1, p2) \ argument 203 VCPU_CTR2((vcpu)->vm, (vcpu)->vcpuid, format, p1, p2) 205 #define VMM_CTR3(vcpu, format, p1, p2, p3) \ argument 206 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_instruction_emul.c | 295 vie_read_register(struct vcpu *vcpu, enum vm_reg_name reg, uint64_t *rval) in vie_read_register() argument 299 error = vm_get_register(vcpu, reg, rval); in vie_read_register() 331 vie_read_bytereg(struct vcpu *vcpu, struct vie *vie, uint8_t *rval) in vie_read_bytereg() argument 338 error = vm_get_register(vcpu, reg, &val); in vie_read_bytereg() 352 vie_write_bytereg(struct vcpu *vcpu, struct vie *vie, uint8_t byte) in vie_write_bytereg() argument 359 error = vm_get_register(vcpu, reg, &origval); in vie_write_bytereg() 372 error = vm_set_register(vcpu, reg, val); in vie_write_bytereg() 378 vie_update_register(struct vcpu *vcpu, enum vm_reg_name reg, in vie_update_register() argument 387 error = vie_read_register(vcpu, reg, &origval); in vie_update_register() 402 error = vm_set_register(vcpu, reg, val); in vie_update_register() [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()
|
| /freebsd-14-stable/sys/amd64/include/ |
| HD | vmm.h | 36 struct vcpu; 178 typedef void * (*vmi_vcpu_init_func_t)(void *vmi, struct vcpu *vcpu, 226 struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid); 265 void *vm_gpa_hold(struct vcpu *vcpu, vm_paddr_t gpa, size_t len, 270 bool vm_mem_allocated(struct vcpu *vcpu, vm_paddr_t gpa); 272 int vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval); 273 int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); 274 int vm_get_seg_desc(struct vcpu *vcpu, int reg, 276 int vm_set_seg_desc(struct vcpu *vcpu, int reg, 278 int vm_run(struct vcpu *vcpu); [all …]
|
| HD | vmm_instruction_emul.h | 37 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, 95 int vm_gla2gpa(struct vcpu *vcpu, struct vm_guest_paging *paging, 102 int vm_gla2gpa_nofault(struct vcpu *vcpu, struct vm_guest_paging *paging, 122 int vmm_decode_instruction(struct vcpu *vcpu, uint64_t gla,
|
| /freebsd-14-stable/lib/libvmmapi/ |
| HD | vmmapi.h | 47 struct vcpu; 124 struct vcpu *vm_vcpu_open(struct vmctx *ctx, int vcpuid); 125 void vm_vcpu_close(struct vcpu *vcpu); 126 int vcpu_id(struct vcpu *vcpu); 133 int vm_gla2gpa(struct vcpu *vcpu, struct vm_guest_paging *paging, 135 int vm_gla2gpa_nofault(struct vcpu *vcpu, 145 int vm_set_desc(struct vcpu *vcpu, int reg, 147 int vm_get_desc(struct vcpu *vcpu, int reg, 149 int vm_get_seg_desc(struct vcpu *vcpu, int reg, struct seg_desc *seg_desc); 150 int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); [all …]
|
| HD | vmmapi_freebsd.c | 71 vm_setup_freebsd_registers_i386(struct vcpu *vcpu, uint32_t eip, in vm_setup_freebsd_registers_i386() argument 81 error = vm_get_capability(vcpu, VM_CAP_UNRESTRICTED_GUEST, &tmp); in vm_setup_freebsd_registers_i386() 84 error = vm_set_capability(vcpu, VM_CAP_UNRESTRICTED_GUEST, 1); in vm_setup_freebsd_registers_i386() 89 if ((error = vm_set_register(vcpu, VM_REG_GUEST_CR0, cr0)) != 0) in vm_setup_freebsd_registers_i386() 92 if ((error = vm_set_register(vcpu, VM_REG_GUEST_CR4, 0)) != 0) in vm_setup_freebsd_registers_i386() 99 if ((error = vm_set_register(vcpu, VM_REG_GUEST_EFER, 0))) in vm_setup_freebsd_registers_i386() 102 gdt = vm_map_gpa(vcpu->ctx, gdtbase, 0x1000); in vm_setup_freebsd_registers_i386() 108 error = vm_set_desc(vcpu, VM_REG_GUEST_GDTR, in vm_setup_freebsd_registers_i386() 118 error = vm_set_register(vcpu, VM_REG_GUEST_RFLAGS, rflags); in vm_setup_freebsd_registers_i386() 125 error = vm_set_desc(vcpu, VM_REG_GUEST_CS, in vm_setup_freebsd_registers_i386() [all …]
|
| HD | vmmapi.c | 160 struct vcpu * 163 struct vcpu *vcpu; in vm_vcpu_open() local 165 vcpu = malloc(sizeof(*vcpu)); in vm_vcpu_open() 166 vcpu->ctx = ctx; in vm_vcpu_open() 167 vcpu->vcpuid = vcpuid; in vm_vcpu_open() 168 return (vcpu); in vm_vcpu_open() 172 vm_vcpu_close(struct vcpu *vcpu) in vm_vcpu_close() argument 174 free(vcpu); in vm_vcpu_close() 178 vcpu_id(struct vcpu *vcpu) in vcpu_id() argument 180 return (vcpu->vcpuid); in vcpu_id() [all …]
|
| /freebsd-14-stable/usr.sbin/bhyve/amd64/ |
| HD | task_switch.c | 101 GETREG(struct vcpu *vcpu, int reg) in GETREG() argument 106 error = vm_get_register(vcpu, reg, &val); in GETREG() 112 SETREG(struct vcpu *vcpu, int reg, uint64_t val) in SETREG() argument 116 error = vm_set_register(vcpu, reg, val); in SETREG() 152 sel_exception(struct vcpu *vcpu, int vector, uint16_t sel, int ext) in sel_exception() argument 166 vm_inject_fault(vcpu, vector, 1, sel); in sel_exception() 174 desc_table_limit_check(struct vcpu *vcpu, uint16_t sel) in desc_table_limit_check() argument 181 error = vm_get_desc(vcpu, reg, &base, &limit, &access); in desc_table_limit_check() 204 desc_table_rw(struct vcpu *vcpu, struct vm_guest_paging *paging, in desc_table_rw() argument 214 error = vm_get_desc(vcpu, reg, &base, &limit, &access); in desc_table_rw() [all …]
|
| HD | vmexit.c | 60 vm_inject_fault(struct vcpu *vcpu, int vector, int errcode_valid, in vm_inject_fault() argument 67 error = vm_inject_exception(vcpu, vector, errcode_valid, errcode, in vm_inject_fault() 73 vmexit_inout(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) in vmexit_inout() argument 84 error = emulate_inout(ctx, vcpu, vme); in vmexit_inout() 97 vmexit_rdmsr(struct vmctx *ctx __unused, struct vcpu *vcpu, in vmexit_rdmsr() argument 108 error = emulate_rdmsr(vcpu, vme->u.msr.code, &val); in vmexit_rdmsr() 111 vme->u.msr.code, vcpu_id(vcpu)); in vmexit_rdmsr() 113 vm_inject_gp(vcpu); in vmexit_rdmsr() 119 error = vm_set_register(vcpu, VM_REG_GUEST_RAX, eax); in vmexit_rdmsr() 123 error = vm_set_register(vcpu, VM_REG_GUEST_RDX, edx); in vmexit_rdmsr() [all …]
|
| HD | bhyverun_machdep.c | 67 bhyve_init_vcpu(struct vcpu *vcpu) in bhyve_init_vcpu() argument 72 err = vm_get_capability(vcpu, VM_CAP_HALT_EXIT, &tmp); in bhyve_init_vcpu() 77 vm_set_capability(vcpu, VM_CAP_HALT_EXIT, 1); in bhyve_init_vcpu() 84 err = vm_get_capability(vcpu, VM_CAP_PAUSE_EXIT, &tmp); in bhyve_init_vcpu() 89 vm_set_capability(vcpu, VM_CAP_PAUSE_EXIT, 1); in bhyve_init_vcpu() 93 err = vm_set_x2apic_state(vcpu, X2APIC_ENABLED); in bhyve_init_vcpu() 95 err = vm_set_x2apic_state(vcpu, X2APIC_DISABLED); in bhyve_init_vcpu() 102 vm_set_capability(vcpu, VM_CAP_ENABLE_INVPCID, 1); in bhyve_init_vcpu() 104 err = vm_set_capability(vcpu, VM_CAP_IPI_EXIT, 1); in bhyve_init_vcpu() 109 bhyve_start_vcpu(struct vcpu *vcpu, bool bsp) in bhyve_start_vcpu() argument [all …]
|
| /freebsd-14-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 …]
|
| /freebsd-14-stable/usr.sbin/bhyvectl/ |
| HD | bhyvectl.c | 159 dump_vm_run_exitcode(struct vm_exit *vmexit, int vcpu) in dump_vm_run_exitcode() argument 161 printf("vm exit[%d]\n", vcpu); in dump_vm_run_exitcode() 243 print_msr_pm(uint64_t msr, int vcpu, int readable, int writeable) in print_msr_pm() argument 247 printf("%-20s[%d]\t\t%c%c\n", msr_name(msr), vcpu, in print_msr_pm() 256 dump_amd_msr_pm(const char *bitmap, int vcpu) in dump_amd_msr_pm() argument 268 print_msr_pm(msr, vcpu, readable, writeable); in dump_amd_msr_pm() 274 print_msr_pm(msr + MSR_AMD6TH_START, vcpu, readable, in dump_amd_msr_pm() 281 print_msr_pm(msr + MSR_AMD7TH_START, vcpu, readable, in dump_amd_msr_pm() 290 dump_intel_msr_pm(const char *bitmap, int vcpu) in dump_intel_msr_pm() argument 302 print_msr_pm(msr, vcpu, readable, writeable); in dump_intel_msr_pm() [all …]
|
| /freebsd-14-stable/usr.sbin/bhyve/ |
| HD | bhyverun.c | 109 static void vm_loop(struct vmctx *ctx, struct vcpu *vcpu); 113 struct vcpu *vcpu; member 285 int vcpu, pcpu; in pincpu_parse() local 287 if (sscanf(opt, "%d:%d", &vcpu, &pcpu) != 2) { in pincpu_parse() 292 if (vcpu < 0) { in pincpu_parse() 293 fprintf(stderr, "invalid vcpu '%d'\n", vcpu); in pincpu_parse() 303 snprintf(key, sizeof(key), "vcpu.%d.cpuset", vcpu); in pincpu_parse() 318 parse_cpuset(int vcpu, const char *list, cpuset_t *set) in parse_cpuset() argument 329 errx(4, "invalid cpuset for vcpu %d: '%s'", vcpu, list); in parse_cpuset() 351 vcpu, list); in parse_cpuset() [all …]
|
| HD | gdb.h | 31 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, struct vm_exit *vmexit);
|
| HD | mem.c | 142 typedef int (mem_cb_t)(struct vcpu *vcpu, uint64_t gpa, struct mem_range *mr, 146 mem_read(struct vcpu *vcpu, uint64_t gpa, uint64_t *rval, int size, void *arg) in mem_read() argument 151 error = (*mr->handler)(vcpu, MEM_F_READ, gpa, size, rval, mr->arg1, in mem_read() 157 mem_write(struct vcpu *vcpu, uint64_t gpa, uint64_t wval, int size, void *arg) in mem_write() argument 162 error = (*mr->handler)(vcpu, MEM_F_WRITE, gpa, size, &wval, mr->arg1, in mem_write() 168 access_memory(struct vcpu *vcpu, uint64_t paddr, mem_cb_t *cb, void *arg) in access_memory() argument 173 vcpuid = vcpu_id(vcpu); in access_memory() 215 err = cb(vcpu, paddr, &entry->mr_param, arg); in access_memory() 231 emulate_mem_cb(struct vcpu *vcpu, uint64_t paddr, struct mem_range *mr, in emulate_mem_cb() argument 237 return (vmm_emulate_instruction(vcpu, paddr, ema->vie, ema->paging, in emulate_mem_cb() [all …]
|
| HD | bhyverun.h | 40 struct vcpu; 49 struct vcpu; 50 struct vcpu *fbsdrun_vcpu(int vcpuid); 57 typedef int (*vmexit_handler_t)(struct vmctx *, struct vcpu *, struct vm_run *); 61 void bhyve_init_vcpu(struct vcpu *vcpu); 62 void bhyve_start_vcpu(struct vcpu *vcpu, bool bsp); 63 int bhyve_init_platform(struct vmctx *ctx, struct vcpu *bsp); 64 int bhyve_init_platform_late(struct vmctx *ctx, struct vcpu *bsp);
|