diff options
author | Avi Kivity <avi@redhat.com> | 2009-12-20 14:54:04 +0200 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2010-03-01 12:35:41 -0300 |
commit | 4c07b0a4b6df45fd8c6d07d838b4faf65eed2ba4 (patch) | |
tree | 81480994994292d8f7e5c1128becd1052651f6d1 /virt | |
parent | 3f0852e0aca9de2d2f8bc756630a82352cbfde68 (diff) | |
download | lwn-4c07b0a4b6df45fd8c6d07d838b4faf65eed2ba4.tar.gz lwn-4c07b0a4b6df45fd8c6d07d838b4faf65eed2ba4.zip |
KVM: Remove ifdefs from mmu notifier initialization
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'virt')
-rw-r--r-- | virt/kvm/kvm_main.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 92f5c98b6c4d..c10d117c4317 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -341,6 +341,20 @@ static const struct mmu_notifier_ops kvm_mmu_notifier_ops = { .change_pte = kvm_mmu_notifier_change_pte, .release = kvm_mmu_notifier_release, }; + +static int kvm_init_mmu_notifier(struct kvm *kvm) +{ + kvm->mmu_notifier.ops = &kvm_mmu_notifier_ops; + return mmu_notifier_register(&kvm->mmu_notifier, current->mm); +} + +#else /* !(CONFIG_MMU_NOTIFIER && KVM_ARCH_WANT_MMU_NOTIFIER) */ + +static int kvm_init_mmu_notifier(struct kvm *kvm) +{ + return 0; +} + #endif /* CONFIG_MMU_NOTIFIER && KVM_ARCH_WANT_MMU_NOTIFIER */ static struct kvm *kvm_create_vm(void) @@ -373,11 +387,7 @@ static struct kvm *kvm_create_vm(void) (struct kvm_coalesced_mmio_ring *)page_address(page); #endif -#if defined(CONFIG_MMU_NOTIFIER) && defined(KVM_ARCH_WANT_MMU_NOTIFIER) - kvm->mmu_notifier.ops = &kvm_mmu_notifier_ops; - r = mmu_notifier_register(&kvm->mmu_notifier, current->mm); -#endif - + r = kvm_init_mmu_notifier(kvm); if (r) { #ifdef KVM_COALESCED_MMIO_PAGE_OFFSET put_page(page); |