qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 02/14] hw/ide: Free macio-ide IRQs


From: Mark Cave-Ayland
Subject: Re: [PATCH 02/14] hw/ide: Free macio-ide IRQs
Date: Fri, 28 Jun 2024 08:16:40 +0100
User-agent: Mozilla Thunderbird

On 26/06/2024 13:59, Peter Maydell wrote:

On Wed, 26 Jun 2024 at 12:09, Akihiko Odaki <akihiko.odaki@daynix.com> wrote:

This suppresses LeakSanitizer warnings.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
  hw/ide/macio.c | 9 +++++++++
  1 file changed, 9 insertions(+)

diff --git a/hw/ide/macio.c b/hw/ide/macio.c
index aca90d04f0e8..d8fbc1a17ba6 100644
--- a/hw/ide/macio.c
+++ b/hw/ide/macio.c
@@ -464,6 +464,14 @@ static void macio_ide_initfn(Object *obj)
                               qdev_prop_allow_set_link_before_realize, 0);
  }

+static void macio_ide_finalize(Object *obj)
+{
+    MACIOIDEState *s = MACIO_IDE(obj);
+
+    qemu_free_irq(s->dma_irq);
+    qemu_free_irq(s->ide_irq);
+}
+
  static Property macio_ide_properties[] = {
      DEFINE_PROP_UINT32("channel", MACIOIDEState, channel, 0),
      DEFINE_PROP_UINT32("addr", MACIOIDEState, addr, -1),
@@ -486,6 +494,7 @@ static const TypeInfo macio_ide_type_info = {
      .parent = TYPE_SYS_BUS_DEVICE,
      .instance_size = sizeof(MACIOIDEState),
      .instance_init = macio_ide_initfn,
+    .instance_finalize = macio_ide_finalize,
      .class_init = macio_ide_class_init,
  };

Rather than this, I suspect macio_ide_initfn() should not
be using qemu_allocate_irq() in the first place. Looks like
maybe a QOM conversion that left a loose end un-tidied-up.

This is definitely old code: there used to be problems interfacing the IDE code with qdev due to the hard-coded bus IRQs but I think this may is now possible with the advent of ide_bus_init_output_irq().

I'll have a quick look and see what has changed in this area.


ATB,

Mark.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]