KVM: make io_bus interface more robust
authorGregory Haskins <ghaskins@novell.com>
Tue, 7 Jul 2009 21:08:44 +0000 (17:08 -0400)
committerAvi Kivity <avi@redhat.com>
Thu, 10 Sep 2009 05:33:12 +0000 (08:33 +0300)
commit090b7aff27120cdae76a346a70db394844fea598
tree4676410f57a44d7c0fba9d791fc77d7850ad1d51
parentfef07aae9cd9ed82f94228c311b35360f1f38902
KVM: make io_bus interface more robust

Today kvm_io_bus_regsiter_dev() returns void and will internally BUG_ON
if it fails.  We want to create dynamic MMIO/PIO entries driven from
userspace later in the series, so we need to enhance the code to be more
robust with the following changes:

   1) Add a return value to the registration function
   2) Fix up all the callsites to check the return code, handle any
      failures, and percolate the error up to the caller.
   3) Add an unregister function that collapses holes in the array

Signed-off-by: Gregory Haskins <ghaskins@novell.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/kvm/i8254.c
arch/x86/kvm/i8259.c
include/linux/kvm_host.h
virt/kvm/coalesced_mmio.c
virt/kvm/ioapic.c
virt/kvm/kvm_main.c