From 1fcfdc435a3e25ab9037f6f7b8ab4bdf89ba1269 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Mon, 2 Jul 2018 18:33:44 +0200 Subject: vga: disable global_vmstate for 3.0+ machine types Move global_vmstate from vga_common_init() parameter to VGACommonState field. Set global_vmstate to true for isa vga devices, so nothing changes here. virtio-vga and secondary-vga already set global_vmstate to false so no change here either. All other pci vga devices get a new global-vmstate property, defaulting to false. A compat property flips it to true for older machine types. With this in place you don't get a vmstate section naming conflict any more when adding multiple pci vga devices to your vm. Signed-off-by: Gerd Hoffmann Message-Id: <20180702163345.17892-1-kraxel@redhat.com> --- hw/display/qxl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'hw/display/qxl.c') diff --git a/hw/display/qxl.c b/hw/display/qxl.c index a71714ccb4..3f740d7aa3 100644 --- a/hw/display/qxl.c +++ b/hw/display/qxl.c @@ -2168,7 +2168,7 @@ static void qxl_realize_primary(PCIDevice *dev, Error **errp) qxl_init_ramsize(qxl); vga->vbe_size = qxl->vgamem_size; vga->vram_size_mb = qxl->vga.vram_size >> 20; - vga_common_init(vga, OBJECT(dev), true); + vga_common_init(vga, OBJECT(dev)); vga_init(vga, OBJECT(dev), pci_address_space(dev), pci_address_space_io(dev), false); portio_list_init(&qxl->vga_port_list, OBJECT(dev), qxl_vga_portio_list, @@ -2410,6 +2410,7 @@ static Property qxl_properties[] = { #endif DEFINE_PROP_UINT32("xres", PCIQXLDevice, xres, 0), DEFINE_PROP_UINT32("yres", PCIQXLDevice, yres, 0), + DEFINE_PROP_BOOL("global-vmstate", PCIQXLDevice, vga.global_vmstate, false), DEFINE_PROP_END_OF_LIST(), }; -- cgit 1.4.1