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

123

/freebsd-10.0-release/usr.sbin/bhyve/
H A Dspinup_ap.h32 int spinup_ap(struct vmctx *ctx, int vcpu, int newcpu, uint64_t rip);
H A Dxmsr.h32 int emulate_wrmsr(struct vmctx *ctx, int vcpu, uint32_t code, uint64_t val);
H A Dxmsr.c43 emulate_wrmsr(struct vmctx *ctx, int vcpu, uint32_t code, uint64_t val) argument
46 printf("Unknown WRMSR code %x, val %lx, cpu %d\n", code, val, vcpu);
H A Dbhyverun.c70 #define VMEXIT_SWITCH 0 /* force vcpu switch in mux mode */
79 typedef int (*vmexit_handler_t)(struct vmctx *, struct vm_exit *, int *vcpu);
100 static void vm_loop(struct vmctx *ctx, int vcpu, uint64_t rip);
133 " -p: pin vcpu 'n' to host cpu 'pincpu + n'\n"
188 int vcpu; local
191 vcpu = mtp->mt_vcpu;
193 snprintf(tname, sizeof(tname), "vcpu %d", vcpu);
196 vm_loop(mtp->mt_ctx, vcpu, vmexit[vcpu]
204 fbsdrun_addcpu(struct vmctx *ctx, int vcpu, uint64_t rip) argument
263 int vcpu; local
424 vm_loop(struct vmctx *ctx, int vcpu, uint64_t rip) argument
[all...]
H A Dmem.h36 typedef int (*mem_func_t)(struct vmctx *ctx, int vcpu, int dir, uint64_t addr,
53 int emulate_mem(struct vmctx *, int vcpu, uint64_t paddr, struct vie *vie);
H A Dpost.c39 post_data_handler(struct vmctx *ctx, int vcpu, int in, int port, int bytes, argument
H A Dinout.h36 typedef int (*inout_func_t)(struct vmctx *ctx, int vcpu, int in, int port,
69 int emulate_inout(struct vmctx *, int vcpu, int in, int port, int bytes,
H A Dmem.c137 mem_read(void *ctx, int vcpu, uint64_t gpa, uint64_t *rval, int size, void *arg) argument
142 error = (*mr->handler)(ctx, vcpu, MEM_F_READ, gpa, size,
148 mem_write(void *ctx, int vcpu, uint64_t gpa, uint64_t wval, int size, void *arg) argument
153 error = (*mr->handler)(ctx, vcpu, MEM_F_WRITE, gpa, size,
159 emulate_mem(struct vmctx *ctx, int vcpu, uint64_t paddr, struct vie *vie) argument
168 if (mmio_hint[vcpu] &&
169 paddr >= mmio_hint[vcpu]->mr_base &&
170 paddr <= mmio_hint[vcpu]->mr_end) {
171 entry = mmio_hint[vcpu];
178 mmio_hint[vcpu]
[all...]
H A Delcr.c47 elcr_handler(struct vmctx *ctx, int vcpu, int in, int port, int bytes, argument
H A Dioapic.c82 static int ioapic_region_handler(struct vmctx *vm, int vcpu, int dir,
88 int vector, apicid, vcpu; local
121 vcpu = vm_apicid2vcpu(ctx, apicid);
122 vm_lapic_irq(ctx, vcpu, vector);
125 vcpu = 0;
126 while (vcpu < guest_ncpus) {
127 vm_lapic_irq(ctx, vcpu, vector);
128 vcpu++;
359 ioapic_region_handler(struct vmctx *vm, int vcpu, int dir, uintptr_t paddr, argument
/freebsd-10.0-release/usr.sbin/bhyvectl/
H A Dbhyvectl.c255 dump_vm_run_exitcode(struct vm_exit *vmexit, int vcpu) argument
257 printf("vm exit[%d]\n", vcpu);
286 dump_vmcs_msr_bitmap(int vcpu, u_long addr) argument
311 printf("msr 0x%08x[%d]\t\t%c%c\n", msr, vcpu,
322 0xc0000000 + msr, vcpu,
338 vm_get_vmcs_field(struct vmctx *ctx, int vcpu, int field, uint64_t *ret_val) argument
341 return (vm_get_register(ctx, vcpu, VMCS_IDENT(field), ret_val));
345 vm_set_vmcs_field(struct vmctx *ctx, int vcpu, int field, uint64_t val) argument
348 return (vm_set_register(ctx, vcpu, VMCS_IDENT(field), val));
388 int error, ch, vcpu, ptenu local
[all...]
/freebsd-10.0-release/lib/libvmmapi/
H A Dvmmapi_freebsd.c56 * Setup the 'vcpu' register set such that it will begin execution at
60 vm_setup_freebsd_registers(struct vmctx *vmctx, int vcpu, argument
70 if ((error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_CR0, cr0)) != 0)
74 if ((error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_CR4, cr4)) != 0)
78 if ((error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_EFER, efer)))
82 error = vm_set_register(vmctx, vcpu, VM_REG_GUEST_RFLAGS, rflags);
89 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_CS,
95 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_DS,
100 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_ES,
105 error = vm_set_desc(vmctx, vcpu, VM_REG_GUEST_F
[all...]
H A Dvmmapi.h56 int vm_set_desc(struct vmctx *ctx, int vcpu, int reg,
58 int vm_get_desc(struct vmctx *ctx, int vcpu, int reg,
60 int vm_set_register(struct vmctx *ctx, int vcpu, int reg, uint64_t val);
61 int vm_get_register(struct vmctx *ctx, int vcpu, int reg, uint64_t *retval);
62 int vm_run(struct vmctx *ctx, int vcpu, uint64_t rip,
65 int vm_inject_event(struct vmctx *ctx, int vcpu, enum vm_event_type type,
67 int vm_inject_event2(struct vmctx *ctx, int vcpu, enum vm_event_type type,
69 int vm_lapic_irq(struct vmctx *ctx, int vcpu, int vector);
70 int vm_inject_nmi(struct vmctx *ctx, int vcpu);
73 int vm_get_capability(struct vmctx *ctx, int vcpu, enu
[all...]
H A Dvmmapi.c263 vm_set_desc(struct vmctx *ctx, int vcpu, int reg, argument
270 vmsegdesc.cpuid = vcpu;
281 vm_get_desc(struct vmctx *ctx, int vcpu, int reg, argument
288 vmsegdesc.cpuid = vcpu;
301 vm_set_register(struct vmctx *ctx, int vcpu, int reg, uint64_t val) argument
307 vmreg.cpuid = vcpu;
316 vm_get_register(struct vmctx *ctx, int vcpu, int reg, uint64_t *ret_val) argument
322 vmreg.cpuid = vcpu;
331 vm_run(struct vmctx *ctx, int vcpu, uint64_t rip, struct vm_exit *vmexit) argument
337 vmrun.cpuid = vcpu;
346 vm_inject_event_real(struct vmctx *ctx, int vcpu, enum vm_event_type type, int vector, int error_code, int error_code_valid) argument
362 vm_inject_event(struct vmctx *ctx, int vcpu, enum vm_event_type type, int vector) argument
370 vm_inject_event2(struct vmctx *ctx, int vcpu, enum vm_event_type type, int vector, int error_code) argument
388 vm_lapic_irq(struct vmctx *ctx, int vcpu, int vector) argument
400 vm_inject_nmi(struct vmctx *ctx, int vcpu) argument
449 vm_get_capability(struct vmctx *ctx, int vcpu, enum vm_cap_type cap, int *retval) argument
465 vm_set_capability(struct vmctx *ctx, int vcpu, enum vm_cap_type cap, int val) argument
521 vm_setup_msi(struct vmctx *ctx, int vcpu, int bus, int slot, int func, int destcpu, int vector, int numvec) argument
539 vm_setup_msix(struct vmctx *ctx, int vcpu, int bus, int slot, int func, int idx, uint32_t msg, uint32_t vector_control, uint64_t addr) argument
558 vm_get_stats(struct vmctx *ctx, int vcpu, struct timeval *ret_tv, int *ret_entries) argument
591 vm_get_x2apic_state(struct vmctx *ctx, int vcpu, enum x2apic_state *state) argument
605 vm_set_x2apic_state(struct vmctx *ctx, int vcpu, enum x2apic_state state) argument
624 vcpu_reset(struct vmctx *vmctx, int vcpu) argument
[all...]
/freebsd-10.0-release/sys/amd64/vmm/
H A Dvmm.c79 struct vcpu { struct
83 int hostcpu; /* host cpuid this vcpu last ran on */
94 #define vcpu_lock_init(v) mtx_init(&((v)->mtx), "vcpu lock", 0, MTX_SPIN)
111 struct vcpu vcpu[VM_MAXCPU]; member in struct:vm
118 * An active vcpu is one that has been started implicitly (BSP) or
131 #define VMRUN(vmi, vcpu, rip, pmap) \
132 (ops != NULL ? (*ops->vmrun)(vmi, vcpu, rip, pmap) : ENXIO)
138 #define VMGETREG(vmi, vcpu, num, retval) \
139 (ops != NULL ? (*ops->vmgetreg)(vmi, vcpu, nu
163 vcpu_cleanup(struct vcpu *vcpu) argument
173 struct vcpu *vcpu; local
190 struct vcpu *vcpu; local
679 vm_get_register(struct vm *vm, int vcpu, int reg, uint64_t *retval) argument
692 vm_set_register(struct vm *vm, int vcpu, int reg, uint64_t val) argument
737 vm_get_seg_desc(struct vm *vm, int vcpu, int reg, struct seg_desc *desc) argument
751 vm_set_seg_desc(struct vm *vm, int vcpu, int reg, struct seg_desc *desc) argument
764 restore_guest_fpustate(struct vcpu *vcpu) argument
782 save_guest_fpustate(struct vcpu *vcpu) argument
797 vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate) argument
841 vcpu_require_state_locked(struct vcpu *vcpu, enum vcpu_state newstate) argument
855 struct vcpu *vcpu; local
901 struct vcpu *vcpu; local
938 struct vcpu *vcpu; local
983 struct vcpu *vcpu; local
1075 struct vcpu *vcpu; local
1090 struct vcpu *vcpu; local
1103 struct vcpu *vcpu; local
1118 vm_get_capability(struct vm *vm, int vcpu, int type, int *retval) argument
1130 vm_set_capability(struct vm *vm, int vcpu, int type, int val) argument
1206 struct vcpu *vcpu; local
1223 struct vcpu *vcpu; local
1293 struct vcpu *vcpu; local
[all...]
H A Dvmm_msr.h36 int emulate_wrmsr(struct vm *vm, int vcpu, u_int msr, uint64_t val);
37 int emulate_rdmsr(struct vm *vm, int vcpu, u_int msr);
H A Dvmm_stat.h79 int vmm_stat_copy(struct vm *vm, int vcpu, int *num_stats, uint64_t *buf);
83 vmm_stat_array_incr(struct vm *vm, int vcpu, struct vmm_stat_type *vst, argument
89 stats = vcpu_stats(vm, vcpu);
98 vmm_stat_incr(struct vm *vm, int vcpu, struct vmm_stat_type *vst, uint64_t x) argument
102 vmm_stat_array_incr(vm, vcpu, vst, 0, x);
H A Dvmm_dev.c146 int error, vcpu, state_changed; local
169 vcpu = -1;
189 * Assumes that the first field of the ioctl data is the vcpu.
191 vcpu = *(int *)data;
192 if (vcpu < 0 || vcpu >= VM_MAXCPU) {
197 error = vcpu_set_state(sc->vm, vcpu, VCPU_FROZEN);
213 for (vcpu = 0; vcpu < VM_MAXCPU; vcpu
[all...]
H A Dvmm_stat.c82 vmm_stat_copy(struct vm *vm, int vcpu, int *num_stats, uint64_t *buf) argument
87 if (vcpu < 0 || vcpu >= VM_MAXCPU)
90 stats = vcpu_stats(vm, vcpu);
136 VMM_STAT(VCPU_MIGRATIONS, "vcpu migration across host cpus");
/freebsd-10.0-release/sys/amd64/include/
H A Dvmm.h51 typedef int (*vmi_run_func_t)(void *vmi, int vcpu, register_t rip,
54 typedef int (*vmi_get_register_t)(void *vmi, int vcpu, int num,
56 typedef int (*vmi_set_register_t)(void *vmi, int vcpu, int num,
58 typedef int (*vmi_get_desc_t)(void *vmi, int vcpu, int num,
60 typedef int (*vmi_set_desc_t)(void *vmi, int vcpu, int num,
62 typedef int (*vmi_inject_event_t)(void *vmi, int vcpu,
65 typedef int (*vmi_get_cap_t)(void *vmi, int vcpu, int num, int *retval);
66 typedef int (*vmi_set_cap_t)(void *vmi, int vcpu, int num, int val);
105 int vm_get_register(struct vm *vm, int vcpu, int reg, uint64_t *retval);
106 int vm_set_register(struct vm *vm, int vcpu, in
148 vcpu_is_running(struct vm *vm, int vcpu, int *hostcpu) argument
303 int vcpu; member in struct:vm_exit::__anon5868::__anon5874
[all...]
/freebsd-10.0-release/sys/amd64/vmm/intel/
H A Dvmx.c311 #define SETJMP_TRACE(vmx, vcpu, vmxctx, regname) \
312 VMM_CTR1((vmx)->vm, (vcpu), "setjmp trace " #regname " 0x%016lx", \
316 vmx_setjmp_trace(struct vmx *vmx, int vcpu, struct vmxctx *vmxctx, int rc) argument
320 if (vmxctx != &vmx->ctx[vcpu])
322 vmxctx, &vmx->ctx[vcpu]);
324 VMM_CTR1((vmx)->vm, (vcpu), "vmxctx = %p", vmxctx);
325 VMM_CTR2((vmx)->vm, (vcpu), "setjmp return code %s(%d)",
331 VMM_CTR2((vmx)->vm, (vcpu), "vmcs host_rip 0x%016lx, host_rsp 0x%016lx",
334 SETJMP_TRACE(vmx, vcpu, vmxctx, host_r15);
335 SETJMP_TRACE(vmx, vcpu, vmxct
363 vmx_setjmp_trace(struct vmx *vmx, int vcpu, struct vmxctx *vmxctx, int rc) argument
872 vmx_handle_cpuid(struct vm *vm, int vcpu, struct vmxctx *vmxctx) argument
887 vmx_run_trace(struct vmx *vmx, int vcpu) argument
895 vmx_exit_trace(struct vmx *vmx, int vcpu, uint64_t rip, uint32_t exit_reason, int handled) argument
906 vmx_astpending_trace(struct vmx *vmx, int vcpu, uint64_t rip) argument
914 vmx_set_pcpu_defaults(struct vmx *vmx, int vcpu) argument
982 vmx_set_int_window_exiting(struct vmx *vmx, int vcpu) argument
994 vmx_clear_int_window_exiting(struct vmx *vmx, int vcpu) argument
1006 vmx_set_nmi_window_exiting(struct vmx *vmx, int vcpu) argument
1018 vmx_clear_nmi_window_exiting(struct vmx *vmx, int vcpu) argument
1030 vmx_inject_nmi(struct vmx *vmx, int vcpu) argument
1076 vmx_inject_interrupts(struct vmx *vmx, int vcpu) argument
1152 vmx_emulate_cr_access(struct vmx *vmx, int vcpu, uint64_t exitqual) argument
1349 vmx_exit_process(struct vmx *vmx, int vcpu, struct vm_exit *vmexit) argument
1535 vmx_run(void *arg, int vcpu, register_t rip, pmap_t pmap) argument
1792 vmx_getreg(void *arg, int vcpu, int reg, uint64_t *retval) argument
1808 vmx_setreg(void *arg, int vcpu, int reg, uint64_t val) argument
1855 vmx_getdesc(void *arg, int vcpu, int reg, struct seg_desc *desc) argument
1863 vmx_setdesc(void *arg, int vcpu, int reg, struct seg_desc *desc) argument
1871 vmx_inject(void *arg, int vcpu, int type, int vector, uint32_t code, int code_valid) argument
1915 vmx_getcap(void *arg, int vcpu, int type, int *retval) argument
1957 vmx_setcap(void *arg, int vcpu, int type, int val) argument
[all...]
/freebsd-10.0-release/sys/amd64/vmm/amd/
H A Damdv.c65 amdv_vmrun(void *arg, int vcpu, register_t rip, struct pmap *pmap) argument
81 amdv_getreg(void *arg, int vcpu, int regnum, uint64_t *retval) argument
89 amdv_setreg(void *arg, int vcpu, int regnum, uint64_t val) argument
97 amdv_getdesc(void *vmi, int vcpu, int num, struct seg_desc *desc) argument
105 amdv_setdesc(void *vmi, int vcpu, int num, struct seg_desc *desc) argument
113 amdv_inject_event(void *vmi, int vcpu, int type, int vector, argument
122 amdv_getcap(void *arg, int vcpu, int type, int *retval) argument
130 amdv_setcap(void *arg, int vcpu, int type, int val) argument
/freebsd-10.0-release/sys/amd64/vmm/io/
H A Dppt.h35 int ppt_setup_msi(struct vm *vm, int vcpu, int bus, int slot, int func,
37 int ppt_setup_msix(struct vm *vm, int vcpu, int bus, int slot, int func,
/freebsd-10.0-release/sys/xen/interface/
H A Devent_channel.h118 * vcpu.
120 * 1. Virtual IRQs are classified as per-vcpu or global. See the VIRQ list
124 * 3. Per-vcpu VIRQs may be bound to at most one event channel per vcpu.
125 * The allocated event channel is bound to the specified vcpu and the
131 uint32_t vcpu; member in struct:evtchn_bind_virq
156 * 1. The allocated event channel is bound to the specified vcpu. The binding
160 uint32_t vcpu; member in struct:evtchn_bind_ipi
207 uint32_t vcpu; /* VCPU to which this channel is bound. */ member in struct:evtchn_status
223 * EVTCHNOP_bind_vcpu: Specify which vcpu
237 uint32_t vcpu; member in struct:evtchn_bind_vcpu
[all...]
/freebsd-10.0-release/lib/libkse/thread/
H A Dthr_concurrency.c165 int vcpu; local
169 len = sizeof(vcpu);
170 ret = sysctlbyname("kern.threads.virtual_cpu", &vcpu, &len, NULL, 0);
171 if (ret == 0 && vcpu > 0)
172 ret = _thr_setconcurrency(vcpu);

Completed in 140 milliseconds

123