| /hypervisor/include/arch/x86/asm/ |
| A D | pgtable.h | 347 static inline uint64_t pde_index(uint64_t address) in pde_index() 352 static inline uint64_t pte_index(uint64_t address) in pte_index() 392 static inline uint64_t *pml4e_offset(uint64_t *pml4_page, uint64_t addr) in pml4e_offset() 417 static inline uint64_t *pdpte_offset(const uint64_t *pml4e, uint64_t addr) in pdpte_offset() 442 static inline uint64_t *pde_offset(const uint64_t *pdpte, uint64_t addr) in pde_offset() 467 static inline uint64_t *pte_offset(const uint64_t *pde, uint64_t addr) in pte_offset() 509 static inline uint64_t pde_large(uint64_t pde) in pde_large() 534 static inline uint64_t pdpte_large(uint64_t pdpte) in pdpte_large() 547 const uint64_t *pgtable_lookup_entry(uint64_t *pml4_page, uint64_t addr, 551 uint64_t vaddr_base, uint64_t size, [all …]
|
| A D | vtd.h | 76 uint64_t pid_paddr; 509 uint64_t lo_64; 510 uint64_t hi_64; 520 uint64_t fpd:1; 522 uint64_t rh:1; 527 uint64_t mode:1; 533 uint64_t sq:2; 534 uint64_t svt:2; 541 uint64_t fpd:1; 552 uint64_t sq:2; [all …]
|
| A D | cpu.h | 349 uint64_t cr0; 354 uint64_t cr2; 355 uint64_t cr4; 357 uint64_t rip; 368 uint64_t value[XSAVE_HEADER_AREA_SIZE / sizeof(uint64_t)]; 387 uint64_t cr3; 413 uint64_t dr7; 434 uint64_t cs; 437 uint64_t ss; 772 static inline void read_xmm_0_2(uint64_t *xmm0_addr, uint64_t *xmm1_addr, uint64_t *xmm2_addr) in read_xmm_0_2() [all …]
|
| A D | mmu.h | 72 uint64_t gva; 88 uint64_t res; 103 static inline uint64_t round_page_up(uint64_t addr) in round_page_up() 108 static inline uint64_t round_page_down(uint64_t addr) in round_page_down() 113 static inline uint64_t round_pde_up(uint64_t val) in round_pde_up() 118 static inline uint64_t round_pde_down(uint64_t val) in round_pde_down() 150 void set_paging_supervisor(uint64_t base, uint64_t size); 151 void set_paging_x(uint64_t base, uint64_t size); 152 void set_paging_nx(uint64_t base, uint64_t size); 173 static inline uint64_t get_pae_pdpt_addr(uint64_t cr3) in get_pae_pdpt_addr() [all …]
|
| A D | gdt.h | 96 uint64_t rsvd; 114 uint64_t rsp0; 115 uint64_t rsp1; 116 uint64_t rsp2; 119 uint64_t ist1; 120 uint64_t ist2; 121 uint64_t ist3; 122 uint64_t ist4; 123 uint64_t ist5; 124 uint64_t ist6; [all …]
|
| A D | e820.h | 26 uint64_t baseaddr; 28 uint64_t length; 34 uint64_t mem_bottom; 35 uint64_t mem_top; 36 uint64_t total_mem_size; 42 uint64_t e820_alloc_memory(uint64_t size_arg, uint64_t max_addr); 43 uint64_t get_e820_ram_size(void);
|
| /hypervisor/include/common/ |
| A D | hypercall.h | 73 …all_create_vm(struct acrn_vcpu *vcpu, struct acrn_vm *target_vm, uint64_t param1, uint64_t param2); 88 …ll_destroy_vm(struct acrn_vcpu *vcpu, struct acrn_vm *target_vm, uint64_t param1, uint64_t param2); 105 int32_t hcall_reset_vm(struct acrn_vcpu *vcpu, struct acrn_vm *target_vm, uint64_t param1, uint64_t… 121 int32_t hcall_start_vm(struct acrn_vcpu *vcpu, struct acrn_vm *target_vm, uint64_t param1, uint64_t… 233 uint64_t param1, uint64_t param2); 376 uint64_t param1, uint64_t param2); 463 uint64_t param1, uint64_t param2); 476 uint64_t param1, uint64_t param2); 489 uint64_t param1, uint64_t param2); 539 __unused uint64_t param1, uint64_t param2); [all …]
|
| /hypervisor/include/arch/x86/asm/guest/ |
| A D | nested.h | 14 uint64_t full; 159 uint64_t pml_addr; 270 uint64_t io_rcx; 271 uint64_t io_rsi; 272 uint64_t io_rdi; 273 uint64_t io_rip; 299 uint64_t host_cr0; 300 uint64_t host_cr3; 301 uint64_t host_cr4; 309 uint64_t host_rsp; [all …]
|
| A D | ept.h | 11 typedef void (*pge_handler)(uint64_t *pgentry, uint64_t size); 34 bool ept_is_valid_mr(struct acrn_vm *vm, uint64_t mr_base_gpa, uint64_t size); 51 uint64_t gpa2hpa(struct acrn_vm *vm, uint64_t gpa); 63 uint64_t local_gpa2hpa(struct acrn_vm *vm, uint64_t gpa, uint32_t *size); 71 uint64_t service_vm_hpa2gpa(uint64_t hpa); 85 void ept_add_mr(struct acrn_vm *vm, uint64_t *pml4_page, uint64_t hpa, 86 uint64_t gpa, uint64_t size, uint64_t prot_orig); 101 uint64_t size, uint64_t prot_set, uint64_t prot_clr); 113 void ept_del_mr(struct acrn_vm *vm, uint64_t *pml4_page, uint64_t gpa, 114 uint64_t size); [all …]
|
| A D | vmexit.h | 22 static inline uint64_t 30 static inline uint64_t vm_exit_cr_access_cr_num(uint64_t exit_qual) in vm_exit_cr_access_cr_num() 35 static inline uint64_t vm_exit_cr_access_type(uint64_t exit_qual) in vm_exit_cr_access_type() 40 static inline uint64_t vm_exit_cr_access_lmsw_op(uint64_t exit_qual) in vm_exit_cr_access_lmsw_op() 45 static inline uint64_t vm_exit_cr_access_reg_idx(uint64_t exit_qual) in vm_exit_cr_access_reg_idx() 50 static inline uint64_t vm_exit_cr_access_lmsw_src_date(uint64_t exit_qual) in vm_exit_cr_access_lmsw_src_date() 56 static inline uint64_t vm_exit_io_instruction_size(uint64_t exit_qual) in vm_exit_io_instruction_size() 61 static inline uint64_t 67 static inline uint64_t vm_exit_io_instruction_is_string(uint64_t exit_qual) in vm_exit_io_instruction_is_string() 72 static inline uint64_t [all …]
|
| A D | hyperv.h | 23 uint64_t val64; 25 uint64_t enabled:1; 26 uint64_t rsvdp:11; 27 uint64_t gpfn:52; 32 uint64_t val64; 34 uint64_t enabled:1; 35 uint64_t locked:1; 36 uint64_t rsvdp:10; 37 uint64_t gpfn:52; 42 uint64_t val64; [all …]
|
| A D | guest_memory.h | 32 int32_t gva2gpa(struct acrn_vcpu *vcpu, uint64_t gva, uint64_t *gpa, uint32_t *err_code); 37 void *gpa2hva(struct acrn_vm *vm, uint64_t x); 63 int32_t copy_from_gpa(struct acrn_vm *vm, void *h_ptr, uint64_t gpa, uint32_t size); 82 int32_t copy_to_gpa(struct acrn_vm *vm, void *h_ptr, uint64_t gpa, uint32_t size); 96 int32_t copy_from_gva(struct acrn_vcpu *vcpu, void *h_ptr, uint64_t gva, 97 uint32_t size, uint32_t *err_code, uint64_t *fault_addr); 111 int32_t copy_to_gva(struct acrn_vcpu *vcpu, void *h_ptr, uint64_t gva, 112 uint32_t size, uint32_t *err_code, uint64_t *fault_addr);
|
| /hypervisor/arch/x86/ |
| A D | pagetable.c | 46 uint64_t i; in sanitize_pte() 74 uint64_t i; in init_sanitized_page() 84 uint64_t *pde, uint64_t *pt_page, uint32_t type) in try_to_free_pgtable_page() 175 static void modify_or_del_pte(uint64_t *pde, uint64_t vaddr_start, uint64_t vaddr_end, in modify_or_del_pte() 214 static void modify_or_del_pde(uint64_t *pdpte, uint64_t vaddr_start, uint64_t vaddr_end, in modify_or_del_pde() 357 void pgtable_modify_or_del_map(uint64_t *pml4_page, uint64_t vaddr_base, uint64_t size, in pgtable_modify_or_del_map() 384 static void add_pte(const uint64_t *pde, uint64_t paddr_start, uint64_t vaddr_start, uint64_t vaddr… in add_pte() 415 static void add_pde(const uint64_t *pdpte, uint64_t paddr_start, uint64_t vaddr_start, uint64_t vad… in add_pde() 465 static void add_pdpte(const uint64_t *pml4e, uint64_t paddr_start, uint64_t vaddr_start, uint64_t v… in add_pdpte() 551 void pgtable_add_map(uint64_t *pml4_page, uint64_t paddr_base, uint64_t vaddr_base, in pgtable_add_map() [all …]
|
| A D | mmu.c | 104 static inline void local_invvpid(uint64_t type, uint16_t vpid, uint64_t gva) in local_invvpid() 151 uint64_t tmp64 = 0UL; in enable_paging() 180 uint64_t val64 = 0UL; in enable_smep() 189 uint64_t val64 = 0UL; in enable_smap() 199 void set_paging_supervisor(uint64_t base, uint64_t size) in set_paging_supervisor() 213 void set_paging_nx(uint64_t base, uint64_t size) in set_paging_nx() 223 void set_paging_x(uint64_t base, uint64_t size) in set_paging_x() 235 uint64_t page_base; in allocate_ppt_pages() 250 uint64_t hv_hva; in init_paging() 334 void flush_tlb_range(uint64_t addr, uint64_t size) in flush_tlb_range() [all …]
|
| A D | trampoline.c | 15 static uint64_t trampoline_start16_paddr; 34 uint64_t *hva = (uint64_t *)(hpa2hva(trampoline_start16_paddr) + trampoline_relo_addr(sym)); in read_trampoline_sym() 40 uint64_t *hva = (uint64_t *)(hpa2hva(trampoline_start16_paddr) + trampoline_relo_addr(sym)); in write_trampoline_sym() 47 uint64_t *hva, stack_sym_addr; in write_trampoline_stack_sym() 57 uint64_t get_trampoline_start16_paddr(void) in get_trampoline_start16_paddr() 65 uint64_t val; in update_trampoline_code_refs() 88 *(uint64_t *)(ptr) += dest_pa; in update_trampoline_code_refs() 92 *(uint64_t *)(ptr + sizeof(uint64_t) * i) += dest_pa; in update_trampoline_code_refs() 97 *(uint64_t *)(ptr + 2) += dest_pa; in update_trampoline_code_refs() 108 uint64_t prepare_trampoline(void) in prepare_trampoline() [all …]
|
| A D | tsc.c | 38 uint64_t current_tsc; in pit_calibrate_tsc() 80 uint64_t cfg; in hpet_init() 102 static inline uint64_t tsc_read_hpet(uint64_t *p) in tsc_read_hpet() 104 uint64_t current_tsc; in tsc_read_hpet() 117 uint64_t rflags, tsc_khz; in hpet_calibrate_tsc() 142 static uint64_t pit_hpet_calibrate_tsc(uint32_t cal_ms_arg, uint64_t tsc_ref_hz) in pit_hpet_calibrate_tsc() 144 uint64_t tsc_hz, delta; in pit_hpet_calibrate_tsc() 167 uint64_t tsc_hz = 0UL; in native_calculate_tsc_cpuid_0x15() 190 uint64_t tsc_hz = 0UL; in native_calculate_tsc_cpuid_0x16() 205 uint64_t tsc_hz; in calibrate_tsc() [all …]
|
| /hypervisor/include/public/ |
| A D | acrn_common.h | 111 uint64_t size; 116 uint64_t value; 143 uint64_t size; 352 uint64_t fd; 394 uint64_t rax; 395 uint64_t rcx; 396 uint64_t rdx; 397 uint64_t rbx; 398 uint64_t rsp; 402 uint64_t r8; [all …]
|
| /hypervisor/boot/ |
| A D | reloc.c | 20 uint64_t d_tag; 21 uint64_t d_ptr; 25 uint64_t r_offset; 26 uint64_t r_info; 27 uint64_t reserved; 30 static inline uint64_t elf64_r_type(uint64_t i) in elf64_r_type() 39 uint64_t addr; in get_hv_image_delta() 69 uint64_t rela_size = 0; in relocate() 71 uint64_t trampoline_end; in relocate() 72 uint64_t primary_entry_end; in relocate() [all …]
|
| /hypervisor/common/ |
| A D | ticks.c | 11 uint64_t us_to_ticks(uint32_t us) in us_to_ticks() 13 return (((uint64_t)us * (uint64_t)cpu_tickrate()) / 1000UL); in us_to_ticks() 16 uint64_t ticks_to_us(uint64_t ticks) in ticks_to_us() 18 uint64_t us = 0UL; in ticks_to_us() 19 uint64_t khz = cpu_tickrate(); in ticks_to_us() 22 us = (ticks * 1000UL) / (uint64_t)khz; in ticks_to_us() 28 uint64_t ticks_to_ms(uint64_t ticks) in ticks_to_ms() 30 return ticks / (uint64_t)cpu_tickrate(); in ticks_to_ms()
|
| /hypervisor/include/debug/ |
| A D | profiling_internal.h | 103 uint64_t switches; 133 uint64_t value; 166 uint64_t vmenter_tsc; 167 uint64_t vmexit_tsc; 169 uint64_t guest_rip; 170 uint64_t guest_rflags; 171 uint64_t guest_cs; 227 uint64_t tsc; 229 uint64_t reserved; 241 uint64_t rip; [all …]
|
| /hypervisor/arch/x86/guest/ |
| A D | ept.c | 82 uint64_t bitmap_base; in reserve_ept_bitmap() 83 uint64_t bitmap_size; in reserve_ept_bitmap() 102 uint64_t page_base; in reserve_buffer_for_ept_pages() 246 uint64_t local_gpa2hpa(struct acrn_vm *vm, uint64_t gpa, uint32_t *size) in local_gpa2hpa() 274 uint64_t gpa2hpa(struct acrn_vm *vm, uint64_t gpa) in gpa2hpa() 282 uint64_t service_vm_hpa2gpa(uint64_t hpa) in service_vm_hpa2gpa() 318 uint64_t hpa, uint64_t gpa, uint64_t size, uint64_t prot_orig) in ept_add_mr() 335 uint64_t gpa, uint64_t size, in ept_modify_mr() 336 uint64_t prot_set, uint64_t prot_clr) in ept_modify_mr() 353 void ept_del_mr(struct acrn_vm *vm, uint64_t *pml4_page, uint64_t gpa, uint64_t size) in ept_del_mr() [all …]
|
| A D | guest_memory.c | 56 uint64_t gva, uint64_t *gpa, uint32_t *err_code) in local_gva2gpa_common() 59 uint64_t index; in local_gva2gpa_common() 62 uint64_t entry = 0U; in local_gva2gpa_common() 63 uint64_t addr; in local_gva2gpa_common() 93 uint64_t *base64 = (uint64_t *)base; in local_gva2gpa_common() 171 uint64_t gva, uint64_t *gpa, uint32_t *err_code) in local_gva2gpa_pae() 174 uint64_t *base; in local_gva2gpa_pae() 175 uint64_t entry; in local_gva2gpa_pae() 176 uint64_t addr; in local_gva2gpa_pae() 215 int32_t gva2gpa(struct acrn_vcpu *vcpu, uint64_t gva, uint64_t *gpa, in gva2gpa() [all …]
|
| A D | virtual_cr.c | 84 static uint64_t initial_guest_cr4; 90 static uint64_t cr4_reserved_bits_mask; 121 uint64_t rsvd_bits_mask; in load_pdptrs() 248 uint64_t mask, tmp; in vmx_write_cr0() 336 bool is_valid_cr0_cr4(uint64_t cr0, uint64_t cr4) in is_valid_cr0_cr4() 368 uint64_t mask, tmp; in vmx_write_cr4() 432 uint64_t cr0_flexible_bits; in init_cr0_cr4_flexible_bits() 433 uint64_t cr4_flexible_bits; in init_cr0_cr4_flexible_bits() 434 uint64_t fixed0, fixed1; in init_cr0_cr4_flexible_bits() 567 uint64_t reg; in cr_access_vmexit_handler() [all …]
|
| /hypervisor/include/arch/x86/asm/lib/ |
| A D | bits.h | 76 static inline uint16_t fls64(uint64_t value) in fls64() 78 uint64_t ret = 0UL; in fls64() 112 static inline uint16_t ffs64(uint64_t value) in ffs64() 114 uint64_t ret; in ffs64() 124 static inline uint16_t ffz64(uint64_t value) in ffz64() 134 static inline uint64_t ffz64_ex(const uint64_t *addr, uint64_t size) in ffz64_ex() 136 uint64_t ret = size; in ffz64_ex() 137 uint64_t idx; in ffz64_ex() 175 static inline uint16_t clz64(uint64_t value) in clz64() 230 : "m" (*addr), "r" ((uint64_t)(nr & 0x3fU)) in bitmap_test() [all …]
|
| /hypervisor/boot/include/ |
| A D | elf.h | 73 uint64_t e_entry; /*Entry point address */ 74 uint64_t e_phoff; /*Program header offset */ 75 uint64_t e_shoff; /*Section header offset */ 90 uint64_t p_offset; /* Offset in file */ 91 uint64_t p_vaddr; /* Virtual address in memory */ 93 uint64_t p_filesz; /* Size of segment in file */ 95 uint64_t p_align; /* Alignment of segment */ 103 uint64_t sh_flags; /*Section attributes */ 104 uint64_t sh_addr; /*Virtual address in memory */ 105 uint64_t sh_offset; /*Offset in file */ [all …]
|