From: Avi Kivity <[EMAIL PROTECTED]> Otherwise we re-initialize the mmu caches, which will fail since the caches are already registered, which will cause us to deinitialize said caches.
Signed-off-by: Avi Kivity <[EMAIL PROTECTED]> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 8a90403..77d57ff 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -2187,12 +2187,6 @@ int kvm_arch_init(void *opaque) int r; struct kvm_x86_ops *ops = (struct kvm_x86_ops *)opaque; - r = kvm_mmu_module_init(); - if (r) - goto out_fail; - - kvm_init_msr_list(); - if (kvm_x86_ops) { printk(KERN_ERR "kvm: already loaded the other module\n"); r = -EEXIST; @@ -2210,13 +2204,17 @@ int kvm_arch_init(void *opaque) goto out; } + r = kvm_mmu_module_init(); + if (r) + goto out; + + kvm_init_msr_list(); + kvm_x86_ops = ops; kvm_mmu_set_nonpresent_ptes(0ull, 0ull); return 0; out: - kvm_mmu_module_exit(); -out_fail: return r; } ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ kvm-commits mailing list kvm-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-commits