/freebsd-10.2-release/sys/amd64/vmm/ |
H A D | vmm_ioport.c | 64 inout_instruction(struct vm_exit *vmexit) argument 75 switch (vmexit->u.inout.bytes) { 87 if (vmexit->u.inout.in) 90 if (vmexit->u.inout.string) 101 emulate_inout_port(struct vm *vm, int vcpuid, struct vm_exit *vmexit, argument 111 if (vmexit->u.inout.port >= MAX_IOPORTS || 112 (handler = ioport_handler[vmexit->u.inout.port]) == NULL) { 117 mask = vie_size2mask(vmexit->u.inout.bytes); 119 if (!vmexit->u.inout.in) { 120 val = vmexit 149 emulate_inout_str(struct vm *vm, int vcpuid, struct vm_exit *vmexit, bool *retu) argument 156 vm_handle_inout(struct vm *vm, int vcpuid, struct vm_exit *vmexit, bool *retu) argument [all...] |
H A D | vmm.c | 1457 struct vm_exit *vmexit; local 1462 vmexit = vm_exitinfo(vm, vcpuid); 1463 vmexit->rip = rip; 1464 vmexit->inst_length = 0; 1465 vmexit->exitcode = VM_EXITCODE_SUSPENDED; 1466 vmexit->u.suspended.how = vm->suspend; 1472 struct vm_exit *vmexit; local 1476 vmexit = vm_exitinfo(vm, vcpuid); 1477 vmexit->rip = rip; 1478 vmexit 1486 struct vm_exit *vmexit; local 1498 struct vm_exit *vmexit; local [all...] |
/freebsd-10.2-release/cddl/contrib/opensolaris/cmd/dtrace/test/tst/i86xpv/xdt/ |
H A D | tst.hvmenable.ksh | 56 xdt:hvm::vmexit
|
/freebsd-10.2-release/usr.sbin/bhyve/ |
H A D | bhyverun.c | 99 static struct vm_exit vmexit[VM_MAXCPU]; variable in typeref:struct:vm_exit 134 " -H: vmexit from the guest on hlt\n" 138 " -P: vmexit from the guest on pause\n" 240 vm_loop(mtp->mt_ctx, vcpu, vmexit[vcpu].rip); 266 * Set up the vmexit struct to allow execution to start 269 vmexit[newcpu].rip = rip; 270 vmexit[newcpu].inst_length = 0; 331 port, vmexit->rip); 407 vmexit_vmx(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 412 fprintf(stderr, "\trip\t\t0x%016lx\n", vmexit 439 vmexit_svm(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 453 vmexit_bogus(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 464 vmexit_reqidle(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 475 vmexit_hlt(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 489 vmexit_pause(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 498 vmexit_mtrap(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 509 vmexit_inst_emul(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 542 vmexit_suspend(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument [all...] |
H A D | inout.c | 104 emulate_inout(struct vmctx *ctx, int vcpu, struct vm_exit *vmexit, int strict) argument 116 bytes = vmexit->u.inout.bytes; 117 in = vmexit->u.inout.in; 118 port = vmexit->u.inout.port; 140 if (vmexit->u.inout.string) { 141 vis = &vmexit->u.inout_str; 222 eax = vmexit->u.inout.eax;
|
H A D | inout.h | 73 int emulate_inout(struct vmctx *, int vcpu, struct vm_exit *vmexit,
|
H A D | task_switch.c | 704 vmexit_task_switch(struct vmctx *ctx, struct vm_exit *vmexit, int *pvcpu) argument 718 task_switch = &vmexit->u.task_switch; 720 ext = vmexit->u.task_switch.ext; 721 reason = vmexit->u.task_switch.reason; 722 paging = &vmexit->u.task_switch.paging; 730 eip = vmexit->rip + vmexit->inst_length;
|
/freebsd-10.2-release/sys/amd64/vmm/amd/ |
H A D | svm.c | 718 svm_handle_io(struct svm_softc *svm_sc, int vcpu, struct vm_exit *vmexit) argument 744 vmexit->exitcode = VM_EXITCODE_INOUT; 745 vmexit->u.inout.in = (info1 & BIT(0)) ? 1 : 0; 746 vmexit->u.inout.string = inout_string; 747 vmexit->u.inout.rep = (info1 & BIT(3)) ? 1 : 0; 748 vmexit->u.inout.bytes = (info1 >> 4) & 0x7; 749 vmexit->u.inout.port = (uint16_t)(info1 >> 16); 750 vmexit->u.inout.eax = (uint32_t)(state->rax); 753 vmexit->exitcode = VM_EXITCODE_INOUT_STR; 754 vis = &vmexit 800 svm_handle_inst_emul(struct vmcb *vmcb, uint64_t gpa, struct vm_exit *vmexit) argument 1281 svm_vmexit(struct svm_softc *svm_sc, int vcpu, struct vm_exit *vmexit) argument 1915 struct vm_exit *vmexit; local [all...] |
/freebsd-10.2-release/sys/amd64/vmm/intel/ |
H A D | vmx.c | 990 VCPU_CTR3(vmx->vm, vcpu, "%s %s vmexit at 0x%0lx", 1000 VCPU_CTR1(vmx->vm, vcpu, "astpending vmexit at 0x%0lx", rip); 1412 vmx_emulate_xsetbv(struct vmx *vmx, int vcpu, struct vm_exit *vmexit) argument 1793 vmexit_inst_emul(struct vm_exit *vmexit, uint64_t gpa, uint64_t gla) argument 1798 paging = &vmexit->u.inst_emul.paging; 1800 vmexit->exitcode = VM_EXITCODE_INST_EMUL; 1801 vmexit->inst_length = 0; 1802 vmexit->u.inst_emul.gpa = gpa; 1803 vmexit->u.inst_emul.gla = gla; 1807 vmexit 1965 vmx_handle_apic_access(struct vmx *vmx, int vcpuid, struct vm_exit *vmexit) argument 2091 vmx_exit_process(struct vmx *vmx, int vcpu, struct vm_exit *vmexit) argument 2518 vmx_exit_inst_error(struct vmxctx *vmxctx, int rc, struct vm_exit *vmexit) argument 2552 vmx_exit_handle_nmi(struct vmx *vmx, int vcpuid, struct vm_exit *vmexit) argument 2582 struct vm_exit *vmexit; local [all...] |
/freebsd-10.2-release/usr.sbin/bhyvectl/ |
H A D | bhyvectl.c | 304 dump_vm_run_exitcode(struct vm_exit *vmexit, int vcpu) argument 307 printf("\trip\t\t0x%016lx\n", vmexit->rip); 308 printf("\tinst_length\t%d\n", vmexit->inst_length); 309 switch (vmexit->exitcode) { 312 printf("\tdirection\t%s\n", vmexit->u.inout.in ? "IN" : "OUT"); 313 printf("\tbytes\t\t%d\n", vmexit->u.inout.bytes); 315 vmexit->u.inout.string ? "STRING " : "", 316 vmexit->u.inout.rep ? "REP " : ""); 317 printf("\tport\t\t0x%04x\n", vmexit->u.inout.port); 318 printf("\teax\t\t0x%08x\n", vmexit 1530 struct vm_exit vmexit; local [all...] |
/freebsd-10.2-release/sys/amd64/vmm/io/ |
H A D | vlapic.c | 965 struct vm_exit *vmexit; local 1057 vmexit = vm_exitinfo(vlapic->vm, vlapic->vcpuid); 1058 vmexit->exitcode = VM_EXITCODE_SPINUP_AP; 1059 vmexit->u.spinup_ap.vcpu = dest; 1060 vmexit->u.spinup_ap.rip = vec << PAGE_SHIFT;
|
/freebsd-10.2-release/lib/libvmmapi/ |
H A D | vmmapi.c | 374 vm_run(struct vmctx *ctx, int vcpu, struct vm_exit *vmexit) argument 383 bcopy(&vmrun.vm_exit, vmexit, sizeof(struct vm_exit));
|