Lines Matching full:vm

28  * @user_vm_pa:		Physical address of User VM to be mapped.
29 * @service_vm_pa: Physical address of Service VM to be mapped.
33 * to manage the EPT mappings of a single memory region of the User VM. Several
47 * @vmid: A User VM ID.
54 * multiple memory regions of a User VM. A &struct vm_memory_region_batch
67 * struct vm_memory_mapping - Memory map between a User VM and the Service VM
68 * @pages: Pages in Service VM kernel.
70 * @service_vm_va: Virtual address in Service VM kernel.
71 * @user_vm_pa: Physical address in User VM.
74 * HSM maintains memory mappings between a User VM GPA and the Service VM
75 * kernel VA for accelerating the User VM GPA translation.
86 * struct acrn_ioreq_buffer - Data for setting the ioreq buffer of User VM
87 * @ioreq_buf: The GPA of the IO request shared buffer of a VM
90 * the shared I/O request buffer between Service VM and ACRN hypervisor.
109 * @vm: The VM that the client belongs to
123 struct acrn_vm *vm; member
143 * struct acrn_vm - Properties of ACRN User VM.
145 * @vmid: User VM ID.
146 * @vcpu_num: Number of virtual CPUs in the VM.
147 * @flags: Flags (ACRN_VM_FLAG_*) of the VM. This is VM
152 * @regions_mapping: Memory mappings of this VM.
153 * @regions_mapping_count: Number of memory mapping of this VM.
155 * @ioreq_clients: The I/O request clients list of this VM
160 * @monitor_page: Page of interrupt statistics of User VM
163 * @ioeventfd_client: I/O client for ioeventfds of the VM
191 struct acrn_vm *acrn_vm_create(struct acrn_vm *vm,
193 int acrn_vm_destroy(struct acrn_vm *vm);
194 int acrn_mm_region_add(struct acrn_vm *vm, u64 user_gpa, u64 service_gpa,
196 int acrn_mm_region_del(struct acrn_vm *vm, u64 user_gpa, u64 size);
197 int acrn_vm_memseg_map(struct acrn_vm *vm, struct acrn_vm_memmap *memmap);
198 int acrn_vm_memseg_unmap(struct acrn_vm *vm, struct acrn_vm_memmap *memmap);
199 int acrn_vm_ram_map(struct acrn_vm *vm, struct acrn_vm_memmap *memmap);
200 void acrn_vm_all_ram_unmap(struct acrn_vm *vm);
202 int acrn_ioreq_init(struct acrn_vm *vm, u64 buf_vma);
203 void acrn_ioreq_deinit(struct acrn_vm *vm);
206 void acrn_ioreq_request_clear(struct acrn_vm *vm);
208 int acrn_ioreq_request_default_complete(struct acrn_vm *vm, u16 vcpu);
209 struct acrn_ioreq_client *acrn_ioreq_client_create(struct acrn_vm *vm,
219 int acrn_msi_inject(struct acrn_vm *vm, u64 msi_addr, u64 msi_data);
221 int acrn_ioeventfd_init(struct acrn_vm *vm);
222 int acrn_ioeventfd_config(struct acrn_vm *vm, struct acrn_ioeventfd *args);
223 void acrn_ioeventfd_deinit(struct acrn_vm *vm);
225 int acrn_irqfd_init(struct acrn_vm *vm);
226 int acrn_irqfd_config(struct acrn_vm *vm, struct acrn_irqfd *args);
227 void acrn_irqfd_deinit(struct acrn_vm *vm);