summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLiang Chen <liangchen.linux@gmail.com>2018-07-25 10:32:14 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2018-08-06 17:59:19 +0200
commitee6268ba3a6861b2806e569bff7fe91fbdf846dd (patch)
treea43322cfc909ce16454ef5d9cdaa46dd9b51d026 /arch
parentKVM/MMU: Combine flushing remote tlb in mmu_set_spte() (diff)
downloadlinux-ee6268ba3a6861b2806e569bff7fe91fbdf846dd.tar.xz
linux-ee6268ba3a6861b2806e569bff7fe91fbdf846dd.zip
KVM: x86: Skip pae_root shadow allocation if tdp enabled
Considering the fact that the pae_root shadow is not needed when tdp is in use, skip the pae_root shadow page allocation to allow mmu creation even not being able to obtain memory from DMA32 zone when particular cgroup cpuset.mems or mempolicy control is applied. Signed-off-by: Liang Chen <liangchen.linux@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kvm/mmu.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 8f216321d33b..f5aef52b148b 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -5341,6 +5341,9 @@ static int alloc_mmu_pages(struct kvm_vcpu *vcpu)
struct page *page;
int i;
+ if (tdp_enabled)
+ return 0;
+
/*
* When emulating 32-bit mode, cr3 is only 32 bits even on x86_64.
* Therefore we need to allocate shadow page tables in the first