linux/virt/kvm
Paolo Bonzini 3c3c29fd0d kvm-vfio: do not use module_init
/me got confused between the kernel and QEMU.  In the kernel, you can
only have one module_init function, and it will prevent unloading the
module unless you also have the corresponding module_exit function.

So, commit 80ce163972 (KVM: VFIO: register kvm_device_ops dynamically,
2014-09-02) broke unloading of the kvm module, by adding a module_init
function and no module_exit.

Repair it by making kvm_vfio_ops_init weak, and checking it in
kvm_init.

Cc: Will Deacon <will.deacon@arm.com>
Cc: Gleb Natapov <gleb@kernel.org>
Cc: Alex Williamson <Alex.Williamson@redhat.com>
Fixes: 80ce163972
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-09-24 14:06:36 +02:00
..
arm KVM: ARM: vgic: register kvm_device_ops dynamically 2014-09-17 13:10:09 +02:00
Kconfig KVM: Give IRQFD its own separate enabling Kconfig option 2014-08-05 14:26:28 +02:00
assigned-dev.c virt/kvm/assigned-dev.c: Set 'dev->irq_source_id' to '-1' after free it 2014-08-19 15:12:28 +02:00
async_pf.c At over 200 commits, covering almost all supported architectures, this 2014-06-04 08:47:12 -07:00
async_pf.h KVM: Halt vcpu if page it tries to access is swapped out 2011-01-12 11:21:39 +02:00
coalesced_mmio.c KVM: return an error code in kvm_vm_ioctl_register_coalesced_mmio() 2014-01-30 11:56:09 +01:00
coalesced_mmio.h KVM: Make coalesced mmio use a device per zone 2011-09-25 19:17:57 +03:00
eventfd.c KVM: EVENTFD: Remove inclusion of irq.h 2014-09-24 12:06:25 +02:00
ioapic.c kvm: ioapic: conditionally delay irq delivery duringeoi broadcast 2014-09-16 14:44:48 +02:00
ioapic.h kvm: ioapic: conditionally delay irq delivery duringeoi broadcast 2014-09-16 14:44:48 +02:00
iodev.h KVM: remove in_range from io devices 2009-09-10 08:33:05 +03:00
iommu.c kvm: iommu: fix the third parameter of kvm_iommu_put_pages (CVE-2014-3601) 2014-08-19 15:04:45 +02:00
irq_comm.c KVM: Move all accesses to kvm::irq_routing into irqchip.c 2014-08-05 14:26:20 +02:00
irqchip.c KVM: Move irq notifier implementation into eventfd.c 2014-08-05 14:26:24 +02:00
kvm_main.c kvm-vfio: do not use module_init 2014-09-24 14:06:36 +02:00
vfio.c kvm-vfio: do not use module_init 2014-09-24 14:06:36 +02:00
vfio.h kvm-vfio: do not use module_init 2014-09-24 14:06:36 +02:00