All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
	"Andreas Färber" <afaerber@suse.de>,
	qemu-devel@nongnu.org, "Richard Henderson" <rth@twiddle.net>,
	"Igor Mammedov" <imammedo@redhat.com>
Subject: Re: [Qemu-devel] [PULL 10/10] target-i386: Print obsolete warnings if +-features are used
Date: Tue, 14 Jun 2016 18:46:32 -0300	[thread overview]
Message-ID: <20160614214632.GD18662@thinpad.lan.raisama.net> (raw)
In-Reply-To: <722462862.22421584.1465940322027.JavaMail.zimbra@redhat.com>

On Tue, Jun 14, 2016 at 05:38:42PM -0400, Paolo Bonzini wrote:
> 
> 
> ----- Original Message -----
> > From: "Eduardo Habkost" <ehabkost@redhat.com>
> > To: "Paolo Bonzini" <pbonzini@redhat.com>
> > Cc: "Peter Maydell" <peter.maydell@linaro.org>, "Andreas Färber" <afaerber@suse.de>, qemu-devel@nongnu.org, "Richard
> > Henderson" <rth@twiddle.net>, "Igor Mammedov" <imammedo@redhat.com>
> > Sent: Tuesday, June 14, 2016 11:31:03 PM
> > Subject: Re: [PULL 10/10] target-i386: Print obsolete warnings if +-features are used
> > 
> > On Tue, Jun 14, 2016 at 05:16:40PM -0400, Paolo Bonzini wrote:
> > > ----- Original Message -----
> > > > From: "Eduardo Habkost" <ehabkost@redhat.com>
> > > > To: "Peter Maydell" <peter.maydell@linaro.org>
> > > > Cc: "Andreas Färber" <afaerber@suse.de>, qemu-devel@nongnu.org, "Richard
> > > > Henderson" <rth@twiddle.net>, "Paolo
> > > > Bonzini" <pbonzini@redhat.com>, "Igor Mammedov" <imammedo@redhat.com>
> > > > Sent: Tuesday, June 14, 2016 10:59:08 PM
> > > > Subject: [PULL 10/10] target-i386: Print obsolete warnings if +-features
> > > > are used
> > > > 
> > > > From: Igor Mammedov <imammedo@redhat.com>
> > > > 
> > > > Signed-off-by: Igor Mammedov <imammedo@redhat.com>
> > > > [ehabkost: Changed to use error_report()]
> > > > Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> > > > ---
> > > >  target-i386/cpu.c | 6 ++++++
> > > >  1 file changed, 6 insertions(+)
> > > > 
> > > > diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> > > > index 3665fec..baa3783 100644
> > > > --- a/target-i386/cpu.c
> > > > +++ b/target-i386/cpu.c
> > > > @@ -1980,9 +1980,15 @@ static void x86_cpu_parse_featurestr(CPUState *cs,
> > > > char *features,
> > > >          /* Compatibility syntax: */
> > > >          if (featurestr[0] == '+') {
> > > >              add_flagname_to_bitmaps(featurestr + 1, plus_features,
> > > >              &local_err);
> > > > +            error_report(
> > > > +                "'+%s' is obsolete and will be removed in future, use
> > > > '%s=on'",
> > > > +                featurestr + 1, featurestr + 1);
> > > >              continue;
> > > >          } else if (featurestr[0] == '-') {
> > > >              add_flagname_to_bitmaps(featurestr + 1, minus_features,
> > > >              &local_err);
> > > > +            error_report(
> > > > +                "'-%s' is obsolete and will be removed in future, use
> > > > '%s=off'",
> > > > +                featurestr + 1, featurestr + 1);
> > > >              continue;
> > > >          }
> > > 
> > > I still disagree with this change.
> > 
> > I've just removed the patch from the x86-pull-request tag, while
> > we sort this out.
> > 
> > Do you suggest supporting the "[+-]feature" syntax forever?
> 
> I suggest supporting it, but removing the awful interaction with "feature=on/off"
> as soon as possible.  This shouldn't block this pull request, of course.

I plan to fix the awful ordering semantics. First with a warning
for 1 or 2 releases (only when the weird semantics is really
triggered), then +feature/-feature could be directly translated
to feature=on/feature=off.

> 
> I just believe it's not practical to remove the feature.  For example
> kvm-unit-tests can be used with new kernel and old QEMU, so I don't think
> it will move away from [+-]feature very soon.
> 
> Regarding libvirt, is "feature=on/off" introspectable?  That would also be
> a problem for libvirt to support both old and new QEMU.

Good point. Removing the feature would require dozens of extra
compatibility code to libvirt and kvm-unit-tests just to save 6
lines of code in QEMU. You convinced me.

-- 
Eduardo

  reply	other threads:[~2016-06-14 21:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-14 20:58 [Qemu-devel] [PULL 00/10] X86 queue, 2016-06-14 Eduardo Habkost
2016-06-14 20:58 ` [Qemu-devel] [PULL 01/10] target-i386: add Skylake-Client cpu model Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 02/10] pc: Add 2.7 machine Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 03/10] target-i386: Implement CPUID[0xB] (Extended Topology Enumeration) Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 04/10] target-i386: Remove xlevel & hv-spinlocks option fixups Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 05/10] target-i386: Move features logic that requires CPUState to realize time Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 06/10] target-i386: Remove assert(kvm_enabled()) from host_x86_cpu_initfn() Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 07/10] target-i386: Move xcc->kvm_required check to realize time Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 08/10] target-i386: Use cpu_generic_init() in cpu_x86_init() Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 09/10] target-i386: Consolidate calls of object_property_parse() in x86_cpu_parse_featurestr Eduardo Habkost
2016-06-14 20:59 ` [Qemu-devel] [PULL 10/10] target-i386: Print obsolete warnings if +-features are used Eduardo Habkost
2016-06-14 21:16   ` Paolo Bonzini
2016-06-14 21:31     ` Eduardo Habkost
2016-06-14 21:38       ` Paolo Bonzini
2016-06-14 21:46         ` Eduardo Habkost [this message]
2016-06-14 21:32 ` [Qemu-devel] [PULL 00/10] X86 queue, 2016-06-14 Eduardo Habkost
2016-06-16  9:53   ` Peter Maydell

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=20160614214632.GD18662@thinpad.lan.raisama.net \
    --to=ehabkost@redhat.com \
    --cc=afaerber@suse.de \
    --cc=imammedo@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /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.