acrn-hypervisor/hypervisor/include/arch/x86
Jason Chen CJ 88758dfe57 add copy_from_gva/copy_to_gva functions
there are data transfer between guest virtual space(GVA) & hv(HVA), for
example, guest rip fetching during instruction decoding.

GVA is address continuous, but its GPA could be only 4K page address
continuous, this patch adds copy_from_gva & copy_to_gva functions by
doing page walking of GVA to avoid address breaking during accessing GVA.

v2:
- modify API interface based on new gva2gpa function, err_code added
- combine similar code with inline function _copy_gpa
- change API name from vcopy_from/to_vm to copy_from/to_gva

Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
2018-06-11 12:14:43 +08:00
..
guest add copy_from_gva/copy_to_gva functions 2018-06-11 12:14:43 +08:00
apicreg.h lapic: continuous LVT registers as an array 2018-05-30 13:52:11 +08:00
assign.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
cpu.h hv: don't combine the trampline code with AP start 2018-06-08 13:45:02 +08:00
cpufeatures.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
cpuid.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
gdt.h HV:treewide:C99-friendly per_cpu implementation change the per_cpu method 2018-06-05 17:09:00 +08:00
hob_parse.h HV: Parse SeedList HOB 2018-06-07 09:55:29 +08:00
hv_arch.h hv: basic MTRR virtualization 2018-06-08 12:06:15 +08:00
idt.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
io.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
ioapic.h HV: config: adapt to the generated config.h 2018-06-08 17:21:13 +08:00
irq.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
lapic.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
mmu.h hv: add APIs to allow updating EPT mem type 2018-06-08 12:06:15 +08:00
msr.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
mtrr.h hv: basic MTRR virtualization 2018-06-08 12:06:15 +08:00
multiboot.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
per_cpu.h HV: config: adapt to the generated config.h 2018-06-08 17:21:13 +08:00
reboot.h hv: Add reboot shell command 2018-05-18 16:38:40 +08:00
softirq.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
timer.h HV:treewide:C99-friendly per_cpu implementation change the per_cpu method 2018-06-05 17:09:00 +08:00
trusty.h HV: Parse SeedList HOB 2018-06-07 09:55:29 +08:00
vmexit.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
vmx.h hv: add vmx_off and update exec_vmxon_instr 2018-06-07 15:36:46 +08:00
vtd.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00
zeropage.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00