From: Zhang Xiantao <[EMAIL PROTECTED]> Date: Tue, 20 Nov 2007 22:54:22 +0800 Subject: [PATCH] KVM Portability: Moving out kvm_mem_alias, and unalias_gfn definitions from common code. Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]> --- drivers/kvm/kvm.h | 6 ------ drivers/kvm/kvm_main.c | 15 --------------- drivers/kvm/x86.c | 15 +++++++++++++++ drivers/kvm/x86.h | 6 ++++++ 4 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/drivers/kvm/kvm.h b/drivers/kvm/kvm.h index 476150c..c7fdcd6 100644 --- a/drivers/kvm/kvm.h +++ b/drivers/kvm/kvm.h @@ -277,12 +277,6 @@ void kvm_io_bus_register_dev(struct kvm_io_bus *bus, struct kvm_vcpu_stat stat; \ KVM_VCPU_MMIO -struct kvm_mem_alias { - gfn_t base_gfn; - unsigned long npages; - gfn_t target_gfn; -}; - struct kvm_memory_slot { gfn_t base_gfn; unsigned long npages; diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kvm_main.c index 2490e06..33a1354 100644 --- a/drivers/kvm/kvm_main.c +++ b/drivers/kvm/kvm_main.c @@ -400,21 +400,6 @@ int kvm_is_error_hva(unsigned long addr) } EXPORT_SYMBOL_GPL(kvm_is_error_hva); -gfn_t unalias_gfn(struct kvm *kvm, gfn_t gfn) -{ - int i; - struct kvm_mem_alias *alias; - struct kvm_x86 *kvm_x86 = to_kvm_x86(kvm); - - for (i = 0; i < kvm_x86->naliases; ++i) { - alias = &kvm_x86->aliases[i]; - if (gfn >= alias->base_gfn - && gfn < alias->base_gfn + alias->npages) - return alias->target_gfn + gfn - alias->base_gfn; - } - return gfn; -} - static struct kvm_memory_slot *__gfn_to_memslot(struct kvm *kvm, gfn_t gfn) { int i; diff --git a/drivers/kvm/x86.c b/drivers/kvm/x86.c index 15b43f5..13db394 100644 --- a/drivers/kvm/x86.c +++ b/drivers/kvm/x86.c @@ -833,6 +833,21 @@ static int kvm_vm_ioctl_get_nr_mmu_pages(struct kvm *kvm) return kvm->n_alloc_mmu_pages; } +gfn_t unalias_gfn(struct kvm *kvm, gfn_t gfn) +{ + int i; + struct kvm_mem_alias *alias; + struct kvm_x86 *kvm_x86 = to_kvm_x86(kvm); + + for (i = 0; i < kvm_x86->naliases; ++i) { + alias = &kvm_x86->aliases[i]; + if (gfn >= alias->base_gfn + && gfn < alias->base_gfn + alias->npages) + return alias->target_gfn + gfn - alias->base_gfn; + } + return gfn; +} + /* * Set a new alias region. Aliases map a portion of physical memory into * another portion. This is useful for memory windows, for example the PC diff --git a/drivers/kvm/x86.h b/drivers/kvm/x86.h index e5db023..f792bb9 100644 --- a/drivers/kvm/x86.h +++ b/drivers/kvm/x86.h @@ -156,6 +156,12 @@ struct kvm_vcpu { struct x86_emulate_ctxt emulate_ctxt; }; +struct kvm_mem_alias { + gfn_t base_gfn; + unsigned long npages; + gfn_t target_gfn; +}; + struct kvm_x86 { struct kvm kvm; int naliases; -- 1.5.1.2
0003-KVM-Portability-Moving-out-kvm_mem_alias-and-unali.patch
Description: 0003-KVM-Portability-Moving-out-kvm_mem_alias-and-unali.patch
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel