| /linux/tools/testing/selftests/kvm/x86/ |
| H A D | set_boot_cpu_id.c | 90 struct kvm_vcpu *vcpus[]) in create_vm() argument 102 vcpus[i] = vm_vcpu_add(vm, i, i == bsp_vcpu_id ? guest_bsp_vcpu : in create_vm() 109 struct kvm_vcpu *vcpus[2]; in run_vm_bsp() local 112 vm = create_vm(ARRAY_SIZE(vcpus), bsp_vcpu_id, vcpus); in run_vm_bsp() 114 run_vcpu(vcpus[0]); in run_vm_bsp() 115 run_vcpu(vcpus[1]); in run_vm_bsp() 122 struct kvm_vcpu *vcpus[2]; in check_set_bsp_busy() local 125 vm = create_vm(ARRAY_SIZE(vcpus), 0, vcpus); in check_set_bsp_busy() 127 test_set_bsp_busy(vcpus[1], "after adding vcpu"); in check_set_bsp_busy() 129 run_vcpu(vcpus[0]); in check_set_bsp_busy() [all …]
|
| H A D | xapic_state_test.c | 174 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_apic_id() local 179 vm = vm_create_with_vcpus(NR_VCPUS, NULL, vcpus); in test_apic_id() 183 apic_base = vcpu_get_msr(vcpus[i], MSR_IA32_APICBASE); in test_apic_id() 190 __test_apic_id(vcpus[i], apic_base); in test_apic_id() 191 __test_apic_id(vcpus[i], apic_base | X2APIC_ENABLE); in test_apic_id() 192 __test_apic_id(vcpus[i], apic_base); in test_apic_id()
|
| H A D | msrs_test.c | 342 static void vcpus_run(struct kvm_vcpu **vcpus, const int NR_VCPUS) in vcpus_run() argument 347 do_vcpu_run(vcpus[i]); in vcpus_run() 414 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_msrs() local 424 vm = vm_create_with_vcpus(NR_VCPUS, guest_main, vcpus); in test_msrs() 443 vcpu_clear_cpuid_feature(vcpus[2], msrs[idx].feature); in test_msrs() 451 host_test_kvm_reg(vcpus[i]); in test_msrs() 472 vcpus_run(vcpus, NR_VCPUS); in test_msrs() 473 vcpus_run(vcpus, NR_VCPUS); in test_msrs()
|
| H A D | private_mem_conversions_test.c | 380 struct kvm_vcpu *vcpus[KVM_MAX_VCPUS]; in test_mem_conversions() local 393 vm = __vm_create_with_vcpus(shape, nr_vcpus, 0, guest_code, vcpus); in test_mem_conversions() 407 vcpu_args_set(vcpus[i], 1, gpa); in test_mem_conversions() 415 pthread_create(&threads[i], NULL, __test_mem_conversions, vcpus[i]); in test_mem_conversions()
|
| /linux/tools/testing/selftests/kvm/ |
| H A D | kvm_page_table_test.c | 56 struct kvm_vcpu *vcpus[KVM_MAX_VCPUS]; member 256 guest_code, test_args.vcpus); in pre_init_before_test() 316 int vcpus; in vcpus_complete_new_stage() local 319 for (vcpus = 0; vcpus < nr_vcpus; vcpus++) { in vcpus_complete_new_stage() 326 for (vcpus = 0; vcpus < nr_vcpus; vcpus++) { in vcpus_complete_new_stage() 331 vcpus + 1, test_stage_string[stage]); in vcpus_complete_new_stage() 357 test_args.vcpus[i]); in run_test()
|
| H A D | mmu_stress_test.c | 205 static pthread_t *spawn_workers(struct kvm_vm *vm, struct kvm_vcpu **vcpus, in spawn_workers() argument 224 info[i].vcpu = vcpus[i]; in spawn_workers() 288 struct kvm_vcpu **vcpus; in main() local 329 vcpus = malloc(nr_vcpus * sizeof(*vcpus)); in main() 330 TEST_ASSERT(vcpus, "Failed to allocate vCPU array"); in main() 338 guest_code, vcpus); in main() 372 threads = spawn_workers(vm, vcpus, start_gpa, gpa); in main() 374 free(vcpus); in main() 375 vcpus = NULL; in main()
|
| H A D | kvm_binary_stats_test.c | 188 struct kvm_vcpu **vcpus; in main() local 216 vcpus = malloc(sizeof(struct kvm_vcpu *) * max_vm * max_vcpu); in main() 217 TEST_ASSERT(vcpus, "Allocate memory for storing vCPU pointers"); in main() 229 vcpus[i * max_vcpu + j] = __vm_vcpu_add(vms[i], j); in main() 248 vcpu_stats_fds[j] = vcpu_get_stats_fd(vcpus[i * max_vcpu + j]); in main() 250 stats_test(vcpu_get_stats_fd(vcpus[i * max_vcpu + j])); in main() 269 free(vcpus); in main()
|
| H A D | steal_time.c | 507 struct kvm_vcpu *vcpus[NR_VCPUS]; in main() local 528 vm = vm_create_with_vcpus(NR_VCPUS, guest_code, vcpus); in main() 534 TEST_REQUIRE(is_steal_time_supported(vcpus[0])); in main() 541 steal_time_init(vcpus[i], i); in main() 543 vcpu_args_set(vcpus[i], 1, i); in main() 546 run_vcpu(vcpus[i]); in main() 549 run_vcpu(vcpus[i]); in main() 570 run_vcpu(vcpus[i]); in main()
|
| H A D | arch_timer.c | 40 struct kvm_vcpu *vcpus[KVM_MAX_VCPUS]; variable 51 struct kvm_vcpu *vcpu = vcpus[vcpu_idx]; in test_vcpu_run()
|
| /linux/tools/testing/selftests/kvm/arm64/ |
| H A D | vgic_init.c | 76 struct kvm_vcpu *vcpus[]) in vm_gic_create_with_vcpus() argument 81 v.vm = vm_create_with_vcpus(nr_vcpus, guest_code, vcpus); in vm_gic_create_with_vcpus() 337 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_vgic_then_vcpus() local 341 v = vm_gic_create_with_vcpus(gic_dev_type, 1, vcpus); in test_vgic_then_vcpus() 347 vcpus[i] = vm_vcpu_add(v.vm, i, guest_code); in test_vgic_then_vcpus() 349 ret = run_vcpu(vcpus[3]); in test_vgic_then_vcpus() 358 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_vcpus_then_vgic() local 362 v = vm_gic_create_with_vcpus(gic_dev_type, NR_VCPUS, vcpus); in test_vcpus_then_vgic() 366 ret = run_vcpu(vcpus[3]); in test_vcpus_then_vgic() 408 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_v3_new_redist_regions() local [all …]
|
| H A D | vgic_v5.c | 101 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_vgic_v5_ppis() local 113 vcpus[i] = vm_vcpu_add(v.vm, i, guest_code); in test_vgic_v5_ppis() 119 vcpu_init_descriptor_tables(vcpus[i]); in test_vgic_v5_ppis() 133 ret = run_vcpu(vcpus[0]); in test_vgic_v5_ppis() 135 switch (get_ucall(vcpus[0], &uc)) { in test_vgic_v5_ppis() 178 struct kvm_vcpu *vcpus[NR_VCPUS]; in test_kvm_device() local 182 v.vm = vm_create_with_vcpus(NR_VCPUS, guest_code, vcpus); in test_kvm_device()
|
| H A D | vgic_lpi_stress.c | 29 static struct kvm_vcpu **vcpus; variable 314 pthread_create(&vcpu_threads[i], NULL, vcpu_worker_thread, vcpus[i]); in run_test() 339 vcpus = malloc(test_data.nr_cpus * sizeof(struct kvm_vcpu *)); in setup_vm() 340 TEST_ASSERT(vcpus, "Failed to allocate vCPU array"); in setup_vm() 342 vm = vm_create_with_vcpus(test_data.nr_cpus, guest_code, vcpus); in setup_vm() 346 vcpu_init_descriptor_tables(vcpus[i]); in setup_vm() 361 free(vcpus); in destroy_vm()
|
| H A D | arch_timer.c | 168 ptimer_irq = vcpu_get_ptimer_irq(vcpus[0]); in test_init_timer_irq() 169 vtimer_irq = vcpu_get_vtimer_irq(vcpus[0]); in test_init_timer_irq() 185 vm = vm_create_with_vcpus(nr_vcpus, guest_code, vcpus); in test_vm_create() 202 vcpu_init_descriptor_tables(vcpus[i]); in test_vm_create()
|
| H A D | vgic_irq.c | 987 struct kvm_vcpu *vcpus[2]; in test_vgic_two_cpus() local 993 vm = vm_create_with_vcpus(2, gcode, vcpus); in test_vgic_two_cpus() 996 vcpu_init_descriptor_tables(vcpus[0]); in test_vgic_two_cpus() 997 vcpu_init_descriptor_tables(vcpus[1]); in test_vgic_two_cpus() 1002 vcpu_args_set(vcpus[0], 2, args_gva, 0); in test_vgic_two_cpus() 1003 vcpu_args_set(vcpus[1], 2, args_gva, 1); in test_vgic_two_cpus() 1007 ret = pthread_create(&thr[0], NULL, test_vcpu_run, vcpus[0]); in test_vgic_two_cpus() 1010 ret = pthread_create(&thr[1], NULL, test_vcpu_run, vcpus[1]); in test_vgic_two_cpus()
|
| /linux/tools/testing/selftests/kvm/lib/ |
| H A D | memstress.c | 41 static struct kvm_vcpu *vcpus[KVM_MAX_VCPUS]; variable 89 struct kvm_vcpu *vcpus[], in memstress_setup_vcpus() argument 100 vcpu_args->vcpu = vcpus[i]; in memstress_setup_vcpus() 116 vcpu_args_set(vcpus[i], 1, i); in memstress_setup_vcpus() 172 memstress_guest_code, vcpus); in memstress_create_vm() 216 memstress_setup_vcpus(vm, nr_vcpus, vcpus, vcpu_memory_bytes, in memstress_create_vm() 221 memstress_setup_nested(vm, nr_vcpus, vcpus); in memstress_create_vm() 252 void __weak memstress_setup_nested(struct kvm_vm *vm, int nr_vcpus, struct kvm_vcpu **vcpus) in memstress_setup_nested() argument
|
| H A D | kvm_util.c | 286 INIT_LIST_HEAD(&vm->vcpus); in ____vm_create() 551 void *guest_code, struct kvm_vcpu *vcpus[]) in __vm_create_with_vcpus() argument 556 TEST_ASSERT(!nr_vcpus || vcpus, "Must provide vCPU array"); in __vm_create_with_vcpus() 561 vcpus[i] = vm_vcpu_add(vm, i, guest_code); in __vm_create_with_vcpus() 572 struct kvm_vcpu *vcpus[1]; in __vm_create_shape_with_one_vcpu() local 575 vm = __vm_create_with_vcpus(shape, 1, extra_mem_pages, guest_code, vcpus); in __vm_create_shape_with_one_vcpu() 577 *vcpu = vcpus[0]; in __vm_create_shape_with_one_vcpu() 793 list_for_each_entry_safe(vcpu, tmp, &vmp->vcpus, list) in kvm_vm_release() 1323 list_for_each_entry(vcpu, &vm->vcpus, list) { in vcpu_exists() 1363 list_add(&vcpu->list, &vm->vcpus); in __vm_vcpu_add() [all …]
|
| /linux/tools/testing/selftests/kvm/riscv/ |
| H A D | arch_timer.c | 85 vm = vm_create_with_vcpus(nr_vcpus, guest_code, vcpus); in test_vm_create() 86 __TEST_REQUIRE(__vcpu_has_isa_ext(vcpus[0], KVM_RISCV_ISA_EXT_SSTC), in test_vm_create() 93 vcpu_init_vector_tables(vcpus[i]); in test_vm_create() 96 timer_freq = vcpu_get_reg(vcpus[0], RISCV_TIMER_REG(frequency)); in test_vm_create()
|
| /linux/tools/testing/selftests/kvm/lib/x86/ |
| H A D | memstress.c | 104 void memstress_setup_nested(struct kvm_vm *vm, int nr_vcpus, struct kvm_vcpu *vcpus[]) in memstress_setup_nested() argument 124 vcpu_regs_get(vcpus[vcpu_id], ®s); in memstress_setup_nested() 126 vcpu_regs_set(vcpus[vcpu_id], ®s); in memstress_setup_nested() 127 vcpu_args_set(vcpus[vcpu_id], 2, nested_gva, vcpu_id); in memstress_setup_nested()
|
| /linux/tools/testing/selftests/kvm/include/ |
| H A D | memstress.h | 67 void memstress_start_vcpu_threads(int vcpus, void (*vcpu_fn)(struct memstress_vcpu_args *)); 68 void memstress_join_vcpu_threads(int vcpus); 72 void memstress_setup_nested(struct kvm_vm *vm, int nr_vcpus, struct kvm_vcpu *vcpus[]);
|
| H A D | timer_test.h | 39 extern struct kvm_vcpu *vcpus[];
|
| /linux/drivers/xen/ |
| H A D | privcmd.c | 1157 unsigned int vcpus; member 1163 struct ioreq_port ports[] __counted_by(vcpus); 1228 for (i = kioreq->vcpus - 1; i >= 0; i--) in ioreq_free() 1246 size = struct_size(kioreq, ports, ioeventfd->vcpus); in alloc_ioreq() 1252 kioreq->vcpus = ioeventfd->vcpus; in alloc_ioreq() 1272 kioreq->vcpus, sizeof(*ports)); in alloc_ioreq() 1278 for (i = 0; i < kioreq->vcpus; i++) { in alloc_ioreq() 1322 kioreq->vcpus != ioeventfd->vcpus) { in get_ioreq() 1324 kioreq->dom, ioeventfd->dom, kioreq->vcpus, in get_ioreq() 1325 ioeventfd->vcpus); in get_ioreq() [all …]
|
| /linux/Documentation/arch/powerpc/ |
| H A D | vcpudispatch_stats.rst | 8 static mapping of the LPAR processors (vcpus) to physical processor 9 chips (representing the "home" node) and tries to always dispatch vcpus 11 scenarios, vcpus may be dispatched on a different processor chip (away
|
| /linux/arch/s390/hypfs/ |
| H A D | hypfs_vm.h | 25 __u32 vcpus; member
|
| /linux/Documentation/translations/zh_CN/virt/ |
| H A D | guest-halt-polling.rst | 19 cpuidle_haltpoll驱动,与haltpoll管理器一起,允许客户机vcpus在停机前轮询
|
| /linux/arch/arm64/kvm/hyp/nvhe/ |
| H A D | pkvm.c | 270 hyp_vcpu = smp_load_acquire(&hyp_vm->vcpus[vcpu_idx]); in pkvm_load_hyp_vcpu() 872 if (hyp_vm->vcpus[idx]) in register_hyp_vcpu() 879 smp_store_release(&hyp_vm->vcpus[idx], hyp_vcpu); in register_hyp_vcpu() 1005 unpin_host_vcpus(hyp_vm->vcpus, hyp_vm->kvm.created_vcpus); in __pkvm_finalize_teardown_vm() 1009 struct pkvm_hyp_vcpu *hyp_vcpu = hyp_vm->vcpus[idx]; in __pkvm_finalize_teardown_vm()
|