spapr: Allow only supported dynamic sysbus devices

TYPE_SPAPR_PCI_HOST_BRIDGE is the only dynamic sysbus device not
rejected by ppc_spapr_reset(), so it can be the only entry on the
allowed list.

Cc: David Gibson <david@gibson.dropbear.id.au>
Cc: Alexander Graf <agraf@suse.de>
Cc: qemu-ppc@nongnu.org
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20171125151610.20547-5-ehabkost@redhat.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
Eduardo Habkost 2017-11-25 13:16:08 -02:00
parent 50d01d240f
commit 7da79a167a

View File

@ -3843,8 +3843,7 @@ static void spapr_machine_class_init(ObjectClass *oc, void *data)
mc->default_boot_order = ""; mc->default_boot_order = "";
mc->default_ram_size = 512 * M_BYTE; mc->default_ram_size = 512 * M_BYTE;
mc->kvm_type = spapr_kvm_type; mc->kvm_type = spapr_kvm_type;
/*TODO: allow only sysbus devices that really work with this machine */ machine_class_allow_dynamic_sysbus_dev(mc, TYPE_SPAPR_PCI_HOST_BRIDGE);
machine_class_allow_dynamic_sysbus_dev(mc, TYPE_SYS_BUS_DEVICE);
mc->pci_allow_0_address = true; mc->pci_allow_0_address = true;
mc->get_hotplug_handler = spapr_get_hotplug_handler; mc->get_hotplug_handler = spapr_get_hotplug_handler;
hc->pre_plug = spapr_machine_device_pre_plug; hc->pre_plug = spapr_machine_device_pre_plug;