sii3112: Remove unneeded exit function
PATCH 1/1 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.
--- hw/ide/sii3112.c | 12 ------------ 1 file changed, 12 deletions(-)
hw/ide/sii3112.c +0 -12
@@ -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); }
Signature · 1 line
2.7.6
David Gibson
AppliedQuoted 7 lines · BALATON Zoltan
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_delwas causing an abort withmemory_region_del_subregion: `Assertionsubregion->container== mr' failed.Reported-by Thomas Huth <[email protected]>Signed-off-by BALATON Zoltan <[email protected]>
Applied to ppc-for-2.12, thanks.
Quoted 34 lines
--- hw/ide/sii3112.c | 12 ------------ 1 file changed, 12 deletions(-)hw/ide/sii3112.c +0
-12@@ -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); }
Signature · 4 lines
David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
Quoted 11 lines · David Gibson
Quoted 7 lines · BALATON Zoltan
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_delwas causing an abort withmemory_region_del_subregion: `Assertionsubregion->container== mr' failed.Reported-by Thomas Huth <[email protected]>Signed-off-by BALATON Zoltan <[email protected]>Applied to ppc-for-2.12, thanks.
Beat me to it, thanks! I'm a little distracted right now.
Quoted 35 lines
Quoted 34 lines
--- hw/ide/sii3112.c | 12 ------------ 1 file changed, 12 deletions(-)hw/ide/sii3112.c +0
-12@@ -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); }