qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Cornelia Huck <cohuck@redhat.com>
Cc: "Eduardo Habkost" <ehabkost@redhat.com>,
	"Andrea Bolognani" <abologna@redhat.com>,
	qemu-devel@nongnu.org, Gonglei <arei.gonglei@huawei.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Amit Shah" <amit@kernel.org>, "Cleber Rosa" <crosa@redhat.com>,
	"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
	"Fam Zheng" <famz@redhat.com>, "Kevin Wolf" <kwolf@redhat.com>,
	"Max Reitz" <mreitz@redhat.com>,
	"Jason Wang" <jasowang@redhat.com>,
	"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	libvir-list@redhat.com, "Markus Armbruster" <armbru@redhat.com>,
	"Laine Stump" <laine@redhat.com>,
	"Stefan Hajnoczi" <stefanha@redhat.com>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>,
	"Caio Carrara" <ccarrara@redhat.com>
Subject: Re: [Qemu-devel] [PATCH for-4.0 v2] virtio: Provide version-specific variants of virtio PCI devices
Date: Mon, 19 Nov 2018 13:42:58 -0500	[thread overview]
Message-ID: <20181119133434-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20181119193238.117c2f4e.cohuck@redhat.com>

On Mon, Nov 19, 2018 at 07:32:38PM +0100, Cornelia Huck wrote:
> On Mon, 19 Nov 2018 13:07:59 -0500
> "Michael S. Tsirkin" <mst@redhat.com> wrote:
> 
> > On Mon, Nov 19, 2018 at 11:41:05AM +0100, Cornelia Huck wrote:
> > > On Fri, 16 Nov 2018 01:45:51 -0200
> > > Eduardo Habkost <ehabkost@redhat.com> wrote:
> > >   
> > > > On Thu, Nov 15, 2018 at 05:29:24PM +0100, Andrea Bolognani wrote:  
> 
> > > > > And once that's done, "non-transitional" (while matching the
> > > > > language of the spec) starts to look a bit unnecessary when you
> > > > > could simply have
> > > > > 
> > > > >   virtio-*-pci
> > > > >   virtio-*-pci-1
> > > > >   virtio-*-pci-1-transitional
> > > > > 
> > > > > instead. But I don't feel as strongly about this as I do about
> > > > > keeping the virtio revision in the device name :)    
> > > > 
> > > > I like that suggestion.  Makes the device names more explicit
> > > > _and_ shorter.  I'll do that in v3.  
> > > 
> > > OTOH, that would mean we'd need to introduce new device types if we
> > > ever start to support a virtio 2.x standard. My understanding was that
> > > we'll want separate device types for transitional and non-transitional
> > > for two reasons: the bus which a device can be plugged into, and
> > > changing ids. Do we really expect huge changes in a possible 2.x
> > > standard that affect virtio-pci only, and not other virtio transports
> > > as well?  
> > 
> > Yes I think adding a version there is a mistake.
> > transitional/legacy/non-transitional are spec terms so
> > they are unlikely to change abruptly. OTOH virtio TC can
> > just decide next version is 2.0 on a drop of a hat.
> 
> I don't really expect that to happen on a drop of a hat, though :) It's
> probably more likely when we either have some really major change (and
> we messed up if we can't handle that via the virtio compatibility
> mechanism), or we go up from 1.x because x is getting too large (won't
> happen in the near future.)
> 
> But yes, we should be able to handle further updates without any change
> like the ones complicating things now for virtio-pci, as that was
> mostly the transition to a proper standard while flushing out some
> design problems that you only become aware of later.
> 
> > 
> > And I strongly believe command line users really really do not want all
> > this mess. Even adding "pci" is the name confuses people (what are the
> > other options?). For command line model=virtio is pretty much perfect.
> 
> I'd argue that it's problematic on platforms where you have different
> options for virtio transports. What does "model=virtio" mean? Always
> virtio-pci, if available? Or rather virtio-<transport>, with
> <transport> being the best option for the machine?

Most people don't care, for them it's "whatever works".

We have this assumption that if we force a choice then people will
choose the right thing but in practice they will do what we all do, play
with it until it kind of works and leave well alone afterwards.
That's at best - at worst give up and use an easier tool.

> > So all these names are there primarily for libvirt's benefit.
> > And the only input from libvirt devs so far
> > has been that it's unclear how does cross version
> > migration work. That needs to be addressed in some way.
> > 
> > So can we maybe start with a libvirt domain xml patch, with an
> > implementation for existing QEMU, get that acked, and then just map it
> > back to qemu command line as directly as possible?
> > 

  reply	other threads:[~2018-11-19 18:43 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-14 23:38 [Qemu-devel] [PATCH for-4.0 v2] virtio: Provide version-specific variants of virtio PCI devices Eduardo Habkost
2018-11-15  8:40 ` no-reply
2018-11-15 10:05 ` Daniel P. Berrangé
2018-11-15 10:50   ` Cornelia Huck
2018-11-15 10:52     ` Daniel P. Berrangé
2018-11-20  0:44     ` Eduardo Habkost
2018-11-20 10:46       ` Daniel P. Berrangé
2018-11-20 10:52       ` Cornelia Huck
2018-11-20 11:51         ` Eduardo Habkost
2018-11-15 11:21 ` Cornelia Huck
2018-11-15 15:01   ` Cornelia Huck
2018-11-27  0:35   ` Eduardo Habkost
2018-11-15 16:29 ` Andrea Bolognani
2018-11-16  3:45   ` Eduardo Habkost
2018-11-19 10:41     ` Cornelia Huck
2018-11-19 18:07       ` Michael S. Tsirkin
2018-11-19 18:32         ` Cornelia Huck
2018-11-19 18:42           ` Michael S. Tsirkin [this message]
2018-11-19 18:56             ` Cornelia Huck
2018-11-19 19:14               ` Michael S. Tsirkin
2018-11-20 12:27                 ` Andrea Bolognani
2018-11-20 19:14                   ` Michael S. Tsirkin
2018-11-21 16:20                     ` Andrea Bolognani
2018-11-19 21:32               ` Eduardo Habkost
2018-11-20 10:35                 ` Cornelia Huck
2018-11-19 21:47         ` Eduardo Habkost
2018-11-20  3:08           ` Michael S. Tsirkin
2018-11-20  3:22             ` Eduardo Habkost

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=20181119133434-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=abologna@redhat.com \
    --cc=amit@kernel.org \
    --cc=arei.gonglei@huawei.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=ccarrara@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=crosa@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=famz@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=laine@redhat.com \
    --cc=libvir-list@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mreitz@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=wainersm@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).