KVM: Disentangle mmu notifiers and coalesced_mmio registration

They aren't related.

Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
Avi Kivity 2009-12-20 14:25:19 +02:00 committed by Marcelo Tosatti
parent 953899b659
commit 283d0c65e4

View File

@ -374,17 +374,16 @@ static struct kvm *kvm_create_vm(void)
#endif #endif
#if defined(CONFIG_MMU_NOTIFIER) && defined(KVM_ARCH_WANT_MMU_NOTIFIER) #if defined(CONFIG_MMU_NOTIFIER) && defined(KVM_ARCH_WANT_MMU_NOTIFIER)
{ kvm->mmu_notifier.ops = &kvm_mmu_notifier_ops;
kvm->mmu_notifier.ops = &kvm_mmu_notifier_ops; r = mmu_notifier_register(&kvm->mmu_notifier, current->mm);
r = mmu_notifier_register(&kvm->mmu_notifier, current->mm); #endif
if (r) {
if (r) {
#ifdef KVM_COALESCED_MMIO_PAGE_OFFSET #ifdef KVM_COALESCED_MMIO_PAGE_OFFSET
put_page(page); put_page(page);
#endif #endif
goto out_err; goto out_err;
}
} }
#endif
kvm->mm = current->mm; kvm->mm = current->mm;
atomic_inc(&kvm->mm->mm_count); atomic_inc(&kvm->mm->mm_count);
@ -406,11 +405,8 @@ static struct kvm *kvm_create_vm(void)
out: out:
return kvm; return kvm;
#if defined(KVM_COALESCED_MMIO_PAGE_OFFSET) || \
(defined(CONFIG_MMU_NOTIFIER) && defined(KVM_ARCH_WANT_MMU_NOTIFIER))
out_err: out_err:
hardware_disable_all(); hardware_disable_all();
#endif
out_err_nodisable: out_err_nodisable:
kfree(kvm); kfree(kvm);
return ERR_PTR(r); return ERR_PTR(r);