Bug 1366097
Summary: | some memory leak in qemuDomainAssignAddresses | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Luyao Huang <lhuang> |
Component: | libvirt | Assignee: | Ján Tomko <jtomko> |
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> |
Severity: | low | Docs Contact: | |
Priority: | low | ||
Version: | 7.3 | CC: | dyuan, jtomko, pzhang, rbalakri, xuzhang |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | libvirt-2.0.0-6.el7 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2016-11-03 18:52:16 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Luyao Huang
2016-08-11 03:40:08 UTC
Fixed upstream by: commit d49f6853b36234ea0ec175dc39a5d67ba2a75123 Author: Ján Tomko <jtomko> CommitDate: 2016-08-16 12:31:41 +0200 conf: free the ports array of a USB hub The array needs to be freed too, not just its members. https://bugzilla.redhat.com/show_bug.cgi?id=1366097 git describe: v2.1.0-137-gd49f685 Verified version : libvirt-2.0.0-6.el7.x86_64 qemu-kvm-rhev-2.6.0-22.el7.x86_64 Steps : 1. In termimal one, start libvirtd with valgrind: # valgrind --leak-check=full libvirtd ==4874== Memcheck, a memory error detector ==4874== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al. ==4874== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info ==4874== Command: libvirtd ==4874== 2. In termianl 2, start a guest like following #virsh start vm2 # virsh dumpxml vm2 | grep usb -A 4 <controller type='usb' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <input type='mouse' bus='usb'> <address type='usb' bus='0' port='2'/> </input> <input type='keyboard' bus='usb'> <address type='usb' bus='0' port='1.1'/> </input> <redirdev bus='usb' type='spicevmc'> <address type='usb' bus='0' port='1.2'/> </redirdev> <redirdev bus='usb' type='spicevmc'> <address type='usb' bus='0' port='1.3'/> </redirdev> <hub type='usb'> <address type='usb' bus='0' port='1'/> </hub> After guest fully started, destroy guest #virsh destroy vm2 Domain vm2 destroyed 3.Check in terminal 1 again, There is NO info like qemuDomainAssignUSBAddresses and no memory leak now. ...... ==4338== LEAK SUMMARY: ==4338== definitely lost: 0 bytes in 0 blocks ==4338== indirectly lost: 0 bytes in 0 blocks ==4338== possibly lost: 720 bytes in 1 blocks ==4338== still reachable: 734,454 bytes in 8,865 blocks ==4338== suppressed: 0 bytes in 0 blocks ==4338== Reachable blocks (those to which a pointer was found) are not shown. ==4338== To see them, rerun with: --leak-check=full --show-leak-kinds=all ==4338== Move to verified. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2016-2577.html |