[libvirt] autostarting xend domains

Wolfgang Rosenauer wolfgang.rosenauer at an-netz.de
Tue May 20 14:20:44 UTC 2008


Daniel P. Berrange wrote:
> On Tue, May 20, 2008 at 10:00:50AM -0400, Cole Robinson wrote:
>> Wolfgang Rosenauer wrote:
>>> I found that support for setting autostart parameters for xend managed 
>>> guests has been added to libvirt
>>> (https://www.redhat.com/archives/libvir-list/2008-May/msg00060.html)
>>>
>>> So I tried that but failed with virsh's autostart command (and also 
>>> virt-manager) like this:
>>>
>>> virsh # autostart saruman
>>> libvir: Xen Daemon error : POST operation failed: (xend.err "Error 
>>> creating domain: VM name 'saruman' already exists as domain 32")
>>> libvir: Xen Daemon error : failed Xen syscall Failed to redefine sexpr 
>>> 6508560
>>> error: Failed to mark domain saruman as autostarted
>>>
>>>
>>> So yes, the domain is indeed running but I understood it should be 
>>> changeable during a domain's lifetime.
>>>
>>> Any ideas?
>>> That is a libvirt CVS snapshot from yesterday and a Xen 3.1 installation.
>>>
>>> Thanks,
>>>   Wolfgang
>> Hmm, I thought redefining the sexpr in place was an a-okay thing to do,
>> and this worked on my f8 machine. I'll look into this.
> 
> Yes it is an OK thing todo. It is explicitly supported as it is *required*
> in order todo installations - we boot the guest with the install config,
> and defnie the guest with its persistent config. What exact version of Xen
> is being used here ? It looks like it has overzealous duplicate checking

I just found the following patch which is applied to Xen 3.1 on openSUSE 
which sounds like the culprit.
If you can confirm that I'm happy to report a bug over at openSUSE.

# HG changeset patch
# User kfraser at localhost.localdomain
# Date 1180086787 -3600
# Node ID a717cb2fac908ba82619ba52e34a2cc77942df4f
# Parent  9073caff4b63490bc63bbe2b0b48fd06cc47d6c6
xend: Fix checkname so that it detects duplicate domains.
Signed-off-by: Mats Petersson <mats.petersson at amd.com>

Index: xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
===================================================================
--- xen-3.1-testing.orig/tools/python/xen/xend/XendDomainInfo.py
+++ xen-3.1-testing/tools/python/xen/xend/XendDomainInfo.py
@@ -2069,7 +2069,7 @@ class XendDomainInfo:
              raise VmError('Invalid VM Name')

          dom =  XendDomain.instance().domain_lookup_nr(name)
-        if dom and dom.info['uuid'] != self.info['uuid']:
+        if dom and dom.domid != self.domid:
              raise VmError("VM name '%s' already exists%s" %
                            (name,
                             dom.domid is not None and




More information about the libvir-list mailing list