| /hypervisor/arch/x86/guest/ |
| A D | vm.c | 64 uint16_t vm_id; in get_unused_vmid() local 67 for (vm_id = 0; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in get_unused_vmid() 73 return (vm_id < CONFIG_MAX_VM_NUM) ? (vm_id) : (ACRN_INVALID_VMID); in get_unused_vmid() 78 uint16_t vm_id; in get_vmid_by_name() local 80 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in get_vmid_by_name() 252 for (vm_id = 1U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in get_highest_severity_vm() 533 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in prepare_service_vm_memmap() 694 vm->vm_id = vm_id; in create_vm() 868 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in is_ready_for_system_shutdown() 1131 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in launch_vms() [all …]
|
| A D | vmcall.c | 120 uint16_t vm_id; in allocate_dynamical_vmid() local 124 vm_id = get_unused_vmid(); in allocate_dynamical_vmid() 125 if (vm_id != ACRN_INVALID_VMID) { in allocate_dynamical_vmid() 126 vm_config = get_vm_config(vm_id); in allocate_dynamical_vmid() 131 return vm_id; in allocate_dynamical_vmid() 151 uint16_t vm_id = ACRN_INVALID_VMID; in parse_target_vm() local 163 if (vm_id == ACRN_INVALID_VMID) { in parse_target_vm() 168 if (vm_id == ACRN_INVALID_VMID) { in parse_target_vm() 182 vm_id = rel_vmid_2_vmid(service_vm->vm_id, regions.vmid); in parse_target_vm() 195 vm_id = rel_vmid_2_vmid(service_vm->vm_id, relative_vm_id); in parse_target_vm() [all …]
|
| A D | vm_reset.c | 41 uint16_t vm_id; in triple_fault_shutdown_vm() local 44 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in triple_fault_shutdown_vm() 45 struct acrn_vm *pl_vm = get_vm_from_vmid(vm_id); in triple_fault_shutdown_vm() 62 bitmap_set_nolock(vm->vm_id, in triple_fault_shutdown_vm() 112 bitmap_set_nolock(vm->vm_id, in handle_common_reset_reg_write() 242 uint16_t vm_id; in shutdown_vm_from_idle() local 246 for (vm_id = fls64(*vms); vm_id < CONFIG_MAX_VM_NUM; vm_id = fls64(*vms)) { in shutdown_vm_from_idle() 247 vm = get_vm_from_vmid(vm_id); in shutdown_vm_from_idle() 253 bitmap_clear_nolock(vm_id, vms); in shutdown_vm_from_idle()
|
| A D | ept.c | 103 uint16_t vm_id; in reserve_buffer_for_ept_pages() local 108 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in reserve_buffer_for_ept_pages() 173 struct acrn_vm *vm = get_vm_from_vmid(vm_id); in init_ept_pgtable() 175 ept_page_pool[vm_id].start_page = ept_pages[vm_id]; in init_ept_pgtable() 177 ept_page_pool[vm_id].bitmap = ept_page_bitmap[vm_id]; in init_ept_pgtable() 178 ept_page_pool[vm_id].dummy_page = &ept_dummy_pages[vm_id]; in init_ept_pgtable() 180 spinlock_init(&ept_page_pool[vm_id].lock); in init_ept_pgtable() 181 …memset((void *)ept_page_pool[vm_id].bitmap, 0, ept_page_pool[vm_id].bitmap_size * sizeof(uint64_t)… in init_ept_pgtable() 182 ept_page_pool[vm_id].last_hint_id = 0UL; in init_ept_pgtable() 184 table->pool = &ept_page_pool[vm_id]; in init_ept_pgtable() [all …]
|
| A D | ve820.c | 139 uint16_t vm_id; in create_service_vm_e820() local 142 struct acrn_vm_config *service_vm_config = get_vm_config(vm->vm_id); in create_service_vm_e820() 151 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in create_service_vm_e820() 152 struct acrn_vm_config *vm_config = get_vm_config(vm_id); in create_service_vm_e820() 279 struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in create_prelaunched_vm_e820() 286 vm->e820_entries = pre_vm_e820[vm->vm_id]; in create_prelaunched_vm_e820()
|
| A D | optee.c | 22 return (get_vm_config(vm->vm_id)->guest_flags & GUEST_FLAG_TEE) != 0; in is_tee_vm() 27 return (get_vm_config(vm->vm_id)->guest_flags & GUEST_FLAG_REE) != 0; in is_ree_vm() 54 return get_vm_from_vmid(get_vm_config(vm->vm_id)->companion_vm_id); in get_companion_vm()
|
| A D | vcat.c | 61 num_vclosids = get_vm_config(vm->vm_id)->num_pclosids; in vcat_get_num_vclosids() 85 return get_vm_config(vm->vm_id)->pclosids[vclosid]; in vclosid_to_pclosid() 129 max_pcbm = get_vm_config(vm->vm_id)->max_l2_pcbm; in get_max_pcbm() 131 max_pcbm = get_vm_config(vm->vm_id)->max_l3_pcbm; in get_max_pcbm()
|
| A D | assign.c | 338 vm->vm_id, virt_bdf, phys_bdf, entry_nr); in add_msix_remapping() 364 vm->vm_id, entry->virt_sid.msi_id.bdf, phys_bdf, entry_nr); in remove_msix_remapping() 404 phys_gsi, entry->vm->vm_id, entry->virt_sid.intx_id.gsi, vm->vm_id, virt_gsi); in add_intx_remapping() 419 entry->vm->vm_id, virt_gsi, phys_gsi); in add_intx_remapping() 459 entry->vm->vm_id, entry->virt_sid.intx_id.gsi); in remove_intx_remapping() 673 irq_to_vector(entry->allocated_pirq), entry->vm->vm_id); in ptirq_prepare_msix_remap() 771 entry->vm->vm_id); in ptirq_intx_pin_remap() 859 const struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in ptirq_remove_configured_intx_remappings()
|
| A D | vmsr.c | 389 struct acrn_vm_config *cfg = get_vm_config(vcpu->vm->vm_id); in prepare_auto_msr_area() 408 vcpu->vm->vm_id, vcpu->vcpu_id, hv_clos, vcpu_clos); in prepare_auto_msr_area() 429 if (is_vsgx_supported(vcpu->vm->vm_id)) { in init_emulated_msrs() 785 if (is_vsgx_supported(vcpu->vm->vm_id)) { in rdmsr_vmexit_handler() 843 pr_warn("%s(): vm%d read MSR_PLATFORM_INFO", __func__, vcpu->vm->vm_id); in rdmsr_vmexit_handler() 873 __func__, vcpu->vm->vm_id, vcpu->vcpu_id, msr); in rdmsr_vmexit_handler() 1325 pr_warn("Ignore writting 0x%llx to MSR_TEST_CTL from VM%d", v, vcpu->vm->vm_id); in wrmsr_vmexit_handler() 1350 __func__, vcpu->vm->vm_id, vcpu->vcpu_id, msr); in wrmsr_vmexit_handler()
|
| A D | vcpu.c | 563 vcpu->vm->vm_id, vcpu->vcpu_id, in create_vcpu() 573 vcpu->arch.vpid = ALLOCATED_MIN_L1_VPID + (vm->vm_id * MAX_VCPUS_PER_VM) + vcpu->vcpu_id; in create_vcpu() 599 per_cpu(vcpu_array, pcpu_id)[vm->vm_id] = vcpu; in create_vcpu() 609 vcpu->arch.pid.control.bits.nv = POSTED_INTR_VECTOR + vm->vm_id; in create_vcpu() 723 vcpu->vm->vm_id, vcpu->vcpu_id); in run_vcpu() 760 vcpu->vm->vm_id, vcpu->vcpu_id); in run_vcpu() 813 per_cpu(vcpu_array, pcpuid_from_vcpu(vcpu))[vcpu->vm->vm_id] = NULL; in offline_vcpu() 991 snprintf(thread_name, 16U, "vm%hu:vcpu%hu", vm->vm_id, vcpu->vcpu_id); in prepare_vcpu() 999 init_thread_data(&vcpu->thread_obj, &get_vm_config(vm->vm_id)->sched_params); in prepare_vcpu()
|
| /hypervisor/arch/x86/ |
| A D | sgx.c | 57 uint16_t vm_id = 0U; in partition_epc() local 61 struct acrn_vm_config *vm_config = get_vm_config(vm_id); in partition_epc() 67 vm_id++; in partition_epc() 68 if (vm_id == CONFIG_MAX_VM_NUM) { in partition_epc() 72 vm_config = get_vm_config(vm_id); in partition_epc() 84 vm_epc_maps[mid][vm_id].size = alloc_size; in partition_epc() 85 vm_epc_maps[mid][vm_id].hpa = psec_addr + psec_size - free_size; in partition_epc() 104 struct epc_map* get_epc_mapping(uint16_t vm_id) in get_epc_mapping() argument 106 return &vm_epc_maps[0][vm_id]; in get_epc_mapping() 123 bool is_vsgx_supported(uint16_t vm_id) in is_vsgx_supported() argument [all …]
|
| A D | vtd.c | 193 static inline uint16_t vmid_to_domainid(uint16_t vm_id) in vmid_to_domainid() argument 195 return vm_id + 1U; in vmid_to_domainid() 1066 (uint64_t)vmid_to_domainid(domain->vm_id)); in iommu_attach_device() 1119 CTX_ENTRY_UPPER_DID_POS) != vmid_to_domainid(domain->vm_id)) { in iommu_detach_device() 1128 dmar_invalid_context_cache(dmar_unit, vmid_to_domainid(domain->vm_id), sid.value, 0U, in iommu_detach_device() 1130 dmar_invalid_iotlb(dmar_unit, vmid_to_domainid(domain->vm_id), 0UL, 0U, false, in iommu_detach_device() 1162 struct iommu_domain *create_iommu_domain(uint16_t vm_id, uint64_t translation_table, uint32_t addr_… in create_iommu_domain() argument 1177 domain = &iommu_domains[vmid_to_domainid(vm_id)]; in create_iommu_domain() 1179 domain->vm_id = vm_id; in create_iommu_domain() 1184 vmid_to_domainid(domain->vm_id), domain->vm_id, domain->trans_table_ptr); in create_iommu_domain()
|
| /hypervisor/arch/x86/configs/ |
| A D | vm_config.c | 15 struct acrn_vm_config *get_vm_config(uint16_t vm_id) in get_vm_config() argument 17 return &vm_configs[vm_id]; in get_vm_config() 23 uint8_t get_vm_severity(uint16_t vm_id) in get_vm_severity() argument 25 return vm_configs[vm_id].severity; in get_vm_severity()
|
| /hypervisor/boot/guest/ |
| A D | vboot_info.c | 55 struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in init_vm_kernel_info() 82 struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in init_vm_bootargs_info() 88 if (mod_cmdline[vm->vm_id][0] != '\0') { in init_vm_bootargs_info() 89 vm->sw.bootargs_info.src_addr = &mod_cmdline[vm->vm_id][0]; in init_vm_bootargs_info() 163 struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in init_vm_sw_load() 179 (void)strncpy_s(&mod_cmdline[vm->vm_id][0], MAX_BOOTARGS_SIZE, in init_vm_sw_load() 200 pr_err("failed to load VM %d acpi module", vm->vm_id); in init_vm_sw_load() 205 pr_err("failed to load VM %d kernel module", vm->vm_id); in init_vm_sw_load()
|
| A D | bzimage_loader.c | 115 pr_err("no space in guest memory to load VM %d ramdisk", vm->vm_id); in get_initrd_load_addr() 118 dev_dbg(DBG_LEVEL_VM_BZIMAGE, "VM%d ramdisk load_addr: 0x%lx", vm->vm_id, ramdisk_load_gpa); in get_initrd_load_addr() 178 pr_err("Could not get kernel load addr of VM %d .", vm->vm_id); in get_bzimage_kernel_load_addr() 181 dev_dbg(DBG_LEVEL_VM_BZIMAGE, "VM%d kernel load_addr: 0x%lx", vm->vm_id, load_addr); in get_bzimage_kernel_load_addr() 339 const struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in load_bzimage() 369 pr_err("failed to load initrd for VM%d !", vm->vm_id); in load_bzimage() 404 __func__, vm->vm_id, vcpu_get_gpreg(vcpu, CPU_REG_RSI)); in load_bzimage()
|
| A D | rawimage_loader.c | 16 const struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in load_rawimage()
|
| /hypervisor/include/arch/x86/asm/ |
| A D | sgx.h | 63 struct epc_map* get_epc_mapping(uint16_t vm_id); 76 bool is_vsgx_supported(uint16_t vm_id);
|
| A D | vm_config.h | 90 uint8_t vm_id; /* target VM id */ member 218 struct acrn_vm_config *get_vm_config(uint16_t vm_id); 219 uint8_t get_vm_severity(uint16_t vm_id);
|
| /hypervisor/common/ |
| A D | hypercall.c | 199 uint16_t vmid = target_vm->vm_id; in hcall_create_vm() 497 target_vm->vm_id, iobuf); in hcall_set_ioreq_buffer() 502 __func__, vm->vm_id, iobuf); in hcall_set_ioreq_buffer() 591 if (is_severity_pass(target_vm->vm_id) && in hcall_notify_ioreq_finish() 594 target_vm->vm_id, vcpu_id); in hcall_notify_ioreq_finish() 598 __func__, vcpu_id, target_vm->vm_id); in hcall_notify_ioreq_finish() 690 target_vm->vm_id, region->type, region->gpa, in set_vm_memory_region() 750 if (is_severity_pass(vm->vm_id)) { in write_protect_page() 754 __func__, vm->vm_id, wp->gpa); in write_protect_page() 759 __func__, vm->vm_id, wp->gpa); in write_protect_page() [all …]
|
| A D | vm_load.c | 58 pr_info("%s, VM %hu VCPU %hu Entry: 0x%016lx ", __func__, vm->vm_id, vcpu->vcpu_id, in prepare_os_image()
|
| /hypervisor/quirks/ |
| A D | security_vm_fixup.c | 39 static void tpm2_fixup(uint16_t vm_id) in tpm2_fixup() argument 42 struct acrn_vm_config *config = get_vm_config(vm_id); in tpm2_fixup() 88 void security_vm_fixup(uint16_t vm_id) in security_vm_fixup() argument 90 struct acrn_vm_config *vm_config = get_vm_config(vm_id); in security_vm_fixup() 94 tpm2_fixup(vm_id); in security_vm_fixup() 290 struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in passthrough_smbios() 297 pr_err("Failed to copy SMBIOS info to vm%d", vm->vm_id); in passthrough_smbios()
|
| A D | security_vm_fixup.h | 11 void security_vm_fixup(uint16_t vm_id);
|
| /hypervisor/debug/ |
| A D | shell.c | 756 uint16_t vm_id; in shell_list_vm() local 762 for (vm_id = 0U; vm_id < CONFIG_MAX_VM_NUM; vm_id++) { in shell_list_vm() 763 vm = get_vm_from_vmid(vm_id); in shell_list_vm() 846 vm->vm_id, in shell_list_vcpu() 957 uint16_t vm_id; in shell_vcpu_dumpreg() local 978 vm = get_vm_from_vmid(vm_id); in shell_vcpu_dumpreg() 1078 uint16_t vm_id, pcpu_id; in shell_dump_guest_mem() local 1095 vm = get_vm_from_vmid(vm_id); in shell_dump_guest_mem() 1114 uint16_t vm_id = 0U; in shell_to_vm_console() local 1124 vm = get_vm_from_vmid(vm_id); in shell_to_vm_console() [all …]
|
| /hypervisor/include/arch/x86/asm/guest/ |
| A D | vm.h | 145 uint16_t vm_id; /* Virtual machine identifier */ member 250 int32_t create_vm(uint16_t vm_id, uint64_t pcpu_bitmap, struct acrn_vm_config *vm_config, struct ac… 251 int32_t prepare_vm(uint16_t vm_id, struct acrn_vm_config *vm_config); 260 struct acrn_vm *get_vm_from_vmid(uint16_t vm_id);
|
| /hypervisor/dm/vpci/ |
| A D | ivshmem.c | 142 uint16_t vm_id; in ivshmem_server_bind_peer() local 148 vm_id = vpci2vm(vdev->vpci)->vm_id; in ivshmem_server_bind_peer() 150 ivs_dev->mmio.regs.ivpos = vm_id; in ivshmem_server_bind_peer() 152 region->doorbell_peers[vm_id] = ivs_dev; in ivshmem_server_bind_peer() 163 region->doorbell_peers[vpci2vm(vdev->vpci)->vm_id] = NULL; in ivshmem_server_unbind_peer() 646 struct acrn_vm_config *vm_config = get_vm_config(vm->vm_id); in create_ivshmem_vdev()
|