Bug 740533 - Migration with --dname failed with error
Summary: Migration with --dname failed with error
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: libvirt
Version: 6.2
Hardware: x86_64
OS: Linux
high
medium
Target Milestone: rc
: ---
Assignee: Jiri Denemark
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 744237 747120
TreeView+ depends on / blocked
 
Reported: 2011-09-22 11:29 UTC by weizhang
Modified: 2011-12-06 11:33 UTC (History)
6 users (show)

Fixed In Version: libvirt-0.9.4-15.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 744237 (view as bug list)
Environment:
Last Closed: 2011-12-06 11:33:32 UTC


Attachments (Terms of Use)


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

Description weizhang 2011-09-22 11:29:52 UTC
Description of problem:
migration with --dname will fail with error
# virsh migrate --live kvm-rhel6-x86_64 qemu+ssh://10.66.83.178/system --dname kvm-rhel6-x86_64-new
error: internal error Incoming cookie data had unexpected name kvm-rhel6-x86_64 vs kvm-rhel6-x86_64-new

And on target host, it has a transient domain which named kvm-rhel6-x86_64-new transient domain in shut off status.

it can succeed on rhel6.1 libvirt-0.8.7.18, so it is a regression bug

Version-Release number of selected component (if applicable):
kernel-2.6.32-197.el6.x86_64
qemu-kvm-0.12.1.2-2.192.el6.x86_64
libvirt-0.9.4-12.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
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. Do migration
# virsh migrate --live kvm-rhel6-x86_64 qemu+ssh://10.66.83.178/system --dname kvm-rhel6-x86_64-new


Actual results:
error:internal error Incoming cookie data had unexpected name kvm-rhel6-x86_64 vs kvm-rhel6-x86_64-new

Expected results:
succeed with no error

Additional info:

Comment 3 Jiri Denemark 2011-09-23 16:03:41 UTC
Oh, migration cookie handling was enhanced in a way that is incompatible with dname. We send domain name as part of migration cookie and check that the name matches when parsing the cookie. However, source libvirtd sends old name in the cookie and destination libvirtd expects to see the new name there because it is always taken from the domain object. Fixing this would require explicitly passing name of the domain to functions that handle migration cookies.

Comment 5 Jiri Denemark 2011-10-04 13:49:29 UTC
This is fixed upstream by

commit cdd5ef7b0776c5fa09a1b5bcb5d8adbc82b525bd
Author: Jiri Denemark <jdenemar@redhat.com>
Date:   Tue Oct 4 09:11:35 2011 +0200

    qemu: Fix migration with dname
    
    Destination libvirtd remembers the original name in the prepare phase
    and clears it in the finish phase. The original name is used when
    comparing domain name in migration cookie.

Comment 7 Jiri Denemark 2011-10-04 21:43:45 UTC
Patch sent for internal review: http://post-office.corp.redhat.com/archives/rhvirt-patches/2011-October/msg00149.html

Comment 10 weizhang 2011-10-08 08:52:48 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

with --dname, there is no error on migration.

Comment 11 errata-xmlrpc 2011-12-06 11:33:32 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.