Bug 1143800
Summary: | Libvirtd was killed after several cycles creating/deleting external disk snapshot with glusterfs backend | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Shanzhi Yu <shyu> | ||||
Component: | libvirt | Assignee: | Peter Krempa <pkrempa> | ||||
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | high | ||||||
Version: | 7.1 | CC: | c.affolter, dyuan, eblake, gsun, mzhan, rbalakri, yanyang | ||||
Target Milestone: | rc | Keywords: | TestOnly | ||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2015-11-19 05:52:32 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: | |||||||
Bug Depends On: | 1093594 | ||||||
Bug Blocks: | |||||||
Attachments: |
|
Description
Shanzhi Yu
2014-09-18 03:41:33 UTC
Created attachment 938739 [details]
memoryleak
The issue is that glfs_fini() leaks the memory allocated by glfs_new(). This is a known issue in gluster: https://bugzilla.redhat.com/show_bug.cgi?id=1093594 Looks like the issue ( https://bugzilla.redhat.com/show_bug.cgi?id=1093594) will be fixed in libgfapi soon. Moving to ON_QA. Once the libgfapi package is fixed the memory leak should disappear. Verified on libvirt-1.2.17-6.el7.x86_64 and glusterfs-server-3.7.3-1.el7.x86_64 Steps 1.prepare a running guest with following xml vim virt-tests-vm1.xml <disk type='network' device='disk'> <driver name='qemu' type='qcow2'/> <source protocol='gluster' name='gluster-vol1/rhel7.qcow2'> <host name='10.66.xx.xx'/> </source> <target dev='vda' bus='virtio'/> <alias name='virtio-disk0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </disk> 2.Prepare four snapshot file # cat s1.xml <domainsnapshot> <name>s1</name> <disks> <disk name='vda' type='network'> <driver type='qcow2'/> <source protocol='gluster' name='gluster-vol1/rhel7-qcow2.s1'> <host name='10.66.x.xxx'/> </source> </disk> </disks> </domainsnapshot> #for i in s2 s3 s4;do sed -e s/s1/$i/ s1.xml > $i.xml ; done #for i in s1 s2 s3 s4; do virsh snapshot-create virt-tests-vm1 $i --disk-only --no-metadata; done create backing-chains: rhel7-qcow2.s4->rhel7-qcow2.s3>-rhel7-qcow2.s2->rhel7-qcow2.s1->rhel7-qcow2.img 3. Try to create/delete snapshots for 30 times # red='\e[0;31m';NC='\e[0m' ;for num in $(seq 1 100);do echo -e "${red}Try the $num time:${NC}";virsh define virt-tests-vm1.xml ;virsh start virt-tests-vm1;sleep 30;for i in s1 s2 s3 s4;do virsh snapshot-create virt-tests-vm1 $i.xml --reuse-external --disk-only --no-metadata;done;virsh undefine virt-tests-vm1;virsh destroy virt-tests-vm1;done Try the 1 time: Domain virt-tests-vm1 defined from virt-tests-vm1.xml Domain virt-tests-vm1 started Domain snapshot s1 created from 's1.xml' Domain snapshot s2 created from 's2.xml' Domain snapshot s3 created from 's3.xml' Domain snapshot s4 created from 's4.xml' Domain virt-tests-vm1 has been undefined Domain virt-tests-vm1 destroyed ............. Try the 30 time: Domain virt-tests-vm1 defined from virt-tests-vm1.xml Domain virt-tests-vm1 started Domain snapshot s1 created from 's1.xml' Domain snapshot s2 created from 's2.xml' Domain snapshot s3 created from 's3.xml' Domain snapshot s4 created from 's4.xml' Domain virt-tests-vm1 has been undefined Domain virt-tests-vm1 destroyed Libvirtd was not dead 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/RHBA-2015-2202.html |