From: BALATON Zoltan Date: Tue, 6 Mar 2018 23:15:15 +0000 (+0100) Subject: sii3112: Remove unneeded exit function X-Git-Tag: qemu-xen-4.12.0-rc1~371^2~7 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=d0f17aba759ba6a969d811db3f4f509e36467bcd;p=qemu-xen.git sii3112: Remove unneeded exit function An exit function was mistakenly left here but it's not needed because the PCI bars are organised differently in this device. Calling this exit function during device_del was causing an abort with memory_region_del_subregion: `Assertion subregion->container == mr' failed. Reported-by: Thomas Huth Signed-off-by: BALATON Zoltan Signed-off-by: David Gibson --- diff --git a/hw/ide/sii3112.c b/hw/ide/sii3112.c index e3896c65b4..743a50ed51 100644 --- a/hw/ide/sii3112.c +++ b/hw/ide/sii3112.c @@ -327,17 +327,6 @@ static void sii3112_pci_realize(PCIDevice *dev, Error **errp) qemu_register_reset(sii3112_reset, s); } -static void sii3112_pci_exitfn(PCIDevice *dev) -{ - PCIIDEState *d = PCI_IDE(dev); - int i; - - for (i = 0; i < 2; ++i) { - memory_region_del_subregion(&d->bmdma_bar, &d->bmdma[i].extra_io); - memory_region_del_subregion(&d->bmdma_bar, &d->bmdma[i].addr_ioport); - } -} - static void sii3112_pci_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -348,7 +337,6 @@ static void sii3112_pci_class_init(ObjectClass *klass, void *data) pd->class_id = PCI_CLASS_STORAGE_RAID; pd->revision = 1; pd->realize = sii3112_pci_realize; - pd->exit = sii3112_pci_exitfn; dc->desc = "SiI3112A SATA controller"; set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); }