Lines Matching refs:vcpu
120 static void vm_loop(struct vmctx *ctx, struct vcpu *vcpu);
124 struct vcpu *vcpu; member
255 int vcpu, pcpu; in bhyve_pincpu_parse() local
260 if (sscanf(opt, "%d:%d", &vcpu, &pcpu) != 2) { in bhyve_pincpu_parse()
265 if (vcpu < 0) { in bhyve_pincpu_parse()
266 fprintf(stderr, "invalid vcpu '%d'\n", vcpu); in bhyve_pincpu_parse()
276 snprintf(key, sizeof(key), "vcpu.%d.cpuset", vcpu); in bhyve_pincpu_parse()
291 parse_cpuset(int vcpu, const char *list, cpuset_t *set) in parse_cpuset() argument
302 errx(4, "invalid cpuset for vcpu %d: '%s'", vcpu, list); in parse_cpuset()
324 vcpu, list); in parse_cpuset()
328 errx(4, "invalid cpuset for vcpu %d: '%s'", vcpu, list); in parse_cpuset()
341 int vcpu; in build_vcpumaps() local
344 for (vcpu = 0; vcpu < guest_ncpus; vcpu++) { in build_vcpumaps()
345 snprintf(key, sizeof(key), "vcpu.%d.cpuset", vcpu); in build_vcpumaps()
349 vcpumap[vcpu] = malloc(sizeof(cpuset_t)); in build_vcpumaps()
350 if (vcpumap[vcpu] == NULL) in build_vcpumaps()
351 err(4, "Failed to allocate cpuset for vcpu %d", vcpu); in build_vcpumaps()
352 parse_cpuset(vcpu, value, vcpumap[vcpu]); in build_vcpumaps()
371 struct vcpu *
374 return (vcpu_info[vcpuid].vcpu); in fbsdrun_vcpu()
397 gdb_cpu_add(vi->vcpu); in fbsdrun_start_thread()
399 vm_loop(vi->ctx, vi->vcpu); in fbsdrun_start_thread()
415 error = vm_activate_cpu(vi->vcpu); in fbsdrun_addcpu()
422 error = vm_suspend_cpu(vi->vcpu); in fbsdrun_addcpu()
431 fbsdrun_deletecpu(int vcpu) in fbsdrun_deletecpu() argument
437 if (!CPU_ISSET(vcpu, &cpumask)) { in fbsdrun_deletecpu()
438 EPRINTLN("Attempting to delete unknown cpu %d", vcpu); in fbsdrun_deletecpu()
442 CPU_CLR(vcpu, &cpumask); in fbsdrun_deletecpu()
444 if (vcpu != BSP) { in fbsdrun_deletecpu()
458 vm_loop(struct vmctx *ctx, struct vcpu *vcpu) in vm_loop() argument
467 assert(CPU_ISSET(vcpu_id(vcpu), &active_cpus)); in vm_loop()
469 ventry = vmentry_vcpu(vcpu_id(vcpu)); in vm_loop()
472 error = vm_run(vcpu, ventry, &vme); in vm_loop()
492 rc = (*vmexit_handlers[exitcode])(ctx, vcpu, &vme); in vm_loop()
507 num_vcpus_allowed(struct vmctx *ctx, struct vcpu *vcpu) in num_vcpus_allowed() argument
517 error = vm_get_capability(vcpu, VM_CAP_UNRESTRICTED_GUEST, &tmp); in num_vcpus_allowed()
680 struct vcpu *bsp; in main()
739 vcpu_info[vcpuid].vcpu = bsp; in main()
741 vcpu_info[vcpuid].vcpu = vm_vcpu_open(ctx, vcpuid); in main()
871 bhyve_start_vcpu(vcpu_info[vcpuid].vcpu, vcpuid == BSP, in main()