All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wei Liu <wei.liu2@citrix.com>
To: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: xen-devel@lists.xenproject.org, boris.ostrovsky@oracle.com,
	Wei Liu <wei.liu2@citrix.com>,
	Roger Pau Monne <roger.pau@citrix.com>
Subject: Re: [PATCH v2 02/21] libxl: introduce a way to mark fields as deprecated in the idl
Date: Wed, 20 Sep 2017 17:39:55 +0100	[thread overview]
Message-ID: <20170920163954.w2gexyxasiyfgwfa@citrix.com> (raw)
In-Reply-To: <22978.36168.401712.575456@mariner.uk.xensource.com>

On Wed, Sep 20, 2017 at 04:46:16PM +0100, Ian Jackson wrote:
> Roger Pau Monne writes ("[PATCH v2 02/21] libxl: introduce a way to mark fields as deprecated in the idl"):
> > The deprecation involves generating a function that copies the
> > deprecated fields into it's new location if the new location has not
> > been set.
> 
> Hi.  We had an IRL conversation which I will summarise.
> 
> 
> The first issue is about the scoping and context of the deprecated_by
> annotations.  The arrangement you have is that the field name in
> deprecated_by is a (textual) reference to an (implicit) enclosing
> struct which has copy_deprecated_fn specified.
> 
> This is kind of OK but it feels a bit limited and irregular to me.
> The practical consequence is that this can be used to bring fields out
> into the toplevel, but it is difficult to use it in other ways (for
> example, to move a field from one substruct to another, or to
> deprecate fields which are part of named substrutures rather than
> anonymous ones and which might therefore appear in several places).
> 
> We discussed how this might be done better.  To me it seems like the
> only really plausible alternative was to replace the
> `deprecated_by' and `copy_deprecated_fn' annotations with a single
> annotation in the parent structure, something like
>   deprecated_fields=['u.hvm','u',['bootloader_args',
>                                   'timer_mode', ...]
> or maybe even
>   deprecated_fields=['u.hvm','u',[('timer_mode_new_name','timer_mode')]]

I know this may sound crazy but: do we need to consider the possibility
that one field in struct A is deprecated by one field in struct B?

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

  reply	other threads:[~2017-09-20 16:40 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-07 10:16 [PATCH v2 00/21] libxl/xl: add PVH guest type Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 01/21] libxl: add is_default checkers for string and timer_mode types Roger Pau Monne
2017-09-19 14:48   ` Ian Jackson
2017-09-20 16:12   ` Wei Liu
2017-09-07 10:16 ` [PATCH v2 02/21] libxl: introduce a way to mark fields as deprecated in the idl Roger Pau Monne
2017-09-20 15:46   ` Ian Jackson
2017-09-20 16:39     ` Wei Liu [this message]
2017-09-21 10:32       ` Ian Jackson
2017-09-22 16:02     ` Roger Pau Monné
2017-09-22 16:09       ` Ian Jackson
2017-09-07 10:16 ` [PATCH v2 03/21] libxl/xl: use the new domain_build_info fields position Roger Pau Monne
2017-09-20 14:48   ` Ian Jackson
2017-09-07 10:16 ` [PATCH v2 04/21] xl: introduce a domain type option Roger Pau Monne
2017-09-20 14:50   ` Ian Jackson
2017-09-21 17:16     ` Roger Pau Monné
2017-09-21 17:22       ` Ian Jackson
2017-09-07 10:16 ` [PATCH v2 05/21] xl: introduce a firmware option Roger Pau Monne
2017-09-20 14:53   ` Ian Jackson
2017-09-07 10:16 ` [PATCH v2 06/21] libxl: introduce a PVH guest type Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 07/21] libxl: allow PVH guests to use a bootloader Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 08/21] libxl: set PVH guests to use the PV console Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 09/21] libxl: add PVH support to domain creation Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 10/21] libxl: remove device model "none" support from disk related functions Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 11/21] libxl: set device model for PVH guests Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 12/21] libxl: add PVH support to domain building Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 13/21] libxl: add PVH support to domain save/suspend Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 14/21] libxl: add PVH support to vpcu hotplug, domain destruction/pause and domain configuration Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 15/21] libxl: add PVH support to memory functions Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 16/21] libxl: PVH guests use PV nics Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 17/21] libxl: remove device model "none" support from stream functions Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 18/21] libxl: add PVH support to USB Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 19/21] libxl: add PVH support to x86 functions Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 20/21] xl: add PVH as a guest type Roger Pau Monne
2017-09-07 10:16 ` [PATCH v2 21/21] libxl: remove device model "none" from IDL Roger Pau Monne

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=20170920163954.w2gexyxasiyfgwfa@citrix.com \
    --to=wei.liu2@citrix.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=roger.pau@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /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.