c6a4d26 nodedev: fix pci express memory leak

Authored and Committed by ericb 9 years ago
    nodedev: fix pci express memory leak
    
    Leak introduced in commit 16ebf10f (v1.2.6), detected by valgrind:
    
    ==9816== 216 (96 direct, 120 indirect) bytes in 6 blocks are definitely lost in loss record 665 of 821
    ==9816==    at 0x4A081D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==9816==    by 0x50836FB: virAlloc (viralloc.c:144)
    ==9816==    by 0x1DBDBE27: udevProcessPCI (node_device_udev.c:546)
    ==9816==    by 0x1DBDD79D: udevGetDeviceDetails (node_device_udev.c:1293)
    
    * src/util/virpci.h (virPCIEDeviceInfoFree): New prototype.
    * src/util/virpci.c (virPCIEDeviceInfoFree): New function.
    * src/conf/node_device_conf.c (virNodeDevCapsDefFree): Clear
    pci_express under pci case.
    (virNodeDevCapPCIDevParseXML): Avoid leak.
    * src/node_device/node_device_udev.c (udevProcessPCI): Likewise.
    * src/libvirt_private.syms (virpci.h): Export it.
    
    Signed-off-by: Eric Blake <eblake@redhat.com>
    
        
file modified
+2 -1
file modified
+1 -0
file modified
+12 -0
file modified
+3 -0