Bug 742277 - Daemon crashes during migration and dumpxml
Summary: Daemon crashes during migration and dumpxml
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: libvirt
Version: 6.1
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: 6.2
Assignee: Michal Privoznik
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 747120
TreeView+ depends on / blocked
 
Reported: 2011-09-29 15:03 UTC by Michal Privoznik
Modified: 2011-12-06 11:34 UTC (History)
6 users (show)

Fixed In Version: libvirt-0.9.4-15.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-12-06 11:34:43 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2011:1513 0 normal SHIPPED_LIVE libvirt bug fix and enhancement update 2011-12-06 01:23:30 UTC

Description Michal Privoznik 2011-09-29 15:03:10 UTC
Description of problem:
If there is an incoming migration and user run virsh dumpxml on incoming domain, but the migration fails, the daemon will then either block indefinitely or crash. This is because dumpxml tries to lock monitor, which gets free()'d meanwhile.

Version-Release number of selected component (if applicable):
libvirt-0.9.4-14.el6

How reproducible:
100%

Steps to Reproduce:
1. start migration
2. on destination run 'virsh dumpxml <domain>'
3. observe segfault or hangup
  
Actual results:
The daemon crashes

Expected results:
The daemon will not crash and virsh prints something useful

Additional info:

Comment 5 weizhang 2011-10-08 09:20:03 UTC
verify pass on 
libvirt-0.9.4-16.el6.x86_64
kernel-2.6.32-206.el6.x86_64
qemu-kvm-0.12.1.2-2.195.el6.x86_64


steps:
1. Prepare 2 hosts and prepare a nfs which is mounted on both hosts, and setting the virt_use_nfs boolean on both sides
# setsebool virt_use_nfs 1
and close the iptable on both sides
# iptables -F 

2. Start a guest located on nfs

3. Ensure two hosts have no FQDN.
on hostA: # hostname
test1
on hostB: # hostname
test2

4. Ensure /etc/hosts have no domain name resolve on two hosts
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 loclhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

5. On destination host, do
# while true; do virsh dumpxml guest; done

6. On source host, do migration
# virsh migrate --live guest qemu+ssh://{dest ip}/system
Migration will fail with error like 
error: Unable to resolve address 'dhcp-4.196' service '49153': Name or service not known

7. Check the libvirtd status on destination host
# service libvirtd status

libvirtd still running

Comment 6 errata-xmlrpc 2011-12-06 11:34:43 UTC
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.

http://rhn.redhat.com/errata/RHBA-2011-1513.html


Note You need to log in before you can comment on or make changes to this bug.