aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/asm-x86/kvm_host.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/asm-x86/kvm_host.h b/include/asm-x86/kvm_host.h
index 99dddfcecf60..9cb4b4dae5c6 100644
--- a/include/asm-x86/kvm_host.h
+++ b/include/asm-x86/kvm_host.h
@@ -201,6 +201,13 @@ struct kvm_mmu_page {
201 }; 201 };
202}; 202};
203 203
204struct kvm_pv_mmu_op_buffer {
205 void *ptr;
206 unsigned len;
207 unsigned processed;
208 char buf[512] __aligned(sizeof(long));
209};
210
204/* 211/*
205 * x86 supports 3 paging modes (4-level 64-bit, 3-level 64-bit, and 2-level 212 * x86 supports 3 paging modes (4-level 64-bit, 3-level 64-bit, and 2-level
206 * 32-bit). The kvm_mmu structure abstracts the details of the current mmu 213 * 32-bit). The kvm_mmu structure abstracts the details of the current mmu
@@ -248,6 +255,9 @@ struct kvm_vcpu_arch {
248 bool tpr_access_reporting; 255 bool tpr_access_reporting;
249 256
250 struct kvm_mmu mmu; 257 struct kvm_mmu mmu;
258 /* only needed in kvm_pv_mmu_op() path, but it's hot so
259 * put it here to avoid allocation */
260 struct kvm_pv_mmu_op_buffer mmu_op_buffer;
251 261
252 struct kvm_mmu_memory_cache mmu_pte_chain_cache; 262 struct kvm_mmu_memory_cache mmu_pte_chain_cache;
253 struct kvm_mmu_memory_cache mmu_rmap_desc_cache; 263 struct kvm_mmu_memory_cache mmu_rmap_desc_cache;