All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Campbell <Ian.Campbell@citrix.com>
To: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: [PATCH 1/3] RFC: libxl: API changes re domain type (and keyed union semantics)
Date: Wed, 13 Jul 2011 10:19:53 +0100	[thread overview]
Message-ID: <1310548793.634.361.camel@zakaz.uk.xensource.com> (raw)
In-Reply-To: <1310495823-27077-2-git-send-email-ian.jackson@eu.citrix.com>

On Tue, 2011-07-12 at 19:37 +0100, Ian Jackson wrote:
> Give the HVM domain type the name "HVM" as is generally used in the
> Xen universe, rather than "FV" which is not used elsewhere.
> 
> Keyed unions should be keyed off the individual union value, not off
> an arbitrary expression.
> 
> Change the "hvm" field in domain_build_info to be called "type" and
> have an appropriate enum type.

I think this is a good idea.

There is a similar "bool hvm" in libxl_domain_create_info, which I think
should also be changed (it's copied from create_info to build_info in
libxl_init_build_info).

The one in libxl_device_model_info is already correctly typed.

Not directly related to this patch but I've been wondering if the split
between create_info, build_info etc makes sense now that the builder
stuff has been pushed down into libxl itself.

> 
> These are are incompatible changes to the API/ABI.
> 
> THIS PATCH IS AN RFC AND SHOULD NOT BE APPLIED

In case you suffer from a split brain and apply it ;-)

Ian.

> ---
>  tools/libxl/libxl.idl |   10 +++++-----
>  1 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/tools/libxl/libxl.idl b/tools/libxl/libxl.idl
> index 6e39734..8fb883f 100644
> --- a/tools/libxl/libxl.idl
> +++ b/tools/libxl/libxl.idl
> @@ -21,7 +21,7 @@ libxl_hwcap = Builtin("hwcap")
>  #
>  
>  libxl_domain_type = Enumeration("domain_type", [
> -    (1, "FV"),
> +    (1, "HVM"),
>      (2, "PV"),
>      ])
>  
> @@ -158,9 +158,9 @@ libxl_domain_build_info = Struct("domain_build_info",[
>      ("shadow_memkb",    uint32),
>      ("disable_migrate", bool),
>      ("cpuid",           libxl_cpuid_policy_list),
> -    ("hvm",             bool),
> -    ("u", KeyedUnion(None, "hvm",
> -                [("hvm", "%s", Struct(None,
> +    ("type",            libxl_domain_type),
> +    ("u", KeyedUnion(None, "type",
> +                [("hvm", Struct(None,
>                                         [("firmware", string),
>                                          ("pae", bool),
>                                          ("apic", bool),
> @@ -173,7 +173,7 @@ libxl_domain_build_info = Struct("domain_build_info",[
>                                          ("timer_mode", integer),
>                                          ("nested_hvm", bool),
>                                          ])),
> -                 ("pv", "!%s", Struct(None,
> +                 ("pv", Struct(None,
>                                         [("kernel", libxl_file_reference),
>                                          ("slack_memkb", uint32),
>                                          ("bootloader", string),

  parent reply	other threads:[~2011-07-13  9:19 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-12 18:37 [RFC 0/3] libxl event handling Ian Jackson
2011-07-12 18:37 ` [PATCH 1/3] RFC: libxl: API changes re domain type (and keyed union semantics) Ian Jackson
2011-07-12 18:37   ` [PATCH 2/3] RFC: libxl: API changes re event handling Ian Jackson
2011-07-12 18:37     ` [PATCH 3/3] RFC: libxl: internal API for " Ian Jackson
2011-07-13 10:22       ` Ian Campbell
2011-07-13 10:21     ` [PATCH 2/3] RFC: libxl: API changes re " Ian Campbell
2011-07-13 14:03       ` Ian Jackson
2011-07-13 16:08         ` Ian Campbell
2011-07-13 16:17           ` Ian Jackson
2011-07-13 16:33             ` Ian Campbell
2011-07-13 17:04               ` Ian Jackson
2011-07-13  9:19   ` Ian Campbell [this message]
2011-07-15 12:45   ` [PATCH 1/3] RFC: libxl: API changes re domain type (and keyed union semantics) Ian Campbell
2011-07-15 13:13     ` Ian Jackson
2011-07-18  9:06       ` [PATCH 0 of 6] libxl: IDL improvements Ian Campbell
2011-07-18  9:06         ` [PATCH 1 of 6] libxl: Give the HVM domain type the name "HVM" Ian Campbell
2011-07-18  9:06         ` [PATCH 2 of 6] libxl: replace libxl__domain_is_hvm with libxl__domain_type Ian Campbell
2011-07-18  9:06         ` [PATCH 3 of 6] libxl: specify HVM vs PV in build_info using libxl_domain_type enum Ian Campbell
2011-07-18  9:06         ` [PATCH 4 of 6] libxl: specify HVM vs PV in create_info " Ian Campbell
2011-07-18  9:06         ` [PATCH 5 of 6] libxl: use libxl_domain_type enum with libxl__domain_suspend_common Ian Campbell
2011-07-18  9:06         ` [PATCH 6 of 6] libxl: Keyed unions key off an enum instead of an arbitrary expression Ian Campbell
2011-07-18 13:57       ` [PATCH 0 of 6 V2] libxl: IDL improvements Ian Campbell
2011-07-18 13:57         ` [PATCH 1 of 6 V2] libxl: Give the HVM domain type the name "HVM" Ian Campbell
2011-07-18 14:56           ` Wei LIU
2011-07-18 15:20             ` Ian Jackson
2011-07-18 13:57         ` [PATCH 2 of 6 V2] libxl: replace libxl__domain_is_hvm with libxl__domain_type Ian Campbell
2011-07-18 13:57         ` [PATCH 3 of 6 V2] libxl: specify HVM vs PV in build_info using libxl_domain_type enum Ian Campbell
2011-07-18 13:57         ` [PATCH 4 of 6 V2] libxl: specify HVM vs PV in create_info " Ian Campbell
2011-07-18 13:57         ` [PATCH 5 of 6 V2] libxl: use libxl_domain_type enum with libxl__domain_suspend_common Ian Campbell
2011-07-18 13:57         ` [PATCH 6 of 6 V2] libxl: Keyed unions key off an enum instead of an arbitrary expression Ian Campbell
2011-07-18 16:11         ` [PATCH 0 of 6 V2] libxl: IDL improvements Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1310548793.634.361.camel@zakaz.uk.xensource.com \
    --to=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.