diff options
author | Li Qiang <liqiang6-s@360.cn> | 2017-02-07 18:42:55 -0800 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2017-02-21 08:11:42 +0100 |
commit | d710e1e7bd3d5bfc26b631f02ae87901ebe646b0 (patch) | |
tree | deb72b487c59b45b7b0aab2bb074fe291ddd12bb /hw/usb/hcd-ehci.c | |
parent | 56f9e46b841c7be478ca038d8d4085d776ab4b0d (diff) |
usb: ehci: fix memory leak in ehci
In usb_ehci_init function, it initializes 's->ipacket', but there
is no corresponding function to free this. As the ehci can be hotplug
and unplug, this will leak host memory leak. In order to make the
hierarchy clean, we should add a ehci pci finalize function, then call
the clean function in ehci device.
Signed-off-by: Li Qiang <liqiang6-s@360.cn>
Message-id: 589a85b8.3c2b9d0a.b8e6.1434@mx.google.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/usb/hcd-ehci.c')
-rw-r--r-- | hw/usb/hcd-ehci.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c index 7622a3ae72..50ef817f93 100644 --- a/hw/usb/hcd-ehci.c +++ b/hw/usb/hcd-ehci.c @@ -2545,6 +2545,11 @@ void usb_ehci_init(EHCIState *s, DeviceState *dev) &s->mem_ports); } +void usb_ehci_finalize(EHCIState *s) +{ + usb_packet_cleanup(&s->ipacket); +} + /* * vim: expandtab ts=4 */ |