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

Re: [Xen-devel] Using "xl create" without domain config file



> # HG changeset patch
> # Parent 435493696053a079ec17d6e1a63e5f2be3a2c9d0
> xl: Allow use of /dev/null with xl create to enable command-line definition
> 
> xm allows specifying /dev/null as the domain configuration argument to its
> create option; add same functionality to xl. xl treats the configuration
> argument /dev/null as a special case.  This allows specifying an entire
> domain configuration on the command line.
> 
> Signed-off-by: W. Michael Petullo <mike@xxxxxxxx>

Hi Michael, 

I have applied this patch but it seems to be against the xen 4.1 tree
and not against xen-unstable. In this case I think I was able to
trivially resolve the conflicts, but please do check I got it right.

For future reference we generally require patches to be against
unstable. Once applied there they can then be nominated for backporting
to 4.1 but except in very unusual circumstances we would not apply a
patch directly to a stable branch.

You might also want to consider patching the xl config-update command?

Ian.

> 
> diff -r 435493696053 tools/libxl/xl_cmdimpl.c
> --- a/tools/libxl/xl_cmdimpl.c        Fri May 25 08:18:47 2012 +0100
> +++ b/tools/libxl/xl_cmdimpl.c        Mon Jun 11 15:18:23 2012 -0500
> @@ -1454,10 +1454,15 @@ static int create_domain(struct domain_c
>  
>      if (config_file) {
>          free(config_data);  config_data = 0;
> -        ret = libxl_read_file_contents(&ctx, config_file,
> -                                       &config_data, &config_len);
> -        if (ret) { fprintf(stderr, "Failed to read config file: %s: %s\n",
> -                           config_file, strerror(errno)); return ERROR_FAIL; 
> }
> +        /* /dev/null represents special case (read config. from command 
> line) */
> +        if (!strcmp(config_file, "/dev/null")) {
> +            config_len = 0;
> +        } else {
> +            ret = libxl_read_file_contents(&ctx, config_file,
> +                                           &config_data, &config_len);
> +            if (ret) { fprintf(stderr, "Failed to read config file: %s: 
> %s\n",
> +                               config_file, strerror(errno)); return 
> ERROR_FAIL; }
> +        }
>          if (!restore_file && extra_config && strlen(extra_config)) {
>              if (config_len > INT_MAX - (strlen(extra_config) + 2 + 1)) {
>                  fprintf(stderr, "Failed to attach extra configration\n");
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.