Il 13/05/2013 12:54, David Gibson ha scritto: > Currently do_pci_unregister_device() calls memory_region_del_subregion() > on the device's bus_master_enable_region and the device's iommu region. > But the bus_master_enable_region is an _alias_ to the iommu region, the > iommu region is _not_ a subregion of it. I suspect this has slipped by > only because PCI hot unplug has not been tested with the new PCI DMA > address space handling. This patch removes the bogus call. > > Signed-off-by: David Gibson <da...@gibson.dropbear.id.au> > --- > hw/pci/pci.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/hw/pci/pci.c b/hw/pci/pci.c > index 0ba39e6..58d3f69 100644 > --- a/hw/pci/pci.c > +++ b/hw/pci/pci.c > @@ -875,7 +875,6 @@ static void do_pci_unregister_device(PCIDevice *pci_dev) > pci_config_free(pci_dev); > > address_space_destroy(&pci_dev->bus_master_as); > - memory_region_del_subregion(&pci_dev->bus_master_enable_region, > pci_dev->iommu); > pci_dev->bus->iommu_dtor_fn(pci_dev->iommu); > memory_region_destroy(&pci_dev->bus_master_enable_region); > } >
Applied to iommu branch, thanks. Paolo