Re: [Qemu-devel] [PATCH] sii3112: Remove unneeded exit function

2018-03-06 Thread John Snow


On 03/06/2018 09:23 PM, David Gibson wrote:
> On Wed, Mar 07, 2018 at 12:15:15AM +0100, BALATON Zoltan wrote:
>> 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 
> 
> Applied to ppc-for-2.12, thanks.
> 

Beat me to it, thanks! I'm a little distracted right now.

>> ---
>>  hw/ide/sii3112.c | 12 
>>  1 file changed, 12 deletions(-)
>>
>> diff --git a/hw/ide/sii3112.c b/hw/ide/sii3112.c
>> index e3896c6..743a50e 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(>bmdma_bar, >bmdma[i].extra_io);
>> -memory_region_del_subregion(>bmdma_bar, 
>> >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);
>>  }
> 



Re: [Qemu-devel] [PATCH] sii3112: Remove unneeded exit function

2018-03-06 Thread David Gibson
On Wed, Mar 07, 2018 at 12:15:15AM +0100, BALATON Zoltan wrote:
> 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 

Applied to ppc-for-2.12, thanks.

> ---
>  hw/ide/sii3112.c | 12 
>  1 file changed, 12 deletions(-)
> 
> diff --git a/hw/ide/sii3112.c b/hw/ide/sii3112.c
> index e3896c6..743a50e 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(>bmdma_bar, >bmdma[i].extra_io);
> -memory_region_del_subregion(>bmdma_bar, >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);
>  }

-- 
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


signature.asc
Description: PGP signature


[Qemu-devel] [PATCH] sii3112: Remove unneeded exit function

2018-03-06 Thread 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_del was causing an abort with
memory_region_del_subregion: `Assertion subregion->container == mr' failed.

Reported-by: Thomas Huth 
Signed-off-by: BALATON Zoltan 
---
 hw/ide/sii3112.c | 12 
 1 file changed, 12 deletions(-)

diff --git a/hw/ide/sii3112.c b/hw/ide/sii3112.c
index e3896c6..743a50e 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(>bmdma_bar, >bmdma[i].extra_io);
-memory_region_del_subregion(>bmdma_bar, >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);
 }
-- 
2.7.6