All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>,
	Thomas Huth <thuth@redhat.com>,
	zhang.zhanghailiang@huawei.com,
	Ben Warren <ben@skyportsystems.com>,
	qemu-trivial@nongnu.org, Cornelia Huck <cohuck@redhat.com>,
	qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-trivial] [Qemu-devel] [RFC PATCH 4/4] qemu-options: Do not show -enable-kvm and -enable-hax in the docs anymore
Date: Mon, 25 Jun 2018 14:30:56 -0300	[thread overview]
Message-ID: <20180625173056.GM7451@localhost.localdomain> (raw)
In-Reply-To: <4292432f-5f26-6925-4c14-ad1370e36e5b@redhat.com>

On Mon, Jun 25, 2018 at 12:28:34PM +0200, Paolo Bonzini wrote:
> On 25/06/2018 08:50, Markus Armbruster wrote:
> > Paolo Bonzini <pbonzini@redhat.com> writes:
> > 
> >> On 22/06/2018 21:35, Eduardo Habkost wrote:
> >>>>> Why is this better than using KVM by default if it's available?
> >>>> The answer is (as almost always): Compatibility with migration. Nobody
> >>>> dares to sacrifice that chicken :-(
> >>> We can now kill it if we announce the feature as deprecated a
> >>> couple of releases in advance.
> >>>
> >>> If we declare that compatibility when the accelerator is omitted
> >>> is deprecated in 3.0, in QEMU 3.3 we will be free to choose a
> >>> different default accelerator.
> >>
> >> We can, we don't necessarily want it.
> >>
> >> The status quo is that people using KVM are invoking qemu as qemu-kvm,
> >> people using TCG are invoking qemu as qemu-system-*.  All distros are
> >> shipping a qemu-kvm or more rarely kvm binary, which is invariably a
> >> wrapper script except for RHEL because RHEL doesn't have a qemu-system-*
> >> binary at all.
> >>
> >> By the way, changing qemu-system-*'s default to e.g. RHEL's "kvm or tcg"
> >> would not help distros that have "-accel kvm" in their /usr/bin/qemu-kvm
> >> script.
> > 
> > It wouldn't hurt them, either.
> 
> Right; to sum up, it does make things a little less consistent for their
> users in two ways:
> 
> - qemu-system-<native> behaves differently from qemu-system-<others>.
> For example, for ARM the default CPU model might not work for KVM, so
> you would have to add a "-cpu xxx" option.
> 
> - qemu-system-<native> would still need an accelerator option on OS X or
> Windows, where there is not quite parity between TCG and the native
> accelerator, in terms of either features or stability.  Because of this
> we wouldn't be able to change the default to "whatever virtualizing
> accelerators are available followed by TCG".
> 
> > Attentive distros could even replace the wrapper script by a link.
> 
> If they are okay with replacing the "KVM only" semantics with "KVM or
> TCG", which I think is generally worse.

If we can't get agreement on what's the right default for each
QEMU binary, I think that's yet another reason to document that
upstream QEMU won't guarantee ABI compatibility if -accel is
omitted.

If downstream distributions want to keep promising ABI
compatibility, it will be up to them.

-- 
Eduardo


WARNING: multiple messages have this Message-ID (diff)
From: Eduardo Habkost <ehabkost@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>,
	Thomas Huth <thuth@redhat.com>,
	zhang.zhanghailiang@huawei.com,
	Ben Warren <ben@skyportsystems.com>,
	qemu-trivial@nongnu.org, Cornelia Huck <cohuck@redhat.com>,
	qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] [RFC PATCH 4/4] qemu-options: Do not show -enable-kvm and -enable-hax in the docs anymore
Date: Mon, 25 Jun 2018 14:30:56 -0300	[thread overview]
Message-ID: <20180625173056.GM7451@localhost.localdomain> (raw)
In-Reply-To: <4292432f-5f26-6925-4c14-ad1370e36e5b@redhat.com>

On Mon, Jun 25, 2018 at 12:28:34PM +0200, Paolo Bonzini wrote:
> On 25/06/2018 08:50, Markus Armbruster wrote:
> > Paolo Bonzini <pbonzini@redhat.com> writes:
> > 
> >> On 22/06/2018 21:35, Eduardo Habkost wrote:
> >>>>> Why is this better than using KVM by default if it's available?
> >>>> The answer is (as almost always): Compatibility with migration. Nobody
> >>>> dares to sacrifice that chicken :-(
> >>> We can now kill it if we announce the feature as deprecated a
> >>> couple of releases in advance.
> >>>
> >>> If we declare that compatibility when the accelerator is omitted
> >>> is deprecated in 3.0, in QEMU 3.3 we will be free to choose a
> >>> different default accelerator.
> >>
> >> We can, we don't necessarily want it.
> >>
> >> The status quo is that people using KVM are invoking qemu as qemu-kvm,
> >> people using TCG are invoking qemu as qemu-system-*.  All distros are
> >> shipping a qemu-kvm or more rarely kvm binary, which is invariably a
> >> wrapper script except for RHEL because RHEL doesn't have a qemu-system-*
> >> binary at all.
> >>
> >> By the way, changing qemu-system-*'s default to e.g. RHEL's "kvm or tcg"
> >> would not help distros that have "-accel kvm" in their /usr/bin/qemu-kvm
> >> script.
> > 
> > It wouldn't hurt them, either.
> 
> Right; to sum up, it does make things a little less consistent for their
> users in two ways:
> 
> - qemu-system-<native> behaves differently from qemu-system-<others>.
> For example, for ARM the default CPU model might not work for KVM, so
> you would have to add a "-cpu xxx" option.
> 
> - qemu-system-<native> would still need an accelerator option on OS X or
> Windows, where there is not quite parity between TCG and the native
> accelerator, in terms of either features or stability.  Because of this
> we wouldn't be able to change the default to "whatever virtualizing
> accelerators are available followed by TCG".
> 
> > Attentive distros could even replace the wrapper script by a link.
> 
> If they are okay with replacing the "KVM only" semantics with "KVM or
> TCG", which I think is generally worse.

If we can't get agreement on what's the right default for each
QEMU binary, I think that's yet another reason to document that
upstream QEMU won't guarantee ABI compatibility if -accel is
omitted.

If downstream distributions want to keep promising ABI
compatibility, it will be up to them.

-- 
Eduardo

  reply	other threads:[~2018-06-25 17:31 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-13  5:05 [Qemu-trivial] [PATCH 0/4] Clean up accelerator options Thomas Huth
2018-06-13  5:05 ` [Qemu-devel] " Thomas Huth
2018-06-13  5:05 ` [Qemu-trivial] [PATCH 1/4] Replace '-machine accel=xyz' with '-accel xyz' Thomas Huth
2018-06-13  5:05   ` [Qemu-devel] " Thomas Huth
2018-06-13 12:20   ` [Qemu-trivial] " Eric Blake
2018-06-13 12:20     ` Eric Blake
2018-06-13 12:48   ` [Qemu-trivial] " Paolo Bonzini
2018-06-13 12:48     ` [Qemu-devel] " Paolo Bonzini
2018-06-13 12:53     ` [Qemu-trivial] " Thomas Huth
2018-06-13 12:53       ` [Qemu-devel] " Thomas Huth
2018-06-13 13:54       ` [Qemu-trivial] " Paolo Bonzini
2018-06-13 13:54         ` [Qemu-devel] " Paolo Bonzini
2018-06-13 14:12         ` [Qemu-trivial] " Thomas Huth
2018-06-13 14:12           ` Thomas Huth
2018-06-13 16:10       ` [Qemu-trivial] " Eduardo Habkost
2018-06-13 16:10         ` [Qemu-devel] " Eduardo Habkost
2018-06-13 13:38   ` [Qemu-trivial] " Stefan Hajnoczi
2018-06-13 13:38     ` [Qemu-devel] " Stefan Hajnoczi
2018-06-13  5:05 ` [Qemu-trivial] [PATCH 2/4] Replace '-enable-kvm' with '-accel kvm' in docs and help texts Thomas Huth
2018-06-13  5:05   ` [Qemu-devel] " Thomas Huth
2018-06-13 12:51   ` [Qemu-trivial] " Paolo Bonzini
2018-06-13 12:51     ` [Qemu-devel] " Paolo Bonzini
2018-06-13 13:38   ` [Qemu-trivial] " Stefan Hajnoczi
2018-06-13 13:38     ` [Qemu-devel] " Stefan Hajnoczi
2018-06-13  5:05 ` [Qemu-trivial] [PATCH 3/4] qemu-options: Improve the documentation of '-accel' and '-machine accel=...' Thomas Huth
2018-06-13  5:05   ` [Qemu-devel] " Thomas Huth
2018-06-13 13:38   ` [Qemu-trivial] " Stefan Hajnoczi
2018-06-13 13:38     ` [Qemu-devel] " Stefan Hajnoczi
2018-06-13  5:05 ` [Qemu-trivial] [RFC PATCH 4/4] qemu-options: Do not show -enable-kvm and -enable-hax in the docs anymore Thomas Huth
2018-06-13  5:05   ` [Qemu-devel] " Thomas Huth
2018-06-13 12:51   ` [Qemu-trivial] " Paolo Bonzini
2018-06-13 12:51     ` [Qemu-devel] " Paolo Bonzini
2018-06-13 13:38   ` [Qemu-trivial] " Stefan Hajnoczi
2018-06-13 13:38     ` [Qemu-devel] " Stefan Hajnoczi
2018-06-13 13:44     ` [Qemu-trivial] " Daniel P. Berrangé
2018-06-13 13:44       ` Daniel P. Berrangé
2018-06-13 15:11       ` [Qemu-trivial] " Thomas Huth
2018-06-13 15:11         ` Thomas Huth
2018-06-13 15:19         ` [Qemu-trivial] " Daniel P. Berrangé
2018-06-13 15:19           ` Daniel P. Berrangé
2018-06-13 15:44           ` [Qemu-trivial] " Thomas Huth
2018-06-13 15:44             ` Thomas Huth
2018-06-13 16:02           ` [Qemu-trivial] " Markus Armbruster
2018-06-13 16:02             ` Markus Armbruster
2018-06-19 15:15             ` [Qemu-trivial] " Cornelia Huck
2018-06-19 15:15               ` Cornelia Huck
2018-06-19 16:16               ` [Qemu-trivial] " Paolo Bonzini
2018-06-19 16:16                 ` Paolo Bonzini
2018-06-22 18:11                 ` [Qemu-trivial] " Eduardo Habkost
2018-06-22 18:11                   ` Eduardo Habkost
2018-06-22 19:19                   ` [Qemu-trivial] " Thomas Huth
2018-06-22 19:19                     ` Thomas Huth
2018-06-22 19:35                     ` [Qemu-trivial] " Eduardo Habkost
2018-06-22 19:35                       ` Eduardo Habkost
2018-06-22 21:22                       ` [Qemu-trivial] " Paolo Bonzini
2018-06-22 21:22                         ` Paolo Bonzini
2018-06-25  6:50                         ` [Qemu-trivial] " Markus Armbruster
2018-06-25  6:50                           ` Markus Armbruster
2018-06-25 10:28                           ` [Qemu-trivial] " Paolo Bonzini
2018-06-25 10:28                             ` Paolo Bonzini
2018-06-25 17:30                             ` Eduardo Habkost [this message]
2018-06-25 17:30                               ` Eduardo Habkost
2018-06-25 18:26                               ` [Qemu-trivial] " Paolo Bonzini
2018-06-25 18:26                                 ` Paolo Bonzini
2018-06-25 19:51                                 ` [Qemu-trivial] " Eduardo Habkost
2018-06-25 19:51                                   ` Eduardo Habkost
2018-06-26  5:57                                   ` [Qemu-trivial] " Paolo Bonzini
2018-06-26  5:57                                     ` Paolo Bonzini
2018-06-26 12:29                                     ` [Qemu-trivial] " Eduardo Habkost
2018-06-26 12:29                                       ` Eduardo Habkost
2018-06-26 13:05                                       ` [Qemu-trivial] " Paolo Bonzini
2018-06-26 13:05                                         ` Paolo Bonzini
2018-06-26 16:06                                         ` [Qemu-trivial] " Eduardo Habkost
2018-06-26 16:06                                           ` Eduardo Habkost
2018-06-26 16:10                                           ` [Qemu-trivial] " Daniel P. Berrangé
2018-06-26 16:10                                             ` Daniel P. Berrangé
2018-06-27  8:39                                           ` [Qemu-trivial] " Paolo Bonzini
2018-06-27  8:39                                             ` Paolo Bonzini
2018-06-27 14:05                                             ` [Qemu-trivial] " Eduardo Habkost
2018-06-27 14:05                                               ` Eduardo Habkost
2018-06-26  4:40                                 ` [Qemu-trivial] " Thomas Huth
2018-06-26  4:40                                   ` Thomas Huth
2018-06-26  7:50                                   ` [Qemu-trivial] " Cornelia Huck
2018-06-26  7:50                                     ` Cornelia Huck
2018-06-26 12:56                                     ` [Qemu-trivial] " Eduardo Habkost
2018-06-26 12:56                                       ` Eduardo Habkost
2018-06-26 16:43                                       ` [Qemu-trivial] " Markus Armbruster
2018-06-26 16:43                                         ` Markus Armbruster
2018-06-27  8:49                                         ` [Qemu-trivial] " Paolo Bonzini
2018-06-27  8:49                                           ` Paolo Bonzini
2018-06-13 13:39 ` [Qemu-trivial] [PATCH 0/4] Clean up accelerator options Stefan Hajnoczi
2018-06-13 13:39   ` [Qemu-devel] " Stefan Hajnoczi

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=20180625173056.GM7451@localhost.localdomain \
    --to=ehabkost@redhat.com \
    --cc=armbru@redhat.com \
    --cc=ben@skyportsystems.com \
    --cc=cohuck@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-trivial@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=thuth@redhat.com \
    --cc=zhang.zhanghailiang@huawei.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.