diff options
Diffstat (limited to 'include/asm-x86/kvm_host.h')
-rw-r--r-- | include/asm-x86/kvm_host.h | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/include/asm-x86/kvm_host.h b/include/asm-x86/kvm_host.h index 4702b04b979a..68ee390b2844 100644 --- a/include/asm-x86/kvm_host.h +++ b/include/asm-x86/kvm_host.h | |||
@@ -22,15 +22,16 @@ | |||
22 | 22 | ||
23 | #define CR3_PAE_RESERVED_BITS ((X86_CR3_PWT | X86_CR3_PCD) - 1) | 23 | #define CR3_PAE_RESERVED_BITS ((X86_CR3_PWT | X86_CR3_PCD) - 1) |
24 | #define CR3_NONPAE_RESERVED_BITS ((PAGE_SIZE-1) & ~(X86_CR3_PWT | X86_CR3_PCD)) | 24 | #define CR3_NONPAE_RESERVED_BITS ((PAGE_SIZE-1) & ~(X86_CR3_PWT | X86_CR3_PCD)) |
25 | #define CR3_L_MODE_RESERVED_BITS (CR3_NONPAE_RESERVED_BITS|0xFFFFFF0000000000ULL) | 25 | #define CR3_L_MODE_RESERVED_BITS (CR3_NONPAE_RESERVED_BITS | \ |
26 | 0xFFFFFF0000000000ULL) | ||
26 | 27 | ||
27 | #define KVM_GUEST_CR0_MASK \ | 28 | #define KVM_GUEST_CR0_MASK \ |
28 | (X86_CR0_PG | X86_CR0_PE | X86_CR0_WP | X86_CR0_NE \ | 29 | (X86_CR0_PG | X86_CR0_PE | X86_CR0_WP | X86_CR0_NE \ |
29 | | X86_CR0_NW | X86_CR0_CD) | 30 | | X86_CR0_NW | X86_CR0_CD) |
30 | #define KVM_VM_CR0_ALWAYS_ON \ | 31 | #define KVM_VM_CR0_ALWAYS_ON \ |
31 | (X86_CR0_PG | X86_CR0_PE | X86_CR0_WP | X86_CR0_NE | X86_CR0_TS \ | 32 | (X86_CR0_PG | X86_CR0_PE | X86_CR0_WP | X86_CR0_NE | X86_CR0_TS \ |
32 | | X86_CR0_MP) | 33 | | X86_CR0_MP) |
33 | #define KVM_GUEST_CR4_MASK \ | 34 | #define KVM_GUEST_CR4_MASK \ |
34 | (X86_CR4_VME | X86_CR4_PSE | X86_CR4_PAE | X86_CR4_PGE | X86_CR4_VMXE) | 35 | (X86_CR4_VME | X86_CR4_PSE | X86_CR4_PAE | X86_CR4_PGE | X86_CR4_VMXE) |
35 | #define KVM_PMODE_VM_CR4_ALWAYS_ON (X86_CR4_PAE | X86_CR4_VMXE) | 36 | #define KVM_PMODE_VM_CR4_ALWAYS_ON (X86_CR4_PAE | X86_CR4_VMXE) |
36 | #define KVM_RMODE_VM_CR4_ALWAYS_ON (X86_CR4_VME | X86_CR4_PAE | X86_CR4_VMXE) | 37 | #define KVM_RMODE_VM_CR4_ALWAYS_ON (X86_CR4_VME | X86_CR4_PAE | X86_CR4_VMXE) |
@@ -133,12 +134,12 @@ struct kvm_pte_chain { | |||
133 | union kvm_mmu_page_role { | 134 | union kvm_mmu_page_role { |
134 | unsigned word; | 135 | unsigned word; |
135 | struct { | 136 | struct { |
136 | unsigned glevels : 4; | 137 | unsigned glevels:4; |
137 | unsigned level : 4; | 138 | unsigned level:4; |
138 | unsigned quadrant : 2; | 139 | unsigned quadrant:2; |
139 | unsigned pad_for_nice_hex_output : 6; | 140 | unsigned pad_for_nice_hex_output:6; |
140 | unsigned metaphysical : 1; | 141 | unsigned metaphysical:1; |
141 | unsigned access : 3; | 142 | unsigned access:3; |
142 | }; | 143 | }; |
143 | }; | 144 | }; |
144 | 145 | ||
@@ -606,6 +607,7 @@ static inline void kvm_inject_gp(struct kvm_vcpu *vcpu, u32 error_code) | |||
606 | #define TSS_BASE_SIZE 0x68 | 607 | #define TSS_BASE_SIZE 0x68 |
607 | #define TSS_IOPB_SIZE (65536 / 8) | 608 | #define TSS_IOPB_SIZE (65536 / 8) |
608 | #define TSS_REDIRECTION_SIZE (256 / 8) | 609 | #define TSS_REDIRECTION_SIZE (256 / 8) |
609 | #define RMODE_TSS_SIZE (TSS_BASE_SIZE + TSS_REDIRECTION_SIZE + TSS_IOPB_SIZE + 1) | 610 | #define RMODE_TSS_SIZE \ |
611 | (TSS_BASE_SIZE + TSS_REDIRECTION_SIZE + TSS_IOPB_SIZE + 1) | ||
610 | 612 | ||
611 | #endif | 613 | #endif |