acrn-hypervisor/hypervisor/include/arch/x86
Yin Fengwei 13a50c929d hv: Explicitly trap VMXE and PCIDE bit for CR4 write
Now, we let guest own most CR4 bit. Which means guest
handles whether the CR4 writting is invalid or not and
GP injection if it's invalid writing.

Two bits are exception here:

we filter VMX and PCID feature to guest (which means
they are supported on native).

So we can't depends on guest to inject GP for these bits.
Instead, we should explicitly trap these CR4 bits update
and inject GP to guest from HV.

Signed-off-by: Yin Fengwei <fengwei.yin@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
2018-08-01 11:35:30 +08:00
..
guest HV:treewide:rename enum vpic_wire_mode, stack_canary, segment_override, pde_index 2018-07-31 11:20:21 +08:00
apicreg.h HV: treewide: unify the type of bit-field members 2018-07-23 10:23:49 +08:00
assign.h HV:common:fix "integer type violations" 2018-07-18 12:31:14 +08:00
cpu.h hv: Extend the always off mask of CR0 and CR4 2018-08-01 11:35:30 +08:00
cpufeatures.h HV:CPU: Add 'U/UL' for unsigned const value 2018-07-09 10:27:21 +08:00
cpuid.h HV: Rename functions beginning with "_" 2018-07-30 10:11:54 +08:00
gdt.h HV:treewide:Fix type conversion in VMX, timer and MTTR module 2018-07-19 12:58:07 +08:00
hob_parse.h HV: handle integral issues as MISRA-C report 2018-07-20 10:39:46 +08:00
host_pm.h hv: trap vm0 write/read pm1a/pm1b registers 2018-06-29 00:50:01 +08:00
hv_arch.h HV: io: separate I/O emulation interface declarations 2018-07-27 10:50:19 +08:00
idt.h HV:treewide:transfer the struct member types to non-basic types 2018-06-29 15:48:19 +08:00
io.h HV: Rename functions beginning with "_" 2018-07-30 10:11:54 +08:00
ioapic.h HV:treewide:fix "Reference parameter to procedure is reassigned" 2018-07-27 12:17:12 +08:00
ioreq.h HV: io: move I/O emulation post-work to io.c 2018-07-31 10:22:03 +08:00
irq.h HV:treewide:fix "Reference parameter to procedure is reassigned" 2018-07-27 12:17:12 +08:00
lapic.h HV:treewide:rename union lapic_id and struct segment 2018-07-30 10:18:39 +08:00
mmu.h HV:treewide:rename struct key_info, pir_desc, map_params 2018-07-30 10:18:39 +08:00
msr.h HV:treewide:Fix type conversion in VMX, timer and MTTR module 2018-07-19 12:58:07 +08:00
mtrr.h HV: treewide: unify the type of bit-field members 2018-07-23 10:23:49 +08:00
multiboot.h hv: use macro instead of specify number 2018-07-31 11:17:11 +08:00
per_cpu.h HV:treewide:rename enum vpic_wire_mode, stack_canary, segment_override, pde_index 2018-07-31 11:20:21 +08:00
pgtable_types.h hv: mmu: revisit mmu modify page table attributes 2018-07-19 11:11:32 +08:00
pgtable.h hv: mmu: reimplement mmu_add to add page table mapping 2018-07-26 12:46:34 +08:00
reboot.h hv: Add reboot shell command 2018-05-18 16:38:40 +08:00
softirq.h HV: handle integral issue report by MISRA-C 2018-07-16 16:24:29 +08:00
timer.h HV:treewide:rename struct timer as struct hv_timer 2018-07-30 10:16:36 +08:00
trusty.h HV:treewide:rename struct key_info, pir_desc, map_params 2018-07-30 10:18:39 +08:00
vmexit.h HV:treewide:fix "Reference parameter to procedure is reassigned" 2018-07-27 12:17:12 +08:00
vmx.h hv: Explicitly trap VMXE and PCIDE bit for CR4 write 2018-08-01 11:35:30 +08:00
vtd.h HV: logical and high level precedence expression needs brackets 2018-07-24 10:10:39 +08:00
zeropage.h license: Replace license text with SPDX tag 2018-06-01 10:43:06 +08:00