Lines Matching full:vcpu
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()
110 EPRINTLN("rdmsr to register %#x on vcpu %d", 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()
130 vmexit_wrmsr(struct vmctx *ctx __unused, struct vcpu *vcpu, in vmexit_wrmsr() argument
138 error = emulate_wrmsr(vcpu, vme->u.msr.code, vme->u.msr.wval); in vmexit_wrmsr()
140 EPRINTLN("wrmsr to register %#x(%#lx) on vcpu %d", in vmexit_wrmsr()
141 vme->u.msr.code, vme->u.msr.wval, vcpu_id(vcpu)); in vmexit_wrmsr()
143 vm_inject_gp(vcpu); in vmexit_wrmsr()
236 vmexit_vmx(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) in vmexit_vmx() argument
242 EPRINTLN("vm exit[%d]", vcpu_id(vcpu)); in vmexit_vmx()
255 vm_get_register(vcpu, in vmexit_vmx()
272 vmexit_svm(struct vmctx *ctx __unused, struct vcpu *vcpu, struct vm_run *vmrun) in vmexit_svm() argument
278 EPRINTLN("vm exit[%d]", vcpu_id(vcpu)); in vmexit_svm()
289 vmexit_bogus(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, in vmexit_bogus()
298 vmexit_reqidle(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, in vmexit_reqidle()
307 vmexit_hlt(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, in vmexit_hlt()
319 vmexit_pause(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, in vmexit_pause()
326 vmexit_mtrap(struct vmctx *ctx __unused, struct vcpu *vcpu, in vmexit_mtrap() argument
332 checkpoint_cpu_suspend(vcpu_id(vcpu)); in vmexit_mtrap()
334 gdb_cpu_mtrap(vcpu); in vmexit_mtrap()
336 checkpoint_cpu_resume(vcpu_id(vcpu)); in vmexit_mtrap()
343 vmexit_inst_emul(struct vmctx *ctx __unused, struct vcpu *vcpu, in vmexit_inst_emul() argument
366 if (vm_set_register(vcpu, VM_REG_GUEST_RIP, in vmexit_inst_emul()
371 err = emulate_mem(vcpu, vme->u.inst_emul.gpa, vie, in vmexit_inst_emul()
392 vmexit_suspend(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) in vmexit_suspend() argument
396 int vcpuid = vcpu_id(vcpu); in vmexit_suspend()
423 vmexit_debug(struct vmctx *ctx __unused, struct vcpu *vcpu, in vmexit_debug() argument
428 checkpoint_cpu_suspend(vcpu_id(vcpu)); in vmexit_debug()
430 gdb_cpu_suspend(vcpu); in vmexit_debug()
432 checkpoint_cpu_resume(vcpu_id(vcpu)); in vmexit_debug()
436 * window between activation of the vCPU thread and the STARTUP IPI. in vmexit_debug()
443 vmexit_db(struct vmctx *ctx __unused, struct vcpu *vcpu, struct vm_run *vmrun) in vmexit_db() argument
447 checkpoint_cpu_suspend(vcpu_id(vcpu)); in vmexit_db()
449 gdb_cpu_debug(vcpu, vmrun->vm_exit); in vmexit_db()
451 checkpoint_cpu_resume(vcpu_id(vcpu)); in vmexit_db()
457 vmexit_breakpoint(struct vmctx *ctx __unused, struct vcpu *vcpu, in vmexit_breakpoint() argument
460 gdb_cpu_breakpoint(vcpu, vmrun->vm_exit); in vmexit_breakpoint()
465 vmexit_ipi(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, in vmexit_ipi()
500 int vmexit_task_switch(struct vmctx *, struct vcpu *, struct vm_run *);