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

Re: [Xen-devel] [PATCH 22/29] libxl: Introduce DOMAIN_DESTROYED error code



On Tue, 2015-02-10 at 20:10 +0000, Ian Jackson wrote:
> This is currently reported only by the bootloader code, if the domain
> is destroyed while the bootloader is running.
> 
> In the future it would be nice to return it for other circumstances
> where the domain existed when the operation started but subsequently
> vanished.

Konrad has a semantically similar error code which he is adding, I think
in his recent libxl series to do with vcpu-set.

AIUI Konrad's semantics are simply "domain does not exist", which seems
to be usefully distinct from your "did exist but doesn't any more".

I just wanted to mention it in case I'd misunderstood one or both error
codes. As it stands this patch seems fine to me:

> Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>

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

I do wonder though if we ought to be better about documenting in the
code|headers|idl what error codes mean and where they should be used
(some are global, others specific to a subset of calls etc).

Ian.

> ---
> v2: New in this version of the series.
> ---
>  tools/libxl/libxl_bootloader.c |    2 +-
>  tools/libxl/libxl_types.idl    |    1 +
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/libxl/libxl_bootloader.c b/tools/libxl/libxl_bootloader.c
> index 79947d4..c3f3a1f 100644
> --- a/tools/libxl/libxl_bootloader.c
> +++ b/tools/libxl/libxl_bootloader.c
> @@ -611,7 +611,7 @@ static void bootloader_display_copyfail(libxl__egc *egc,
>  static void bootloader_domaindeath(libxl__egc *egc, libxl__domaindeathcheck 
> *dc)
>  {
>      libxl__bootloader_state *bl = CONTAINER_OF(dc, *bl, deathcheck);
> -    bootloader_stop(egc, bl, ERROR_FAIL);
> +    bootloader_stop(egc, bl, ERROR_DOMAIN_DESTROYED);
>  }
>  
>  static void bootloader_finished(libxl__egc *egc, libxl__ev_child *child,
> diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
> index 193f22a..d91b70d 100644
> --- a/tools/libxl/libxl_types.idl
> +++ b/tools/libxl/libxl_types.idl
> @@ -66,6 +66,7 @@ libxl_error = Enumeration("error", [
>      (-20, "CANCELLED"),
>      (-21, "NOTFOUND"),
>      (-22, "NOTIMPLEMENTED"),
> +    (-23, "DOMAIN_DESTROYED"),
>      ], value_namespace = "")
>  
>  libxl_domain_type = Enumeration("domain_type", [



_______________________________________________
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®.