All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cornelia Huck <cohuck@redhat.com>
To: Halil Pasic <pasic@linux.ibm.com>
Cc: "Daniel P. Berrangé" <berrange@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	qemu-devel@nongnu.org,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
	"Marc Hartmayer" <mhartmay@linux.ibm.com>,
	"Stefan Hajnoczi" <stefanha@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>
Subject: Re: [RFC v2 2/3] libvhost-user: handle endianness as mandated by the spec
Date: Tue, 28 Jul 2020 12:48:50 +0200	[thread overview]
Message-ID: <20200728124850.7c15eade.cohuck@redhat.com> (raw)
In-Reply-To: <20200721184456.1305ca0b.pasic@linux.ibm.com>

On Tue, 21 Jul 2020 18:44:56 +0200
Halil Pasic <pasic@linux.ibm.com> wrote:

> On Tue, 21 Jul 2020 09:40:10 -0400
> "Michael S. Tsirkin" <mst@redhat.com> wrote:
> 
> > On Fri, Jul 17, 2020 at 11:29:28AM +0200, Marc Hartmayer wrote:  
> > > Since virtio existed even before it got standardized, the virtio
> > > standard defines the following types of virtio devices:
> > > 
> > >  + legacy device (pre-virtio 1.0)
> > >  + non-legacy or VIRTIO 1.0 device
> > >  + transitional device (which can act both as legacy and non-legacy)
> > > 
> > > Virtio 1.0 defines the fields of the virtqueues as little endian,
> > > while legacy uses guest's native endian [1]. Currently libvhost-user
> > > does not handle virtio endianness at all, i.e. it works only if the
> > > native endianness matches with whatever is actually needed. That means
> > > things break spectacularly on big-endian targets. Let us handle virtio
> > > endianness for non-legacy as required by the virtio specification
> > > [1]. We will fence non-legacy virtio devices with the upcoming patch.
> > > 
> > > [1] https://docs.oasis-open.org/virtio/virtio/v1.1/cs01/virtio-v1.1-cs01.html#x1-210003
> > > 
> > > Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
> > > 
> > > ---
> > > Note: As we don't support legacy virtio devices    
> > 
> > Who's "we" in this sentence? vhost user supports legacy generally ...  
> 
> In that sentence "we" is the library "libvhost-user". I would like
> to avoid s390x being an oddball regarding this. Marc's previous
> version made an attempt at correct endianness handling for legacy
> and non-legacy. That spawned a discussion on how we don't want
> legacy devices in this context. This series makes what seemed to be the
> consensus reached in that discussion explicit: namely that libvhost-user
> does not support legacy-virtio.

Can someone please clarify what libvhost-user actually supports?

virtio-fs is clearly non-legacy only, but in the changelog I also see a
mention of scsi, and that one probably does support legacy?

Can we make a distinction along the lines of:
- if we are non-legacy, we support any endianness;
- if we are legacy, we support little endian host/guest only?



  reply	other threads:[~2020-07-28 10:49 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-17  9:29 [RFC v2 0/3] Enable virtio-fs on s390x Marc Hartmayer
2020-07-17  9:29 ` [RFC v2 1/3] virtio: add vhost-user-fs-ccw device Marc Hartmayer
2020-07-21 13:47   ` Stefan Hajnoczi
2020-07-28 10:31   ` Cornelia Huck
2020-07-28 11:25     ` Halil Pasic
2020-07-28 11:33       ` Cornelia Huck
2020-07-17  9:29 ` [RFC v2 2/3] libvhost-user: handle endianness as mandated by the spec Marc Hartmayer
2020-07-21 12:48   ` Stefan Hajnoczi
2020-07-30 13:15     ` Marc Hartmayer
2020-07-21 13:40   ` Michael S. Tsirkin
2020-07-21 16:44     ` Halil Pasic
2020-07-28 10:48       ` Cornelia Huck [this message]
2020-07-28 11:31         ` Halil Pasic
2020-07-28 10:52       ` Marc Hartmayer
2020-07-29 14:13         ` Michael S. Tsirkin
2020-07-29 16:11           ` Marc Hartmayer
2020-07-17  9:29 ` [RFC v2 3/3] libvhost-user: fence legacy virtio devices Marc Hartmayer
2020-07-21 13:47   ` Stefan Hajnoczi
2020-07-17 10:26 ` [RFC v2 0/3] Enable virtio-fs on s390x no-reply
2020-07-17 10:31 ` no-reply

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=20200728124850.7c15eade.cohuck@redhat.com \
    --to=cohuck@redhat.com \
    --cc=berrange@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=mhartmay@linux.ibm.com \
    --cc=mst@redhat.com \
    --cc=pasic@linux.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@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 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.