From 64cbdc5609da9ad00bf454d76ec45925633fdfae Mon Sep 17 00:00:00 2001 From: Miroslav Rezanina Date: Tue, 14 Jul 2015 08:53:23 +0200 Subject: [PATCH 03/11] Mark onboard devices as cannot_instantiate_with_device_add_yet Message-id: Patchwork-id: 66277 O-Subject: [RHEV-7.2 qemu-kvm-rhev PATCH 3/3] Mark onboard devices as cannot_instantiate_with_device_add_yet Bugzilla: 1194151 RH-Acked-by: Laszlo Ersek RH-Acked-by: Thomas Huth RH-Acked-by: Markus Armbruster From: Miroslav Rezanina Changes in no_user handling cause some device to appear visible. Mark them as cannot_instantiate_with_device_add_yet so user can't handle them through -device parameter. Signed-off-by: Miroslav Rezanina --- hw/block/fdc.c | 2 ++ hw/block/pflash_cfi01.c | 1 + hw/cpu/icc_bus.c | 1 + hw/i386/kvm/clock.c | 1 + hw/i386/kvm/ioapic.c | 1 + hw/i386/kvmvapic.c | 1 + hw/ide/ahci.c | 1 + hw/intc/ioapic.c | 1 + hw/isa/isa-bus.c | 1 + hw/nvram/fw_cfg.c | 3 +++ hw/pci-host/piix.c | 1 + hw/pci-host/q35.c | 1 + hw/virtio/virtio-mmio.c | 1 + 13 files changed, 16 insertions(+) diff --git a/hw/block/fdc.c b/hw/block/fdc.c index 516a761..7e08e41 100644 --- a/hw/block/fdc.c +++ b/hw/block/fdc.c @@ -2390,6 +2390,7 @@ static void sysbus_fdc_class_init(ObjectClass *klass, void *data) DeviceClass *dc = DEVICE_CLASS(klass); dc->props = sysbus_fdc_properties; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); } @@ -2410,6 +2411,7 @@ static void sun4m_fdc_class_init(ObjectClass *klass, void *data) DeviceClass *dc = DEVICE_CLASS(klass); dc->props = sun4m_fdc_properties; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); } diff --git a/hw/block/pflash_cfi01.c b/hw/block/pflash_cfi01.c index d282695..eb7fba6 100644 --- a/hw/block/pflash_cfi01.c +++ b/hw/block/pflash_cfi01.c @@ -941,6 +941,7 @@ static void pflash_cfi01_class_init(ObjectClass *klass, void *data) dc->realize = pflash_cfi01_realize; dc->props = pflash_cfi01_properties; dc->vmsd = &vmstate_pflash; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); } diff --git a/hw/cpu/icc_bus.c b/hw/cpu/icc_bus.c index 6646ea2..e9a5f31 100644 --- a/hw/cpu/icc_bus.c +++ b/hw/cpu/icc_bus.c @@ -96,6 +96,7 @@ static void icc_bridge_class_init(ObjectClass *oc, void *data) { DeviceClass *dc = DEVICE_CLASS(oc); + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ set_bit(DEVICE_CATEGORY_BRIDGE, dc->categories); } diff --git a/hw/i386/kvm/clock.c b/hw/i386/kvm/clock.c index efdf165..235f90a 100644 --- a/hw/i386/kvm/clock.c +++ b/hw/i386/kvm/clock.c @@ -180,6 +180,7 @@ static void kvmclock_class_init(ObjectClass *klass, void *data) dc->realize = kvmclock_realize; dc->vmsd = &kvmclock_vmsd; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo kvmclock_info = { diff --git a/hw/i386/kvm/ioapic.c b/hw/i386/kvm/ioapic.c index d2a6c4c..d0a4687 100644 --- a/hw/i386/kvm/ioapic.c +++ b/hw/i386/kvm/ioapic.c @@ -151,6 +151,7 @@ static void kvm_ioapic_class_init(ObjectClass *klass, void *data) k->post_load = kvm_ioapic_put; dc->reset = kvm_ioapic_reset; dc->props = kvm_ioapic_properties; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo kvm_ioapic_info = { diff --git a/hw/i386/kvmvapic.c b/hw/i386/kvmvapic.c index c6d34b2..4a63430 100644 --- a/hw/i386/kvmvapic.c +++ b/hw/i386/kvmvapic.c @@ -843,6 +843,7 @@ static void vapic_class_init(ObjectClass *klass, void *data) dc->reset = vapic_reset; dc->vmsd = &vmstate_vapic; dc->realize = vapic_realize; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo vapic_type = { diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c index 833fd45..24fe3ea 100644 --- a/hw/ide/ahci.c +++ b/hw/ide/ahci.c @@ -1499,6 +1499,7 @@ static void sysbus_ahci_class_init(ObjectClass *klass, void *data) dc->vmsd = &vmstate_sysbus_ahci; dc->props = sysbus_ahci_properties; dc->reset = sysbus_ahci_reset; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); } diff --git a/hw/intc/ioapic.c b/hw/intc/ioapic.c index b527932..b0d4963 100644 --- a/hw/intc/ioapic.c +++ b/hw/intc/ioapic.c @@ -244,6 +244,7 @@ static void ioapic_class_init(ObjectClass *klass, void *data) k->realize = ioapic_realize; dc->reset = ioapic_reset_common; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo ioapic_info = { diff --git a/hw/isa/isa-bus.c b/hw/isa/isa-bus.c index 825aa62..98ef064 100644 --- a/hw/isa/isa-bus.c +++ b/hw/isa/isa-bus.c @@ -202,6 +202,7 @@ static void isabus_bridge_class_init(ObjectClass *klass, void *data) DeviceClass *dc = DEVICE_CLASS(klass); dc->fw_name = "isa"; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo isabus_bridge_info = { diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c index 68eff77..e54cce1 100644 --- a/hw/nvram/fw_cfg.c +++ b/hw/nvram/fw_cfg.c @@ -673,6 +673,7 @@ static void fw_cfg_class_init(ObjectClass *klass, void *data) dc->reset = fw_cfg_reset; dc->vmsd = &vmstate_fw_cfg; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo fw_cfg_info = { @@ -704,6 +705,7 @@ static void fw_cfg_io_class_init(ObjectClass *klass, void *data) dc->realize = fw_cfg_io_realize; dc->props = fw_cfg_io_properties; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo fw_cfg_io_info = { @@ -752,6 +754,7 @@ static void fw_cfg_mem_class_init(ObjectClass *klass, void *data) dc->realize = fw_cfg_mem_realize; dc->props = fw_cfg_mem_properties; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo fw_cfg_mem_info = { diff --git a/hw/pci-host/piix.c b/hw/pci-host/piix.c index 723836f..45fdeca 100644 --- a/hw/pci-host/piix.c +++ b/hw/pci-host/piix.c @@ -757,6 +757,7 @@ static void i440fx_pcihost_class_init(ObjectClass *klass, void *data) dc->realize = i440fx_pcihost_realize; dc->fw_name = "pci"; dc->props = i440fx_props; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static const TypeInfo i440fx_pcihost_info = { diff --git a/hw/pci-host/q35.c b/hw/pci-host/q35.c index c8827cc..ca2c7b8 100644 --- a/hw/pci-host/q35.c +++ b/hw/pci-host/q35.c @@ -139,6 +139,7 @@ static void q35_host_class_init(ObjectClass *klass, void *data) dc->props = mch_props; set_bit(DEVICE_CATEGORY_BRIDGE, dc->categories); dc->fw_name = "pci"; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ } static void q35_host_initfn(Object *obj) diff --git a/hw/virtio/virtio-mmio.c b/hw/virtio/virtio-mmio.c index a368a39..4c0eb1f 100644 --- a/hw/virtio/virtio-mmio.c +++ b/hw/virtio/virtio-mmio.c @@ -358,6 +358,7 @@ static void virtio_mmio_class_init(ObjectClass *klass, void *data) dc->realize = virtio_mmio_realizefn; dc->reset = virtio_mmio_reset; + dc->cannot_instantiate_with_device_add_yet = true; /* RH state preserve */ set_bit(DEVICE_CATEGORY_MISC, dc->categories); } -- 1.8.3.1