This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Possible Compatibility Bug in xl create

To: Carsten Schiers <carsten@xxxxxxxxxx>
Subject: Re: [Xen-devel] Possible Compatibility Bug in xl create
From: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
Date: Tue, 24 May 2011 10:27:57 +0100
Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Stefano Stabellini <Stefano.Stabellini@xxxxxxxxxxxxx>
Delivery-date: Tue, 24 May 2011 02:28:41 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <H0000067000ad724.1306180891.uhura.space.zz@MHS>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Citrix Systems, Inc.
References: <H0000067000ad724.1306180891.uhura.space.zz@MHS>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On Mon, 2011-05-23 at 21:01 +0100, Carsten Schiers wrote:
> Dear all,
> there is a problem with xl that will still prevent it tob e a 
> replacement for xm in /etc/init.d/xendomains.
> I tracked it down to the rdname function in the a.m. file, which is 
> expecting the command
>   xm create --dryrun --quiet <config-file>
> to create a Lisp-like structure, where the xendomain script will extract 
> the DomU name from.
>   xl create --dryrun --quiet <config-file>
> will not output such a structure. 
>   xl -d -f <config-file> 
> will do, but as soon as combined with -n, it will not.
> My setting is starting/shutting down only DomUs mentioned in 
> /etc/xen/auto.

Thanks, I was just asking the other day who/what used that sxp output...

Personally think this behaviour of grepping the name out of the sxp is
pretty mad (I think an xl command to parse the configuration and output
a specific request field value would be far better) but in the interests
of xm compatibility does the following work for you?


# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1306229164 -3600
# Node ID 29bd959c779a629def4de2cda7c1cc2eae291df5
# Parent  32d62506e3be95124097775dc79c42304a18084c
xl: print sxp on dry-run of create.

The help text for xm create's --dry-run says "Dry run - prints the resulting
configuration in SXP but does not create the domain." so update xl
implementation to match.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

diff -r 32d62506e3be -r 29bd959c779a tools/libxl/xl_cmdimpl.c
--- a/tools/libxl/xl_cmdimpl.c  Tue May 24 10:14:10 2011 +0100
+++ b/tools/libxl/xl_cmdimpl.c  Tue May 24 10:26:04 2011 +0100
@@ -1470,10 +1470,6 @@ static int create_domain(struct domain_c
     parse_config_data(config_file, config_data, config_len, &d_config, 
-    ret = 0;
-    if (dom_info->dryrun)
-        goto out;
     if (migrate_fd >= 0) {
         if (d_config.c_info.name) {
             /* when we receive a domain we get its name from the config
@@ -1492,9 +1488,13 @@ static int create_domain(struct domain_c
-    if (debug)
+    if (debug || dom_info->dryrun)
         printf_info(-1, &d_config, &d_config.dm_info);
+    ret = 0;
+    if (dom_info->dryrun)
+        goto out;
     domid = -1;

Xen-devel mailing list