[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] autostarting xend domains

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

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.

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 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 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" %
                            dom.domid is not None and

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]