On 13.04.2017 22:19, Radim Krčmář wrote: > Moving it to generic code will allow us to extend it with ease. > > Signed-off-by: Radim Krčmář <rkrcmar@xxxxxxxxxx> > --- > include/linux/kvm_host.h | 12 ------------ > virt/kvm/kvm_main.c | 16 +++++++++++++--- > 2 files changed, 13 insertions(+), 15 deletions(-) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 397b7b5b1933..ae4e114cb7d1 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -769,18 +769,6 @@ int kvm_arch_vcpu_should_kick(struct kvm_vcpu *vcpu); > > void *kvm_kvzalloc(unsigned long size); > > -#ifndef __KVM_HAVE_ARCH_VM_ALLOC > -static inline struct kvm *kvm_arch_alloc_vm(void) > -{ > - return kzalloc(sizeof(struct kvm), GFP_KERNEL); > -} > - > -static inline void kvm_arch_free_vm(struct kvm *kvm) > -{ > - kfree(kvm); > -} > -#endif > - > #ifdef __KVM_HAVE_ARCH_NONCOHERENT_DMA > void kvm_arch_register_noncoherent_dma(struct kvm *kvm); > void kvm_arch_unregister_noncoherent_dma(struct kvm *kvm); > diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c > index 357e67cba32e..f03b093abffe 100644 > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -604,10 +604,20 @@ static int kvm_create_vm_debugfs(struct kvm *kvm, int fd) > return 0; > } > > +static inline struct kvm *kvm_alloc_vm(void) > +{ > + return kzalloc(sizeof(struct kvm), GFP_KERNEL); > +} > + > +static inline void kvm_free_vm(struct kvm *kvm) > +{ > + kfree(kvm); > +} > + > static struct kvm *kvm_create_vm(unsigned long type) > { > int r, i; > - struct kvm *kvm = kvm_arch_alloc_vm(); > + struct kvm *kvm = kvm_alloc_vm(); > > if (!kvm) > return ERR_PTR(-ENOMEM); > @@ -684,7 +694,7 @@ static struct kvm *kvm_create_vm(unsigned long type) > kfree(kvm->buses[i]); > for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) > kvm_free_memslots(kvm, kvm->memslots[i]); > - kvm_arch_free_vm(kvm); > + kvm_free_vm(kvm); > mmdrop(current->mm); > return ERR_PTR(r); > } > @@ -744,7 +754,7 @@ static void kvm_destroy_vm(struct kvm *kvm) > kvm_free_memslots(kvm, kvm->memslots[i]); > cleanup_srcu_struct(&kvm->irq_srcu); > cleanup_srcu_struct(&kvm->srcu); > - kvm_arch_free_vm(kvm); > + kvm_free_vm(kvm); > preempt_notifier_dec(); > hardware_disable_all(); > mmdrop(mm); > Reviewed-by: David Hildenbrand <david@xxxxxxxxxx> -- Thanks, David