[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20151016170315.779ef31701287a3826b44892@lab.ntt.co.jp>
Date: Fri, 16 Oct 2015 17:03:15 +0900
From: Takuya Yoshikawa <yoshikawa_takuya_b1@....ntt.co.jp>
To: pbonzini@...hat.com
Cc: kvm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH 0/5 v2] KVM: x86: MMU: Eliminate extra memory slot searches
in page fault handlers
v2: Based on Paolo's suggestion, kept the common code as much as possible by
introducing memslot_valid_for_gpte().
Note: instead of joining all checks by boolean operators, splitted the
no_dirty_log case off to be a separate if-check because it is checking
clearly different thing than the rest. See patch 4 for details.
In page fault handlers, both mapping_level_dirty_bitmap() and mapping_level()
do a memory slot search, binary search, through kvm_vcpu_gfn_to_memslot(), which
may not be negligible especially for virtual machines with many memory slots.
With a bit of cleanup effort, the patch set reduces this overhead.
Takuya
Takuya Yoshikawa (5):
KVM: x86: MMU: Make force_pt_level bool
KVM: x86: MMU: Simplify force_pt_level calculation code in FNAME(page_fault)()
KVM: x86: MMU: Merge mapping_level_dirty_bitmap() into mapping_level()
KVM: x86: MMU: Remove mapping_level_dirty_bitmap()
KVM: x86: MMU: Eliminate an extra memory slot search in mapping_level()
arch/x86/kvm/mmu.c | 70 +++++++++++++++++++++++++++-------------------
arch/x86/kvm/paging_tmpl.h | 19 ++++++-------
2 files changed, 50 insertions(+), 39 deletions(-)
--
2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists