[libvirt] [PATCH] qemu: Fix migration with dname

Eric Blake eblake at redhat.com
Wed Oct 5 14:21:29 UTC 2011


On 10/05/2011 02:29 AM, Jiri Denemark wrote:
>> Quick questions (from a latecomer to the thread): what happens if I use
>> both the @dname and @dxml arguments?  Are we properly requiring that the
>> new name in both arguments match, and rejecting the migration as
>> impossible otherwise (since you can't request two different names), or
>> are we having one of the two names take priority over the other?
>
> These are actually very good questions :-) If dname is provided, it overrides
> the name from XML (no matter if that's from GetXMLDesc or dxml).

Sounds like that is worth documenting.

>
>> Also, if @dname is NULL but @dxml is provided, I think that we currently
>> refuse migration to a server that only understands v2 migration (since
>> only v3 can take @dxml).  Can @dxml in isolation be used to change the
>> name, without the use of @dname?
>
> However, if dname is not provided by dxml is and it contains domain name which
> is different, the destination libvirtd will have the name from dxml while
> source libvirtd will use the original name and migration will not work if
> those names do not match. But we don't currently have an explicit check for
> dxml name. I'm thinking about requiring the name to match either original name
> or dname (if set).

Yeah, after more thought, I think the following semantics are worth 
enforcing:

no dname or dxml - remote name is unchanged
dname but no dxml - remote name becomes dname
dname present, dxml with no name change - valid, remote uses dname
dname present, dxml with name change - dxml MUST match dname
dxml with no name change, no dname - remote name is unchanged
dxml with name change, no dname - remote name changes to dxml (*)

(*) if we can't easily change destination name using just dxml, then we 
could change this case to instead be an error, on the grounds that only 
dname can change the remote name (but once dname is present to change 
the name, then dxml can match either source or dname)

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org




More information about the libvir-list mailing list