From 8e64ee92a67a7459032a3d2de1454f0edbe056c7 Mon Sep 17 00:00:00 2001 From: Joerg Roedel Date: Fri, 10 Sep 2010 17:30:38 +0200 Subject: [PATCH] --- yaml --- r: 215861 b: refs/heads/master c: 957446afce22df9a42b9482fcd55985f4037fe66 h: refs/heads/master i: 215859: fdcdfdcb37d0e4684bb86bb4a24c624eb434a65c v: v3 --- [refs] | 2 +- trunk/arch/x86/kvm/paging_tmpl.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 2ca4d7ea1aab..099fe5428558 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7b91409822ed37f2a58974e49498bdbe92ddd93c +refs/heads/master: 957446afce22df9a42b9482fcd55985f4037fe66 diff --git a/trunk/arch/x86/kvm/paging_tmpl.h b/trunk/arch/x86/kvm/paging_tmpl.h index debe77035366..e4ad3dc84df3 100644 --- a/trunk/arch/x86/kvm/paging_tmpl.h +++ b/trunk/arch/x86/kvm/paging_tmpl.h @@ -132,7 +132,7 @@ static int FNAME(walk_addr)(struct guest_walker *walker, walker->level = vcpu->arch.mmu.root_level; pte = vcpu->arch.cr3; #if PTTYPE == 64 - if (!is_long_mode(vcpu)) { + if (vcpu->arch.mmu.root_level == PT32E_ROOT_LEVEL) { pte = kvm_pdptr_read(vcpu, (addr >> 30) & 3); trace_kvm_mmu_paging_element(pte, walker->level); if (!is_present_gpte(pte)) { @@ -205,7 +205,7 @@ static int FNAME(walk_addr)(struct guest_walker *walker, (PTTYPE == 64 || is_pse(vcpu))) || ((walker->level == PT_PDPE_LEVEL) && is_large_pte(pte) && - is_long_mode(vcpu))) { + vcpu->arch.mmu.root_level == PT64_ROOT_LEVEL)) { int lvl = walker->level; walker->gfn = gpte_to_gfn_lvl(pte, lvl);