LWN.net Logo

KVM support for 1GB pages

From:  Joerg Roedel <joerg.roedel@amd.com>
To:  Avi Kivity <avi@redhat.com>, Marcelo Tosatti <marcelo@kvack.org>
Subject:  [PATCH 0/8 v3] KVM support for 1GB pages
Date:  Fri, 19 Jun 2009 15:16:21 +0200
Message-ID:  <1245417389-5527-1-git-send-email-joerg.roedel@amd.com>
Cc:  kvm@vger.kernel.org, linux-kernel@vger.kernel.org
Archive-link:  Article, Thread

Hi,

this is the third version of the patches for KVM to support 1GB pages. Changes
to the last version include:

	- changed reporting of 1GB page support to userspace to use
	  SUPPORTED_CPUID ioctl
	- added support for 1GB pages to the software page walker code too

This code still only can make use of 1GB pages with nested paging enabled. I
will give the shadow paging code another debug round soon. Please comment or
consider to apply these patches.

Thanks,

	Joerg

Shortlog:

Joerg Roedel (8):
      hugetlbfs: export vma_kernel_pagsize to modules
      kvm: change memslot data structures for multiple hugepage sizes
      kvm/mmu: rename is_largepage_backed to mapping_level
      kvm/mmu: make rmap code aware of mapping levels
      kvm/mmu: make direct mapping paths aware of mapping levels
      kvm/mmu: add support for another level to page walker
      kvm/mmu: enable gbpages by increasing nr of pagesizes
      kvm x86: report 1GB page support to userspace

Diffstat:

 arch/ia64/include/asm/kvm_host.h    |    3 +-
 arch/powerpc/include/asm/kvm_host.h |    3 +-
 arch/x86/include/asm/kvm_host.h     |   15 ++-
 arch/x86/kvm/mmu.c                  |  219 ++++++++++++++++++++++-------------
 arch/x86/kvm/paging_tmpl.h          |   27 ++++-
 arch/x86/kvm/svm.c                  |    6 +
 arch/x86/kvm/vmx.c                  |    6 +
 arch/x86/kvm/x86.c                  |    3 +-
 include/linux/kvm_host.h            |    2 +-
 mm/hugetlb.c                        |    1 +
 virt/kvm/kvm_main.c                 |   53 ++++++---
 11 files changed, 222 insertions(+), 116 deletions(-)



Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds