From e305a16510afa74eec20390479e349402e55ef4c Mon Sep 17 00:00:00 2001 From: Marc-André Lureau Date: Wed, 13 Jul 2016 02:11:59 +0200 Subject: portio: keep references on portio The isa_register_portio_list() function allocates ioports data/state. Let's keep the reference to this data on some owner. This isn't enough to fix leaks, but at least, ASAN stops complaining of direct leaks. Further cleanup would require calling portio_list_del/destroy(). Signed-off-by: Marc-André Lureau Reviewed-by: Paolo Bonzini --- hw/ide/core.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'hw/ide') diff --git a/hw/ide/core.c b/hw/ide/core.c index 45b6df132c..b0e42a6562 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -2619,10 +2619,12 @@ void ide_init_ioport(IDEBus *bus, ISADevice *dev, int iobase, int iobase2) { /* ??? Assume only ISA and PCI configurations, and that the PCI-ISA bridge has been setup properly to always register with ISA. */ - isa_register_portio_list(dev, iobase, ide_portio_list, bus, "ide"); + isa_register_portio_list(dev, &bus->portio_list, + iobase, ide_portio_list, bus, "ide"); if (iobase2) { - isa_register_portio_list(dev, iobase2, ide_portio2_list, bus, "ide"); + isa_register_portio_list(dev, &bus->portio2_list, + iobase2, ide_portio2_list, bus, "ide"); } } -- cgit v1.2.3-55-g7522