Messages in this thread Patch in this message | | | Subject | [PATCH] KVM: mmu: honor global bit on huge pages | From | Avi Kivity <> | Date | Mon, 04 Dec 2006 14:57:35 -0000 |
| |
The kvm mmu attempts to cache global translations, however it misses on global huge page translation (which is what most global pages are).
By caching global huge page translations, boot time of fc5 i386 on i386 is reduced from ~35 seconds to ~24 seconds.
Signed-off-by: Avi Kivity <avi@qumranet.com>
Index: linux-2.6/drivers/kvm/paging_tmpl.h =================================================================== --- linux-2.6.orig/drivers/kvm/paging_tmpl.h +++ linux-2.6/drivers/kvm/paging_tmpl.h @@ -105,7 +105,7 @@ static void FNAME(set_pde)(struct kvm_vc if (PTTYPE == 32 && is_cpuid_PSE36()) gaddr |= (guest_pde & PT32_DIR_PSE36_MASK) << (32 - PT32_DIR_PSE36_SHIFT); - *shadow_pte = (guest_pde & PT_NON_PTE_COPY_MASK) | + *shadow_pte = (guest_pde & (PT_NON_PTE_COPY_MASK | PT_GLOBAL_MASK)) | ((guest_pde & PT_DIR_PAT_MASK) >> (PT_DIR_PAT_SHIFT - PT_PAT_SHIFT)); set_pte_common(vcpu, shadow_pte, gaddr, - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |