On 05/27/2010 11:06 AM, Gui Jianfeng wrote:
In case of using tdp, checking write protected page isn't needed and
quadrant also no need to be calculated.

Signed-off-by: Gui Jianfeng<[email protected]>
---
  arch/x86/kvm/mmu.c |    7 +++++--
  1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 0bb9f17..ce4bbd3 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -495,10 +495,13 @@ static int mapping_level(struct kvm_vcpu *vcpu, gfn_t 
large_gfn)
        max_level = kvm_x86_ops->get_lpage_level()<  host_level ?
                kvm_x86_ops->get_lpage_level() : host_level;

+       if (tdp_enabled)
+               goto done;
+
        for (level = PT_DIRECTORY_LEVEL; level<= max_level; ++level)
                if (has_wrprotected_page(vcpu->kvm, large_gfn, level))
                        break;
-
+done:
        return level - 1;
  }


We also use ->write_count to prevent mapping the end of a non-large-page-aligned memslot with a large spte.

Undocumented in mmu.txt, I'll post a patch.

--
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to