[PATCH 11/14] hw/display/vmware_vga: Let the PCI device own its I/O MemoryRegion

Philippe Mathieu-Daudé posted 14 patches 5 years, 8 months ago
[PATCH 11/14] hw/display/vmware_vga: Let the PCI device own its I/O MemoryRegion
Posted by Philippe Mathieu-Daudé 5 years, 8 months ago
To avoid the orphan I/O memory region being added in the /unattached
QOM container, register the PCI device as its owner.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
RFC: This might break migration
---
 hw/display/vmware_vga.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/display/vmware_vga.c b/hw/display/vmware_vga.c
index 5c0fc49d9d..2579f6b218 100644
--- a/hw/display/vmware_vga.c
+++ b/hw/display/vmware_vga.c
@@ -1306,7 +1306,7 @@ static void pci_vmsvga_realize(PCIDevice *dev, Error **errp)
     dev->config[PCI_LATENCY_TIMER] = 0x40;
     dev->config[PCI_INTERRUPT_LINE] = 0xff;          /* End */
 
-    memory_region_init_io(&s->io_bar, NULL, &vmsvga_io_ops, &s->chip,
+    memory_region_init_io(&s->io_bar, OBJECT(dev), &vmsvga_io_ops, &s->chip,
                           "vmsvga-io", 0x10);
     memory_region_set_flush_coalesced(&s->io_bar);
     pci_register_bar(dev, 0, PCI_BASE_ADDRESS_SPACE_IO, &s->io_bar);
-- 
2.21.3


Re: [PATCH 11/14] hw/display/vmware_vga: Let the PCI device own its I/O MemoryRegion
Posted by Gerd Hoffmann 5 years, 8 months ago
On Tue, May 26, 2020 at 08:22:49AM +0200, Philippe Mathieu-Daudé wrote:
> To avoid the orphan I/O memory region being added in the /unattached
> QOM container, register the PCI device as its owner.
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> RFC: This might break migration

--verbose please.  This doesn't touch the live migration data stream?

take care,
  Gerd


Re: [PATCH 11/14] hw/display/vmware_vga: Let the PCI device own its I/O MemoryRegion
Posted by Philippe Mathieu-Daudé 5 years, 8 months ago
On 5/26/20 10:01 AM, Gerd Hoffmann wrote:
> On Tue, May 26, 2020 at 08:22:49AM +0200, Philippe Mathieu-Daudé wrote:
>> To avoid the orphan I/O memory region being added in the /unattached
>> QOM container, register the PCI device as its owner.
>>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>> RFC: This might break migration
> 
> --verbose please.  This doesn't touch the live migration data stream?

Oops, this is an I/O region... I was confused by this warning form Peter:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg681970.html

But it is restricted to RAM regions, so this patch is harmless.

Re: [PATCH 11/14] hw/display/vmware_vga: Let the PCI device own its I/O MemoryRegion
Posted by Gerd Hoffmann 5 years, 8 months ago
On Tue, May 26, 2020 at 10:16:19AM +0200, Philippe Mathieu-Daudé wrote:
> On 5/26/20 10:01 AM, Gerd Hoffmann wrote:
> > On Tue, May 26, 2020 at 08:22:49AM +0200, Philippe Mathieu-Daudé wrote:
> >> To avoid the orphan I/O memory region being added in the /unattached
> >> QOM container, register the PCI device as its owner.
> >>
> >> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> >> ---
> >> RFC: This might break migration
> > 
> > --verbose please.  This doesn't touch the live migration data stream?
> 
> Oops, this is an I/O region... I was confused by this warning form Peter:
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg681970.html
> 
> But it is restricted to RAM regions, so this patch is harmless.

Yes, for ram regions this is a problem, this is why vga has
global_vmstate.  No problem for io.  Series looks fine then.

take care,
  Gerd