[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-2.7 v4 00/36] Various memory leak fixes
From: |
Marc-André Lureau |
Subject: |
Re: [Qemu-devel] [PATCH for-2.7 v4 00/36] Various memory leak fixes |
Date: |
Fri, 05 Aug 2016 18:01:18 +0000 |
Hi Peter,
All patches have a reviewed-by tag now, Given the mix of domains, I can
send you a pull request. What do you think?
thanks
On Fri, Aug 5, 2016 at 12:26 PM <address@hidden> wrote:
> From: Marc-André Lureau <address@hidden>
>
> Hi,
>
> Thanks to AddressSanitizer (ASAN), I found a number of direct leaks
> worth fixing. Note that there are probably many indirect leaks left (I
> am adding some here), I haven't investigated much yet.
>
> There are still a number of direct leaks remaining, in particular in
> the tests, but my libc doesn't give me good backtraces.
>
> In order to easily switch to asan-enabled build, I make use of make
> CFLAGS argument, which is why the first patch is also there.
>
> v4:
> - document qtest_add_data_func_full seperately
> - add g_(s)list_free_full in glib-compat
> - simplify tcp_chr_close()
> - move dma_buf_commit() down before the early return case
> - dropped a qdist leak patch already applied
>
> v3:
> - add glib<2.34 fallback for g_test_add_data_func_full() using
> g_test_add_vtable() with an explicit comment
> - add and use a tcp_chr_free_connection(), from tcp_chr_disconnect()
> (suggested by Paolo)
> - remove bad comment from "free MuxDriver" patch (Eric)
> - replace GFunc casts with a qemu_g_func_free() inline (suggested by Eric)
> - replace CFLAGS override patch with a toplevel CFLAGS filter
> (suggested by Paolo)
> - drop a patch already merged upstream
> - update reviewed-by tags (28/36)
>
> v2:
> - split "pci-bus: do not allocate and leak bsel" as a seperate patch,
> since the direct leak looks like a bug
> - hook virtio_input_finalize to the abstract base class
> - use mkdtemp in test-io-channel-command
> - fix pc-cpu-test commit message
> - move the sglist destruction inside of ncq_err, call dma_buf_commit
> in ide_dma_cb, as suggested by John Snow
> - fix build with glib 2.22
> - add the given reviewed-by tags (22/37, 15 left)
>
> Marc-André Lureau (36):
> build-sys: fix building with make CFLAGS=.. argument
> tests: fix test-qga leaks
> glib-compat: add g_(s)list_free_full()
> qga: free the whole blacklist
> qga: free remaining leaking state
> tests: fix test-cutils leaks
> tests: fix test-vmstate leaks
> tests: fix test-iov leaks
> tests: fix check-qom-interface leaks
> tests: fix check-qom-proplist leaks
> tests: fix small leak in test-io-channel-command
> tests: fix leak in test-string-input-visitor
> portio: keep references on portio
> numa: do not leak NumaOptions
> pc: simplify passing qemu_irq
> pc: don't leak a20_line
> machine: use class base init generated name
> acpi-build: fix array leak
> char: free the tcp connection data when closing
> char: free MuxDriver when closing
> tests: fix qom-test leaks
> pc: free i8259
> pc: keep gsi reference
> ahci: free irqs array
> sd: free timer
> qjson: free str
> virtio-input: free config list
> ipmi: free extern timer
> usb: free USBDevice.strings
> usb: free leaking path
> bus: simplify name handling
> tests: add qtest_add_data_func_full
> tests: pc-cpu-test leaks fixes
> tests: fix rsp leak in postcopy-test
> ahci: fix sglist leak on retry
> tests: fix postcopy-test leaks
>
> Makefile | 3 +-
> hw/audio/gus.c | 9 ++++--
> hw/audio/sb16.c | 4 ++-
> hw/block/fdc.c | 4 ++-
> hw/char/parallel.c | 3 +-
> hw/core/bus.c | 21 ++++----------
> hw/core/machine.c | 1 +
> hw/display/vga-isa.c | 8 ++++--
> hw/dma/i8257.c | 6 ++--
> hw/i386/acpi-build.c | 4 +--
> hw/i386/pc.c | 9 +++---
> hw/i386/pc_piix.c | 17 ++++++------
> hw/i386/pc_q35.c | 15 +++++-----
> hw/ide/ahci.c | 4 +--
> hw/ide/core.c | 7 +++--
> hw/input/pckbd.c | 4 +--
> hw/input/virtio-input.c | 11 ++++++++
> hw/ipmi/ipmi_bmc_extern.c | 9 ++++++
> hw/isa/isa-bus.c | 14 ++++------
> hw/sd/sd.c | 9 ++++++
> hw/usb/bus.c | 7 +++++
> hw/usb/desc.c | 1 +
> include/glib-compat.h | 24 ++++++++++++++++
> include/hw/boards.h | 2 +-
> include/hw/i386/pc.h | 4 +--
> include/hw/ide/internal.h | 2 ++
> include/hw/isa/i8257.h | 2 ++
> include/hw/isa/isa.h | 5 +++-
> include/hw/qdev-core.h | 2 +-
> migration/qjson.c | 1 +
> numa.c | 15 +++++-----
> pc-bios/optionrom/Makefile | 2 --
> qemu-char.c | 58
> ++++++++++++++++++++++++++-------------
> qga/guest-agent-command-state.c | 6 ++++
> qga/guest-agent-core.h | 1 +
> qga/main.c | 13 +++++----
> tests/check-qom-interface.c | 1 +
> tests/check-qom-proplist.c | 16 +++++++++++
> tests/libqtest.c | 15 ++++++++++
> tests/libqtest.h | 17 ++++++++++++
> tests/pc-cpu-test.c | 24 ++++++++++++----
> tests/postcopy-test.c | 7 +++--
> tests/qom-test.c | 5 ++--
> tests/test-cutils.c | 24 ++++++++++------
> tests/test-io-channel-command.c | 20 +++++++++-----
> tests/test-iov.c | 7 +++++
> tests/test-qga.c | 8 +++++-
> tests/test-string-input-visitor.c | 1 +
> tests/test-vmstate.c | 8 ++++--
> 49 files changed, 331 insertions(+), 129 deletions(-)
>
> --
> 2.9.0
>
>
> --
Marc-André Lureau
- [Qemu-devel] [PATCH for-2.7 v4 29/36] usb: free USBDevice.strings, (continued)
- [Qemu-devel] [PATCH for-2.7 v4 29/36] usb: free USBDevice.strings, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 30/36] usb: free leaking path, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 31/36] bus: simplify name handling, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 32/36] tests: add qtest_add_data_func_full, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 33/36] tests: pc-cpu-test leaks fixes, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 34/36] tests: fix rsp leak in postcopy-test, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 35/36] ahci: fix sglist leak on retry, marcandre . lureau, 2016/08/05
- [Qemu-devel] [PATCH for-2.7 v4 36/36] tests: fix postcopy-test leaks, marcandre . lureau, 2016/08/05
- Re: [Qemu-devel] [PATCH for-2.7 v4 00/36] Various memory leak fixes, Daniel P. Berrange, 2016/08/05
- Re: [Qemu-devel] [PATCH for-2.7 v4 00/36] Various memory leak fixes,
Marc-André Lureau <=